TAX INVOICE · ደረሰኝ
INV-2026-000263IRN — Invoice Reference Number
a91f4c07d2b85e6613f0a4cc9d21785be04d7f3a68c1b90258ee47a3cd162f88
Laba registers your invoices, receipts, credit and debit notes with the Ministry of Revenue and hands back the legal IRN, RRN and signed QR — from the console, your POS, or the API. Nothing prints before MoR returns an IRN.
Public verification — coming with certification (§14.1)
Onboarding within 2 working days.
SHA512withRSARSA-2048WORM fiscal records Schema-per-tenantHosted in Addis Ababa
IRN — Invoice Reference Number
a91f4c07d2b85e6613f0a4cc9d21785be04d7f3a68c1b90258ee47a3cd162f88
What Laba is
In Ethiopia, a fiscal invoice isn't legal until it's registered with the Ministry of Revenue. Laba sits between your till and MoR: you ring up a sale, Laba signs it and registers it, and MoR hands back an IRN and a QR. Only then does it print. If MoR is unreachable, the sale still completes — it's held securely and registered automatically within 72 hours, and the screen always tells you which happened.
Fiscalise before issue Append-only — corrections are new documents Offline-safe, 72h
Who we are
Laba is built by B and M Software Development and Entertainment PLC (TIN 0104739219), software makers in Addis Ababa. The name Laba — ላባ, "feather" — is the quill that fiscal record-keeping began with, brought to the Ministry's e-invoicing standard. We are in certification with the Ministry of Revenue now; that status is shown at the top of every page, never buried.
How it works — 01
Raise an invoice from the console, your point of sale, or the API. Items, buyers and tax treatment come from your registered catalog, so an operator can only issue what is fiscally valid.
See the consoleconsole v0.9.4 — point of sale
How it works — 02
The canonical payload is signed SHA512withRSA and sent to MoR EIMS. The response — IRN, signed QR, timestamps — is persisted append-only, and the link to MoR is always visible.
Read the audit modelIRN — Invoice Reference Number
a91f4c07d2b85e6613f0a4cc9d21785be04d7f3a68c1b90258ee47a3cd162f88
64 characters, shown in full · the response is persisted append-only
console v0.9.4 — registration outcome
How it works — 03
The IRN and QR print on A4 or thermal documents, bilingual, meeting VAT Regulation 570/2025 Article 20. Anyone holding the paper can verify it.
Talk to supportINV2026-000262
RRNR-8791002-2026
TOTALETB 49,252.20
scan the QR to verify
The operator at the till, the finance lead closing the day, the buyer holding the receipt — the same document serves all three.
Built for audit
A registered invoice is never edited or deleted. Corrections are new documents — a credit note, a debit note, or a cancellation.
Every action chained to the last; the chain is verified at boot and hourly.
SHA512withRSA, RSA-2048, per-tenant keys. Money is decimal end to end.
Schema-per-tenant; identity comes from the session, never client input.
POST /v1/invoices/register
{
"request": { … },
"signature": "<base64 SHA512withRSA>",
"certificate": "<base64 cert>"
}
HTTP/1.1 200
{
"irn": "a91f4c07d2b8…cd162f88",
"status": "REGISTERED"
}
// The signature is computed server-side — a secret never reaches a browser. const res = await fetch("/v1/invoices/register", { method: "POST", headers: { Authorization: `Bearer ${token}` }, body: JSON.stringify({ request, signature, certificate }), }); // 400 schema · 406 rule error (7001, 7017, 7020, 7030) if (!res.ok) throw new EimsError(await res.json());
// Amounts are decimal all the way to the wire — never float64. inv := invoice.Invoice{ TransactionType: "B2B", Buyer: invoice.Buyer{TIN: "0034876210"}, Items: []invoice.Item{{ ItemCode: "ITM-0143", UnitPrice: decimal.RequireFromString("4850.00"), TaxCode: "VAT15", }}, } res, err := gateway.Register(ctx, inv)
For developers
A versioned REST API with a signed request envelope. The error catalogue names every EIMS code — 7001, 7017, 7020, 7030 — with the fix beside it.
Register invoices, receipts, notes, cancellations — single or bulk.
Verify any 64-character IRN or RRN, returning the registered status.
Bulk batched registration with ordered offline resync.
How to onboard
Your business, your tills, your MoR profile.
Verified up front — a mismatch is error 7017.
Your INSA certificate is registered — the gating step.
Tills, roles, TOTP MFA.
Items with HS/excise codes, customers.
Issue, register, print.
What's new
v0.9.4 · 12 Aug 2026
Asynchronous bulk results now land as signed callbacks with per-document status.
v0.9.3 · 30 Jul 2026
Held documents now register strictly in capture order after an outage.
v0.9.2 · 15 Jul 2026
Every EIMS rejection code documented with its plain-language cause and fix.
Support centre
Support by telephone and web, as Directive 1142/2018 Articles 14–18 require of an accredited supplier. Every request gets a ticket number you can track — and the assistant answers instantly, day or night.
Telephone+251 11 5XX XXXX
Emailsupport@…
Critical issuesresponse within 2 hours
Generalwithin one working day
FAQ
The IRN (Invoice Reference Number) is MoR's proof that an invoice is registered; the RRN (Receipt Reference Number) is the same for a receipt. A cash sale produces both, seconds apart.
If you issue fiscal invoices in Ethiopia, the document must be registered with the Ministry of Revenue to be legal. Laba performs that registration and returns the proof that goes on the printed document.
The sale completes and is held encrypted, with no IRN yet — so nothing prints as a fiscal document. It registers automatically when the link returns, within the 72-hour window. The screen says which of the two happened; it is never shown as a failure.
No, and no system may. A registered document is append-only. Corrections are new documents — a credit note, a debit note, or an MoR-approved cancellation within the three-day window.
Not yet. We are in certification with the Ministry of Revenue, and that status is shown at the top of every page. We will say so plainly the day it changes, and not before.
Yes. You can export all of it, migrate to another provider, and have the migrated copy deleted. Your data is isolated per tenant and reachable only by you, by us under our agreement with you, and by the Authority.
Laba never claims certification status and never gives tax rulings — it cites the rule and points to MoR.