- Home
- Apps
- SaaS Tools
- Jordan JoFotara E-Invoicing for Odoo
Illustrative previewA build-to-order Odoo module that submits your invoices to Jordan's JoFotara national e-invoicing platform with
ISTD-compliant XML and embedded QR codes.
ECOSIRE builds, installs, and supports it around your chart of accounts and tax setup.
What is Jordan JoFotara E-Invoicing for Odoo?
A build-to-order Odoo module that submits your invoices to Jordan's JoFotara national e-invoicing platform with ISTD-compliant XML and embedded QR codes. ECOSIRE builds, installs, and supports it around your chart of accounts and tax setup. Built to order by ECOSIRE for Odoo 17, 18, 19 — 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 Odoo.
- 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.
Technical Specifications
- Odoo Compatibility
- Odoo 17, Odoo 18, Odoo 19
- Editions
- Enterprise & Community
- License
- Licence confirmation required
- Python Requirement
- Python 3.10+
- Database
- PostgreSQL 12+
About this Product
If your business trades in Jordan, the Income and Sales Tax Department (ISTD) mandate to clear invoices through the JoFotara national e-invoicing platform is not something you can satisfy from stock Odoo. Odoo Community and Enterprise handle Jordanian VAT/general sales tax on the accounting side, but neither ships a JoFotara connector: there is no ISTD-compliant XML export, no submission client for the JoFotara API, no clearance-status tracking on the invoice, and no QR code carrying the validated fiscal reference. Teams end up re-keying every account.move into the JoFotara portal by hand, which does not scale and breaks the moment invoice volume rises or an audit asks for a reconciled trail.
ECOSIRE builds a dedicated Odoo module that closes that gap end to end. We extend account.move with the JoFotara lifecycle — clearance state, submission UUID, ISTD invoice number, QR payload and error log — as stored fields driven by compute/@api.depends methods, so status is always derivable and auditable rather than typed in. On validation (or via a queued automated action), the module serialises the invoice into the ISTD-mandated XML structure: seller/buyer identifiers, tax registration numbers, line-level sales-tax and general-sales-tax mapping from your Jordanian tax codes, totals, and the required digital signature envelope. It calls the JoFotara REST API over an authenticated channel, parses the clearance response, stores the returned reference, and generates the compliant QR code that is embedded into the customer-facing invoice via a QWeb report override. Retries, rejection reasons and resubmission are handled explicitly so a failed clearance never silently blocks your billing.
Technically the module is a clean, upgrade-safe addon: a proper __manifest__.py declaring dependencies on account, models under models/ using models.Model with typed fields, access control through ir.model.access.csv plus record rules so only authorised accounting users can resubmit or view raw payloads, backend views and an OWL status widget for at-a-glance clearance state, and server-side automated actions for bulk/scheduled submission. Because JoFotara is a live external system, we also expose the submission logic through Odoo's XML-RPC/JSON-RPC layer so upstream systems or your own scripts can trigger clearance programmatically. It is built and tested against Odoo 17.0, 18.0 and 19.0, and against both Community and Enterprise (Enterprise's account_edi framework is used where present; a self-contained submission path is provided for Community).
Because this is build-to-order, you are not downloading a generic zip and hoping it fits. After a short scoping call we confirm your Odoo version and edition, your JoFotara taxpayer credentials and onboarding stage, your chart of accounts and exact sales-tax/general-sales-tax code mapping, and any branch or multi-company requirements. We then build the module to that scope, test it against the JoFotara sandbox, deploy to your staging environment for UAT, and cut over to production with a rollback plan. Typical delivery is one working week from confirmed scope. You receive the full installable source, documentation, a training session, and a post-go-live support window — you own the code and the git repository at handover.
What you get
- Installable Odoo module source code built for your exact version (17.0/18.0/19.0) and edition
- Installation and configuration on your environment, including JoFotara sandbox and production endpoint setup
- Technical documentation: data model, XML mapping, tax-code mapping table and API integration notes
- End-user guide plus a live training session for your accounting team
- UAT on a staging environment against the JoFotara sandbox, with a documented rollback plan
- Post-go-live support window for defect fixes and clearance-issue triage
- Git repository handover — you own the code, history and manifest
- Tax-code mapping worksheet reconciling your Odoo sales-tax setup to JoFotara categories
Who this is for
Jordanian SME finance manager
Runs billing in Odoo and is now under the ISTD JoFotara mandate. Needs invoices cleared automatically at validation, with QR codes on the printed invoice, without re-keying anything into the government portal.
Levant Odoo implementation partner
Serves clients across Jordan and needs a reliable, code-owned JoFotara connector they can deploy and support per client, on Community or Enterprise, rather than betting on an unmaintained marketplace app.
Finance/IT lead at a multi-branch or multi-company group
Operates several legal entities or branches in Jordan with distinct taxpayer identifiers, and needs per-company credentials, correct tax mapping and a full audit trail for reconciliation and audits.
ERP/accounting systems integrator
Wants to trigger JoFotara clearance from upstream systems via XML-RPC/JSON-RPC and needs a documented, extensible module rather than a black-box connector.
How Jordan JoFotara E-Invoicing for Odoo Compares
| Criterion | ECOSIRE | Custom Build | Competitor | Odoo Native |
|---|---|---|---|---|
| JoFotara API submission | Built-in live REST submission with clearance parsing and retry | Possible but you build the client and lifecycle yourself | Rarely covers Jordan; often generic EDI with no JoFotara endpoint | Not available — no JoFotara connector in Odoo core |
| ISTD-compliant XML | Purpose-built to the ISTD schema, validated in sandbox | Must be authored and maintained in-house | Schema may lag ISTD changes or be region-mismatched | None — Odoo exports no ISTD XML |
| QR code on invoice | Validated fiscal QR embedded via QWeb report override | Requires custom QWeb and payload logic | Sometimes present, often not JoFotara-specific | No compliant QR generation |
| Jordanian tax mapping | Scoped worksheet maps your codes to JoFotara categories | You define and verify the mapping yourself | Generic tax handling, manual reconciliation needed | Records tax but no JoFotara category mapping |
| Fit to your Odoo version/edition | Built for your 17/18/19 + Community or Enterprise | Fully bespoke but at your cost and risk | Version support varies; upgrades can break it | N/A |
| Support and updates | Post-go-live window + scoped schema/version maintenance | Depends entirely on internal capacity | Depends on vendor; can be unmaintained | None for this use case |
| Code ownership | Full source + git repository handed over | You own it (you built it) | Usually closed/licensed, no source | N/A |
| Time to compliance | one working week from confirmed scope, tested before cutover | Often months of build and testing | Fast to install but may not clear correctly | Manual portal re-keying indefinitely |
Frequently Asked Questions about Jordan JoFotara E-Invoicing
Is this an existing app I can download and install instantly?
No. This is a build-to-order module. ECOSIRE builds it against your specific Odoo version, edition and JoFotara/tax setup, then installs and supports it. There is no instant marketplace download — you get code tailored to your environment and full ownership at handover.
How long does delivery take?
Typically one working week from confirmed scope. The timeline starts once we've agreed your Odoo version/edition, JoFotara onboarding stage and credentials, chart of accounts, and tax-code mapping on the scoping call. Simpler single-company setups land toward the shorter end; multi-company or heavily customised tax setups toward the longer end.
Does it work on Odoo Community as well as Enterprise?
Yes. We build and test against Odoo 17.0, 18.0 and 19.0 on both editions. On Enterprise we leverage the `account_edi` framework where it fits; on Community we provide a self-contained submission path so you get the same JoFotara clearance and QR output either way.
How are updates and support handled after go-live?
Every engagement includes a post-go-live support window for defect fixes and clearance-issue triage. If JoFotara changes its XML schema or API, or you upgrade Odoo versions, we scope that as a maintenance update. Because you own the git repository, your own team or any Odoo partner can also maintain it.
Will it map my Jordanian sales tax and general sales tax correctly?
Yes — that mapping is a core scoping deliverable. We build a worksheet reconciling your existing Odoo tax codes to the JoFotara tax categories, including general sales tax and special/income sales tax handling, so line-level subtotals and totals in the submitted XML match ISTD requirements.
Do you test before it touches our live JoFotara account?
Always. We validate against the JoFotara sandbox and run UAT on your staging environment before production cutover, with a documented rollback plan. Your live billing is never the test bed.
Can other systems trigger invoice submission automatically?
Yes. Submission runs at invoice validation or via a scheduled automated action, and the submission method is exposed over Odoo's XML-RPC/JSON-RPC API so upstream systems or your own scripts can trigger and read clearance status programmatically.
Related Modules

Japan Qualified Invoice Compliance
A build-to-order Odoo module that turns your existing billing flow into Japan Qualified Invoice System output — registration numbers, per-rate tax breakdowns, correction invoices and retained archives. ECOSIRE scopes, builds, installs and supports it on your Odoo 17, 18 or 19.

JazzCash Payment Gateway for Odoo
Custom-built JazzCash payment provider for Odoo — wallet, card, and voucher with secure-hash verification and automatic invoice reconciliation.

Journal Restriction For Users
A build-to-order Odoo accounting-security module that limits which journals each user can post, view, and reconcile — so sales, purchase, bank, and cash entries stay walled off by role. ECOSIRE scopes, builds, installs, and supports it on your Odoo 17, 18, or 19.

JPK VAT for Odoo
A build-to-order Odoo module that generates schema-valid Polish JPK VAT XML (JPK_V7M / JPK_V7K) directly from your posted tax entries. ECOSIRE scopes, builds, installs and supports it around your specific chart of accounts and tax mapping.
Jordan JoFotara E-Invoicing
A build-to-order Odoo module that submits your invoices to Jordan's JoFotara national e-invoicing platform with ISTD-compliant XML and embedded QR codes. ECOSIRE builds, installs, and supports it around your chart of accounts and tax setup.
- Extends `account.move` with JoFotara clearance state, submission UUID, ISTD reference number, QR payload and error-log fields as stored, `@api.depends`-computed values
- Serialises invoices into the ISTD-mandated JoFotara XML schema (seller/buyer TINs, line items, tax subtotals, totals, signature envelope)
- Live submission to the JoFotara REST API with authenticated session handling, clearance-response parsing and stored fiscal reference
- Line-level mapping of Jordanian general sales tax and special/income sales tax from your existing Odoo tax codes to JoFotara tax categories