Skip to main content

How Batch Payouts Work

Lifecycle overview of batch payouts from upload to completion.

Written by Ryan O
Updated today

Overview

Batch payouts let you process many payouts in a single operation. Instead of creating individual payouts one at a time, you upload a file containing payout details for all your recipients, review the results, confirm, and track progress as each payout is processed.

Batch payouts are ideal for:

  • Payroll runs

  • Marketplace seller payouts

  • Monthly commission payments

  • Recurring supplier payments

The Batch Lifecycle

Every batch moves through five stages:

1. Upload

You upload a CSV file containing payout details -- payee IDs, instrument IDs, amounts, currencies, and optional descriptions. Anton accepts the file and begins validation.

2. Validate

Anton parses every row of your file and validates each entry. It checks that payee IDs exist, instrument IDs are valid, amounts are positive numbers, and currencies are supported. Any errors are reported per row with specific field-level messages.

3. Confirm

After reviewing the validation results, you confirm the batch to begin processing. At this point, your available balance is checked to ensure it covers the total batch amount. If you have rows with errors, you can either fix and re-upload, or confirm with only the valid rows (error rows are skipped automatically).

4. Process

Once confirmed, Anton creates individual payouts for each valid row. Each payout goes through the standard payout lifecycle: compliance screening, approval checks, and rail submission. Payouts within a batch are processed concurrently for speed.

5. Complete

The batch reaches a terminal state once all individual payouts have resolved. Each payout ends as completed, failed, or returned. A batch can partially succeed -- some payouts may complete while others fail.

Batch Statuses

Throughout the lifecycle, the batch status reflects its current stage:

  • pending_review -- File uploaded and validated, awaiting confirmation

  • processing -- Confirmed and payouts are being executed

  • completed -- All payouts have reached a terminal state

  • cancelled -- Batch was cancelled before confirmation

Key Points

  • Each individual payout within a batch follows the same compliance and screening rules as a standalone payout.

  • You can track batch-level progress and drill down into individual payout statuses.

  • Batches can be cancelled before confirmation. After confirmation, individual payouts can be cancelled if they have not started processing, but the batch itself cannot be reversed.

  • Subscribe to batch.completed and batch.failed webhook events for automated monitoring.

Did this answer your question?