Skip to content

Bulk Settlement

Bulk settlement allows partners to settle multiple transfers in a single bank transfer at the end of a settlement period. This model splits transfer creation/funding from final settlement, allowing Wise to process transfers before receiving funds based on a partner's guarantee.

Use the settlement journal endpoint to submit a list of transfers to be settled, along with the settlement reference that matches your bank transfer payment.

Send a settlement journal

Request

Sends the settlement journal to Wise. There are two types of settlement:

  • Same Currency Settlement — Settle in the same currency as the transfers (e.g., settle USD transfers with USD).
  • Cross Currency Settlement — Settle in a different currency (e.g., settle PHP transfers with USD). In this case, you must specify settlementCurrency and include exchangeRate on every transfer.

You must use a client credentials token to authenticate this call.

Security
ClientCredentialsToken
Headers
X-External-Correlation-Idstring, (uuid), <= 36 characters

Optional UUID for correlating requests across systems. If provided, Wise echoes it back in the response. Maximum 36 characters. Learn more.

Example:f47ac10b-58cc-4372-a567-0e02b2c3d479
Bodyapplication/jsonrequired
typestringrequired

Type of settlement.

Value:"TRUSTED_BULK_SETTLEMENT"
Example:"TRUSTED_BULK_SETTLEMENT"
settlementReferencestring^TPFB.{1,6}$required

Reference used when paying the end of day settlement monies to Wise. This should match so that Wise can link the payment.

Maximum 10 characters, must start with TPFB prefix.

Example:"TPFB190322"
settlementDatestring, (date-time)required

The date you send the settlement funds, ISO 8601 format.

Example:"2019-03-22T23:59:59-05:00"
settlementCurrencystring

The currency in which the transfers in this journal will be settled. If included, the exchangeRate must be set on every transfer in the transfers array. Only include if you will settle in a currency different to the source currency of transfers.

Example:"USD"
transfersArray of objectsrequired

Array of transfers to be settled.

refundedTransfersArray of objects

Array of transfers for which refunds have been processed. Only for Net Settlement.

balanceTransfernumber, (decimal)

The amount of money to be deducted from the expected settlement amount based on what is owed to you for previous days where the total settlement from you to Wise was negative.

This value must be 0 or negative.

Example:0
curl -i -X POST \
  https://api.wise.com/2026Q3/settlements \
  -H 'Authorization: Bearer <YOUR_JWT_HERE>' \
  -H 'Content-Type: application/json' \
  -H 'X-External-Correlation-Id: f47ac10b-58cc-4372-a567-0e02b2c3d479' \
  -d '{
    "type": "TRUSTED_BULK_SETTLEMENT",
    "settlementReference": "TPFB190322",
    "settlementDate": "2019-03-22T23:59:59-05:00",
    "transfers": [
      {
        "id": 125678,
        "date": "2019-03-22T10:00:12-05:00",
        "sourceAmount": 23.24,
        "sourceCurrency": "USD",
        "customerName": "Joe Bloggs",
        "partnerReference": "11111",
        "comment": "Extra Data"
      },
      {
        "id": 178889,
        "date": "2019-03-23T12:40:05-05:00",
        "sourceAmount": 125.67,
        "sourceCurrency": "USD",
        "customerName": "Mat Newman",
        "partnerReference": "11112",
        "comment": "Extra Data"
      }
    ],
    "refundedTransfers": [
      {
        "id": 178880,
        "partnerReference": "11108"
      }
    ],
    "balanceTransfer": 0
  }'

Responses

Settlement journal received successfully. Empty response body.

Headers
X-External-Correlation-Idstring, (uuid), <= 36 characters

Echoed back when X-External-Correlation-Id was included in the request. Learn more.

Example:"f47ac10b-58cc-4372-a567-0e02b2c3d479"
x-trace-idstring

Unique trace identifier assigned by Wise. Useful when contacting support about a specific request.

Example:"fba501b6d453b96789f52338f019341f"
Response
No content