AntaraPayAPI v1

Part 9

Settlements, channels, and reports

Settlements, the channel and bank list, and CSV/XLSX report exports.

Settlements

GET/api/v1/settlementssettlements:readResponse 200

Filters: status, type, reference, from, to, cursor, limit; dates filter on created_at.

FieldValues
typePAYIN_RELEASE for releasing a balance and PAYOUT_COMPLETION for payout completion records.
statusWAITING_FUNDS, COMPLETED, or NEEDS_REVIEW.
Response 200
{
  "data": [
    {
      "id": "set_example_001",
      "type": "PAYIN_RELEASE",
      "status": "COMPLETED",
      "reference": "ORDER-0001",
      "resource_id": "pin_example_001",
      "gross": "100000",
      "fee": "1500",
      "net": "98500",
      "currency": "IDR",
      "journal_group_id": "jg_example_payin",
      "created_at": "2026-10-15T05:02:00Z",
      "completed_at": "2026-10-15T05:02:00Z"
    }
  ],
  "pagination": { "next_cursor": null, "has_more": false },
  "request_id": "req_example_008"
}

A payout settlement does not debit the balance again. Provider fund settlement can be delayed even though the customer has already paid; use available to know how much can be paid out. Operational reconciliation details can be viewed in the dashboard.

Channels and destination accounts

GET/api/v1/channelschannels:readResponse 200

The data response is an array of items with the following fields.

FieldDescription
codeChannel code. The v1 payout channel code is BANK_PAYOUT; AntaraPay decides between automatic or manual routing.
operationPAYIN or PAYOUT.
statusAVAILABLE, DEGRADED, or UNAVAILABLE.
min_amount / max_amountPer-transaction amount limits.
currencyIDR.
bank_codesBank codes supported by the channel.
estimated_ready_secondsEstimated time until the instruction is ready; may be null.
Limit values and bank_codes come from the active configuration. The channel list can change and does not guarantee a slot is available when you send the POST. Clients must still handle CHANNEL_UNAVAILABLE and RATE_LIMITED.

Report exports

POST/api/v1/reports/exportsreports:writeResponse 202
FieldRequiredDescription
typeYesPAYINS, PAYOUTS, JOURNALS, or SETTLEMENTS.
formatYesCSV or XLSX.
from / toYesRFC 3339 UTC time range. Maximum designed range is 31 days.
date_fieldNoDepends on the report type: payin created_at/paid_at, payout created_at/completed_at, journal posted_at, settlement created_at/completed_at.
Response 202
{
  "data": { "id": "exp_example_001", "status": "QUEUED" },
  "request_id": "req_example_009"
}
GET/api/v1/reports/exports/{id}reports:readResponse 200

data contains id, status (QUEUED, PROCESSING, READY, or FAILED), format, download_url, expires_at, and a nullable error_code. The URL is only available when READY, is private, and is short-lived. If it has expired, fetch the status again for a new URL as long as the file is still within its retention period. An export does not create a financial transaction.