Settlement Engine
Merchant payouts on the T+0 / T+1 / T+2 cycle - net of platform deductions
Run settlement is maker-checker
Postings: every settlement writes double-entry lines to the PostgreSQL ledger, each referencing the
originating Mongo order id, and credits the merchant's Efashe business wallet (withdrawal to a bank or mobile-money
account is a separate wallet action). SLA target is 99.9% of settlements within the T+0 / T+1 / T+2 window.
Disputed order lines are excluded until resolved.
Due today
RWF 41.2M
128 merchants
Settled T+0
RWF 12.6M
instant opt-in
In T+1 window
RWF 24.9M
processing
Held (disputes)
RWF 3.7M
14 order lines
Window SLA
99.94%
above 99.9%
Settlement runs
Cycle 2026-07-20
| Run / Merchant | Cycle | Gross | Deductions | Net payout | Settles to | Status |
|---|---|---|---|---|---|---|
| RUN-9042 Kigali Electronics Ltd |
T+0 | 8,420,000 | -1,182,900 | RWF 7,237,100 | Efashe wallet | Paid |
| RUN-9043 Simba Supermart |
T+1 | 3,960,000 | -548,200 | RWF 3,411,800 | Efashe wallet | Processing |
| RUN-9044 Kivu Home and Living |
T+1 | 6,180,000 | -921,400 | RWF 5,258,600 | Efashe wallet | Queued |
| RUN-9045 Gorilla Sports Rwanda |
T+2 | 1,450,000 | -402,500 | RWF 1,047,500 | Efashe wallet | Held |
| RUN-9046 Nyanza Dairy Store |
T+0 | 742,000 | -96,860 | RWF 645,140 | Efashe wallet | Paid |
Dispute holds
14 lines - RWF 3.7M| Order | Merchant | Dispute | Held |
|---|---|---|---|
| ORD-2026-084417 | Kigali Electronics | DSP-5521 | 189,000 |
| ORD-2026-084102 | Kivu Home and Living | DSP-5508 | 385,000 |
| ORD-2026-084311 | Gorilla Sports | DSP-5514 | 65,000 |
| ORD-2026-083944 | Simba Supermart | DSP-5501 | 4,800 |
Held lines auto-release to the next cycle when the linked dispute (ADM-10) resolves.
Payout status - today
Paid - 71 runs (RWF 12.6M)
Processing - 43 runs (RWF 24.9M)
Queued and held - 14 runs (RWF 3.7M)
On track: 99.94% of runs are inside the T+0/T+1/T+2 window this cycle.
Settlement Engine
Three schedules, each with its own run
T+0, T+1 and T+2 are three separate runs, not one run with three speeds. A merchant sits on one cycle, chosen at onboarding and changeable with notice, and each cycle composes and pays independently.
| Cycle | Merchants | Next run | Estimated value | Last run |
|---|---|---|---|---|
| T+0 same day, 1% fee | 38 | Today 18:00 | RWF 4,182,000 | Paid, 18 Jul |
| T+1 next day, standard | 412 | Tomorrow 06:00 | RWF 38,904,200 | Paid, 19 Jul |
| T+2 new merchants, first 60 days | 64 | 21 Jul 06:00 | RWF 2,118,400 | Paid, 18 Jul |
| Composition | Gross delivered sales, less commission, less processing fees, less any withholding, less any facility repayment share, less holds |
| What triggers eligibility | The buyer confirming delivery, never the merchant marking it |
| Held items | Excluded at item level, the rest of the merchant run pays |
| Failed bank credit | Returned to the merchant wallet automatically, and retried |
| Idempotency | A run cannot pay the same item twice, even if it is triggered twice |
Settlement Engine
T+1 run for 19 July, three items held
409 of 412 merchants paid in full. Three items are held across two merchants. A hold never stops a run, and it never stops the rest of a merchant own settlement. That is the difference between holding an item and freezing a payout.
| Merchant | Gross | Held | Paid | Held because |
|---|---|---|---|---|
| Kigali Electronics Ltd | RWF 1,518,900 | RWF 243,500 | RWF 1,275,400 | One return open, one dispute open |
| Simba Supermart | RWF 402,300 | RWF 32,500 | RWF 369,800 | Buyer has not confirmed, window still open |
| Run total | RWF 38,904,200 | RWF 276,000 | RWF 38,628,200 |
Both merchants were paid today. Neither had to wait for somebody else dispute to resolve, and neither had to ask why their payout was short: the hold and its reason appear on their own finance screen.
Settlement Engine
Your release is with a checker
Nothing has been released. Releasing a held settlement moves money to a merchant while a buyer dispute is open, so it needs a second operator and a reason. The hold stays exactly as it was until then.
| Request | SET-REL-2026-0331 |
| Merchant | Kigali Electronics Ltd |
| Item | Order KE-100455, RWF 145,000 |
| Maker | j.mukama, today 16:04 |
| Reason | Dispute DSP-2026-1187 decided for the seller; buyer notified |
| Effect if confirmed | RWF 145,000 pays on the next T+1 run |
| Effect if refused | The hold stays and the item does not settle |
| Waiting on | Any finance checker |
Why this needs two people. A single operator able to release held escrow to a merchant is a single operator able to pay a friend. The hold exists precisely because money is in contention.