Upload a batch file (CSV or XLSX) containing many payout rows. The file
is stored, hashed for duplicate detection, and queued for asynchronous
validation. The response returns the batch in uploaded status; the
status transitions to validating, then validated (or
validation_failed) via webhook.
After validated, review GET /v1/batches/{id} and the summary, then
call POST /v1/batches/{id}/confirm to actually create the payouts.
Confirmation expires — see expires_at on the batch record.
Maximum file size: 32 MB. Maximum rows per batch: check current limits with support.
API keys are opaque strings prefixed by environment:
ak_live_* — production keys, accepted only on api.antonpayments.com.ak_test_* — sandbox keys, accepted only on api.antonpayments.dev.Include your key in the Authorization header: Bearer ak_test_....
CSV or XLSX file. Filename is preserved.
Batch accepted and queued for validation.
A batch upload. Moves through uploaded -> validating -> validated -> confirmed -> processing -> completed | partial | failed. Can be
cancelled from any pre-processing state.
^bat_[a-zA-Z0-9]+$"bat_01HX8Z9K0M2N3P4Q5R6S7T8UBT"
^mer_[a-zA-Z0-9]+$User ID of the operator who uploaded this batch.
uploaded, validating, validated, validation_failed, confirmed, processing, completed, partial, failed, cancelled "payroll_2026_04_15.csv"
csv, xlsx Bytes.
RFC 3339 / ISO 8601 timestamp in UTC.
"2026-04-15T14:30:00Z"
RFC 3339 / ISO 8601 timestamp in UTC.
"2026-04-15T14:30:00Z"
Validation summary the merchant reviews before confirming.
Default funding currency used for rows that don't specify their own. Set at confirmation.
^[A-Z]{3}$"USD"
Resumability checkpoint — highest row index successfully processed.
Deadline for confirming a validated batch.
"2026-04-15T14:30:00Z"
RFC 3339 / ISO 8601 timestamp in UTC.
"2026-04-15T14:30:00Z"
RFC 3339 / ISO 8601 timestamp in UTC.
"2026-04-15T14:30:00Z"
RFC 3339 / ISO 8601 timestamp in UTC.
"2026-04-15T14:30:00Z"
RFC 3339 / ISO 8601 timestamp in UTC.
"2026-04-15T14:30:00Z"