Run an exchange ledger that always balances
Track customer balances, trades, fees and settlements across fiat and crypto rails on a single double-entry ledger — with the audit trail regulators expect.
Internal balances and rails disagree
Custody, trading and settlement each keep their own books.
Customer wallets, the matching engine and your banking and on-chain rails drift apart. Reconciling them under load is where exchanges lose money and trust.
STRIPE_ACCOUNT_MAIN
account-based · the sum of ledger accounts equals the cash pool
_PROOF/ Exchanges on Formance keep custody, trading and settlement on one ledger that always balances.
From deposit to settled trade
Every leg of a trade is a posting on the same ledger.
Deposits credit a customer wallet, a matched trade moves balances between accounts, fees route to revenue, and withdrawals settle back out — all double-entry.
Built for exchange-grade money movement
On the open-source Formance ledger. Custody balances, trade postings and multi-rail settlement, unified.
derived, never overwritten
CUSTOMER WALLETS
Per-customer, per-asset balances derived from an immutable double-entry log — never overwritten, always reconstructable.
| account | amount |
|---|---|
USERS:1234 | EUR/2 123,000 |
USERS:5678 | EUR/2 23,000 |
| USD/2 32,000 | |
USERS:2342 | JPY/0 123,000 |
| BTC/8 .000020 |
balanced by construction
TRADE POSTINGS
Express every fill, fee and rebate as a deterministic Numscript transaction so books balance by construction.
Read the Numscript docsfiat + crypto, one model
MULTI-RAIL SETTLEMENT
Normalize fiat PSPs, banks and on-chain rails into one settlement model and keep internal orders in sync with provider refs.
| orders | sync | exchange |
|---|---|---|
| orders:1042EUR 59.00 | pi_3Qa…7x SYNCED | |
| orders:1043EUR 120.00 | ch_2Bd…9k SYNCED | |
| orders:1044EUR 18.50 | tr_8Wz…1m SYNCING | |
| orders:1045EUR 240.00 | po_5Ny…4p SYNCED | |
| orders:1046USD 310.00 | pi_1Kc…3v SYNCED | |
| orders:1047GBP 42.00 | ch_9Lm…2w SYNCED | |
| orders:1048EUR 85.00 | tr_4Hp…6y SYNCED | |
| orders:1049EUR 12.75 | po_7Nx…1z SYNCED |
Consistency under load
A trade that cannot unbalance the books
Move balances and route the fee in one atomic posting.
Settle a matched trade between two customers and route the fee to revenue — atomic and idempotent.
Trusted by builders
“Formance enabled us to ship new lending products faster by providing a customizable foundation that let us reliably express the complexities of our flow of funds.”
Embedded finance · reconciliation across 14 countries
See customer story“Formance is the foundation of our Financial OS, the open-source approach lets us retain control over this key component.”
Healthcare · Financial OS
“Formance helped us kick off our move into fintech, with robust infrastructure and intuitive developer tooling.”
Benefits · fintech infrastructure
Built for regulated money.
Enterprise controls, the certifications auditors ask for, and an immutable record, out of the box.
09:41:07Z AUDIT gateway POST /api/ledger/v2/main/transactions 200 sub:ops@acme.io
09:41:09Z LOG id:4093 NEW_TRANSACTION ledger:main
09:41:12Z LOG id:4094 SET_METADATA ledger:main
09:41:15Z LOG id:4095 REVERTED_TRANSACTION ledger:main
09:41:18Z AUDIT gateway GET /api/ledger/v2/main/logs 200 sub:audit@acme.io
Keep going
Everything you need to evaluate and build on Formance.
Exchange ledgers, answered
01 / HOW DO BALANCES STAY CORRECT UNDER LOAD?
Customer balances are derived from an immutable double-entry log rather than recomputed in place. Concurrent fills, fees and settlements post as transactions, so the books cannot drift even at peak throughput.
02 / CAN I SHOW SOLVENCY IN REAL TIME?
Yes. Because every wallet balance is reconstructable from the log, you can produce a point-in-time solvency view across fiat and crypto without stitching exports together by hand.
03 / HOW ARE FEES AND REBATES HANDLED?
Every fill, fee and rebate is an explicit posting in the same transaction. There is no separate fee system to reconcile — revenue is booked as the trade settles.
04 / DO YOU SUPPORT FIAT AND CRYPTO RAILS?
Fiat PSPs, banks and on-chain rails normalize into one settlement model, and internal orders stay linked to provider references so reconciliation is automatic.
Build on infrastructure you can trust
See how Formance fits your stack, book a demo, or start building today.


