Ledgerline is the payments backbone for global products — one ledger for cards, ACH, SEPA and stablecoin rails, with built-in idempotency, sub-100ms authorization, and a double-entry book that always balances to the cent.
Cards, bank transfers, FX and on-chain settlement — recorded in a single double-entry book with cryptographic idempotency. Reconcile once, not per provider.
Every movement posts two entries. Query any account's balance at any millisecond — no nightly batch, no drift, no "pending vs available" guesswork.
# a transfer is two ledger entries { "amount": 8420, # minor units "currency": "EUR", "source": "acct_user_8f3c", "destination": "acct_merchant_a21", "rail": "sepa_instant", "idempotency_key": "ord_7741_v2" } → debit acct_user_8f3c −€84.20 → credit acct_merchant_a21 +€84.20
One integration. Switch rails per transaction with a single field — we handle the network mapping and the failover.
Network-trained risk models score every auth in <9ms. Tune thresholds per merchant — block, step up, or allow.
// typed, idempotent const ll = new Ledgerline(key); await ll.transfers.create(body);
Match acquirer files against ledger entries automatically. Exceptions land in a queue — not a spreadsheet at month-end.
Every state change emits an HMAC-signed event with a monotonic sequence number. Replay any window; we de-dupe so your handler never double-counts a payout.
Funds held at tier-1 banking partners, never commingled. Continuous controls monitoring, with evidence exported on demand.
// charge a card and settle to a payout — one call import { Ledgerline } from "@ledgerline/node"; const ll = new Ledgerline(process.env.LL_KEY); const charge = await ll.charges.create({ amount: 8420, currency: "EUR", source: "tok_visa_4291", capture: true, }, { idempotencyKey: "ord_7741" }); // charge.status → "settled" · charge.fee → 158 // ledger auto-posts both entries · book stays balanced
Every write takes an idempotency key. Retry a timed-out request and Ledgerline returns the original result — never a double charge, never a duplicate payout. The same primitive guards webhooks, refunds, and reversals.
Pay on volume that actually moves. No minimums on Sandbox, no per-seat tax on your finance team, and the rate drops as you scale.
For prototypes and your first $50K of real volume.
For products processing real money at real scale.
For regulated platforms moving $100M+ across borders.
"We migrated four payment providers onto one Ledgerline book in six weeks. Month-end reconciliation went from three analysts and a weekend to a single automated report."
"Idempotency keys are the whole reason we sleep at night. We retry aggressively at the network edge and have never double-charged a customer — 14 million transactions in."
"Adding SEPA Instant and USDC payouts was a one-line rail change. Our European settlement times dropped from two days to under ten seconds."
Can't find it? Our solutions team answers integration questions in the shared Slack within an hour during business days.
Every transfer is written as two opposing entries inside a single serialisable database transaction — if either entry fails, both roll back. We run a continuous invariant check that sums all debits and credits per currency; any non-zero delta pages on-call immediately. In 184 days of production we've had zero settlement breaks.
For a card auth including risk scoring: P50 41ms, P95 68ms, P99 112ms, measured at 4,000 auths/sec sustained. Risk scoring adds under 9ms because the model runs in-region, not as a remote call.
Yes. Funds are held in safeguarded accounts at our tier-1 banking partners under our EMI licence, never commingled with operating capital. You can reconcile your ledger balance against the safeguarding statement at any time via the API.
You hold balances in 38 settlement currencies. Conversions lock a quoted rate for 30 seconds with a guaranteed spread, and the FX leg posts as its own ledger entry so your books show the exact rate and fee per conversion — no blended monthly average.
Your full ledger — every entry, balance, and signed event — is exportable as newline-delimited JSON at any time, and stored tokens are portable under PCI network rules. There's no exit fee and no data-egress charge.
Test-mode keys are instant, the docs have copy-paste snippets in four languages, and you only pay when real money moves.