Cancel a batch waiting for approval
Only from pending_approval (409 invalid_state otherwise). Cancels the batch, every row’s transfer and the
approval, and releases the hold.
Error codes: invalid_api_key, parameter_invalid, parameter_missing, resource_not_found, scope_missing, csrf_token_invalid, idempotency_key_reused, invalid_state, rate_limited.
Authorizations
Server API key, scoped. pk_test_ keys hit the sandbox tenant.
Headers
Optional on non-money POSTs; honoured when sent.
1 - 255Optional client correlation id, up to 128 characters. It is not echoed: the response's X-Request-Id is always
our own req_… id. We log your value with the request as client_request_id, so support can find a request by
either id. A longer value is refused with 400 parameter_invalid.
128Path Parameters
bat_…
^bat_[0-9A-HJKMNP-TV-Z]{26}$Body
Optional note kept in the audit log.
Why it was canceled.
500Response
Canceled.
A Pay many batch. Its rows are transfers with batch_id.
bat_…
Always batch.
"batch"Lifecycle shared by every money-moving resource (CONVENTIONS §8). UI labels: completed → "Settled", pending_approval → "Pending approval".
draft, pending_approval, scheduled, processing, completed, failed, rejected, canceled, reversed Enough of a PanoFlow account to show it ("Naira · Main · ••••6789"). Full account in the Accounts API.
Sum of the rows being paid.
Sum of the rows' fees.
How many of the batch's rows are in each state.
Who did something. Shown in activity, approvals and the audit log.
RFC 3339, UTC.
"2026-10-27T08:41:00Z"
RFC 3339, UTC.
"2026-10-27T08:41:00Z"
Sub-state of a batch's status. Clients must tolerate new values.
awaiting_approval, sending, all_items_completed, some_items_failed, all_items_failed, rejected_by_approver, canceled_by_user, approval_expired File name, or "Pasted rows".
Rows that were skipped and will never be paid. Returned on GET /batches/{id}; omitted in lists.
The batch's approval, when it needed one.
Why it was made (shown to the approver).
When the last row became final.
"2026-10-27T08:41:00Z"
Up to 20 string keys (≤ 40 chars) with string values (≤ 500 chars). Returned on the resource and its events.