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 about how to split the funds between your user's balance accounts and your platform's liable balance account. You can define these instructions in the following ways:
- Automatically split all transactions processed through your user's store by setting up split configuration profiles.
- Split transactions by defining instructions for each API request. 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 in a split configuration profile or through and API request, the whole transaction amount and fees are booked to your user's balance account.
Requirements
Take into account the following requirements, limitations, and preparations to start processing payments.
Requirement | Description |
---|---|
Integration type | You must have an Adyen in-person payments integration. |
API credentials | You must have credentials for the following APIs: |
Webhooks | Ensure that your server can receive and accept standard webhooks. Subscribe to any of the following webhooks: |
Capabilities | Make sure that your account holders have the following capabilities:
|
Setup steps | When you build a point-of-sale integration with Adyen, you must take action on the following topics:
|
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.
Send split instructions
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 |