--- title: MutationRoot - Payments Apps API description: The schema's entry point for all mutation operations. api_version: 2025-10 api_name: payments-apps type: object api_type: graphql source_url: html: https://shopify.dev/docs/api/payments-apps/latest/objects/mutationroot md: https://shopify.dev/docs/api/payments-apps/latest/objects/mutationroot.md --- # Mutation​Root object The schema's entry point for all mutation operations. ## Fields * capture​Session​Reject [Capture​Session​Reject​Payload](https://shopify.dev/docs/api/payments-apps/latest/types/CaptureSessionRejectPayload) Rejects an open capture session. After the `captureSessionReject` mutation completes on a given capture session, any `captureSessionResolve` mutation attempts will fail. Subsequent `captureSessionReject` mutation attempts will succeed, but the `reason` argument will be ignored. * capture​Session​Resolve [Capture​Session​Resolve​Payload](https://shopify.dev/docs/api/payments-apps/latest/types/CaptureSessionResolvePayload) Resolves an open capture session. After the `captureSessionResolve` mutation completes on a given capture session, any `captureSessionReject` mutation attempts will fail. Subsequent `captureSessionResolve` mutation attempts will succeed. * payments​App​Configure [Payments​App​Configure​Payload](https://shopify.dev/docs/api/payments-apps/latest/types/PaymentsAppConfigurePayload) Configures the partner-managed payments gateway to work on the merchant's store. For an example of how to use the `paymentsAppConfigure` mutation, refer to the tutorial for [onboarding merchants to payments extensions](https://shopify.dev/docs/apps/build/payments/onboard-a-merchant-payments-extension). * payment​Session​Confirm [Payment​Session​Confirm​Payload](https://shopify.dev/docs/api/payments-apps/latest/types/PaymentSessionConfirmPayload) Initiates the confirmation process of the given payment\_session. Shopify will start confirming the payment. According to its business logic, Shopify determines if the payment can be authorized and sends a POST request to the payments app, delivering the confirmation result. * payment​Session​Modal [Payment​Session​Modal​Payload](https://shopify.dev/docs/api/payments-apps/latest/types/PaymentSessionModalPayload) Raises a modal that will be displayed to the buyer after a checkout is completed. Included data will be used to populate the UI extension in the modal. * payment​Session​Pending [Payment​Session​Pending​Payload](https://shopify.dev/docs/api/payments-apps/latest/types/PaymentSessionPendingPayload) Change a payment session status to pending. Upon receiving the response from the `PaymentSessionPending` mutation, you must redirect the customer back to Shopify, using `redirectUrl` in `nextAction`. Upon completion, pending payments must be finalized into either a successful or failed state using the `paymentSessionResolve` or `paymentSessionReject` mutations. Both `sale` and `authorization` payments can be marked as pending. * payment​Session​Redirect [Payment​Session​Redirect​Payload](https://shopify.dev/docs/api/payments-apps/latest/types/PaymentSessionRedirectPayload) Redirects the buyer to the given URL for the payment session. For example, Shopify will redirect the buyer to the URL where the 3DS authentication will take place for onsite payment with `credit_card` payment method. * payment​Session​Reject [Payment​Session​Reject​Payload](https://shopify.dev/docs/api/payments-apps/latest/types/PaymentSessionRejectPayload) 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. * payment​Session​Resolve [Payment​Session​Resolve​Payload](https://shopify.dev/docs/api/payments-apps/latest/types/PaymentSessionResolvePayload) Resolves an open payment session. After the `paymentSessionResolve` mutation completes on a given payment session, any `paymentSessionReject` mutation attempts will fail. Subsequent `paymentSessionResolve` mutation attempts will succeed, but the `Details` argument will be ignored. * refund​Session​Reject [Refund​Session​Reject​Payload](https://shopify.dev/docs/api/payments-apps/latest/types/RefundSessionRejectPayload) Rejects an open refund session. After the `refundSessionReject` mutation completes on a given refund session, any `refundSessionResolve` mutation attempts will fail. Subsequent `refundSessionReject` mutation attempts will succeed, but the `RejectionReasonInput` argument will be ignored. * refund​Session​Resolve [Refund​Session​Resolve​Payload](https://shopify.dev/docs/api/payments-apps/latest/types/RefundSessionResolvePayload) Resolves an open refund session. After the `refundSessionResolve` mutation completes on a given refund session, any `refundSessionReject` mutation attempts will fail. Subsequent `refundSessionResolve` mutation attempts will succeed, but the `Details` argument will be ignored. * verification​Session​Redirect [Verification​Session​Redirect​Payload](https://shopify.dev/docs/api/payments-apps/latest/types/VerificationSessionRedirectPayload) Redirects the buyer to the given URL for the verification session. Shopify will redirect the buyer to the URL where the 3DS authentication will take place when verifying the buyer's credit\_card. * verification​Session​Reject [Verification​Session​Reject​Payload](https://shopify.dev/docs/api/payments-apps/latest/types/VerificationSessionRejectPayload) Rejects an open verification session. After the `verificationSessionReject` mutation completes on a given verification session, any `verificationSessionResolve` mutation attempts will fail. Subsequent `verificationSessionReject` mutation attempts will succeed, but the `RejectionReasonInput` argument will be ignored. * verification​Session​Resolve [Verification​Session​Resolve​Payload](https://shopify.dev/docs/api/payments-apps/latest/types/VerificationSessionResolvePayload) Resolves an open verification session. After the `verificationSessionResolve` mutation completes on a given verification session, any `verificationSessionReject` mutation attempts will fail. Subsequent `verificationSessionResolve` mutation attempts will succeed, but the `Details` argument will be ignored. * void​Session​Reject [Void​Session​Reject​Payload](https://shopify.dev/docs/api/payments-apps/latest/types/VoidSessionRejectPayload) Rejects an open void session. After the `voidSessionReject` mutation completes on a given void session, any `voidSessionResolve` mutation attempts will fail. Subsequent `voidSessionReject` mutation attempts will succeed, but the `RejectionReasonInput` argument will be ignored. * void​Session​Resolve [Void​Session​Resolve​Payload](https://shopify.dev/docs/api/payments-apps/latest/types/VoidSessionResolvePayload) Resolves an open void session. After the `voidSessionResolve` mutation completes on a given void session, any `voidSessionReject` mutation attempts will fail. Subsequent `voidSessionResolve` mutation attempts will succeed, but the `Details` argument will be ignored. *** ## Map No referencing types