/settings/erp/finance/efris (navigation: ERP Settings → Finance → EFRIS E-Invoicing). The older link /accounting/efris-settings redirects here.
📷 Screenshot: EFRIS E-Invoicing settings page (URA fiscalisation card) — to be added.
How it works at a glance
EFRIS is configured per business, not per invoice. Once a business is enabled and a sale invoice is sent for the first time, Hitaji decides — from the business’s saved configuration — whether and how to fiscalise:- Online mode — Hitaji talks directly to URA. The invoice is fiscalised before its accounting entry is finalized: if URA rejects it, the invoice send is blocked so you never have a legally issued invoice without an FDN.
- Offline mode — Hitaji posts the invoice’s accounting entry first, then queues the fiscalisation through a TCS (Tax Control System) enabler and completes it in the background. If queuing fails, the accounting entry still stands and the submission is recorded as failed for retry.
Setting up EFRIS for a business
Open ERP Settings → Finance → EFRIS E-Invoicing (/settings/erp/finance/efris). The page works against the currently selected business, so make sure you’re in the right business first.
Main fiscalisation settings
Click Save settings to store the configuration.
📷 Screenshot: EFRIS settings form — transport mode, environment, TIN, device number, seller details — to be added.
Signing keypair (online mode only)
Online fiscalisation is cryptographically signed, so an RSA-2048 signing keypair is required:- Set Transport mode to Online and save.
- In the Signing keypair card, click Generate keypair (or Rotate keypair if one exists).
- Hitaji stores the private key encrypted and shows you the public key.
- Copy the public key and upload it on the URA EFRIS portal under Device Management.
⚠️ Rotating a keypair invalidates the public key already uploaded to URA. Online fiscalisation will fail until you upload the new public key on the portal. The page warns you and asks for confirmation before rotating — only rotate when you intend to.
📷 Screenshot: Signing keypair card with the generated public key and “Copy public key” — to be added.
Validate a buyer’s TIN
For business-to-business invoices you can verify a buyer’s TIN/NIN/BRN against URA before invoicing. This requires EFRIS to be enabled for the business.What happens when you send an invoice
You send invoices the normal way; EFRIS runs automatically on the first send:- Hitaji resolves the business’s EFRIS configuration for the invoice’s accounting book.
- Online: the invoice is submitted to URA (interface T109). On success the FDN, anti-fake code, and QR are written to the invoice in one atomic step; on failure the send is blocked and the submission is recorded as
FAILED. - Offline: the accounting entry is posted, then the fiscalisation is enqueued to the TCS and drained in the background. A failure to enqueue is logged and recorded as
FAILED, but the accounting entry stands. - Resending an already-fiscalised invoice never double-fiscalises — each invoice fiscalises once.
Submission statuses
A fiscal badge on the invoice shows where the submission stands:Retrying a failed fiscalisation
The invoice fiscal badge offers a Retry for a PENDING/FAILED submission:- Offline businesses: the retry re-enqueues the submission.
- Online businesses: you re-send the invoice instead — re-driving the queue would re-fiscalise without re-posting the (failure-reversed) accounting entry, so online retries go through the send path. Hitaji blocks the queue-retry for online businesses and tells you to re-send.
- An already-FISCALISED invoice has nothing to retry.
Voiding a fiscalised invoice → credit note
Voiding an invoice that carries an FDN is the legal “credit this invoice” moment. Hitaji:- Reverses the invoice’s accounting entry.
- Submits an EFRIS credit note (interface T110) referencing the original invoice’s FDN.
- For B2C buyers, URA auto-approves and Hitaji fetches the credit-note FDN immediately. For B2B / B2G buyers, the credit note stays SUBMITTED and Hitaji polls URA every few minutes until it’s approved (then captures the credit-note FDN, anti-fake code, and QR) or rejected.
📷 Screenshot: Voiding a fiscalised invoice and the resulting credit-note status — to be added.
Who can manage EFRIS
EFRIS configuration is privileged. Saving settings, generating/rotating the keypair, fetching the public key, validating a TIN, and retrying a submission all require theefris:config permission. The system also self-verifies that the selected business belongs to your tenant on every EFRIS call, so the configuration and signing keys of one business can never be touched from another.
The EFRIS E-Invoicing settings tile itself appears for users with the efris:config scope.
Tips
- Start in Test (sandbox) environment and validate end-to-end (send → fiscalise → void → credit note) before switching to Production.
- In online mode, keep the URA-uploaded public key in sync with Hitaji’s keypair — a mismatch is the most common cause of online fiscalisation failures.
- Watch the fiscal badge on invoices; a lingering
FAILEDmeans the invoice carries no FDN and needs a retry (offline) or re-send (online).