Automate internal fund transfers by configuring sweeps, in the same manner as setting up scheduled payouts. A sweep automatically pushes out or pulls in funds from a balance account based on a pre-defined schedule, amount, and source or destination. For more information, refer to How sweeps work.
Configure a push or pull sweep depending on the scenario. For example, to maintain balances, you can set up a pull sweep to pull funds from another balance account when the balance goes below a certain amount.
This page explains how to configure sweeps to schedule automatic transfers between balance accounts.
How sweeps work
Sweeps are configured on a balance account. The configuration includes the type of the sweep and conditions, such as the schedule when the sweep is evaluated or a trigger amount. The type dictates the direction of the funds: push to push funds out of the balance account to a destination that you specify, or pull to pull funds in to the balance account from a source that you specify.
You can also set sweep conditions such as:
- Transfer the entire available amount or a fixed amount.
- Maintain an amount on the balance account.
- Set an amount that triggers the sweep.
When the conditions for the sweep are met, it triggers a transfer request. Adyen sends webhooks to your server when a transfer request results from a sweep.
Requirements
- Make sure that your server can receive and accept webhooks, and that you subscribed to the Transfer webhooks in your Customer Area.
- Ask our Support Team to enable transfers for the balance account that initiates the transfer request.
- If the balance accounts involved in the transfer do not belong to the same account holder, check the capabilities of the account holders:
- The account holder of the balance account that sends the the transfer request must have the sendToBalanceAccount capability.
- The account holder of the balance account that receives the transfer request must have the receiveFromBalanceAccount capability.
Create a sweep
Configure sweeps by using your Customer Area, or making a POST /balanceAccounts/{balanceAccountId}/sweeps request. In this example, we will use a push sweep to push funds out of a balance account.
Get updates when a transfer results from a sweep
For every internal transfer request that results from a sweep, Adyen sends multiple webhooks to your server: a series of webhooks for the balance account where the transfer is an outgoing request, and a series of webhooks for the balance account where the transfer is an incoming request.
Using these webhooks, you can track the status of the transfer: received, then authorised, and finally booked. The webhooks also inform you if the transfer failed.
You can also view the transfer details in your Customer Area. Each transfer of funds between balance accounts appears in the Customer Area as two transfer entries: one for the balance account that is credited, and one for the balance account that is debited.