Mauritius MRA EBS e-Invoicing
Real-time fiscalisation with IRN + QR, built on the e-Invoice Core Engine
Transmit every customer invoice to the Mauritius Revenue Authority (MRA) Electronic Billing System (EBS) the moment it is posted. The MRA validates the JSON payload in real time and returns an IRN (Invoice Reference Number) and a QR code for the fiscal invoice. Compatible with Odoo 18 & 19.
Real-time EBS fiscalisation
Canonical MRA EBS JSON generation with the full envelope: invoice / transaction / sale-type codes, VAT breakdown and the MRA tax-type codes (TT01-TT04). One click sends the invoice and stores the returned IRN.
Tamper-evident hash chain
Each fiscal invoice carries the SHA-256 of the previous one and a monotonic counter, forming the per-trader chain the EBS requires. The chain advances only on a successful submission.
BRN & TAN validation
Structural validation of the Business Registration Number and the 8-digit MRA Tax Account Number, enforced on the company, partners and onboarding wizard.
MRA business rules
A declarative rule set layered on the EN 16931-style core blocks non-compliant invoices before they reach the MRA, with a clear, code-tagged error report.
Bring-your-own credentials
Your MRA EBS username, password and MRA ID are stored only in your database and protected by the system group. Sandbox and production endpoint URLs are pre-filled as editable defaults.
Invoice integration & logging
Validate / Generate / Fiscalise buttons on the invoice, an EBS status field, IRN + QR display, a status-polling cron and full request/response transport logging for audit.
Encrypted & signed payload (AES + RSA)
The MRA Invoice Fiscalisation Platform does not accept a
plaintext invoice. This module seals every transmission exactly
as the EBS requires: the AES session key the MRA returns is
RSA-unwrapped with your registered private key, the
canonical invoice JSON is AES-256 encrypted
(encryptedInvoice) and an RSA-SHA256
signedHash is attached for origin and integrity.
The block-cipher mode is configurable (the documented MRA
default is ECB). All key material is
bring-your-own-key — the PEM you paste into company
settings stays in your database, is never bundled, and is used
only to unwrap the MRA key and sign the payload.
Onboarding wizard
A guided wizard captures the company BRN/TAN and the EBS connection in one step, validating identifiers as you type.
Disclosure: this module is an invoice-format generator and a bring-your-own-key transport — it is not an MRA-accredited service-operator or clearing intermediary. It transmits invoice data only to the MRA EBS endpoint you configure, using your own MRA-registered EBS credentials and your own signing key. No data is sent anywhere else, and your credentials and keys never leave your database. Mauritius uses the Mauritian Rupee (MUR) and a 15% standard VAT rate.
Screenshots
Customer Invoice Mra Ebs Gen
Mra Ebs E Invoice Document C
Update date: 2026-07-02