Make a payout to your business account

Make a secure payout to a preconfigured business account.

When onboarding with TrueLayer, you can choose to associate your merchant account with your business account. Some checks need to be performed as part of this.


Sweeping in Console

You can set up regular payments from your merchant account to your business account from the merchant account dashboard in Console. Configure merchant account sweeping.

Before you start

In order to pay out to your business account with this method, you must have associated a business account with your merchant account as part of onboarding. You need the id for this merchant account to create the payout request.

As with all Payments API requests, you also need to:

  • Set up request signing so you can create a Tl-Signature header for your request.
  • Generate an access token to include as a bearer token for your request.
    This should also have the appropriate scopes (payments for a single payment).

You should also provide an Idempotency-Key with each of your payout requests.

Create a payout to your business account

To create an open-loop payout, make a POST request to /v3/payouts endpoint, providing the parameters below. You must select business_account as the beneficiary.type for an open-loop payout.

merchant_account_idThe unique ID of the merchant account to pay out from.
amount_in_minorThe amount in minor units. Minor units are the smallest units of a currency, depending on the number of decimals.

For example: 1 GBP = 100 pence.
currencyCurrency of the payment in ISO 4217.

You cannot make a payment from GBP currency to a EUR account, or the opposite. The beneficiary account is specified in the beneficiary.account_identifier object.
beneficiary.typeShould be business_account for a payout to a business account.
beneficiary.referenceA reference for the payment.


Integration options

Although the example on this page uses HTTP, we also offer complete .NET and Java libraries you can use to integrate payout creation.

This is an example of a business account payout creation request using HTTP:

POST /v3/payouts HTTP/1.1
Content-Type: application/json; charset=UTF-8
Idempotency-Key: random
Tl-Signature: {SIGNATURE}
Authorization: Bearer {TOKEN}
  "beneficiary": {
    "type": "business_account",
    "reference": "TrueLayer withdrawal"
  "merchant_account_id": "a",
  "amount_in_minor": 100,
  "currency": "GBP"

Below is an example of a successful response, including the payout id:

  "id": "fb976298-dc3a-4207-b399-c1084ee8232c"