Transaction Exports
Stream your filtered transactions as CSV for accounting import.
Export transaction-level data for a period as CSV — from the Partner Portal, or directly from
the API. The export is synchronous: the response is the file. There is no export job, no
status to poll, no email, and no export.ready event.
Via the API
GET /api/v1/transactions/export streams an RFC 4180 CSV of the caller's filtered
transactions:
curl "https://api.cresoracommerce.ai/api/v1/transactions/export?from=2026-05-01T00:00:00Z&to=2026-06-01T00:00:00Z" \
-H "Authorization: Bearer csk_ab12cd34_xxxxxxxxxxxxxxxxxxxxxxxx" \
-o transactions-may.csvAll filters are query parameters, shared with the list and summary operations:
| Parameter | Notes |
|---|---|
merchant_id | uuid |
from / to | RFC 3339 instants (date-time, not bare dates) |
state | a TransactionState value, e.g. SETTLED |
type | a TransactionType value |
rail | ACH or CARD |
amount_min / amount_max | decimal strings |
q | substring on the gateway transaction id, or an exact transaction UUID |
Two response headers tell you what you got:
| Header | Meaning |
|---|---|
x-cresora-transaction-row-count | rows in the file |
x-cresora-transaction-truncated | true when the server-side row cap cut the export |
There is no maximum date range. A large window is served until the row cap, then truncated
with the marker header set — split the range and re-request when you see truncated: true.
net_amount and fee fields are absent until settlement lands — export settled periods for
accounting reconciliation. For KPI-style aggregates use GET /api/v1/transactions/summary
(same filters; volume in integer minor units).
Via the Portal
Payments → Transactions, then Export, applies the same filters and downloads the same CSV.
Accounting-format note
The export is one CSV shape (RFC 4180, injection-safe per OWASP WSTG-INPV-15). Dedicated QuickBooks / Xero / NetSuite formats are not produced — map the CSV columns in your accounting tool's importer.