Adyen-for-platform icon

View the executions of a custom payout schedule

You can view all payout executions of a custom payout schedule on your balance account.

A payout initiated by a payout schedule is called an execution. You can view all executions of a custom payout schedule on your balance account in your Customer Area, or by making a Configuration API request.

Requirements

Before you begin, take into account the following requirements, limitations, and preparations:

Requirement Description
API credentials To view payout executions through API requests, your credential for the Configuration API must have the following role:
  • Bank Scheduled Payouts Merchant Role
Customer Area roles To view payout executions in your Customer Area, make sure that your user has the following roles:
Webhooks To track payout executions and the resulting funds movements, subscribe to the following webhooks:

View payout schedule executions in Customer Area

To view the executions of a custom payout schedule in your Customer Area:

  1. Go to Account holders > Account holder list, and search for the account holder.
  2. Open the Balance accounts tab and select the relevant balance account ID.
  3. Under Scheduled transfers, select the custom payout schedule.
    A managed payout schedule specifies the estimated arrival time of the payout, while a custom schedule specifies the transfer schedule.
  4. Open the Events tab to view the payout timeline, where you can:
    • View the date of the next payout.
    • Review past payout events, including execution dates and statuses.

Execution event statuses and reasons

The table below explains the statuses you may see in the Events tab for each pre-configured payout schedule:

Status Description Possible reasons
Sent The payout was successfully created and sent. n/a
Failed The payout schedule could not be sent because an error occurred. The payout failed due to an error. The external bank account may be closed or suspended, or the capability to send funds to the transfer instrument may be disabled due to missing Know Your Customer (KYC) checks. Payouts will continue to fail until the root cause is resolved.

If the balance in the balance account is zero or lower than the target amount ( targetAmount), or if the payout schedule is disabled, the payout is not executed. The execution does not appear in the Events tab.

View payout schedule executions through API

To view the executions of a custom payout schedule applied to a balance account using the Configuration API:

  1. Make a GET  /balanceAccounts/{balanceAccountId}/sweeps/{id}/executions request, specifying the balance account ID in the path.

  2. The response includes the sweepExecutions array, which contains all the executions of the payout schedule.

Execution results and reasons

When a payout is supposed to be triggered according to the custom payout schedule, Adyen sends a webhook to notify you of the success or failure of the execution.

The webhook payload includes a result which corresponds to the webhook type.

If the balance in the balance account is zero or lower than the target amount ( targetAmount), the payout is not executed. If the custom payout schedule is disabled, the payout is not executed. In both cases, Adyen does not send a webhook.

Successful payout execution

If the execution is successful, Adyen sends a balancePlatform.balanceAccountSweepExecution.succeeded webhook. The payload of the webhook contains:

  • balanceAccountSweepId: The unique identifier of the custom payout schedule (sweep).
  • id: The unique identifier of the execution.
  • resultDetails: An object containing the transferId of the resulting funds transfer.

Failed payout execution

If the execution fails, the resultDetails object contains a reasonCode and a reason.

The following table contains all possible combinations of result and reasonCode values.

Result Reason code Reason
failed insufficientFundsToCoverPayout Insufficient funds in reserve account to cover collateralized payout
failed routeNotFound Routing failures during transfer initiation process
failed counterpartyAccountBlocked Counterparty account blocked
failed counterpartyAccountInvalid Counterparty account invalid
failed accountHierarchyNotActive Account hierarchy not active
failed transferInstrumentDoesNotExist Transfer instrument does not exist
failed missingCapabilities Missing capabilities
failed amountExceedsRouteLimits Amount exceeds route limits
failed amountFallsShortOfRouteLimits Amount falls short of route limits
failed amountInvalid Amount invalid
failed addressInvalid Address invalid
failed balanceAboveMaxThreshold Payout amount is more than configured maximum threshold

If an execution fails, Adyen sends a balancePlatform.balanceAccountSweepExecution.failed webhook. The payload of the webhook contains:

  • balanceAccountSweepId: The unique identifier of the custom payout schedule (sweep).
  • id: The unique identifier of the execution.
  • resultDetails: An object containing the reason and reasonCode of the failure.
  • sweepConfigurationDisabled: A boolean value indicating whether the custom payout schedule was disabled.

When an execution fails, the failure may be flagged as final by our system. This happens when, for example, we receive a notification that the counterparty account is permanently closed and can no longer be used. In this case, the custom payout schedule is disabled and sweepConfigurationDisabled is set to true.

Track fund movements

When a custom payout execution is successful, it triggers a funds transfer. To track the lifecycle of the funds as they move from the balance account to the bank account (transfer instrument) of your user, you can monitor the Transfer webhooks.

These webhooks provide real-time updates on the status of the funds movement, such as when the transfer is authorized, captured, or if it is eventually returned by the bank.

See also