Appearance
API Reference
Build powerful payment flows with the Synthix Flow API. Explore endpoints for payouts, collections, counterparties, mandates, and more.
OpenAPI 3.1REST
Servers
https://api.synthixflow.com
https://api-sbx.synthixflow.com
API Information
Synthix Flow API Server based on the OpenAPI 3.1 specification.
v1.0.0 — Base version finalised. Covers Counterparty, Payout Links, Accounts.
v1.1.0 — Bills, Mandates, Direct Debit, Payout Links, and Counterparty updates:
Bills:
- POST /api/v1/bills — Ingest a new bill from your ERP into Synthix Flow.
- GET /api/v1/bills — List bills with optional filters (status, type, cashflowType, counterpartyReference, due-date range) and pagination.
- GET /api/v1/bills/{uniqueReferenceIdentifier} — Retrieve a single bill by tenant reference.
- PATCH /api/v1/bills/{uniqueReferenceIdentifier} — Update bill status, open amount, or due date.
- POST /api/v1/bills/{uniqueReferenceIdentifier}/document — Upload a PDF, JPEG, or PNG document and link it to a bill.
- Schemas added: IngestBillPOSTRequest, IngestBillPATCHRequest, BillSummary, LinkedCreditNote, BillSearchResponse, IngestBillDocumentPOSTRequest.
- x-region: EU, IN, US, UK.
Mandates (SEPA only):
- POST /api/v1/mandates — Create a SEPA direct debit mandate.
- GET /api/v1/mandates — List mandates with optional filters.
- GET /api/v1/mandates/{mandateReference} — Retrieve a single mandate by reference.
- DELETE /api/v1/mandates/{mandateReference} — Cancel an active mandate (transitions to CANCELLED).
- Schemas added: CreateMandateRequest, CreateMandateResponse, MandateResponse, MandateListResponse, and supporting schemas (MandateScheme, MandateMode, MandateType, MandateDebitType, MandateFrequency, MandateSequenceType, MandateAuthorizationMethod, MandateDetails, MandateCreditor, MandateCreditorBankIdentifier, MandateDebtor, MandateAmount, MandateAuthorization, MandateAuthorizationInfo, MandateStatus, MandateReference). MandateMode is CORE only; MandateType is RECURRING or ONE_OFF; frequency is optional.
- x-region: EU only. Currency: EUR only.
Direct Debit (SEPA only):
- POST /api/v1/direct-debit — Initiate a collection request against an active mandate.
- GET /api/v1/direct-debit — List collection requests with cursor-based pagination.
- GET /api/v1/direct-debit/{collectionReference} — Retrieve a single collection request.
- Schemas added: CreateDirectDebitRequest, DirectDebitResponse, DirectDebitListItem, DirectDebitListResponse, CollectionStatus, CollectionReference.
- x-region: EU only. Currency: EUR only.
Payout Links:
- Added optional accountHolderName field to CreatePayoutLinkRequest.
- Added UK-BACS and UK-FAST payment rails (sandbox only at launch).
- Currency: EUR, USD, GBP. x-region: EU, US, UK.
Counterparties:
- PATCH /api/v1/counterparties/{counterpartyReference} now supports updating counterparty details (accountHolderName, emailAddress, mobileNumber, remarks, address) via new PatchCounterpartyDetails schema. counterpartyReference remains immutable.
- Added SORT (6-digit UK sort code, GBP) and ROUTING (9-digit US ABA routing number, USD) branch-identifier types, matched to the account currency. The SEPA Creditor Identifier moved out of branchIdentifier into a dedicated MandateCreditorBankIdentifier (mandate creditor.bankIdentifier). The GB region code is now UK.
v1.2.0 — Bills:
Bills:
- GET /api/v1/bills/{uniqueReferenceIdentifier} — BillSummaryResponse.status now includes PROCESSING (payment in flight, system-set).
- GET /api/v1/bills — LinkedCreditNoteResponse.status now includes PROCESSING; status query filter enum updated to match.
- Schemas updated: BillSummaryResponse, LinkedCreditNoteResponse. Not added to write paths (IngestBillPOSTRequest/PATCHRequest) — system-set only.
- Settled flow now OPEN → PROCESSING → PAID → POST.
v1.3.0 — Bills:
Bills:
- currencyCode — replaced pattern regex with explicit enum (INR, USD, EUR, GBP).
- Bill status fields — replaced regex with enum values across response schemas.
- LinkedCreditNoteResponse.status — added missing PAID and POST values (credit notes reach these same as bills; response validation was rejecting them with a 500).
Pagination:
- PaginationDetails.page and PaginationDetails.pageSize — minimum lowered from 1 to 0 to permit zero-based page numbering.
Mandates:
- MandateReference pattern relaxed from ^[A-Z0-9\-]+$ to ^[a-zA-Z0-9\-]+$ — lowercase letters now accepted (fixes mandate creation and lookup failures for mixed-case references).
Direct Debit:
- CollectionReference pattern relaxed from ^[A-Z0-9\-]+$ to ^[a-zA-Z0-9\-]+$ — lowercase letters now accepted, consistent with MandateReference.