Capture charge for split shipment
A split shipment is when a single order containing multiple products is sent in separate shipments due to product availability or sizing issues. The multi-capture feature allows merchants to split any payment into several captures initiated from a single authorization within a specified time frame. The pre-auth period for a split shipment depends on the card type.
To use the split-shipment feature, merchants need to contact the merchant help desk to get access to multi-capture setting on the Merchant dashboard. Once the support team provides access, merchants can enable or disable this feature from the Merchant Web Dashboard → Account & Setup → Ecommerce Payments → Multi-Capture.
Note: The split-shipment feature is enabled globally in the sandbox environment for the test merchants to test the feature.
The split_shipment
field in the Capture a charge endpoint allows you to capture a single pre-authorization multiple times. When you enter information in the field, a separate capture request is sent for shipment. See Create pre-authorization for more information.
Note
Tips are charged with the first split-shipment amount. However, taxes and the surcharge are charged on a prorated basis for each split shipment.
Path Parameters
Path parameter to use when capturing a charge for split shipment:
Object | Type | Description | Required |
---|---|---|---|
chargeId | string | Universally unique identifier (UUID) of the charge. | Required |
Body parameters
Body parameters to use when capturing a charge:
Object | Type | Description | Required |
---|---|---|---|
amount | int64 | Charge amount in the smallest monetary unit of the merchant's currency. If you do not specify an amount, the total of the original charge is captured. Format: Cents | Required |
split-shipment | string | Provides partial shipment information for a single pre-authorization. Values: 1 to 99 Format: n/m; where, - n is the the current shipment. The value begins by 1 and increments by 1 with each subsequent shipment. - m is the total number of shipments. Default: 99 Example: If total shipments in a transaction are 5, then the last shipment will be 5/5. | Required |
Create split shipment
- Create preauth using
v1/charges/
. See Create pre-authorization. - Send a
POST
request to/v1/charges/{{charge_id}}/capture
.
Example:
POST /v1/charges/{{charge_id}}/capture
{
"amount": "150",
"split_shipment": "1/3"
{
"id": "1AB2CDEF3G4H",
"amount": 150,
"payment_method_details": "card",
"currency": "usd",
"created": 1656626930000,
"description": "this is split shipment",
"captured": true,
"ref_num": "316300528100",
"auth_code": "723015",
"order": "KQ2J82T5ZCYEM",
"outcome": {
"network_status": "approved_by_network",
"type": "authorized"
},
"paid": true,
"status": "succeeded",
"source": {
"id": "clv_1ABCD23efghI45JklmN6o7p",
"brand": "MC",
"first6": "123456",
"last4": "1234"
}
}
Cancel the balance from the pre-authorization
Send a PUT
request to v1/charges/{{charge_id}}
to make the adjustment call to release the remaining balance from the pre-auth.
Example: The original pre-auth is for $10.00, and the first split shipment was captured for $4.40. The PUT call immediately releases the remaining balance ($5.60).
PUT v1/charges/{{charge_id}}
{
"amount": "440"
}
{
"id": "94V2KC7YASTE2",
"amount": 150,
"payment_method_details": "card",
"currency": "usd",
"created": 1686587177000,
"description": "this is split shipment",
"captured": true,
"ref_num": "316300528100",
"auth_code": "723015",
"order": "KQ2J82T5ZCYEM",
"outcome": {
"network_status": "reversed_after_approval"
},
"paid": true,
"status": "succeeded",
"source": {
"id": "clv_1ABCD23efghI45JklmN6o7p",
"brand": "MC",
"first6": "518701",
"last4": "2435"
},
"amount_captured": 1150
}
Updated about 1 year ago