Marketplace icon

Schedule automatic internal funds transfers

Create a schedule to automatically transfer funds between balance accounts within your marketplace.

Automate internal funds 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. If you want to automate sending bonuses from your liable balance account, you can set up a push sweep to push funds from the liable balance account to your user's balance account.

This page explains how to configure sweeps to schedule automatic transfers between balance accounts.

Before you begin

  • Ensure that your server can receive and accept webhooks, and that the Transfer webhooks have been added in your Customer Area.
  • Ask our Support Team to enable transfers for the balance account that pushes or pulls funds.
  • 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 where the push or pull transfer request is initiated must have the sendToBalanceAccount capability.
    • The account holder of the balance account where the push or pull transfer request is received must have the receiveFromBalanceAccount capability.

Step 1. 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.

To configure sweeps in your Customer Area, your account must have the Manage sweep configurations role.

  1. In the navigation menu, select the merchant account linked to your balance platform.

  2. In Accounts & balances > Balance accounts, select a Balance account ID.

  3. In Scheduled transfers panel, select Add a transfer schedule.

  4. Select Payout schedule.

  5. Select Next.

  6. Enter and verify the configuration details in their respective fields.

    Field Description
    When balance on Automatically set to the balance account ID.
    Is more or equal to Set a trigger amount. Before paying out the funds, Adyen checks if the available balance is more than or equal to the trigger amount.
    Action Select Push an amount or Maintain a balance.
    Push this amount Select Entire available balance or Custom. Read more on how Adyen calculates the available balance.
    Push balance to Select Balance account.
    Balance account Id Select the ID of the balance account.
    When schedule matches Select the predefined schedules or Custom.
    Schedule If you select a Custom schedule, specify the schedule or a cron expression. Select Submit.
    Activate Immediately after creation
    Description Enter a description for the schedule. (Optional)
  7. Select Next.

  8. Review the information that you provided.

  9. Select Save.

The details of your scheduled transfer are shown in Scheduled transfers.

The following example shows how to enter the configuration details.

Your user has two balance accounts, balance account 1 and balance account 2, which they use for different purposes. On balance account 1, they want to maintain a balance of EUR 200. To do this, they want to check on every Wednesday at 9:30 AM if the funds in balance account 1 have exceeded EUR 250 and push this excess to balance account 2.

The following table shows the details you must enter for this case.

Field Details
When balance on BA00000000000000000000001
Is more or equal to EUR 250
Action Maintain a balance
Maintain a balance of EUR 200
Push balance to Balance account
Balance account BA00000000000000000000002
When schedule matches Custom
Schedule Cron Expression > 30 9 * * 3 > Submit
Activate Immediately after creation

Step 2. 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.

View sweep details

After you create a sweep, you can view the details of the resulting scheduled transfer in your Customer Area. These details include:

  • Transfer amount
  • Source and destination of the transfer
  • Completed and upcoming scheduled transfers

You can view the details of all payout schedules and internal transfer schedules in the Balance account details page, under Scheduled transfers. To do this your account must have one of the following roles:

  • Balance platform base role
  • Balance platform admin role

To view details:

  1. In Accounts & balances > Balance accounts, select a Balance account ID.
  2. In Balance account details, under Scheduled transfers, select a scheduled transfer.
  3. Select View details.