For the complete documentation index, see llms.txt. This page is also available as Markdown.

Authorize And Capture A Payment Separately

By default, Codapay processes card payments as a single charge — the authorization and capture happen in one step. With authorization and capture separation, you can split this into two distinct stages:

  1. Authorization — The cardholder's bank verifies the payment and places a hold on the funds, but no money is transferred yet.

  2. Capture — You explicitly confirm the payment, and the funds are transferred from the cardholder to your account.

If you decide not to proceed with the payment after authorization, you can cancel the authorized transaction to release the hold on the cardholder's funds.

When to use it

Authorization and capture separation is useful when you need to:

  • Verify inventory or product availability before finalizing a charge

  • Perform additional fraud or compliance checks after the user completes payment authentication

  • Review high-value transactions manually before capturing

Prerequisites

To use authorization and capture separation, the following must be enabled for your account:

  1. POST Notifications — Auth and capture separation is only available with POST notifications. Refer to the Auth & Capture Notifications page for details on activating POST notifications.

  2. Auth & Capture Separation — This feature must be activated separately for your account.

Please contact your Codapay account manager to enable both features.

How it works

The authorization and capture flow works as follows:

  1. You initiate a payment request as usual. Once the feature is activated, Codapay will authorize the payment without capturing it.

  2. You receive an AUTHORIZATION_SUCCESSFUL or AUTHORIZATION_FAILED notification via your webhook endpoint.

  3. If the authorization is successful, you decide whether to capture or cancel the payment:

    • Capture — Call the Capture a Payment Request endpoint to finalize the payment. You will receive CAPTURE_INITIATED, then CAPTURE_SUCCESSFUL or CAPTURE_FAILED notifications.

    • Cancel — Call the Cancel a Payment Request endpoint to release the held funds. The authorization will be voided.

Next steps

Last updated

Was this helpful?