Payments & Fund TransfersBatch Payments

Create a Bank Payment File

Create a bank payment file that adheres to the bank's required formatting standards for direct portal upload. This operation does not initiate any batch payment via server file transfer. The generated file is returned as base64-encoded content.

The request accepts the same shape as Create a Batch Payment, plus an optional payrollIndicator field: indicate 'Y' for payroll payment files and 'N' for non-payroll. If omitted, the value defaults to 'N'.

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

POST
/v1/payment-files

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.

outputFormat?string

Output format hint for the generated file, where the bank integration supports more than one format. Optional.

paymentDate*string

The date payment should be sent.

Formatdate
payments*array<InlinedPaymentGeneric>

Payments to include in the file. Maximum 1000 items.

payrollIndicator?string

Indicate 'Y' for payroll payment files and 'N' for non-payroll. If omitted, the value defaults to 'N'.

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.

type*string

Type of payment. Refer to the bank specific payment rules page for the supported types.

Response Body

*/*

application/json

application/json

curl -X POST "https://example.com/v1/payment-files" \
  -H "Content-Type: application/json" \
  -d '{
    "currency": "string",
    "paymentDate": "2019-08-24",
    "payments": [
      {
        "amount": 1,
        "receiver": {}
      }
    ],
    "senderAccountId": "string",
    "type": "string"
  }'
{
  "contentType": "string",
  "fileData": "string",
  "fileName": "string",
  "format": "string"
}