GoCardlessDeveloper Docs
Create a sandbox account

Create an outbound payment#

View as Markdown

There are two types of outbound payments you can create: regular outbound payments (sent to the recipient you specify) and withdrawals (transferred to your verified business bank account).

Regular outbound payments#

Let's create your first outbound payment. At a minimum, you need to specify the following details:

  • amount in minor units (e.g., pence for GBP, cents for EUR)
  • scheme — the payment scheme you want to use
  • recipient_bank_account — your customer bank account ID

The Outbound Payment API enforces idempotent creation to prevent duplicate payments. The Idempotency-Key header is mandatory. For details, refer to the API reference.

Here's an example to guide you:

POST https://api.gocardless.com/outbound_payments HTTP/1.1
{
  "outbound_payments": {
    "amount": 10000,
    "scheme": "faster_payments",
    "description": "Affiliate Program Payout – January",
    "links": {
      "recipient_bank_account": "BA0001AA111AAA"
    }
  }
}

Withdrawals#

Withdrawals are essentially regular outbound payments — they follow the same lifecycle, events, creation and cancellation process, and other behaviours. The only difference is that withdrawals are sent to your nominated (and verified) bank account. A separate endpoint is provided for convenience, as you don't need to specify a recipient.

Withdrawals are useful when you wish to move funds out of your Payment Account. This is particularly relevant for organisations using the Funding from Collections model, where payouts from Collections accumulate in your Payment Account unless a withdrawal is made.

All unassigned funds are automatically paid out to your nominated business bank account quarterly — on the first Tuesday of each January, April, July, and October.

Here's an example of creating a withdrawal:

POST https://api.gocardless.com/outbound_payments/withdrawal HTTP/1.1
{
  "outbound_payments": {
    "amount": 10000,
    "scheme": "faster_payments",
    "description": "Surplus Payout January"
  }
}

Scheduling future-dated outbound payments#

In the standard scenario for instant schemes such as Faster Payments, your outbound payment is sent immediately and typically reaches the recipient's bank account within seconds (in rare cases it may take up to a few hours).

To schedule a payment for a specific future date, set the execution_date field:

POST https://api.gocardless.com/outbound_payments HTTP/1.1
{
  "outbound_payments": {
    "amount": 10000,
    "scheme": "faster_payments",
    "description": "Affiliate Program Payout – January",
    "execution_date": "2025-01-01",
    "links": {
      "recipient_bank_account": "BA0001AA111AAA"
    }
  }
}

What's next?#