- Home
- Apps
- SaaS Tools
- Bahrain VAT Compliance for Business Central
Illustrative previewAn AL extension that puts Bahrain NBR-aligned VAT setup,
bilingual tax invoice formats, return-period views and an auditable archive inside Dynamics 365 Business Central.
ECOSIRE builds it to your chart of accounts and posting groups after a scoping call.
What is Bahrain VAT Compliance for Business Central?
An AL extension that puts Bahrain NBR-aligned VAT setup, bilingual tax invoice formats, return-period views and an auditable archive inside Dynamics 365 Business Central. ECOSIRE builds it to your chart of accounts and posting groups after a scoping call. 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
Built to order, done for you
No DIY setup — a working app, built, installed and supported by ECOSIRE.
- 1
You order
Start with a one-time build price. We scope it with you at kickoff.
- 2
We build & install
ECOSIRE builds, configures and installs it on your Dynamics 365 Business Central.
- 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
Bahrain's National Bureau for Revenue expects a tax invoice to carry a defined set of fields — supplier and customer VAT account numbers, the invoice date and supply date, a per-line breakdown at the applicable rate, the VAT amount stated in Bahraini Dinar, and Arabic content where the customer requires it. It expects VAT returns to be reconcilable back to the ledger, and it expects the records behind both to survive an audit years later. Dynamics 365 Business Central gives you VAT Posting Setup, VAT Business Posting Group, VAT Product Posting Group, the VAT Entry table and the standard VAT Statement — a genuinely solid foundation, but a generic one. Out of the box there is no Bahrain rate scaffold, no bilingual invoice layout, no BHD-specific rounding discipline on the tax line, no mapping from your statement lines to the boxes on the NBR return, and no correction workflow for the day a customer rejects an invoice. Finance teams close that gap in Excel, and the spreadsheet becomes the thing an auditor actually asks about.
What ECOSIRE builds is an AL extension — delivered as a per-tenant extension for Business Central online, or as an on-premises extension where you host it — that moves that work back into the system. We ship a Bahrain VAT Setup page holding the rate scaffold (standard, zero-rated, exempt, out-of-scope) and the registration details, wired to your existing posting groups rather than replacing them. Table extensions on Sales Header, Sales Invoice Header, Purch. Inv. Header and VAT Entry carry the extra compliance fields — supply date, VAT account number, place of supply, reverse-charge indicator, correction reference — stamped at posting time by a codeunit subscribing to the standard OnAfterPostSalesDoc and OnAfterPostPurchaseDoc publishers. Nothing is bolted on after the fact, which is what makes the archive trustworthy.
One posting event produces both outputs. A Word or RDLC report layout renders the human-readable tax invoice, bilingual Arabic/English where you need it, with the VAT summary block and the BHD amounts rounded to three decimals per Bahraini convention. The same posted data serialises to a machine format — XML or JSON to the schema your filing agent, e-invoicing portal or group consolidation tool expects — from a dedicated codeunit, so the two can never drift apart. A Bahrain VAT Return page groups VAT Entry records by period and maps them to your return boxes, with drill-down from any box to the underlying entries and then to the source document; that drill-down is the whole point, because it is the path an auditor walks. Where a submission is rejected, a correction workflow marks the original, creates the linked corrective document and keeps both in the archive with the rejection reason attached, rather than letting someone delete and re-post. Registered permission sets keep the setup pages away from ordinary users, and a job queue entry can run the period validation, the archive export or an outbound submission on a schedule. API pages (REST API v2.0 / OData v4) expose the return summary and the invoice archive so Power BI, a Power Automate flow or a Dataverse-connected app can read them without anyone touching the database.
This is build-to-order, and we would rather say so plainly than imply a one-click download. There is no AppSource listing behind this page — you request a quotation, we run a scoping call of about thirty minutes to look at your chart of accounts, posting group structure, invoice layout, Arabic requirement and filing route, and we quote against that. From confirmed scope, typical delivery is one working week: build against your Business Central release wave, install into your sandbox, run UAT with your finance team on real documents, then a scheduled production install with a rollback plan.
You get the AL source, not a black box. The repository is handed over on completion, the extension is documented at object level, and your finance users get a written guide plus a live training session. A post-go-live support window covers defects and the questions that only appear once real month-end traffic hits it. If NBR guidance changes, or your business adds a scenario the first build did not anticipate, that is a scoped change on a codebase you already own.
What you get
- Installable AL extension source built and compiled against your Business Central release wave (SaaS per-tenant extension, or on-premises extension package)
- Installation and configuration on your sandbox and production environments, including permission set assignment and job queue setup
- Technical documentation: object list, event subscriptions, field mappings, rounding rule, return box configuration and export schema
- End-user guide for the finance team covering setup, invoicing, return preparation, corrections and archive export
- Live training session with your finance and IT users, recorded for later joiners
- UAT on your sandbox using real document scenarios, with a signed-off test record and a documented rollback plan for the production install
- Post-go-live support window covering defects, configuration questions and the first live filing period
- Git repository handover — you own the source, with commit history and build instructions
Who this is for
Finance Manager or Chief Accountant, Bahrain entity
Signs the VAT return and carries the exposure if it is wrong. Wants the return prepared from the ledger rather than rebuilt in Excel each period, and wants to be able to click from a return box to the invoice behind it when the auditor asks.
Group Financial Controller, multi-entity GCC business
Runs Bahrain alongside Saudi, UAE or Oman entities in one Business Central tenant. Needs Bahrain-specific rules scoped to the Bahrain company without disturbing the posting setup of the others, and consistent archive and reporting structures across all of them.
IT Manager or Business Central Administrator
Owns the environment and the upgrade cycle. Wants an extension that uses event subscribers rather than base-application modification, ships with proper permission sets, survives release wave updates, and comes with source they can hand to any partner later.
Accounts Receivable Supervisor
Issues the invoices customers actually reject. Needs a defined correction path — flag, link, credit, reissue — that leaves a clean trail, instead of deleting the posted document and hoping nobody reconciles that period.
How Bahrain VAT Compliance for Business Central Compares
| Criterion | ECOSIRE | Custom Build | Competitor | Dynamics 365 Business Central Native |
|---|---|---|---|---|
| Bahrain VAT rate scaffold and setup | Delivered configured against your posting groups and chart of accounts at install | Your team designs the scaffold from NBR guidance, then maintains it | Often a generic GCC scaffold you adapt to Bahrain yourself | Generic VAT posting setup with no Bahrain-specific rates or fields |
| Bilingual tax invoice layout | Arabic/English layout built to your branding with the mandatory NBR field set | Report design and Arabic rendering built and tested in-house | Fixed template; branding and layout changes usually need vendor work | Standard invoice report with no Arabic layout or Bahrain field set |
| Return preparation and audit drill-down | Period view mapped to your return boxes, drill-down to VAT entry and source document | Buildable, but the drill-down is the part most in-house builds skip | Report output varies; drill-down back to the source document is uncommon | VAT Statement gives totals; box mapping and correction linkage are manual |
| Rejection and correction workflow | Flag, link, credit and reissue with the reason retained in the archive | Usually deferred to a later phase and handled by convention until then | Frequently absent — corrections fall back to manual credit memos | Standard credit memos with no correction reference or rejection reason |
| Source code ownership | Full AL source and git repository handed over; no runtime licence | You own it, and you also own every future fix | Compiled app under subscription; source not provided | Base application, not modifiable without an extension |
| Time to working system | one working week from confirmed scope, including UAT and rollback plan | Typically several months including specification, build and testing | Install is quick; configuration and gap-closing consume the saved time | Available immediately, but the compliance gap remains open |
| Release wave upgrades | Event-subscriber design; recompile and regression test, quoted as a scheduled task | Your team retests and fixes against each wave | Vendor-controlled cadence; you wait for their compatible release | Handled by Microsoft, with nothing Bahrain-specific to carry forward |
| Fit to your actual process | Scoped to your posting groups, filing route, layouts and multi-entity structure | Perfect fit achievable, at full internal cost and timeline | You adapt your process to the app's assumptions | Configurable within the standard VAT framework only |
Frequently Asked Questions about Bahrain VAT Compliance for Business Central
How long does delivery take?
This is a build-to-order extension, not an AppSource download. Typical delivery is one working week from confirmed scope. That covers the build against your release wave, installation into your sandbox, UAT with your finance team on real documents, and the scheduled production install. The clock starts when scope is agreed and signed off, not at first enquiry — the most common cause of a longer timeline is an unusual filing route or an invoice layout that needs several review rounds with your team.
What does support and updating look like after go-live?
Every build includes a post-go-live support window covering defects and configuration questions, sized at quotation and typically spanning your first live filing period. Beyond that we offer an ongoing support agreement. Because the extension is written against published Business Central events rather than modified base objects, release wave updates normally require a recompile and regression test rather than a rewrite — we quote that as a small scheduled task. If NBR guidance changes, we assess the impact and quote the change against a codebase you already own the source to.
Does this work on Business Central online, on-premises, or both?
Both. For Business Central online we deliver a per-tenant extension installed into your sandbox first and then production. For on-premises we deliver the extension package plus install instructions for your environment. The AL code is the same; what differs is packaging, the deployment path and, on-premises, whether outbound submission calls are routed through your network. Tell us which you run at the scoping call and we build accordingly.
Will this conflict with our existing customisations or other extensions?
We check that at scoping. The extension uses table extensions and event subscribers rather than modifying base objects, which is what keeps it compatible, but if another extension already subscribes to the same posting events or extends the same tables we need to know before we build. Bring a list of your installed extensions to the call. Where there is genuine overlap we either scope around it or, if you own the other extension, propose how the two should interoperate.
Does it file the return with the NBR automatically?
It prepares the return from your ledger, validates the period, produces the human-readable and machine-readable outputs, and keeps the archive. Whether it submits automatically depends on your filing route — if you file through a portal or an agent that exposes an accepted interface, we can wire a scheduled job queue entry to it; if filing is a manual portal upload, the extension produces the file and the numbers and a person presses submit. We confirm which applies to you during scoping rather than promising an integration that may not exist for your route.
Can we get the data out into Power BI or Power Automate?
Yes. The extension exposes API pages over REST API v2.0 / OData v4 for the return summary and the invoice archive, so Power BI can report on VAT position across periods and Power Automate or a Dataverse-connected app can react to events such as a rejected invoice. If you want a specific dashboard or flow built as well, tell us at scoping and we quote it as part of the same engagement.
What exactly do we own at the end?
The AL source code and its git repository, handed over on completion, along with the technical documentation and the user guide. There is no runtime licence, no key to renew and no dependency on us to keep it running. You can hand the repository to another partner, extend it yourselves, or come back to us for changes — the choice stays yours.
Related Modules

Authorize.Net Connector for Business Central
A per-tenant Business Central AL extension that authorizes, captures, voids and refunds Authorize.Net card and eCheck payments directly on sales orders and posted invoices, with tokenized CIM stored profiles. Built, installed and supported by ECOSIRE on your tenant.

Avalara-Certified Sales Tax & VAT Engine Connector for Business Central
A per-tenant AL extension that determines sales tax, VAT and GST in real time from Avalara AvaTax during Business Central document posting — built, installed and supported by ECOSIRE.

Bank Statement Import & E-Reconciliation
A per-tenant Business Central AL extension that imports CSV, XML, MT940 and CAMT.053 bank statements, applies a configurable matching-rules engine, and auto-reconciles transactions against your bank account ledger entries and open customer/vendor invoices — with a clean exception queue for the rest.

Belgium Peppol E-Invoicing
A build-to-order Dynamics 365 Business Central AL extension that posts, validates and transmits Peppol BIS Billing invoices for Belgium's structured B2B e-invoicing mandate through your chosen access point. ECOSIRE builds, installs and supports it after you request a quotation.
Bahrain VAT Compliance for Business Central
An AL extension that puts Bahrain NBR-aligned VAT setup, bilingual tax invoice formats, return-period views and an auditable archive inside Dynamics 365 Business Central. ECOSIRE builds it to your chart of accounts and posting groups after a scoping call.
- `Bahrain VAT Setup` page holding registration details and the NBR-aligned rate scaffold — standard, zero-rated, exempt and out-of-scope — mapped onto your existing `VAT Business Posting Group` and `VAT Product Posting Group` combinations rather than replacing them
- Table extensions on `Sales Header`, `Sales Invoice Header`, `Purch. Inv. Header` and `VAT Entry` carrying supply date, VAT account number, place of supply, reverse-charge indicator and correction reference
- Compliance fields stamped at posting time by a codeunit subscribing to the standard `OnAfterPostSalesDoc` and `OnAfterPostPurchaseDoc` publishers — no post-hoc patching of posted documents
- Bilingual Arabic/English tax invoice layout (Word or RDLC) with the mandatory field set, per-line rate breakdown and a VAT summary block in BHD