Search

Are you looking for test card numbers?

Would you like to contact support?

Marketpay icon

Payouts

Learn how to make scheduled and one-off payouts to sub-merchants.

After an account holder starts receiving funds to their account, these funds can be paid out according to the current payout tier of the account holder. For more information on possible tiers and Know Your Customer (KYC) checks required for payouts, refer to Verification checks.

You can choose to pay out to your sub-merchant's bank account or to pay out to eligible cards.

Automatic payouts

By default, your marketplace account is configured to automatically send payouts daily to all account holders eligible. If necessary, you can ask Support Team to change the default schedule for automatic payouts in your marketplace.

In addition, you can manually set a new payout schedule for a particular account holder. To do this, make an /updateAccount call and pass a new schedule in the payoutSchedule parameter.

Here are the available schedules you can pass for payoutSchedule:

schedule description
DAILY Every day at midnight (00:00:00 CET).
MONTHLY Monthly at midnight (00:00:00 CET).
WEEKLY Weekly at midnight (00:00:00 CET).
WEEKLY_ON_TUE_FRI_MIDNIGHT Weekly every Tuesday and Friday at midnight (00:00:00 CET).
BIWEEKLY_ON_1ST_AND_15TH_AT_MIDNIGHT Monthly on the 1st and 15th at midnight (00:00:00 CET).
YEARLY Every year on January 1st at midnight (00:00:00 CET).
HOLD No scheduled payout by Adyen, you have to initiate the payout by manually triggering payouts

You can only perform automatic payouts for bank accounts. Automatic card payouts are not supported.

Request

{
    "accountCode": "198360329",
    "payoutSchedule": {
        "schedule": "WEEKLY",
        "action": "CLOSE"
    }
}

Response

{
    "invalidFields": [],
    "pspReference": "8515659450108985",
    "accountCode": "198360329",
    "payoutSchedule": {
        "schedule": "MONTHLY"
    }
}

You receive a response that may contain any of the following status codes:

  • HTTP 200: You can use the information returned in API response but wait for the ACCOUNT_UPDATED notification to confirm when the resource has been updated in our central database.
  • HTTP 202: The request has been acknowledged and added to the queue. Use the response to check and confirm the changes you made. Wait for the ACCOUNT_UPDATED notification to confirm if the payout schedule has been successfully updated.

Manually triggered payouts

To enable manually triggered payouts, first disable automatic scheduled payouts for your marketplace. For this, contact the Support Team.

Then you can make a /payoutAccountHolder request to manually trigger payouts to your sub-merchant's bank account or to a card eligible for payouts.

Request to submit a payout to a bank account

{
   "accountCode":"118731451",
   "amount":{
      "currency":"EUR",
      "value":99792
   },
   "accountHolderCode":"TestAccountHolder877209",
   "description":"12345 – Test",
   "bankAccountUUID":"000b81aa-ae7e-4492-aa7e-72b2129dce0c"
}

Response

{
   "invalidFields": [],
   "pspReference":"9914719437810080",
   "bankAccountUUID":"000b81aa-ae7e-4492-aa7e-72b2129dce0c"
}

Response in case of a validation error

{
  "invalidFields": [
    {
      "errorCode": 29,
      "errorDescription": "Account code does not exist or invalid",
      "fieldType": {
        "field": "accountCode",
        "fieldName": "accountCode"
      }
    }
  ],
  "pspReference": "8515659454939302",
  "resultCode": "Failed"
}

Wait for the ACCOUNT_HOLDER_PAYOUT notification to confirm if the payout has been successfully completed.

For detailed information on possible error codes, refer to General error codes.

Refund last transactions

With the /refundNotPaidOutTransfers call, you can schedule a refund for all of the transactions that have occurred since the last payout and have not been paid out yet.

Request

{
   "accountHolderCode":"TestAccountHolder502924",
   "accountCode":"189184578"
}

Response

{
   "pspReference":"9914764308750114",
   "resultCode":"Received"
}

Wait for the SCHEDULED_REFUNDS notification to confirm the status of the request.

See also