The Transactions API allows you to create transaction records in BigCommerce for payments that were processed externally. This enables merchants to use BigCommerce for post-order actions such as capture, void, and refund on transactions that originated outside of BigCommerce.
Initially, this API supports importing transactions from the following payment providers:
Before using this API, these providers must first be configured on the merchant’s store using the same credentials as those being used to process payments externally.
The following payment methods are supported:
To perform post-order actions such as capture or void on a transaction, the payment provider used to process the payment outside of BigCommerce must already be configured within BigCommerce at the time the transaction is created. The payment provider must be enabled and configured with the same channel and currency that the order is placed against.
This is because the payment provider ID is stored against the transaction at time of creation.
If the payment provider is not configured in BigCommerce when the transaction is created, no provider ID will be stored against the transaction. This means BigCommerce will not know which provider to call when attempting to capture or void the transaction.
Consider the following scenario:
/v3/payments/transactions/authorizations endpoint.In this case, when an attempt is made to capture the authorized transaction within BigCommerce, BigCommerce does not know which provider to call to capture the transaction.
Individual endpoints are available for creating single transactions:
The following endpoints are planned for future phases:
/v3/payments/transactions/captures/v3/payments/transactions/voids/v3/payments/transactions/refundsThese endpoints do not currently support batch processing. Support for batch processing may be provided in a future phase.
These endpoints are secured in the same way as other BigCommerce REST endpoints as described in Authentication.
The OAuth2 scope required for these endpoints is store_v2_transactions, which is the same as the modify scope of /v3/orders/{order_id}/transactions.
This scope can be granted when creating a store-level API account in the control panel.
The avs_result and cvv_result fields must either:
nullcode and message) set to nullThe provider_data field varies by provider and payment instrument. Accepted keys are filtered server-side based on the provider.
For example, depending on the payment instrument, the provider_data keys for Stripe might include:
mandate_method_idoverride_method_id