No transaction should silently die.
On African rails, a transaction can report success and never settle, and the bank hears about it from the customer, not the system. Truss holds the record of every transaction, reconciles it against settlement truth, and catches the failures that live in that gap: ghost successes, stuck transfers, double debits. Non-custodial by design, we never hold, settle, or move your money.
Off the funds path · non-custodial · confirm every finding against your own records.
Watch transactions move, and the bad ones get caught.
This is the real engine, animated: transactions stream in, get checked against settlement, and the ones that fail get diverted instead of silently passing. Click any transaction in the feed to inspect it.
A success message isn’t proof.
Your app says the transfer worked. The customer sees a debit. But the money only really moved if the rail settled it, and between those two moments is where transactions quietly break. Nobody is watching that gap, so the failure surfaces late, as a support ticket, a broken reconciliation, or a customer who stops trusting the app.
Ghost success
The core says successful; the settlement record says failed. The customer thinks they were paid. The money never moved.
Stuck & hung
A transfer times out and sits in limbo, never settled, never reversed. It ages silently until someone complains.
Duplicates
A retry becomes a second debit. The same payment is counted twice, and reconciliation only finds it days later.
Orphaned debits
A customer is debited, the beneficiary is never credited, and no reversal is raised. Money left, and went nowhere.
A control plane that sits beside the rail, never in it.
Money moves between licensed parties along the payments rail. Truss sits above that rail as a non-custodial reliability layer: it reads the record of every transaction and the settlement your bank already receives, holds the canonical record, and surfaces every place the ledger and the settlement disagree.
Because Truss is never on the funds path, it keeps your regulatory surface narrow and your integration light: we read records and issue retry and reversal instructions your bank executes. Your bank stays the licensed party that moves value.
Watch a transaction move through it →Four steps, one promise: nothing settles that shouldn’t.
Ingest
We take in your transaction records and the rail callbacks, read-only, with exactly-once intake.
Reconcile
Each record is matched against the settlement truth from NIBSS. A success claim is never enough.
Detect
Ghost successes, stuck and duplicate payments become incidents with deadlines, not buried rows.
Confirm
Everything surfaces in a dashboard you can trace back to your own ledger and settlement file.
Safe by design, not by promise.
For the teams who carry the rails.
Microfinance banks, fintechs, and digital banks on cloud core banking (BankOne / Qore), moving money over NIBSS NIP and Interswitch. Built for the operations, reconciliation, and support leaders who answer for every stuck transaction, and still reconcile by hand every night.
See what Truss would have caught last month.
Bring us a window of your traffic and we’ll show you the stuck, ghost, and duplicate transactions hiding in it, reconciled against your own settlement file.
Request a demo