TRA and the VFD System
In-depth guide on the Tanzania Revenue Authority (TRA), the Electronic Fiscal Device Management System (EFDMS), and the Virtual Fiscal Device (VFD)
TRA
The Tanzania Revenue Authority (TRA) is a semi-autonomous government agency established under Act of Parliament No. 11 of 1995, operational since 1 July 1996. TRA is responsible for the assessment, collection, and accounting of all central government revenue in Tanzania and administers key tax legislation including the:
- Value Added Tax Act (VAT)
- Income Tax Act
- Excise (Management and Tariff) Act
- East African Community Customs Management Act
Visit the TRA website for official guidance and regulatory updates.
The EFDMS and the VFD
The Electronic Fiscal Device Management System (EFDMS)
The Electronic Fiscal Device Management System (EFDMS) is TRA's central platform for receiving, validating, and storing fiscal transaction data in real time. All fiscal receipts and invoices issued by businesses in Tanzania flow through EFDMS - it is the authoritative record of every fiscalized transaction in the country.
Two types of devices connect to EFDMS:
- EFD (Electronic Fiscal Device) - physical hardware (POS machines, fiscal printers). Legacy approach; being phased out.
- VFD (Virtual Fiscal Device) - software-only, cloud-based alternative introduced in 2020. The current and recommended path for new integrations.
Background: From EFD to VFD
Tanzania's fiscal receipt journey began with the Electronic Fiscal Device (EFD) - a physical device that businesses were required to procure, install, and use to issue fiscal receipts. The EFD mandate established electronic fiscalization, but hardware dependency created barriers around cost, maintenance, and portability.
The Virtual Fiscal Device (VFD) removes the hardware requirement entirely. Instead of routing sales data through dedicated hardware, a business's system communicates directly with EFDMS via an API, receiving a cryptographically signed fiscal receipt in response.
VFD is software-based; EFD was hardware-basedUnder EFD, businesses procured physical fiscal devices. Under VFD, businesses integrate their invoicing system with EFDMS via an approved middleware provider like DigiTax - no dedicated hardware required.
How the VFD System Works
The VFD system operates on a pre-clearance model - the transaction is submitted to and approved by TRA before the receipt is issued to the customer:
- The business prepares a sales transaction in their system.
- The system sends the transaction data to TRA's EFDMS via the DigiTax API.
- EFDMS validates the data, signs it, and returns a fiscal receipt response with a verification number and fiscal code.
- The business issues the fiscal receipt (with QR code) to the customer.
This guarantees that every receipt issued to a customer has been approved and recorded by TRA in real time.
flowchart LR
A["Business System / ERP"] -- "Invoice data" --> B["DigiTax TZ API"]
B -- "EFDMS API call (XML)" --> C["TRA EFDMS"]
C -- "Signed fiscal receipt" --> B
B -- "Fiscal receipt data + QR code" --> A
A -- "Fiscal receipt issued" --> D["Customer"]
Key Components of a TRA Fiscal Receipt
A valid TRA fiscal receipt contains:
| Field | Description |
|---|---|
| RCTNUM | Receipt Number - cumulative counter; starts at 1, increments per transaction, never resets |
| DC | Daily Counter - increments per transaction, resets to 1 at midnight each day |
| GC | Global Counter - always equals RCTNUM; used for verification |
| RCTVNUM | Receipt Verification Number - combination of RECEIPTCODE + GC; encodes the QR code |
| ZNUM | Z-Number - the issue date in YYYYMMDD format; links the receipt to its daily Z Report |
| QR Code | Encodes the RCTVNUM; customers and auditors scan to verify on the TRA portal |
| VFD Serial | EFDSERIAL - the VFD serial number assigned by TRA to the registered device |
| REGID | Registration ID - the EFDMS device registration identifier |
| TIN | Seller's Taxpayer Identification Number |
| VRN | Seller's VAT Registration Number (required for VAT-registered businesses) |
| Tax Summary | Per-category net amounts and VAT amounts |
Customers can verify any receipt at the TRA receipt verification portal: https://virtual.tra.go.tz/efdmsRctVerify/
Compliance and Mandate
TRA has mandated fiscalization (originally EFD, now migrating to VFD) for all VAT-registered taxpayers and certain non-VAT traders above the applicable turnover threshold.
Key milestones:
| Date | Requirement |
|---|---|
| Pre-2020 | Physical EFD devices mandatory for VAT-registered businesses |
| 2020 | VFD introduced as a software alternative |
| 1 July 2021 | Mandatory for businesses with annual turnover >= TZS 14 million |
| 1 July 2024 | VAT registration threshold increased to TZS 200 million annual turnover |
| 1 July 2025 | Finance Act 2025 in effect - VFD swap-out of existing EFD devices mandated; pre-clearance model formally codified |
Key obligations:
- Every taxable supply must generate a fiscal receipt or invoice before it is issued to the buyer.
- Receipts must be fiscalized in real time via EFDMS (or queued and resubmitted if connectivity fails).
- A Z Report (daily closing report) must be submitted to EFDMS after each business day, before the first transaction of the next day.
- Non-compliant businesses are subject to penalties under the Tax Administration Act.
Check the TRA website for the latest compliance thresholds and penalty schedules.
Penalties
| Offence | Penalty |
|---|---|
| Failure to use EFD/VFD or issuing false receipts | Fine of 200-300 currency points OR imprisonment <= 3 years |
| Tax evasion using EFD/VFD non-compliance | Additional penalty = double the evaded tax OR 3 years imprisonment |
| Customer failure to demand a fiscal receipt | Fine of 2-100 currency points |
One currency point = TZS 20,000 (as of Finance Act 2024). Maximum primary fine approx TZS 6 million.
Data retention: all fiscal transaction records must be retained for a minimum of 5 years (or 1,800 transaction days).
Tax Categories in Tanzania
Tanzania's EFDMS defines five tax categories used to classify each line item on a fiscal receipt:
| Tax Type | Category Code | VAT Rate | Category Name | Description |
|---|---|---|---|---|
STANDARD | 1 / A | 18% (0.18) | Standard Rate | Standard VAT - applies to most taxable supplies in Tanzania. |
SPECIAL_RATE | 2 / B | 0% (0.00) | Special Rate | Special sector-specific rate under specific Ministerial orders. |
ZERO_RATED | 3 / C | 0% (0.00) | Zero Rated | Taxable at 0% - e.g. exported goods, international transport. |
SPECIAL_RELIEF | 4 / D | 0% (0.00) | Special Relief | Supplies under statutory exemption or diplomatic relief. |
EXEMPTED | 5 / E | 0% (0.00) | Exempt | Wholly exempt - no VAT charged or recoverable. |
Always verify current tax category rates and exemptions with TRA or your tax advisor, as rates may change through annual Finance Acts.
VFD Registration Identifiers
When creating a business on DigiTax TZ, you will need the following TRA-issued identifiers. These are assigned during the TRA VFD onboarding process:
| Identifier | Description |
|---|---|
| TIN | Taxpayer Identification Number - assigned by TRA on tax registration |
| VRN | VAT Registration Number - required for VAT-registered businesses |
| REGID | Device Registration ID - returned by EFDMS on VFD registration |
| EFDSERIAL | VFD Serial Number - unique serial assigned to the registered VFD instance |
Contact [email protected] for guidance on the TRA VFD registration process or reach out to TRA directly.
The DigiTax Advantage
Integrating with EFDMS directly requires:
- Obtaining and managing a TRA-issued PKI certificate (PKCS12 format)
- Constructing XML payloads signed with SHA-1/RSA
- Managing per-transaction counter sequencing (RCTNUM, GC, DC) - errors cause rejections
- Scheduling and submitting daily Z Reports
- Handling offline queuing and resubmission logic
DigiTax TZ abstracts all of this. You send clean JSON to the DigiTax API; DigiTax handles certificate management, XML formatting, counter management, Z Report scheduling, and retry logic - and returns the verified fiscal receipt data ready for printing.
Updated about 2 hours ago