URA EFRIS Gateway API

EFRIS System-to-System Integration in Uganda

Connect QuickBooks, Tally, Sage, Odoo, Zoho Books or custom ERP and POS applications to URA EFRIS. Send invoices and receipts through a REST API and store the fiscal document number, verification code and QR code returned when URA accepts each document.

Sample URA EFRIS fiscalized receipt from the integration
Security & Trust

Official Compliance & Corporate Security

Bank-Grade Transaction Privacy

Securing your enterprise financial records and maintaining customer trust is our highest priority. Our integration gateway establishes a highly secure, private tunnel that automatically fiscalizes invoices to the official URA tax servers, ensuring absolute data confidentiality.

Our senior implementation consultants handle the entire security setup, portal registration, and endpoint mapping for you. Your business gets a secure, hassle-free compliance gateway that operates smoothly in the background, requiring zero technical complexity from your internal team.

Hassle-Free Security Onboarding:
  • ✓Complete management of your company's secure system keys and portal registrations.
  • ✓Official URA compliance validation check performed on all digital tax receipt layouts.
  • ✓End-to-end sandbox testing before cutover, so problems surface off your live POS rather than on it.
Gateway Standards

Enterprise Trust Specifications

Data Protection:Bank-Grade SSL
URA Compliance:Validated to URA spec
Setup Assistance:Full Onboarding Included
Support:Priority helpdesk, business hours

We handle the heavy lifting of tax gateway security parameters so your sales staff, accounting managers, and executive leadership can focus purely on business growth.

Capabilities

Engineered for absolute tax automation

Automated Fiscalization

Each invoice or receipt goes to URA as it is raised, and comes back with its fiscal document number, verification code and QR code, ready to print.

Secure Connection to URA

Everything URA's EFRIS requires before it accepts a document — set up once for each taxpayer, then kept working for you.

E-Invoice Layout Formatting

Generates legal 6-section receipts containing monopaced verification keys, FD serial numbers, and URA-compliant scannable verification QR links.

Automatic TIN Validations

Validates purchaser TIN numbers in real time directly against official URA databases to secure tax credit allocations and avoid filing rejects.

Every Tax Type Covered

Standard, zero-rated, exempt and deemed VAT, excise duty and discounts are sent to URA as your system recorded them. When a document does not meet URA's rules, you are told what is wrong and what to do about it.

Credit Notes & Stock Control

Beyond sales invoices: file credit notes for refunds and returns, and keep URA's stock records accurate with increases, decreases and branch-to-branch transfers.

Enterprise Connectors

Plug-and-Play ERP Middleware Integration

Any ERP / POS — REST API

Our primary integration path: a single secure REST API (X-API-Key auth) any system can call. Register products, fiscalize invoices, file credit notes, and manage stock straight from your own software.

QuickBooks Online & Desktop

Our most complete connector. OAuth product and invoice sync for Online; local database sync via QB Web Connector for Desktop branches and legacy retail registers.

Zoho Books & Custom POS

Direct connection over our RESTful JSON endpoints — capture invoices on creation and trigger immediate EFRIS fiscalization from Zoho or any bespoke POS.

Xero — Beta

Xero connectivity is in active development. Talk to us to join the early-access rollout and shape the integration for your workflow.

Full Interface Coverage

Every EFRIS Document, One Gateway

This isn't just invoice fiscalization. Our gateway implements the full set of URA EFRIS interfaces so your ERP can handle the entire fiscal lifecycle — sales, refunds, stock, and reference lookups — through one authenticated REST API.

Invoices

  • ✓Standard B2C & B2B (buyer TIN)
  • ✓Export invoices
  • ✓Zero-rated, Exempt & Deemed VAT
  • ✓Item & invoice-level discounts

Credit Notes

  • ✓Refunds, returns & cancellations
  • ✓Linked to the original invoice
  • ✓Query by original invoice number

Products & Stock

  • ✓Register goods & services
  • ✓Automatic opening stock
  • ✓Stock increase, decrease & branch transfer

Excise Duty

  • ✓Fixed-rate & percentage excise
  • ✓Beer, spirits, cigarettes, soft drinks, fuel
  • ✓Works with discounts & every tax type

Reference Lookups

  • ✓Taxpayer validation by TIN
  • ✓Commodity categories & units of measure
  • ✓Excise codes & branch listing

Health & Diagnostics

  • ✓Live server-time sync
  • ✓Gateway diagnostic self-test
  • ✓Invoice status & failed-only queries
Technical Reference

RESTful JSON API Integration

One HTTPS endpoint, authenticated with a single X-API-Key header. Post a plain-JSON invoice and receive the signed URA fiscal document number (FDN) and scannable verification QR — with nothing else to build on your side.

  • ✓Multi-company, multi-tenant isolation with per-client API keys & rate limiting
  • ✓Standard, B2B, Export, Zero-rated, Exempt & Deemed VAT invoices
  • ✓Safe-retry lookups (GET /invoice/{number}) to prevent double-fiscalization
POST https://efris.midwayug.com/api/external/efris/submit-invoiceHTTPS / POST
// 1. Authenticate with your gateway API key
const res = await fetch(url, {
  method: 'POST',
  headers: { 'X-API-Key': 'msk_live_…' },
  body: JSON.stringify({
    format: 'simple',
    invoice_number: 'INV-2026-0009',
    customer_name: 'Mary Jane',
    items: [{ item_name: 'Shoes', quantity: 1,
      unit_price: 11800, tax_rate: 18 }]
  })
});

// 2. Signed URA fiscal receipt returns in seconds
const { fdn, qrCode } = await res.json();
console.log(fdn); // 325043858035
Developer Resources

Start Building Today

By system

Connecting your accounting system

The EFRIS side is the same whatever you run. What differs is how the invoice gets out of your system — so each has its own notes.

Built by Midway

Our EFRIS products

Alongside the integration work we do for clients, we build and maintain the software behind it. Both of these are ours.

Corporate Consultation

Ready to automate your URA EFRIS compliance?

Connecting an accounting system to EFRIS takes technical work your team should not have to learn. Our Kampala-based senior tax integration engineers set up your EFRIS environment and the connection to your system, so the integration lands on us rather than on your team.

What is EFRIS system-to-system integration?

System-to-system integration connects your accounting, ERP or POS application to the Uganda Revenue Authority's Electronic Fiscal Receipting and Invoicing Solution (EFRIS). Your application sends a transaction through the integration and stores the fiscal document number, verification code and QR code returned when URA accepts it.

Midway Systems Limited scopes the connection and sets up the integration environment. EFRIS Gateway is our REST API product for developers connecting their software to EFRIS. The connector approach depends on your accounting system's version, hosting and available integration features.

For businesses and accountants

Tell us your software and version, taxpayer count and invoicing workflow. We scope the connection, environment setup and responsibilities with you. Product mapping, opening stock for goods, invoice printing and staff workflows should be agreed explicitly.

Discuss your integration with Midway

Read the Gateway business integration guide

For developers and software vendors

Use EFRIS Gateway to send JSON over HTTPS with a taxpayer API key. Plan product registration, stock movements for goods, invoice submission, fiscal result storage, credit notes and error recovery. Hosted access and a self-hosted source licence are available.

Read the EFRIS API developer guide

Compare Gateway deployment options

What we assess before quoting

  1. Your accounting software, version and hosting, and how invoices leave that system.
  2. Your taxpayer setup, products, taxes and fiscal invoice printing requirements.
  3. The proposed connection, test workflow, deployment responsibilities and support scope.

The receipt screenshot on this page shows the fiscal output. Ask us to demonstrate the workflow for your system before agreeing the implementation scope.

Tell us your accounting system
Questions & Answers

Frequently Asked Questions

Which systems can connect to URA EFRIS through Midway?
QuickBooks Online, QuickBooks Desktop, Tally, Zoho, and custom POS or ERP databases — connected through secure, robust RESTful APIs and gateways.
How fast is EFRIS fiscalization?
Submission time depends on network connectivity, URA availability and document validation. Your integration should show whether a sale is pending, accepted or rejected and reconcile interrupted submissions before retrying.
How do we get onboarded?
Request onboarding and setup in Kampala. Pricing is quote-based, and your gateway URLs and API access are provisioned once your integration is configured.