Skip to main content

Capture API

POST/rest/capture

Capture API is used to capture funds from previously authorized transactions. Partial captures are supported, allowing you to capture less than the authorized amount. However, the captured amount cannot exceed the original authorization. A successful capture will change the transaction status to completed.

note

Partial Captures: You can capture multiple times as long as the total captured amount does not exceed the original authorization. This is useful when you want to capture amounts in stages or when the final amount is less than originally authorized.

Capture API Request

transaction_idStringrequired
ID of the authorized transaction to be captured
amountFloat
When not given, full authorized amount will be captured. Can be smaller but not larger than the authorized amount
vatFloat
VAT of the captured amount, if known
Example Request
POST /rest/capture
Authorization: Basic <base64(api_key:api_password)>
Content-Type: application/json
{
"transaction_id": "e06dec72-788e-471a-a33f-a9d0deeeb4df",
"amount": 12.40,
"vat": 1.98
}

Capture API Response

transaction_idString
ID of the captured transaction
status_codeInteger
Status code of the transaction (3 for completed)
statusString
Status of the transaction (typically "completed")
order_idString
Order ID of the transaction
messageString
Any message returned from the payment processor
card_last_fourString
Last four digits of the card (for card payments)
card_expiry_yearInteger
Card expiry year (for card payments)
card_expiry_monthInteger
Card expiry month (for card payments)
card_brandString
Card brand (e.g., VISA, Mastercard)
error_codeInteger
Error code for the response (0 for success)
Example Response
{
"transaction_id": "e06dec72-788e-471a-a33f-a9d0deeeb4df",
"status_code": 3,
"status": "completed",
"order_id": "AUTH-12345",
"message": null,
"card_last_four": "0509",
"card_expiry_year": 2026,
"card_expiry_month": 12,
"card_brand": "VISA",
"error_code": 0
}