Fees, preview and bearers
Lango’s differentiator is legibility: every charge is computed by one engine, itemised on the wire, and quotable in advance. A quote cannot drift from a charge because they share the code.
The fees
| Fee | What it is | Who sets it |
|---|---|---|
| Commission | Lango’s fee on each collection (e.g. 3%) | Your agreement |
| VAT | 15% inside the commission (not on top), broken out for your returns | Statute |
| IMTT | Tax on the payout bank transfer — 2% (USD) at time of writing | Statute |
| Transfer fee | The bank’s flat fee per settlement transfer | The bank |
Statutory rates change by government notice; Lango applies the rate in force on the day, and your settlement advice names the rate used.
Bearers: who pays the commission
Your fee configuration decides who bears commission:
- Customer bears — the fee is added at checkout as its own line before they confirm. A USD 100.00 sale charges the customer 103.00; you receive 100.00.
- Merchant bears — the customer pays the sticker price; commission comes out of your side. The customer pays 100.00; you receive 97.00.
- Split — a percentage share of each.
The invariant, enforced in the ledger on every payment:
charged_amount − merchant_net = commission, exactly, in integer cents.
Preview: quote before you charge
POST /v1/preview runs the same engine with no money movement:
curl https://api.lango.co.zw/v1/preview \ -H "Authorization: Bearer sk_test_YOUR_KEY" \ -H "Content-Type: application/json" \ -d '{ "amount": 10000, "currency": "USD", "method": "ecocash", "payout_amount": 500000 }'{ "customer_pays": 10300, "merchant_receives": 10000, "commission": 300, "payout": { "gross": 500000, "imtt": 9804, "transfer_fee": 200, "net": 489996, "effective_rate": "2.00%" }, "warnings": []}Two details worth noticing:
- IMTT is grossed up correctly. To land
netin your bank when the tax is charged on the transfer itself, the engine solves the gross-up: on a 500,000 payout at 2%, IMTT is 9,804 — not 10,000. We publish the arithmetic; check it. warningsis honest. If a rate in the calculation hasn’t been contractually confirmed yet, the preview says so instead of pretending.
Use preview to show customers total cost before they commit, or to build your own pricing calculators — ours (lango.co.zw/pricing) is this endpoint.