Split transactions automatically
You can configure your users' stores to automatically split all transactions. This means that you do not need to send split instructions in every payment or capture request.
For more information, see Split transactions automatically.
When you process transactions on behalf of your users, you must determine where to book the funds.
To make sure that the pay-in, settlement, and payout processes run smoothly for all users' transactions, you must book the funds and fees to the correct balance accounts.
This means that you must define instructions on how to split the funds between your user's balance accounts and your platform's liable balance account. You can either define these instructions in the following ways:
- Automatically split all transactions processed through a specific store by setting up split configuration profiles.
- Split specific transactions by defining instructions manually for each API request you send.
The instructions you provide in your API requests override the instructions you defined in your split configuration profiles.
If you do not provide any split instructions, the whole transaction is booked to your platform's liable balance account, including all associated fees.
Split specific transactions
If you want to define separate instructions for specific transactions in your platform, you can define the split instructions in your API requests. The instructions you provide in your API requests override any automatic split configuration profiles applied to your user's store.
The following information on this page explains the process of defining split instructions for specific transactions. Before sending an API request with split instructions, make sure you understand:
- When to provide split instructions
- How you can split a transaction
- How to send split instructions
- Which split types you can include in your request
When to provide split instructions
You can provide instructions to split payments when you make the following requests:
- An authorization request for a payment using Terminal API
- A capture request for a payment using Checkout API
You can provide instructions to split refunds when you make the following request:
This means that for every authorization, capture, or refund request that occurs in your platform, you can determine how to book the funds from that transaction.
How to split a transaction
When you process transactions for your users, you can split the funds and book them to any number of balance accounts in your platform.
For payments, you can provide specific instructions on booking:
- The sale amount for the goods or services
- Your marketplace's commission for the payment
- The fees incurred by transactions
- The surcharge paid by the customer
- The tip paid by the customer
For refunds, you can provide specific instructions on booking:
- The sale amount of the refund
- Your marketplace's commission that is now refunded
- The fees incurred by the refund
Your platform's commission is always booked to your liable balance account.
Send split instructions
When you split a payment or refund between multiple balance accounts, each split serves a different purpose. For example, a part of the transaction goes to your liable balance account as your platform's commission, and a part goes to your user's balance account as the sale amount.
When you send an API request for a payment or refund, you must define split instructions for each split of the full transaction amount.
To define split instructions in your Terminal API requests:
- Format the split instructions either as form-encoded key-value pairs, or as a JSON object converted to a Base64-encoded string.
- Pass the formatted instructions in the
saleToAcquirerData
object of your authorization or refund request.
To define split instructions for your capture request using the Checkout API, you must include a splits array in your request.
For more information on making a payment, capture, or refund request with a splits
array, see the following pages:
Split types
When you send an API request for a transaction, you must define split instructions for each split of the full transaction amount using the saleToAcquirerData
object. In each set of split instructions within the object, you must use the type
field to define the purpose of that split.
Certain split types also require you to define other values in the split instructions. For example, when you want to book the split amount to your user's balance account (type
is BalanceAccount), you must specify the ID of that balance account using the account
parameter.
The following table shows the possible split type
values you can send in your request, and whether you must send another parameter (account
, amount
, or reference
) in the split instruction. If you do not specify an account
in your split instructions, the split amount is booked to your liable balance account.
Split type | Description | Required additional parameters | Recommended additional parameters | |
---|---|---|---|---|
BalanceAccount | Books a part of the transaction to your user's balance account. You must specify the account and the amount in your request. |
account amount reference |
||
Commission | Books your platform's commission to your liable balance account. | amount |
reference |
|
Interchange | Books the fee paid to the issuer to the specified account . |
account reference |
||
SchemeFee | Books the scheme fee to the specified account . |
account reference |
||
AcquiringFees | Books the aggregated amount of the interchange and scheme fees to the specified account . |
account reference |
||
AdyenCommission | Books the transaction fee due to Adyen under blended rates to the specified account . |
account reference |
||
AdyenMarkup | Books the transaction fee due to Adyen under Interchange ++ pricing to the specified account . |
account reference |
||
AdyenFees | Books the aggregated amount of Adyen's commission and markup to the specified balance account. | account reference |
||
PaymentFee | Books the aggregated amount of all the transaction fees to the specified account . |
account reference |
||
VAT | Books the value-added tax (VAT) incurred on a payment to the specified account , allowing you to book this tax separately from the sale amount. |
amount |
account reference |
|
Surcharge | Books the surcharge paid by the customer to the specified account . |
account reference |
||
Tip | Books the tip (gratuity) paid by the customer to the specified account . The tip amount is provided by the customer on the terminal. |
account reference |