SettleFlow API

Data exports

Export your payments as CSV — create, poll, download

Overview

Exports are asynchronous jobs: you request one, we generate the file in the background, you download it once it is ready. Use them for reconciliation and accounting.

# 1. Create (currently: type "payments"; format csv or xlsx, csv by default)
curl -X POST https://api.settleflow.io/v2/exports \
  -H "X-Api-Key: your_api_key" -H "Content-Type: application/json" \
  -d '{ "type": "payments", "format": "csv",
        "filters": { "from": "2026-07-01T00:00:00Z", "to": "2026-07-31T23:59:59Z" } }'

# 2. Poll until status is "completed"
curl https://api.settleflow.io/v2/exports/exp_… -H "X-Api-Key: your_api_key"

# 3. Download the file
curl -OJ https://api.settleflow.io/v2/exports/exp_…/download -H "X-Api-Key: your_api_key"

What the payments file contains

One row per payment, with your reference, the customer, the country and the application alongside the amounts. Two things are worth stating explicitly:

All amounts are in minor units of the payment's currency — 10000 in a EUR row is €100.00. Currencies without minor units follow the same rule (a JPY amount is in yen, not hundredths).

Total Fees is the fees charged on that payment, excluding tax. It covers every fee booked against the transaction, not only the ones from the payment itself: a later refund fee or chargeback fee is included in the same figure. It is 0 when no fee applies. VAT is not part of it — compare it against your fee schedule, not against a VAT-inclusive invoice.

Status & retention

pendingprocessingcompleted (or failed). A completed export exposes filename, size_bytes, row_count and expires_at — files are kept 30 days, then purged. Downloading after expiry returns a validation error; just create a new export.

Scoping

Exports created with an API key belong to your merchant account: any of your keys can list and download them. Exports that dashboard users generate for their own reporting are not exposed through this API. At most 3 exports can be pending/processing at once (409 beyond that).

On this page