Multiple Partial Captures
This section shows you how to process multiple partial captures for an authorization.
This feature enables you to request multiple partial captures for one authorization. A
multiple partial capture allows you to incrementally settle authorizations over time. Ensure
that the total amount of all the captures does not exceed the authorized amount.
Fields Specific to This Use Case
These API request fields and values are specific to this use case:
Limitations
Multiple partial captures are supported only for card-not-present transactions; they are not supported for card-present transactions.
Endpoint
Production:
POST
https://api.cybersource.com
/pts/v2/payments/{id}
/capturesTest:
POST
https://apitest.cybersource.com
/pts/v2/payments/{id}
/capturesThe
{id}
is the transaction
ID returned in the authorization response.Required Fields for Processing Multiple Partial Captures
- Set toclientReferenceInformation.codevalue used in corresponding authorization request.
- Cybersourceprovides the value for this field.
- For the final capture request, set this field andprocessingInformation.captureOptions.totalCaptureCountto the same value.
- For Visa and Mastercard, the value for this field is sent to the processor. For all card types, the value for this field is used to determine whether to initiate an automatic partial authorization reversal.
- When you do not know the total number of captures that you are going to request, set this field to at least one more than theprocessingInformation.captureOptions. captureSequenceNumberfield until you reach the final capture. For the final capture request, set this field andprocessingInformation.captureOptions. captureSequenceNumberto the same value.
- For Visa and Mastercard, the value for this field is sent to the processor. For all card types, the value for this field is used to determine whether to initiate an automatic partial authorization reversal.
Related Information
REST Example: Processing Multiple Partial Captures
Request
12345678910111213141516{{ "clientReferenceInformation": { "code": "TC50171_3" }, "processingInformation": { "captureOptions": { "captureSequenceNumber": "2", "totalCaptureCount": "3" } }, "orderInformation": { "amountDetails": { "totalAmount": "102.21", "currency": "USD" } }}
Response to a Successful Request
1234567891011121314151617181920212223{"_links": { "void": { "method": "POST", "href": "/pts/v2/captures/6742496815656503003954/voids" }, "self": { "method": "GET", "href": "/pts/v2/captures/6742496815656503003954" } }, "clientReferenceInformation": { "code": "TC50171_3" }, "id": "6742496815656503003954", "orderInformation": { "amountDetails": { "totalAmount": "102.21", "currency": "USD" } }, "reconciliationId": "67332020GD2G1OO1", "status": "PENDING", "submitTimeUtc": "2023-01-20T21:21:21Z"}