Skip to main content
Two endpoints return a statement as a CSV file: a point-in-time view of your balances, and a transaction listing over a period you choose. Both respond with text/csv as a file download, not JSON. Both require the same permission as reading transactions.
Every example on this page is a signed request. $SIGNATURE is computed per request over a canonical string — see Authentication. Bearer tokens are not accepted.
The query string is signed. Both reports take every parameter in the query, including repeated currencies. Sort and percent-encode it exactly as the canonical string requires, or you get 401 signature_invalid before any of this is evaluated.

Parameters

string
required
The only accepted value is Csv, matched case-insensitively. The API reference marks this optional — it is not. Omitting it fails the request, and any other value returns 422 with code: ReportFormatNotAllowed.
string[]
required
Repeat the parameter once per currency: ?currencies=EUR&currencies=USD. The reference does not mark it required, but an empty list returns 422 with code: ReportCurrencyNotAllowed, as does any currency you do not hold an account in.
string
Transaction statement only. UTC date, inclusive.
string
Transaction statement only. UTC date, inclusive.
Always send from and to on a transaction statement. They are not rejected when absent — they default to the zero date, and you get a CSV headed Period from,0001-01-01 containing nothing. The period must not run backwards and cannot exceed 365 days; either returns 422 with code: ReportPeriodNotAllowed.

Account statement

Balances as at the moment you call it. There is no period — from and to are not read.
One row per currency, carrying the total balance alongside the business and customer split.
Total balance is the full account balance, including both business and customer funds. Total deposits and withdrawals cover business fiat and conversions only, so they do not net to the total balance — the CSV repeats this in a note line.

Transaction statement

Settled transactions over a period, for the currencies you name.
Columns: Transaction ID, Date (UTC), Value Date (UTC), Type, Direction, Status, Description, Counterparty, Counterparty Account, Amount. Dates are inclusive UTC days — to=2026-08-31 includes everything up to 23:59:59.999 on the 31st. A currency with nothing in the period is still sectioned, marked No transactions in this period.
Only settled transactions appear. Something still in flight is in Transactions before it is in a statement, so use that endpoint to track a payout and a statement to reconcile a closed period.

Errors