Create a payout run
Pay many recipients from one internal account in one request. Grid
validates every row before it stores the run and answers with the run
and the rows it rejected. The accepted rows are then paid in the
background, each through its own quote, so each emits the usual
OUTGOING_PAYMENT.* webhooks. A PAYOUT_RUN.* webhook reports the run
when no row is left to pay.
Funding: the source must be an open INTERNAL_FIAT or
INTERNAL_CRYPTO account of the platform or of one of its customers.
Validation: a rejected row is returned with its failureCode and
failureReason and stored as FAILED. The run pays the accepted rows
unless allOrNothing is set, in which case any rejection fails the run
and skips every row. Every rule is enforced again when a row is paid,
so a row can still fail then, for example on insufficient funds.
Rows to a contact: a row addressed to a phone number or email is
accepted and held as PENDING_CLAIM. Grid does not pay it.
Requires an API token with the UMA_TRANSACT permission.
Authorizations
API token authentication using format <api token id>:<api client secret>
Headers
Unique identifier for this run. A retry with the same key and body returns the stored run; the same key with a different body is rejected.
255"payroll-2026-11-04"
Body
1 - 1000 elementsWhen to start paying the rows. Omit it, or give a time in the past, to start as soon as the run is created.
"2026-11-05T02:00:00Z"
When true, a single rejected row fails the run and no row is paid.
Response
The run this Idempotency-Key already created
System-generated unique payout run identifier
"PayoutRun:019542f5-b3e7-1d02-0000-000000000001"
Status of a payout run.
VALIDATING, SCHEDULED, PROCESSING, COMPLETED, PARTIALLY_FAILED, FAILED, CANCELLED false
"2026-11-04T22:00:00Z"
"2026-11-05T02:14:00Z"
The rows Grid rejected at validation, in submission order. Empty when every row was accepted.
When the run starts paying rows, if it was scheduled.
"2026-11-05T02:00:00Z"
When the run reached COMPLETED, PARTIALLY_FAILED, FAILED or CANCELLED.
"2026-11-05T02:14:00Z"