Skip to main content
Tanzania TRA EFD Compliance — A build-to-order Dynamics 365 Business Central extension that fiscalises invoices and credit no — 1/1Illustrative preview

A build-to-order Dynamics 365 Business Central extension that fiscalises invoices and credit notes against

Tanzania Revenue Authority EFD/VFD requirements directly from the documents your team already posts.

ECOSIRE scopes, builds, installs and supports it — and hands over the AL source code.

What is Tanzania TRA EFD Compliance?

A build-to-order Dynamics 365 Business Central extension that fiscalises invoices and credit notes against Tanzania Revenue Authority EFD/VFD requirements directly from the documents your team already posts. ECOSIRE scopes, builds, installs and supports it — and hands over the AL source code. Built to order by ECOSIRE for Dynamics 365 BC (build-to-order) — indicative price from $999.00 USD; request a quote for a scoped proposal.

Key Features

Virtual fiscal device (VFD) client implemented as a Business Central codeunit behind an interface, handling authentication, request signing, HTTPS transport and provider-specific payload shaping in one replaceable place
Event subscribers on the sales posting codeunits enqueue documents for fiscalisation without modifying base application objects, so upgrades stay clean
Job queue entry drains the fiscalisation queue asynchronously with configurable retry and backoff, so an unreachable device never blocks a posting run
Fiscalisation status carried on table extensions to Sales Header and Posted Sales Invoice — pending, submitted, accepted, rejected — plus receipt number, verification code and device timestamp
TRA tax-code mapping derived from existing master data via table extensions on VAT Posting Setup, Item and Item Category, validated at posting with a hard stop on unmapped lines
Human-readable fiscal receipt rendered as a Business Central report layout carrying receipt number and verification QR, generated from the same posting that produced the machine payload
Dedicated fiscalisation error queue page listing device reason codes, the exact payload sent, and attempt history per document
Guided correction workflow that routes a rejection to either a corrected resubmission or a credit note, depending on whether the document was already accepted by TRA
Credit note and cancellation fiscalisation handled as first-class flows, not an afterthought bolted onto invoice logic
Immutable fiscal record table with no edit permission granted to any user role, retaining request and response payloads for the full audit trail
API pages exposed on REST API v2.0 / OData v4 so Power BI, Power Automate and Dataverse-connected apps read fiscalisation state without database extracts
Dedicated permission sets separating fiscalisation setup, day-to-day resubmission and read-only audit access
Page extensions and a fiscal factbox that surface status and a resubmit action inside the documents your AR clerk already works in — no separate screen to learn
Z-report and daily-total reconciliation view comparing Business Central posted values against accepted fiscal submissions for the period
Built and compiled against your Business Central version and deployment model, supporting current release waves on SaaS online and on-premises

Built to order, done for you

No DIY setup — a working app, built, installed and supported by ECOSIRE.

  1. 1

    You order

    Start with a one-time build price. We scope it with you at kickoff.

  2. 2

    We build & install

    ECOSIRE builds, configures and installs it on your Dynamics 365 Business Central.

  3. 3

    Go live + support

    You go live in about one working week, with two weeks of go-live support. Defects in the code we deliver are fixed free of charge.

About this Product

Tanzania's Revenue Authority requires that a sale be fiscalised — passed through an EFD or virtual fiscal device, assigned a receipt number and verification code, and reproduced in a customer-readable form — before it is a valid tax document. Dynamics 365 Business Central posts a clean sales invoice, applies your VAT posting setup and files it in the posted document archive, and then stops. There is no fiscal device client in the base application, no TRA tax-code concept alongside your VAT posting groups, and no notion of a document being posted-but-not-yet-accepted. Finance teams close that gap by hand: post in Business Central, re-key into a standalone fiscal device or supplier portal, and reconcile two sets of numbers at month end. Every re-key is a mismatch risk, and every mismatch is an audit exposure.\n\nECOSIRE builds a Business Central AL extension that closes the loop inside the system where the invoice already lives. A codeunit-based VFD client handles authentication, request signing and HTTPS transport to the fiscal device or gateway your business uses. Table extensions on the sales header and posted sales invoice carry the fiscalisation state — pending, submitted, accepted, rejected — plus the returned receipt number, verification code and timestamp. Page extensions surface that state where your AR clerk is already working, with a fiscal factbox and a resubmit action rather than a separate screen. Event subscribers on the posting codeunits enqueue the document, and a job queue entry drains the queue asynchronously so a slow or unavailable device never blocks a posting run.\n\nTax mapping is derived from your existing master data rather than duplicated. We extend VAT Posting Setup, Item and Item Category with TRA tax-code fields, validate the mapping at posting time, and fail loudly with a clear message when a line has no mapped code — because a silent default is how the wrong rate reaches the authority. One posting produces both outputs the requirement asks for: the machine payload sent to the device, and the human-readable fiscal receipt, rendered as a Business Central report layout carrying the receipt number and verification QR so the customer copy and the fiscal record can never diverge.\n\nRejections are treated as a workflow, not a log line. A rejected submission lands in a fiscalisation error queue with the device's own reason code, the exact payload sent and a correction action that routes to a credit note or a corrected resubmission depending on whether the document was already accepted. Every attempt — accepted or not — is written to an immutable fiscal record table that no user role can edit, giving your auditors a defensible trail from the posted entry back to the TRA response. Where you need the data outside Business Central, we expose it through API pages on REST API v2.0 / OData v4 so Power BI, Power Automate or a Dataverse-connected app can read fiscalisation status without a database extract.\n\nThis is build-to-order, not an AppSource download. We start with a short scoping call to confirm your Business Central version and deployment model, which fiscal device or gateway you are contracted with, how your invoicing, POS and credit-note flows actually run, and which permission sets and approval steps must be respected. From confirmed scope, typical delivery is one working week: we build against your version, install and configure on your sandbox, run UAT with your own documents, then publish to production with a rollback plan. You receive the AL source and the git repository, so the extension stays yours to maintain, extend or hand to another partner.

What you get

  • Full AL source code for the extension, targeting your Business Central version and deployment model (SaaS per-tenant extension or on-premises)
  • Installation and configuration on your environment, including TRA/VFD credentials setup, tax code mapping, permission sets and job queue entries
  • Technical documentation: object ID ranges, table and page extensions, codeunit responsibilities, event subscribers, API endpoints and the VFD request/response contract
  • End-user guide plus a live training session for finance and AR staff covering fiscalisation status, rejection correction and Z-report reconciliation
  • UAT on a sandbox or staging environment with your real document scenarios, signed off before production publish, with a documented rollback plan
  • Post-go-live support window for defect fixes and configuration adjustments arising from your first live fiscalisation cycles
  • Git repository handover with full commit history, app.json, build pipeline notes and versioning scheme so your team or any partner can maintain it
  • Compliance evidence pack: sample fiscalised invoice, credit note, archived fiscal record and audit-trail export for your auditors

Who this is for

Finance Manager / Financial Controller, Tanzania operations

Signs off the VAT return and carries the exposure when a posted invoice has no fiscal receipt behind it. Needs fiscalisation status visible per document, a reconciliation view between Business Central posted totals and accepted TRA submissions, and an audit trail they can hand to an inspector without assembling it by hand.

Accounts Receivable Supervisor

Runs daily invoicing and is the person who currently re-keys documents into a standalone fiscal device. Needs fiscalisation to happen inside the invoice they already posted, a clear pending-versus-rejected state, and a resubmit action they can use themselves without raising a ticket to IT.

IT Manager / Business Central Administrator

Owns the tenant and the upgrade path. Needs an extension that uses event subscribers rather than base-object modification, ships with proper permission sets and job queue configuration, is compiled against the current release wave, and comes with source in a git repository so the business is not locked to a single supplier.

Group CFO of a multi-country business with a Tanzanian entity

Runs one Business Central tenant across several jurisdictions and does not want a bolt-on portal per country. Needs the Tanzanian entity compliant inside the same system and chart of accounts, with fiscalisation data readable through APIs into group Power BI reporting.

How Tanzania TRA EFD Compliance Compares

CriterionECOSIRECustom BuildCompetitorDynamics 365 Business Central Native
TRA fiscalisation coverageVFD/EFD fiscalisation built for your invoice flow, including credit notes and Z-report reconciliationWhatever your in-house AL developer has time to finish before the audit deadlineGeneric African-tax framework with Tanzania as one configuration profileNo fiscalisation of any kind; VAT posting groups only
How it reaches the fiscal deviceCodeunit-based VFD client over HTTPS with signing, retries and job queue dispatchUsually a first pass with synchronous calls and no retry designVendor middleware you must also license and hostNothing; invoices post and stop
Tax mappingTable-extension mapping from VAT Posting Setup and Item to TRA tax codes, validated on postingOften hard-coded constants that break at the next rate changeFixed mapping table you adapt your chart of accounts toBC VAT setup with no TRA code concept
Rejection handlingFiscalisation status per document, an error queue, and a guided correction-and-resubmit workflowTypically a log field and a developer running code manuallyError list, with correction left to the userNot applicable
Audit archivingImmutable fiscal record per posted document with receipt number, verification code and payload retainedDepends on what was scoped; usually thinner than auditors wantArchive inside the vendor's own portal, not in BCStandard posted document archive with no fiscal evidence
Deployment modelAL extension for BC SaaS online or on-premises, delivered as source you ownWhatever your team builds; ownership is clear but timeline is notAppSource binary; source not providedBase application only
Fit to your processScoped to your invoicing, POS and credit-note reality before a line is writtenFully bespoke, but you carry all analysis and rework riskYou change your process to match the appN/A
Ongoing changesPost-go-live support window plus a quoted change path for TRA spec and release-wave updatesDepends on developer availability and staff turnoverVendor release cadence you cannot influenceMicrosoft ships no TRA functionality to update

Frequently Asked Questions about Tanzania TRA EFD Compliance

How long does delivery take?

This is build-to-order. Typical delivery is one working week from confirmed scope — meaning after the scoping call, once your Business Central version, deployment model, fiscal device or gateway, and document flows are agreed in writing. Scope is confirmed, then the clock starts. If your fiscal device supplier is slow to issue test credentials, that dependency is called out up front rather than absorbed silently into the timeline.

Is this an existing app I can download from Microsoft AppSource?

No. There is nothing to download today. ECOSIRE builds the extension for your environment after you request a quotation, then installs, configures and supports it. You get the AL source code and the git repository at handover, which an AppSource binary would not give you.

Does it work on Business Central online (SaaS) as well as on-premises?

Yes. We build to current release waves and target your deployment model explicitly. For SaaS we deliver a per-tenant extension published through the admin centre, using only cloud-permitted patterns — HttpClient from a codeunit, no external DLLs, no file-system dependencies. For on-premises we deliver the same extension compiled against your version, and can accommodate on-prem-only integration paths where your fiscal device is on the local network.

What happens to support and updates after go-live?

Every build includes a post-go-live support window for defect fixes and configuration adjustments arising from your first live fiscalisation cycles — the exact length is set in your quotation. Beyond that, TRA specification changes and Business Central release-wave upgrades are handled as quoted change requests against your repository. Because you hold the source, you are never locked into us to make a change.

Which fiscal devices or VFD providers do you integrate with?

We integrate against the device or gateway your business is already contracted with in Tanzania. The VFD client is built as a codeunit behind an interface, so the transport and payload specifics of your provider are implemented in one place rather than scattered through posting logic. Bring your provider's integration specification and test credentials to the scoping call and we confirm feasibility before quoting.

Will fiscalisation slow down or block our posting runs?

No. Posting completes normally; fiscalisation is enqueued by an event subscriber and processed by a job queue entry on its own schedule. If the device is unreachable, the document sits in the queue with a pending status and retries, rather than failing the post. Your AR team sees the pending state on the document itself and in the fiscalisation error queue.

What do our auditors actually get?

An immutable fiscal record for every posted document — receipt number, verification code, timestamp, the payload sent and the response received — held in a dedicated table that no user role can edit, with the exact payload retained for each attempt. That record is exportable and is included in the compliance evidence pack we hand over at go-live, alongside a sample fiscalised invoice and credit note.

Request a quote

Tanzania TRA EFD Compliance

A build-to-order Dynamics 365 Business Central extension that fiscalises invoices and credit notes against Tanzania Revenue Authority EFD/VFD requirements directly from the documents your team already posts. ECOSIRE scopes, builds, installs and supports it — and hands over the AL source code.

  • Virtual fiscal device (VFD) client implemented as a Business Central codeunit behind an interface, handling authentication, request signing, HTTPS transport and provider-specific payload shaping in one replaceable place
  • Event subscribers on the sales posting codeunits enqueue documents for fiscalisation without modifying base application objects, so upgrades stay clean
  • Job queue entry drains the fiscalisation queue asynchronously with configurable retry and backoff, so an unreachable device never blocks a posting run
  • Fiscalisation status carried on table extensions to Sales Header and Posted Sales Invoice — pending, submitted, accepted, rejected — plus receipt number, verification code and device timestamp

Request a Quotation

Tell us about your Tanzania TRA EFD Compliance requirements and we'll send pricing, licensing options and a tailored proposal — usually within one business day.

No payment now. This sends a quote request to our team — we'll follow up by email with pricing and next steps.