--- title: paymentSessionReject - Payments Apps API description: |- Rejects an open payment session. After the `paymentSessionReject` mutation completes on a given payment session, any `paymentSessionResolve` mutation attempts will fail. Subsequent `paymentSessionReject` mutation attempts will succeed, but the `RejectionReasonInput` argument will be ignored. api_version: 2025-10 api_name: payments-apps type: mutation api_type: graphql source_url: html: https://shopify.dev/docs/api/payments-apps/latest/mutations/paymentSessionReject md: https://shopify.dev/docs/api/payments-apps/latest/mutations/paymentSessionReject.md --- # payment​Session​Reject mutation Requires `write_payment_sessions` access scope. Rejects an open payment session. After the `paymentSessionReject` mutation completes on a given payment session, any `paymentSessionResolve` mutation attempts will fail. Subsequent `paymentSessionReject` mutation attempts will succeed, but the `RejectionReasonInput` argument will be ignored. ## Arguments * authentication [Payment​Session​Three​DSecure​Authentication](https://shopify.dev/docs/api/payments-apps/latest/input-objects/PaymentSessionThreeDSecureAuthentication) The 3D Secure authentication data from the partner. Must be present if and only if the Redirect mutation has been called and the payment method is credit card. * id [ID!](https://shopify.dev/docs/api/payments-apps/latest/scalars/ID) required The payment session ID. * payment​Details [Payment​Session​Payment​Details](https://shopify.dev/docs/api/payments-apps/latest/input-objects/PaymentSessionPaymentDetails) The payment details used to process the transaction. * reason [Payment​Session​Rejection​Reason​Input!](https://shopify.dev/docs/api/payments-apps/latest/input-objects/PaymentSessionRejectionReasonInput) required The rejection reason. *** ## Payment​Session​Reject​Payload returns * payment​Session [Payment​Session](https://shopify.dev/docs/api/payments-apps/latest/objects/PaymentSession) The updated payment session. * user​Errors [\[User​Error!\]!](https://shopify.dev/docs/api/payments-apps/latest/objects/UserError) non-null The list of errors that occurred from executing the mutation. *** ## Examples * ### paymentSessionReject reference ## Mutation Reference ```graphql mutation paymentSessionReject($id: ID!, $reason: PaymentSessionRejectionReasonInput!, $authentication: PaymentSessionThreeDSecureAuthentication, $paymentDetails: PaymentSessionPaymentDetails) { paymentSessionReject(id: $id, reason: $reason, authentication: $authentication, paymentDetails: $paymentDetails) { paymentSession { # PaymentSession fields } userErrors { field message } } } ``` ## Input ```json { "id": "gid://shopify//10079785100", "reason": { "code": "RISKY", "merchantMessage": "" }, "authentication": { "authenticationData": { "transStatus": "Y", "transStatusReason": "", "authenticationFlow": "FRICTIONLESS", "version": "V2_3", "chargebackLiability": "MERCHANT", "dsTransactionId": "" }, "partnerError": "PROCESSING_ERROR" }, "paymentDetails": { "cardNotPresent": { "cvvResultCode": "M", "avsResultCode": "A" } } } ``` ##### Variables ``` { "id": "gid://shopify//10079785100", "reason": { "code": "RISKY", "merchantMessage": "" }, "authentication": { "authenticationData": { "transStatus": "Y", "transStatusReason": "", "authenticationFlow": "FRICTIONLESS", "version": "V2_3", "chargebackLiability": "MERCHANT", "dsTransactionId": "" }, "partnerError": "PROCESSING_ERROR" }, "paymentDetails": { "cardNotPresent": { "cvvResultCode": "M", "avsResultCode": "A" } } } ``` ##### Schema ``` input PaymentSessionRejectionReasonInput { code: PaymentSessionStateRejectedReason! merchantMessage: String } input PaymentSessionThreeDSecureAuthentication { authenticationData: PaymentSessionThreeDSecureAuthenticationData partnerError: PaymentSessionThreeDSecurePartnerError } input PaymentSessionThreeDSecureAuthenticationData { transStatus: PaymentSessionThreeDSecureTransStatus! transStatusReason: String authenticationFlow: PaymentSessionThreeDSecureAuthenticationFlow! version: PaymentSessionThreeDSecureVersion! chargebackLiability: PaymentSessionThreeDSecureChargebackLiability! dsTransactionId: String } input PaymentSessionPaymentDetails { cardNotPresent: PaymentSessionCardNotPresentInput } input PaymentSessionCardNotPresentInput { cvvResultCode: PaymentSessionCardNotPresentCvvResultCode avsResultCode: PaymentSessionCardNotPresentAvsResultCode } ```