Capture Order
Learn how to use this endpoint to capture payments from authorized orders
Overview
The capture amount can be specified, but If no amount is specified, Skipify will capture 100% of authorized funds.
It is possible to process multiple captures until the full authorization amount of the order is reached. To perform a partial capture, pass a non-null amount in the request body. The amount must be less than the original authorization total.
Important
The duration of authorizations typically falls between 7 to 30 days, varying based on the payment service provider (PSP) you utilize. Please consult your PSP documentation to verify the specific expiration timelines for authorizations.
This endpoint uses HMAC with SHA-256
Check out our API Authentication section to learn more
To capture an order, send an API call to:
Staging:
POST https://orders-management.staging.skipify.com/{orderId}/capture
Production:
POST https://orders-management.skipify.com/{orderId}/capture
Request Body Parameters
Parameter Name | Required | Type | Description |
---|---|---|---|
amount | no | integer | If no value is provided for this field, the API will capture the entire amount from the previous transaction. If you specify an amount, it will be captured only if it is less than or equal to the total amount of the authorized funds. |
transactionId | no | string | Pass the transactionId received from the ORDER_PAYMENT_SUCCEEDED webhook event. This can be passed in all cases. It is required in a split-payment scenario, when multiple transactions are tied to one orderId. |
Request Body Example
{
"amount": 5800, // $ 58.00
"transactionId": "string"
}
API Response
Response Body Parameters
Parameter Name | Type | Description |
---|---|---|
orderId | string | The Skipify order id |
merchantId | string | The Skipify Merchant identifier |
amount | integer | The amount captured |
transactionId | string | The Skipify transaction identifier |
status | string | Allowed Values = Captured, PartialCaptured, Failed |
message | string, nullable | This message will be populated if there was an error processing the capture |
Response Body Example
{
"orderId": "string",
"merchantId": "string",
"amount": integer,
"transactionId": "string",
"status": "Captured",
"message": "string"
}
Updated 28 days ago