Are you looking for test card numbers?

Would you like to contact support?

Marketpay icon

Split at capture

Learn how to split a transaction at the time of capture.

If the split amounts are not known or decided at the time of payment, you can provide the split data in a /payments/paymentPspReference/captures request instead.

Providing split data at capture overrules data from the original payment request. If you don't send split data in the capture request, we use the split data from the payment authorisation.

If you consider splitting at capture, take into account the following restrictions:

  • Splitting payments at capture is only possible for payment methods that support separate captures.
  • When using payment methods that do not support delayed captures, the funds may not be booked correctly unless the split data is provided in the payment request.
  • Partial captures require you to supply split data. If you don't provide split data, then all funds are booked to your liable balance account.

To split a payment at capture, first you need to enable manual captures, then follow up with a /payments/paymentPspReference/captures API call containing the split details. You can also override the split information you provided in the payment request if you send different split data in your capture request.

Enable manual capture

You can enable manual capture on different levels:

Step 1: Get the pspReference

From the transactionID field in the payment response, get the pspReference of the authorization you want to capture.

Step 2: Send the capture request

To capture and split a payment at the same time, send a POST /payments/paymentPspReference/captures request, where paymentPspReference is the pspReference of the authorization you want to capture.

In the body, include the splits array. For each item in the array, specify the following fields:

Parameter Required Description
account -white_check_mark- The account that will receive (or be charged) the split amount. This is the balanceAccountId of one of your user's balance accounts. You do not need to specify this field when type is Commission.
amount.value -white_check_mark- The value of the split amount. You do not need to specify this field for transaction fees, since they are not known at the time of payment.
type -white_check_mark- Defines the part of the payment you want to book to the specified account.
Possible values:
  • BalanceAccount: books the sale amount against the specified balance account.
  • Commission: books the commission against your liable balance account.
  • Remainder: books the amount left over after a currency conversion to the specified balance account.
  • You can also book different types of transaction fees to different balance accounts.
amount.currency Required for currency conversion The currency of the split amount.
reference Required if type is BalanceAccount Your unique identifier for the specific transaction split.
description Your description for that specific transaction split, which is returned in our reporting.

Here is an example of how you can split the payment amount at the time of capture, when a customer pays for goods worth EUR 400.00.

  • EUR 396.00 are booked to your user's balance account as payment for the goods.
  • EUR 4.00 are booked to your liable balance account as your platform's commission.
  • All transaction fees are booked against your user's balance account, deducted from the sale amount.

Step 3: Check the result

API response

In the capture response, note the following:

  • paymentPspReference: the PSP reference of the authorization
  • pspReference: the PSP reference associated with this capture request. This is different from the PSP reference of the authorization.
  • status: received

Webhook

Wait for the CAPTURE webhook to learn the outcome of the request.

See also