Quickstart
This guide walks you through authenticating, listing your merchants, and pulling pricing data — the three calls you’ll make in almost every integration.
Get your API key
You’ll need an X-Partner-API-Key to authenticate. If you don’t have one yet, see the Authentication guide to request one from the Aurora Payments team.
Check connectivity
Verify the API is reachable with a health check (no auth required):
A healthy response looks like:
List your merchants
Pull the first page of merchants in your portfolio:
cURL
Python
TypeScript
Every response uses the {data, meta, errors} envelope. List endpoints include pagination details in meta:
Response envelope
Every endpoint returns the same envelope structure:
List endpoints add pagination fields to meta: page, page_size, total_count, total_pages, has_next, has_prev.
Pagination
All list endpoints support page and page_size query parameters:
Use has_next from the response meta to drive pagination loops:
Incremental sync
Use updated_since on supported endpoints to fetch only records that changed since your last sync:
Pass an ISO-8601 timestamp. A value without an offset is treated as UTC. URL-encode the + in offsets such as +05:00 (%2B05:00), or it arrives as a space and returns 422.
Supported on: merchants list, merchant residuals, and available reports.
On the merchants list, updated_since matches merchants approved or closed at or after the timestamp. Other field edits (name, address, assigned agent) do not count as updates, so pair incremental syncs with a periodic full sync.
Error handling
Failed requests (any non-2xx status) return the same envelope with data: null and one or more items in errors:
Every error item has code, message, field (the offending parameter on 422, otherwise null) and retryable, which is always a JSON boolean.
- Successful (2xx) responses always carry an empty
errorsarray. A200is never a partial failure: an emptydatalist means nothing matched. - When a response is complete but a secondary source was unavailable, the gap is flagged in
meta.warnings, noterrors. For example, the merchants list returns every row withpci_compliance: nulland a warning if compliance data could not be loaded. retryable: true(429,500,503) means the same request may succeed later. For429, wait forRetry-After.retryable: false(401,403,404,422) means the request must change before it can succeed.- Quote
meta.request_idwhen contacting support.
Common status codes:
Need help?
Contact it@flute.com or reach out to your account manager.