There can be various reasons to keep track of the account balances in your balance platform. For example, to make an on-demand payout to a user, you need to know how much cash is available on the balance account of that user.
To check the balance positions on the balance accounts of your users, you can:
- Use the Balance Platform Balance report to view daily balances.
The Balance report shows the opening and closing balances in your balance platform on a given day for all account holders, balance accounts (including your liable account), and balance account currencies. - Use the Balance Platform Accounting Report to calculate balances.
When using the Accounting report, an important concept is value-date accounting.
View balances
To view the daily balances on the accounts in your balance platform:
- Get the Balance Platform Balance Report for a specific date.
- Filter the report to get the information you are looking for.
Balance Platform Balance Report
The following Balance Platform Balance Report example shows the opening and closing balances for two balance accounts on the 8th of June, 2022.
Balance Platform | Account Holder | Balance Account | Opening Balance Currency | Opening Balance Amount | Opening Date | Opening Time | Closing Balance Currency | Closing Balance Amount | Closing Date | Closing Time |
---|---|---|---|---|---|---|---|---|---|---|
YOUR_BALANCE_PLATFORM | AH00000000000000000000001 | BA00000000000000000000001 | USD | 10.00 | 2022‑06‑08 00:00:00 | CEST | USD | 5.00 | 2022‑06‑09 00:00:00 | CEST |
YOUR_BALANCE_PLATFORM | AH00000000000000000000001 | BA00000000000000000000001 | CAD | 25.00 | 2022‑06‑08 00:00:00 | CEST | CAD | 85.00 | 2022‑06‑09 00:00:00 | CEST |
YOUR_BALANCE_PLATFORM | AH00000000000000000000002 | BA00000000000000000000002 | USD | 60.00 | 2022‑06‑08 00:00:00 | CEST | USD | 70.00 | 2022‑06‑09 00:00:00 | CEST |
Calculate balances
To calculate the balances on the accounts in your balance platform:
- Get the Balance Platform Accounting Report.
- Filter the report on the balance account you are interested in.
- Add up the amounts in the Balance (PC) column.
Balance Platform Accounting Report
The following Balance Platform Accounting Report example shows that the split amount for a payment with PSP reference F2FTV3THPB9Z2C33 to balance account BA322VL223232B5FJMDFQBC7O was received, authorised, and captured on the booking data, 2023‑01‑18. In the Balance (PC) column, the amount for the received and authorised states is zero because the funds are not available yet. On the value date, 2023‑01‑20, the Balance (PC) column shows the split amount that has become available on the balance account.
The other rows in the example report also belong to the payment with PSP reference F2FTV3THPB9Z2C33, but they represent the split amounts that are transferred to other balance accounts.
BalancePlatform | AccountHolder | Account Holder Reference | Account Holder Description | BalanceAccount | Balance Account Description | Balance Account Reference | Transfer Id | Transaction Id | Category | Status | Type | Booking Date | Booking Date TimeZone | Value Date | Value Date TimeZone | Currency | Amount | Original Currency | Original Amount | Payment Currency | Received (PC) | Reserved (PC) | Balance (PC) | Reference | Description | Psp Payment Psp Reference | Psp Payment Merchant Reference | Psp Modification Psp Reference | Psp Modification Merchant Reference | Brand Variant | Reference for Beneficiary | Platform Payment Interchange | Platform Payment Scheme Fee | Platform Payment Markup | Platform Payment Commission | Platform Payment Cost Currency | |
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
YOUR_PLATFORM | AH322VK223232B5FJMDFQCGSQ | 1234‑5678‑9012‑3456 | YourPlatformUserInc | BA322VL223232B5FJMDFQBC7O | YourPlatformUserInc Balance Account | 1234‑5678‑9012‑3456_A | 2OV8675YMHK79ZDZ | platformPayment | received | capture | 2023‑01‑18 15:23:22 | CET | EUR | 97.00 | EUR | 97.00 | 0.00 | 0.00 | yourcompany/transaction/YC1234567890 [Split - Type Balance Account - Reference] | F2FTV3THPB9Z2C33 | UUID1 | GXH5DJ7C6WVFZP73 | UUID1a | payment_pspCapture | |||||||||||||
YOUR_PLATFORM | AH322VK223232B5FJMDFQCGSQ | 1234-5678-9012-3456 | YourPlatformUserInc | BA322VL223232B5FJMDFQBC7O | YourPlatformUserInc Balance Account | 1234-5678-9012-3456_A | 2OV8675YMHK79ZDZ | platformPayment | authorised | capture | 2023‑01‑18 15:23:22 | CET | EUR | 97.00 | EUR | -97.00 | 97.00 | 0.00 | yourcompany/transaction/YC1234567890 [Split - Type Balance Account - Reference] | F2FTV3THPB9Z2C33 | UUID1 | GXH5DJ7C6WVFZP73 | UUID1a | payment_pspCapture | |||||||||||||
YOUR_PLATFORM | AH322VK223232B5FJMDFQCGSQ | 1234-5678-9012-3456 | YourPlatformUserInc | BA322VL223232B5FJMDFQBC7O | YourPlatformUserInc Balance Account | 1234-5678-9012-3456_A | 2OV8675YMHK79ZDZ | 20A0VZ5YMHK7G9MR | platformPayment | captured | capture | 2023‑01‑18 15:23:25 | CET | 2023‑01‑20 00:00:00 | CET | EUR | 97.00 | EUR | 0.00 | -97.00 | 97.00 | yourcompany/transaction/YC1234567890 [Split ‑ Type Balance Account ‑ Reference] | OrderNo. YC1234567890 YourPlatformUserInc [Split Type Balance Account ‑ Description] | F2FTV3THPB9Z2C33 | UUID1 | GXH5DJ7C6WVFZP73 | UUID1a | payment_pspCapture | yourcompany/transaction/YC1234567890 [Split - Type Balance Account - Reference] | ||||||||
YOUR_PLATFORM | AH322VC223232B5F4K9H6CZV0 | YourCompany Account Holder | BA322VD223232B5F4K9H77VB9 | YourCompany Default Liable Balance Account | 2OV8675YMHK79ZHR | platformPayment | received | capture | 2023‑01‑18 15:23:22 | CET | EUR | 3.00 | EUR | 3.00 | 0.00 | 0.00 | Your Internal UUID_TYwNTIwMTgxNDg3IiwicCI6IjM [Split - Type Commission - Reference] | F2FTV3THPB9Z2C33 | UUID1 | GXH5DJ7C6WVFZP73 | UUID1a | payment_pspCapture | |||||||||||||||
YOUR_PLATFORM | AH322VC223232B5F4K9H6CZV0 | YourCompany Account Holder | BA322VD223232B5F4K9H77VB9 | YourCompany Default Liable Balance Account | 2OV8675YMHK79ZHR | platformPayment | authorised | capture | 2023‑01‑18 15:23:22 | CET | EUR | 3.00 | EUR | -3.00 | 3.00 | 0.00 | Your Internal UUID_TYwNTIwMTgxNDg3IiwicCI6IjM [Split - Type Commission - Reference] | F2FTV3THPB9Z2C33 | UUID1 | GXH5DJ7C6WVFZP73 | UUID1a | payment_pspCapture | |||||||||||||||
YOUR_PLATFORM | AH322VC223232B5F4K9H6CZV0 | YourCompany Account Holder | BA322VD223232B5F4K9H77VB9 | YourCompany Default Liable Balance Account | 2OV8675YMHK79ZHR | 20A0VZ5YMHK7G9NP | platformPayment | captured | capture | 2023‑01‑18 15:23:25 | CET | 2023‑01‑20 00:00:00 | CET | EUR | 3.00 | EUR | 0.00 | -3.00 | 3.00 | Your Internal UUID_TYwNTIwMTgxNDg3IiwicCI6IjM [Split ‑ Type Commission - Reference] | YourCompany‑Fee (balance_account=BA322VL223232B5FJMDFQBC7O) [Split ‑ Type‑Commission ‑ Description] | F2FTV3THPB9Z2C33 | UUID1 | GXH5DJ7C6WVFZP73 | UUID1a | payment_pspCapture | Your Internal UUID_TYwNTIwMTgxNDg3IiwicCI6IjM [Split - Type Commission - Reference] | ||||||||||
YOUR_PLATFORM | AH322VC223232B5F4K9H6CZV0 | YourCompany Account Holder | BA322VG223232B5F4K9J35V22 | YourCompany Fees Balance Account | 2OV8675YMHK79ZKM | platformPayment | received | capture | 2023‑01‑18 15:23:22 | CET | EUR | -2.57 | EUR | -2.57 | EUR | -2.57 | 0.00 | 0.00 | Your Internal/External UUID/identifier [Split - Type PaymentFee - Reference] | F2FTV3THPB9Z2C33 | UUID1 | GXH5DJ7C6WVFZP73 | UUID1a | payment_pspCapture | -1.90 | -0.17 | -0.50 | 0.00 | EUR | ||||||||
YOUR_PLATFORM | AH322VC223232B5F4K9H6CZV0 | YourCompany Account Holder | BA322VG223232B5F4K9J35V22 | YourCompany Fees Balance Account | 2OV8675YMHK79ZKM | platformPayment | authorised | capture | 2023‑01‑18 15:23:22 | CET | EUR | -2.57 | EUR | -2.57 | EUR | 2.57 | -2.57 | 0.00 | Your Internal/External UUID/identifier [Split - Type PaymentFee - Reference] | F2FTV3THPB9Z2C33 | UUID1 | GXH5DJ7C6WVFZP73 | UUID1a | payment_pspCapture | -1.90 | -0.17 | -0.50 | 0.00 | EUR | ||||||||
YOUR_PLATFORM | AH322VC223232B5F4K9H6CZV0 | YourCompany Account Holder | BA322VG223232B5F4K9J35V22 | YourCompany Fees Balance Account | 2OV8675YMHK79ZKM | 20A0VZ5YMHK7G9OT | platformPayment | captured | capture | 2023‑01‑18 15:23:25 | CET | 2023‑01‑20 00:00:00 | CET | EUR | -2.57 | EUR | -2.57 | EUR | 0.00 | 2.57 | -2.57 | Your Internal/External UUID/identifier [Split - Type PaymentFee - Reference] | 98f84784-c952-3aa8-a4a1-ea1f0774e58c-bd969b55-ccb3-3785-aef0-0f9d44a2aa43 | F2FTV3THPB9Z2C33 | UUID1 | GXH5DJ7C6WVFZP73 | UUID1a | payment_pspCapture | Your Internal/External UUID/identifier [Split - Type PaymentFee - Reference] | -1.90 | -0.17 | -0.50 | 0.00 | EUR |
Negative balances
Accounts in your balance platform can have a negative balance as a result of refunds or chargebacks. Adyen allows negative balances for up to 30 days. At the end of the month, if an account has had a negative balance for more than 30 days, Adyen compensates by debiting the amount from your balance platform's liable account. If you'd rather have account holders cover their negative balances instead, you can provide them the option to top up their balance accounts.
When Adyen compensates a negative balance, this will be reflected in the Balance Platform Accounting Report in an entry with a description or reference of Negative Balance compensation for {AccountHolderId}. You will also receive the following transfer webhooks:
Because this is an internal transfer between balance accounts in your balance platform, the entry in the Balance Platform Accounting Report and the transfer webhooks you receive will have category internal and type internalTransfer.
Note that negative balances only occur as a result of refunds or chargebacks. An account cannot have a negative balance due to paying out or transferring a balance. You can only pay out or transfer the available balance.
Receive advance notice
If you want Adyen to inform your system when an account on your balance platform has a negative balance for over 20 days, you can configure a Negative balance compensation warning webhook. This webhook provides advance notice of a scheduled internal transfer from your liable account to the balance account whose balance is negative.
This example of a balancePlatform.negativeBalanceCompensationWarning.scheduled webhook shows the following:
- There is a negative balance for the balance account with an
id
of BA00000000000000000001. - That balance account has held a negative balance of EUR 14050.50 since 2024-10-19T00:33:13+02:00.
- That balance account belongs to the account holder with an
id
of AH00000000000000000001. - The negative balance will be compensated through an internal transfer from the liable balance account with an
id
of BA11111111111111111111 to the balance account with anid
of BA00000000000000000001.- This compensation will happen if the negative balance amount has not been compensated by 2024-12-01T01:00:00+01:00 (the
scheduledCompensationAt
timestamp).
- This compensation will happen if the negative balance amount has not been compensated by 2024-12-01T01:00:00+01:00 (the
The default configuration for the number of days when a balance account can have a negative balance before you receive this webhook is 20 days. If you want to change that number to a different value, contact the Adyen Support Team.
Avoid internal transfers from your liable account
You can avoid an automatic internal transfer from your liable account to the negative balance account by doing one of the following:
- When you receive this webhook, you can proactively reach out to the account holder to request an on-demand transfer of funds to their balance account from their registered transfer bank account before the scheduled compensation date.
- Create automatic, scheduled sweeps for your account holders to top-up their balance account from their registered transfer bank account when their balance reaches a specific amount.