Capture NEW

Topics covered on this page

This document serves to explain the steps in the card payment process, and then introduce the Single Partial Capture feature.

Understanding Authorization and Capture

Authorization and capture are the two steps to complete card payments.

Authorization occurs when the merchant initiates a charge to a customer’s card at checkout. During this process, the payment processor checks with the cardholder’s bank to verify that the account has sufficient funds and is in good standing. If the account meets the criteria, the transaction amount is held pending completion. Pre-authorizing a card ensures that the payment method is valid and that the cardholder is genuine, without charging the account, and helps prevent chargebacks.

Authorization period is the time for which the authorization is valid. The amount must be captured within this time. This period depends on the country, but is usually 7 days.

Capture is the process by which the transaction is completed, and funds are withdrawn from the customer account and transferred to the merchant account—moving the transaction status from pending to complete.

Types of Capture

The capture process can either be automatic or manual.

Automatic Capture

With automatic capture, payments are captured automatically, based on the capture delay. Capture delay is the time period between payment authorization and capture.

With automatic capture, by default, payments are captured immediately after authorization.

Manual Capture

With manual capture, the merchant must explicitly request a capture for each payment before the authorization expires.

Manual capture is of the following types:

  • Full Manual Capture
  • Single Partial Capture
  • Multiple Partial Capture

Full Manual Capture

With Full Manual Capture, the authorized amount is captured in full.

The illustrative flow is as follows:

graph TD A[Merchant initiates card authorization] -->B{Is authorization successful?} B -->|No| D[Stop] B -->|Yes| C[Deliver Goods] C -->E[Capture complete authorized amount]

Usage

Authorization
Create Authorization hold on card using token

The following example authorizes a charge of THB 70 using a card token:

curl https://api.omise.co/charges \
  -u $OMISE_SECRET_KEY: \
  -d "amount=7000" \
  -d "currency=thb" \
  -d "capture=false" \
  -d "card=$TOKEN_ID"
Capture

The following example demonstrates a full capture of THB 70.

curl https://api.omise.co/charges/$FULL_UNCAPTURED_CHARGE_ID/capture \
  -u $OMISE_SECRET_KEY: \
  -d "capture_amount=7000"

Debit cards issued in Thailand do not support Partial Capture. Please contact support for more information.

Single Partial Capture

Let’s explain Single Partial Capture with an example.

Suppose a customer buys goods worth THB 70. Their card will then be authorized for THB 70. However, the merchant is able to deliver only THB 40 worth of goods. Now the final bill amount is THB 40, and this is what is charged to the customer’s card. The balance of THB 30 that was authorized but not charged is unblocked and released.

The transaction that charged the THB 40 to the customer’s card is the single partial capture.

The illustrative flow is as follows:

graph TD A[Merchant initiates card authorization] -->B{Is authorization successful?} B -->|No| D[Stop] B -->|Yes| C[Deliver some goods] C -->E[Charge card partially] E-->F[System unblocks and releases the remainder of the authorized amount]

How to enable Single Partial Capture?

Please contact Opn Support, who will determine if they can enable this feature for your account and proceed accordingly based on the backend you are using.

Usage example

Authorization

The following example authorizes a charge of THB 70 using a card token:

curl https://api.omise.co/charges \
  -u $OMISE_SECRET_KEY: \
  -d "amount=7000" \
  -d "currency=thb" \
  -d "capture=false" \
  -d "card=$ANOTHER_TOKEN_ID" \
  -d "authorization_type=pre_auth"
Capture

The following example demonstrates a single partial capture of THB 40.

curl https://api.omise.co/charges/$PARTIAL_UNCAPTURED_CHARGE_ID/capture \
  -u $OMISE_SECRET_KEY: \
  -d "capture_amount=4000"

Multiple Partial Capture

At present, we do not support Multiple Partial Capture.

Omise uses cookies to improve your overall site experience and collect information on your visits and browsing behavior. By continuing to browse our website, you agree to our Privacy Policy. Learn more