--- title: >- New rejection reason codes and merchant message added to verificationSessionReject mutation - Shopify developer changelog description: >- Shopify’s developer changelog documents all changes to Shopify’s platform. Find the latest news and learn about new platform opportunities. source_url: html: >- https://shopify.dev/changelog/new-rejection-reason-codes-and-merchant-message-added-to-verificationsessionreject-mutation md: >- https://shopify.dev/changelog/new-rejection-reason-codes-and-merchant-message-added-to-verificationsessionreject-mutation.md metadata: effectiveApiVersion: 2026-04 affectedApi: - displayName: Payments Apps API handle: payments-apps-api primaryTag: displayName: API handle: api secondaryTag: displayName: Update handle: update indicatesActionRequired: false createdAt: '2026-02-20T06:56:06-05:00' postedAt: '2026-02-21T12:00:00-05:00' updatedAt: '2026-03-02T10:27:00-05:00' effectiveAt: '2026-02-21T12:00:00-05:00' --- February 21, 2026 Tags: * Payments Apps API * 2026-04 # New rejection reason codes and merchant message added to `verificationSessionReject` mutation The [`verificationSessionReject` mutation](https://shopify.dev/docs/api/payments-apps/latest/mutations/verificationSessionReject) in the Payments Apps API now supports two new rejection reason codes and an optional merchant-facing message. The [new enum values](https://shopify.dev/docs/api/payments-apps/latest/mutations/verificationSessionReject#arguments-reason.fields.code) on [`VerificationSessionStateReason`](https://shopify.dev/docs/api/payments-apps/latest/enums/VerificationSessionStateReason) include: * `RESOURCE_NOT_FOUND`: The payment method could not be found in the payment provider's system. * `RESOURCE_INVALID`: The payment token is not valid for this use case (for example, a mismatch between customer and payment method). A new input field on `VerificationSessionRejectionReasonInput`() has also been added: * `merchantMessage` (string, optional): A custom, localized message to provide to the merchant when a verification is rejected. These changes give payment apps more granular control over verification rejection reporting.