Payments & Fund TransfersBatch Payments

Create a Batch Payment

Create a batch payment.

This is an asynchronous operation. Listen to the payments.succeeded or payments.failed webhook to be notified of the final outcome of each payment.

See the Batch Payments guide for a more detailed explanation on how to use this API.

Please refer to the payment rules page of each bank under Guides for details on per-bank limitations.

POST
/v1/payment-batches

Authorization

authorization
AuthorizationBearer <token>

Set Your Secret API Key

In: header

Header Parameters

Idempotency-Key?string

A unique value, eg. a UUID.

Request Body

application/json

TypeScript Definitions

Use the request body type in TypeScript.

currency*string

Three-letter ISO 4217 currency code in full uppercase. Must be a currency supported by the payment type.

Length1 <= length
paymentDate*string

The date payment should be sent.

Formatdate
payments?array<InlinedPaymentGeneric>

Payments to create in this batch. Maximum 1000 items.

senderAccountCurrency?string

Currency to use in the sender account, if it has multiple currencies. Optional if the sender account only has one currency configured.

senderAccountId*string

ID of the Internal Account that will be debited to make the payments.

Length1 <= length
type*string

Type of payment. Default PAYNOW is via FAST. Refer to the bank specific payment rules page for the supported types.

Length1 <= length

Response Body

*/*

application/json

application/json

curl -X POST "https://example.com/v1/payment-batches" \
  -H "Content-Type: application/json" \
  -d '{
    "currency": "string",
    "paymentDate": "2019-08-24",
    "senderAccountId": "string",
    "type": "string"
  }'

SGD batch of bank account transfers. The batch and each payment start in PROCESSING while Acme builds the file for the bank.

{
  "id": "bpmt_0J7Q4A2M8V5X1",
  "type": "FAST",
  "paymentDate": "2026-09-10",
  "senderAccountId": "intacc_0H3BQY9BK1FCG",
  "senderAccountCurrency": "SGD",
  "currency": "SGD",
  "payments": [
    {
      "id": "pymt_0J7Q4C7T3W9R2",
      "amount": 20000,
      "currency": "SGD",
      "customerReference": "DONUTS",
      "paymentDetails": "10 boxes of 12 each",
      "receiver": {
        "name": "Donut Shop",
        "bank": "OCBCSGSGXXX",
        "bankAccountNumber": "123456789"
      },
      "status": "PROCESSING",
      "paymentAdviceEmails": [
        "finance@example.com"
      ],
      "createdAt": "2026-09-09T01:02:03.417284Z",
      "updatedAt": "2026-09-09T01:02:03.417284Z"
    },
    {
      "id": "pymt_0J7Q4F1K6D8N5",
      "amount": 3000,
      "currency": "SGD",
      "customerReference": "COFFEE",
      "receiver": {
        "name": "Coffee Shop",
        "bank": "UOVBSGSGXXX",
        "bankAccountNumber": "345678901"
      },
      "status": "PROCESSING",
      "createdAt": "2026-09-09T01:02:03.463910Z",
      "updatedAt": "2026-09-09T01:02:03.463910Z"
    }
  ],
  "status": "PROCESSING",
  "createdAt": "2026-09-09T01:02:03.401556Z",
  "updatedAt": "2026-09-09T01:02:03.512090Z"
}