Compliance

Uganda EFRIS in ERPNext: Beyond VAT After the 2025 Expansion

Uganda's EFRIS is no longer a VAT-only obligation. Since 1 July 2025, businesses in 12 gazetted sectors must issue EFRIS e-invoices whether VAT-registered or not — and purchases from non-compliant suppliers are disallowed for income tax. How the FDN gate, goods registration and stock sync work in ERPNext.

MManojAugust 3, 202610 min read
#erpnext#compliance#uganda#e-invoicing
Share

For years, Uganda's EFRIS was a VAT-registered taxpayer's problem. That changed on 1 July 2025. Under URA General Notice 2218 of 2025, businesses in 12 gazetted sectors must now issue EFRIS e-invoices whether or not they are VAT-registered — and the consequence reaches income tax, not just VAT. A purchase from a non-compliant supplier in those sectors is disallowed as a deductible expense. If you run ERPNext in Uganda, the Fiscal Document Number (FDN) is no longer a VAT detail; it is the gate on both your invoices and your deductions. This guide covers the scope shift, the FDN gate, goods registration and stock sync in ERPNext.

Seen a real-time e-invoicing regime before?

If you've worked with India's GST e-invoicing IRP round-trip or Saudi Arabia's ZATCA clearance, the EFRIS shape will be familiar — the authority validates each document in real time and returns an identifier that makes it valid. What's distinctive here is how far the obligation now reaches beyond VAT.

The trap in 2026 is assuming EFRIS still only matters if you're VAT-registered. It doesn't, and the income-tax disallowance for non-compliant purchases is the part that surprises finance teams. I am Manoj, ERPNext and Frappe implementation lead at Mith Tech in Bengaluru, and treating the FDN as a hard gate — on both sales and purchases — is what keeps a Ugandan ERPNext rollout compliant.

Are you even in scope?

Before anything technical, establish whether EFRIS is mandatory for your business — because the 2025 expansion changed the answer for a lot of companies that assumed they were exempt.

InteractiveEFRIS Scope Deciderlink

Toggle whether you are VAT-registered and whether you operate in a gazetted sector to see if EFRIS e-invoicing is mandatory for you.

You must issue EFRIS e-invoices

Even without VAT registration, businesses in the gazetted sectors were brought into EFRIS from 1 July 2025 (URA General Notice 2218 of 2025). You must issue EFRIS e-invoices for your sales.

The 12-sector expansion (General Notice 2218 of 2025, effective 1 Jul 2025) is the "beyond VAT" shift — EFRIS is no longer a VAT-only obligation. Confirm your sector and current scope on the URA EFRIS portal.

VAT-registered taxpayers (annual turnover above the UGX 150 million threshold) have been in scope from the start. The shift is the second lever: businesses in 12 gazetted sectors — fuel, mining, manufacturing, construction, ICT, professional services and others — were brought in from 1 July 2025 regardless of VAT status. If either applies, every sale must be an EFRIS e-invoice.

The FDN gate reaches your deductions

Here is the part finance teams miss. EFRIS validity no longer gates only VAT input credit; in the gazetted sectors it gates income-tax deductibility on the purchase side.

InteractivePurchase Deductibility Checkerlink

Toggle whether a supplier is in a mandatory-EFRIS sector and whether their invoice carries an FDN to see whether the expense is safely deductible.

Deduction at risk — no FDN on an in-scope purchase

The supplier is in a sector where EFRIS is mandatory, but the invoice has no Fiscal Document Number. Since the 1 July 2025 expansion, purchases from non-compliant suppliers in these sectors are disallowed as deductible expenses for income tax — not just blocked for VAT input credit. Get a valid EFRIS invoice before you book the cost.

Guidance as understood 2026-08-03 following the 1 Jul 2025 expansion. Deductibility and penalty rules change — confirm the current position with URA or your Ugandan tax advisor before relying on it.

Where the fiscal rule meets the accounting record

EFRIS acts as a fiscal-validity gate: the FDN is assigned at real-time validation, effectively at the point of supply, and an invoice without one is not a valid tax document. That gate is a tax-compliance event, conceptually separate from the IFRS 15 performance-obligation model that decides when revenue is recognised — the two usually coincide at the point of sale but are not the same thing. What is new since July 2025 is that, in the gazetted sectors, a missing FDN on a purchase also removes the income-tax deduction. Confirm the current deductibility position with your Ugandan tax advisor.

Penalties have moved — don't hard-code an old number

EFRIS non-compliance carries significant penalties, and they have changed. The 2024 traders' protests over EFRIS and its penalties led the government to briefly suspend penalty enforcement pending consultations, and the figures cited around the 2025 expansion differ from the earlier ones. Do not bake a specific penalty amount into your process from an old article — confirm the current figures with URA before relying on them.

Wire EFRIS into ERPNext

EFRIS exposes a system-to-system API, and there is a maintained community app — erpchampions/uganda_compliance, covering ERPNext v13, v14 and v15 — that maps ERPNext documents to it. Verify its status for your version; either way, the moving parts are the same.

Code recipeArchitect · Issue · Stock · Preventlink

Copy-paste the layered architecture, the invoice-upload flow that stores the FDN, the goods and stock registration steps, and the habits that keep invoices valid and deductions safe.

There is a maintained community app — erpchampions/uganda_compliance (ERPNext v13/v14/v15). Verify its status for your version; either way these are the moving parts.

text
Layers:

  ERPNext (Sales Invoice, Purchase Receipt, Stock Entry)
      |  uganda_compliance app (or your integration)
      |  maps ERP docs -> EFRIS T-series JSON
      v
  URA EFRIS API  (system-to-system integration)
      |  validates, assigns FDN + verification code + QR
      v
  URA (fiscal record of every invoice / receipt)

EFRIS JSON envelope has three parts:
  data            — the invoice / goods / stock payload
  globalInfo      — device / taxpayer / auth context
  returnStateInfo — URA's response status

Store the returned FDN, verification (antifake) code and
QR back on the ERPNext document and render them on the
print format.

Register goods and report stock

EFRIS is not only invoicing — you register each sellable item as an EFRIS good with the correct commodity code, unit and tax category, and report stock-in before you can invoice it. Map ERPNext Purchase Receipts, Stock Entries and Stock Reconciliations to the matching EFRIS stock operations so URA's ledger and yours agree.

Issue e-invoices that carry an FDN

On submit, map the Sales Invoice to the EFRIS payload, upload it, and store the returned FDN, verification code and QR on the document — then render them on the print format. Without a returned FDN, do not hand the customer the invoice; it is not a valid fiscal document.

Screen purchases for the FDN

For suppliers in the gazetted sectors, treat a missing FDN as a hard block on booking the purchase — otherwise you lose the income-tax deduction. Store the supplier's FDN and QR on the purchase record for audit, the same evidence discipline as reconciling an Indian e-invoice IRN.

Reconcile stock on a schedule

Mismatched stock between EFRIS and ERPNext is a common audit flag. Reconcile the EFRIS goods list against the ERPNext Item master, and EFRIS stock against ERPNext stock, on a schedule — not in a panic at year-end.

When sales, stores and finance each own a piece

In a Ugandan operation the sales desk issues invoices, the stores team manages goods and stock, and finance books purchases. EFRIS touches all three, and the failure sits between them: an item sold before it was registered with URA, an invoice handed over before the FDN came back, or a purchase booked from a gazetted-sector supplier whose invoice had no FDN — quietly costing a deduction.

The control is to make the FDN the single gate the system enforces, not a check any one desk remembers. No item reaches a sales invoice until it is registered; no invoice is "issued" until URA returns an FDN; no gazetted-sector purchase is booked without one. Automate the goods sync rather than registering SKUs by hand, and reconcile EFRIS against ERPNext on a schedule so a drift is caught early.

Draft policy for your finance and operations leads to ratify. Every sellable item is registered with URA before it appears on a sales invoice. No sales invoice is issued to a customer until EFRIS returns a Fiscal Document Number; a missing FDN is a hard block, not a warning. Purchases from suppliers in the gazetted EFRIS sectors are not booked without a valid FDN, to preserve the income-tax deduction. EFRIS goods and stock are reconciled against the ERPNext Item master and stock ledger on a set schedule. Current scope, penalty and deductibility rules are confirmed with URA, not carried over from prior guidance. Ratify with your Ugandan tax advisor before adoption.

Buy the app, or build the integration

FAQ

+Is EFRIS only for VAT-registered businesses in Uganda?

No — not since 1 July 2025. Under URA General Notice 2218 of 2025, businesses in 12 gazetted sectors must issue EFRIS e-invoices whether or not they are VAT-registered. VAT-registered taxpayers were always in scope; the expansion brought in non-VAT businesses in those sectors too.

+What is a Fiscal Document Number (FDN) in EFRIS?

The FDN is the identifier URA assigns to each validated e-invoice or e-receipt, issued alongside a verification (antifake) code and a QR code. It is what makes the document a valid fiscal invoice. An invoice without an FDN is not a valid tax document, so the buyer cannot rely on it.

+Can I still deduct a purchase if the supplier's invoice has no FDN?

In the gazetted EFRIS sectors, no — purchases from non-compliant suppliers are disallowed as deductible expenses for income tax, not just blocked for VAT input credit. This is why you should screen suppliers in those sectors and refuse to book an invoice that lacks an FDN. Confirm the current position with URA or your tax advisor.

+Does ERPNext integrate with EFRIS?

Not natively, but there is a maintained community app — erpchampions/uganda_compliance — covering ERPNext v13, v14 and v15, which syncs goods and stock, issues invoices carrying the FDN, verification code and QR, and handles credit notes. Verify its status for your version; otherwise the EFRIS integration is a custom build against URA's API.

+What happens if we issue an invoice without an FDN?

It is not a valid fiscal document. Your customer cannot use it to claim input credit or, in the gazetted sectors, to support their own deduction, and you are non-compliant with the e-invoicing obligation, which carries penalties. Gate ERPNext so no invoice is handed to a customer until URA returns an FDN.

+Does EFRIS track stock or only invoices?

Both. EFRIS registers goods with commodity codes and tracks stock movements, so you must register a sellable item and report stock-in before invoicing it. Keep EFRIS stock and ERPNext stock reconciled — a mismatch is a common audit flag.

Closing

EFRIS stopped being a VAT-only concern in July 2025, and the income-tax disallowance for non-compliant purchases is the change that bites hardest. Gate ERPNext on the FDN — on sales and on purchases — register goods before you sell them, and keep stock reconciled with URA. Get that right and EFRIS is a background validation; get it wrong and a missing identifier costs you a deduction you never saw leave.

Running ERPNext in Uganda and unsure your EFRIS setup covers the 2025 rules?

We wire ERPNext to EFRIS — goods registration, FDN-gated invoicing, stock sync and purchase screening — and test the whole flow before your next filing.

Free · By email

Get practical ERPNext & automation guides

New implementation guides, cost breakdowns and open-source tips for Indian businesses — occasionally, straight to your inbox. No spam.

M

Written by

Manoj

Founder of Mith Tech, an open-source ERP & automation studio. Hands-on ERPNext/Frappe implementation across multi-branch, multi-warehouse Indian operations — GST/TDS/PT compliance, branch-level permissions, and custom Frappe apps that give management real-time visibility.

Keep reading

See what this looks like for your business

Book a free 30-minute audit. We'll map your workflows, find where time and money leak, and design an open-source stack you actually own — no per-user licence fees.

Book a consultation
0 0
Published on 3 August 2026

Manoj

Comments

No comments yet. Start a new discussion.

Ctrl+Enter to add comment