Payments API
Process Payments

Payment Processing

The Payments API processes payments using payment instruments such as credit cards or PayPal accounts. To learn more about Payments, see the Payments Overview.

The Payment Processing API uses BigCommerce's PCI-compliant payments server and a supported payment gateway to charge customers. The payment portal you choose may support charging stored instruments and/or making refund transactions. For a list of compatible payment gateways, as well as a guide through the API call sequence needed to make charges, see the Payments Overview.

A Payment Access Token (PAT) is required to authorize payment processing requests. The X-Auth-Token header is not required in requests to the payment processing endpoint. To generate a PAT, use the Create a Payment Access Token endpoint or the completeCheckout mutation in the GraphQL Storefront API. For a payment processing authentication example request, see the related section in our Authentication article.

Also note that payment processing requests use the BigCommerce Payments Gateway, which uses a different server than our other REST APIs. Please see the server URL for the payment processing endpoint.

To learn more about authenticating Payments endpoints, locate the Authentication section at the top of each endpoint, then click Show Details.



Additional Payments endpoints

Process Payments

POST /payments


Process payments for an order. See Payment Processing for more information.


  • PAT {{PAYMENT_ACCESS_TOKEN}} in header - required


  • store_hash in path - string
  • Accept in header with default of application/vnd.bc.v1+json - string - required

    This required value must be application/vnd.bc.v1+json.

    Allowed values: application/vnd.bc.v1+json
  • Content-Type in header with default of application/json - string - required

    The MIME type of the request body.


object | application/json
  • payment


Stored Card

Stored PayPal Account

Stored Bank Account

Gift Certificate

Store Credit

Tokenized Card


Payment has been successfully processed


object | application/json
  • id

    Identifier for this transaction

  • transaction_type

    Transaction type for this payment

    Allowed: authorization | purchase

    Example: authorization

  • status

    Status to indicate a success response

    Allowed: success | pending


Did you find what you were looking for?