---
title: "Add several recipients to a batch"
method: POST
path: "/api/v1/payment-batch/{batchId}/recipients/bulk"
tags: ["Payment Batches"]
---

# Add several recipients to a batch

`POST /api/v1/payment-batch/{batchId}/recipients/bulk`

## Request

- Base URL: `https://sandbox.api.afriex.com`
- URL: `https://sandbox.api.afriex.com/api/v1/payment-batch/{batchId}/recipients/bulk`
- Auth: API key in header `x-api-key`
- TypeScript: <https://skmtc.dev/afriex/apis/afriex-business-api/docs/api/v1/payment-batch/:batchId/recipients/bulk/post.ts> (a function with typed inputs; its response is checked against the schema)

Adds each recipient independently and reports which were added. The results are keyed by account number. Requires the `PAYMENT_BATCH.UPDATE` key permission.

## Request body

- PaymentBatchRecipientRequest[]
  - `paymentMethodId` string: Id of a saved account of this business to update with these details. An id that is not one of this business's accounts is refused with `400`.
  - `channel` 'BANK_ACCOUNT' | 'MOBILE_MONEY' | 'VIRTUAL_BANK_ACCOUNT' | 'ACH_BANK_ACCOUNT' | 'INTERAC' | 'UPI' | 'SWIFT' | 'WE_CHAT', required
  - `accountName` string: Not used for `VIRTUAL_BANK_ACCOUNT`.
  - `accountNumber` string: Not used for `VIRTUAL_BANK_ACCOUNT`.
  - `countryCode` string, required
  - `institution` object: As on POST /api/v1/payment-method. Not used for `UPI` and `INTERAC`.
  - `amount` object, required
    - `value` string, required
    - `currencyCode` string, required

## Response `201`

Per-recipient outcomes

- object
  - `data` PaymentBatchOutcomes
    - `successes` object
    - `errors` object: The reason each failed item failed. The value is an error code (for example `INVALID_BUSINESS_PAYMENT_METHOD_REQUEST`), or `This item could not be processed` when the failure has no code.

## Other responses

- `400`: The request is invalid, the `batchId` in the path is not a valid id (`INVALID_BUSINESS_PAYMENT_BATCH_REQUEST`), or it came from an IP outside the business's whitelist, carried a bad payload signature or named an unsupported `x-api-version`.
- `401`: Missing or invalid API key, or a key without the permission this endpoint requires.
- `404`: No batch with this id belongs to the calling business.
- `500`: Server error.
- `503`: Temporarily unavailable: an upstream service failed or timed out, or the API is momentarily offline. Retry with backoff and honour the Retry-After header when present.

---

[API](https://skmtc.dev/afriex/apis/afriex-business-api.md) - [All operations](https://skmtc.dev/afriex/apis/afriex-business-api/llms.txt) - [OpenAPI document](https://skmtc.dev/afriex/apis/afriex-business-api/revisions/d94198b6c256?raw)
