Skip to main content
Jordan JoFotara E-Invoicing for ERPNext — A build-to-order ERPNext integration that submits your Sales Invoices to Jordan's I — 1/1Illustrative preview

A build-to-order ERPNext integration that submits your Sales Invoices to Jordan's ISTD JoFotara national

e-invoicing platform, generates ISTD-schema UBL, and returns the cleared invoice UUID and QR back onto the document.

ECOSIRE scopes, builds, installs, and supports it on your Frappe/ERPNext v15 or v16 site.

What is Jordan JoFotara E-Invoicing for ERPNext?

A build-to-order ERPNext integration that submits your Sales Invoices to Jordan's ISTD JoFotara national e-invoicing platform, generates ISTD-schema UBL, and returns the cleared invoice UUID and QR back onto the document. ECOSIRE scopes, builds, installs, and supports it on your Frappe/ERPNext v15 or v16 site. Built to order by ECOSIRE for ERPNext v15, v16 — indicative price from $999.00 USD; request a quote for a scoped proposal.

Key Features

ISTD-compliant UBL XML generator that maps `Sales Invoice`, `Customer`, `Item`, and `Sales Taxes and Charges` onto the JoFotara national invoice schema
`hooks.py` `on_submit` doc event that signs and posts each invoice to the JoFotara API, plus an optional manual submit action for phased rollout
Clearance-response handling that writes the returned invoice UUID, QR payload, and submission status back onto the Sales Invoice via custom fields
QR code rendered into the ERPNext print format so the customer PDF carries the official ISTD mark
Sales tax, General tax, and Special tax category mapping aligned to the ISTD schema, with configurable rounding and tax-inclusive/exclusive handling
Dedicated `JoFotara Settings` DocType with encrypted credential fields and sandbox/production endpoint toggle
`JoFotara Submission Log` DocType capturing full request/response payloads, HTTP status, UUID, and error detail for audit and debugging
Whitelisted server methods for submit, re-submit, and status-check — callable from the form or over the Frappe REST API
Scheduler event that sweeps pending/failed invoices and retries or flags them for review
Client scripts that show live submission-status badges and block invalid invoices before they reach the government system
Credit note / return mapping to the JoFotara cancellation flow where ISTD rules permit
Role-profile-scoped permissions so only accounting/compliance users can submit or view credentials
Idempotent submission guard that prevents duplicate clearance of an already-cleared invoice
Structured error surfacing with human-readable messages on the invoice, not silent failures
Compatible with Frappe/ERPNext v15 and v16, packaged as an upgrade-safe standalone app

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 ERPNext.

  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.

Technical Specifications

ERPNext Compatibility
—
License
Licence confirmation required
Python Requirement
Python 3.10+
Database
MariaDB 10.6+

About this Product

If your business is mandated onto Jordan's ISTD JoFotara platform, every taxable Sales Invoice now has to be transmitted to the national system, cleared, and stamped with an official invoice UUID and QR before it is legally valid. ERPNext out of the box has no idea JoFotara exists: it produces its own invoice numbering and print formats, but it cannot build the ISTD-mandated UBL XML, cannot call the JoFotara API, cannot carry the returned UUID, and cannot reconcile Sales tax, General tax, and Special tax the way the ISTD schema expects. Teams end up re-keying every invoice into a government portal by hand, which is slow, error-prone, and impossible to audit at volume.

ECOSIRE builds a proper Frappe app that closes that gap end to end. We ship it as a real app in your bench (its own module, not loose customizations), so it upgrades cleanly and is fully reversible. The core is an ISTD-compliant UBL generator that maps ERPNext's Sales Invoice, Customer, Item, and Sales Taxes and Charges data onto the JoFotara invoice schema, including the Sales/General/Special tax categories, buyer tax identifiers, and rounding rules. A hooks.py on_submit doc event (with an optional manual "Submit to JoFotara" action for controlled rollouts) signs and posts the UBL to the JoFotara API, handles the clearance response, and writes the returned invoice UUID, QR payload, and submission status back onto the Sales Invoice via dedicated custom fields. The QR is rendered into your print format so the customer-facing PDF carries the official mark.

Under the hood the integration is built the Frappe way. Credentials and the environment toggle (sandbox vs production ISTD endpoints) live in a single settings DocType with encrypted password fields and permissions locked to an accounting/compliance role profile. A JoFotara Submission Log DocType records every request/response, HTTP status, UUID, and error detail so failures are diagnosable instead of silent. Whitelisted server methods expose submit, re-submit, and status-check actions that your users trigger from the form or that we call over the Frappe REST API; a scheduler event sweeps invoices left in a pending or failed state and retries or flags them for review. Client scripts surface status badges and block invalid submissions before they reach the government system. Credit notes / returns are mapped to the corresponding JoFotara cancellation flow where the ISTD rules allow it.

Because this is build-to-order, nothing ships blind. We start from your actual chart of accounts, tax templates, company tax registration, and invoice volume, confirm the exact ISTD scope that applies to you, then build against a staging copy of your site. You get the installable app source for your version, install and configuration on your environment, UAT sign-off on staging before we touch production, and a post-go-live support window. Typical delivery is one working week from confirmed scope, targeting Frappe/ERPNext v15 or v16.

What you get

  • Installable app source code for your Frappe/ERPNext version (v15 or v16), packaged as a standalone app
  • Installation and configuration on your environment, including JoFotara credentials and sandbox/production wiring
  • Technical documentation: DocTypes, hooks, whitelisted methods, scheduler events, and the tax-mapping model
  • User guide plus a live training session for your accounting/compliance team
  • UAT on a staging copy of your site with a documented rollback plan before production go-live
  • Post-go-live support window for defect fixes and submission troubleshooting
  • Git repository handover with full commit history and setup instructions
  • Configured tax-category mapping and print format matching your current company setup

Who this is for

Mandated Jordanian business owner

Runs a company that has been brought onto the ISTD JoFotara platform and needs every Sales Invoice cleared and stamped without hand-keying into the government portal. Wants compliance handled inside the ERPNext they already run.

Finance / accounting manager

Owns invoice accuracy and the tax close. Needs correct Sales/General/Special tax mapping, an audit trail of every submission, and a reliable retry path when JoFotara rejects or times out — not silent failures.

ERPNext administrator or partner

Maintains the Frappe bench and site. Wants a clean, upgrade-safe app (its own module, encrypted settings, whitelisted methods) rather than scattered customizations, with a git handover they can support after go-live.

Multi-entity / group controller

Oversees several Jordanian legal entities on one or more ERPNext sites and needs consistent JoFotara clearance, per-company credentials, and centralized submission monitoring across all of them.

How Jordan JoFotara E-Invoicing for ERPNext Compares

CriterionECOSIRECustom BuildCompetitorERPNext Native
JoFotara / ISTD complianceBuilt to the ISTD UBL schema and clearance flow for your setupDepends entirely on your developer's ISTD knowledgeGeneric e-invoicing app, rarely Jordan-specificNo awareness of JoFotara at all
Tax mapping (Sales/General/Special)Mapped from your real tax templates and verified in UATHand-coded, error-prone without domain expertiseAssumes a standard model that may not match yoursStandard ERPNext tax only, no ISTD categories
UUID + QR handlingUUID and QR written back onto the invoice and print formatMust be built and tested from scratchSometimes partial, often not on the PDFNot supported
Error handling & auditSubmission-log DocType, retries, readable errorsOnly as good as what you commissionVaries; often a black boxNone
Fit to your siteBuilt against a staging copy of your v15/v16 siteFully bespoke but on your budget and timelineOne-size-fits-all, limited configurationGeneric core, no Jordan features
Support & ownershipSupport window + git handover you fully ownYou own it but also maintain it aloneVendor lock-in, subscription-dependentCommunity support only
Upgrade safetyStandalone app, reversible, version-targetedRisk of loose customizations breaking on upgradeDepends on vendor's upgrade cadencen/a — feature absent
Time to valueone working week from confirmed scopeOften longer; depends on hiring and iterationFast to install but slow to fit correctlyImmediate but non-compliant

Frequently Asked Questions about Jordan JoFotara E-Invoicing

Is this an app I can download and install instantly?

No. This is a build-to-order engagement. ECOSIRE scopes the work against your actual ERPNext setup, tax templates, and JoFotara registration, then builds, installs, and supports it. There is no instant marketplace download — the result is a version-specific app configured for your environment.

How long does delivery take?

Typical delivery is one working week from confirmed scope. The exact timeline depends on your invoice complexity (tax categories, credit notes, multi-company), the state of your ERPNext data, and JoFotara credential provisioning. We confirm dates in writing after the scoping call.

Which ERPNext versions are supported?

Frappe/ERPNext v15 and v16. We build the app against your specific version so hooks, DocTypes, and REST behavior match your site. Tell us your version on the scoping call and we target it directly.

How does it connect to JoFotara technically?

A `hooks.py` `on_submit` doc event (or a manual submit action) calls the JoFotara API with ISTD-schema UBL, handles the clearance response, and writes the invoice UUID and QR back onto the Sales Invoice. Credentials and the sandbox/production toggle live in an encrypted settings DocType; every call is recorded in a submission log DocType.

What happens if a submission fails or JoFotara is unreachable?

Failures are never silent. The invoice is flagged with a readable error, the full request/response is written to the `JoFotara Submission Log`, and a scheduler event sweeps pending/failed invoices to retry or flag them for review. Your team can re-submit from the form or over the REST API.

What about support and updates after go-live?

Every engagement includes a post-go-live support window for defect fixes and submission troubleshooting. Because JoFotara/ISTD rules and ERPNext both evolve, we also offer ongoing maintenance for schema changes and version upgrades — scoped separately after the initial window ends.

Do you handle credit notes and returns?

Yes, where the ISTD rules allow it. Credit notes and returns are mapped to the corresponding JoFotara cancellation flow, and the resulting status is written back onto the ERPNext document so your records and the national system stay in sync.

Request a quote

Jordan JoFotara E-Invoicing

A build-to-order ERPNext integration that submits your Sales Invoices to Jordan's ISTD JoFotara national e-invoicing platform, generates ISTD-schema UBL, and returns the cleared invoice UUID and QR back onto the document. ECOSIRE scopes, builds, installs, and supports it on your Frappe/ERPNext v15 or v16 site.

  • ISTD-compliant UBL XML generator that maps `Sales Invoice`, `Customer`, `Item`, and `Sales Taxes and Charges` onto the JoFotara national invoice schema
  • `hooks.py` `on_submit` doc event that signs and posts each invoice to the JoFotara API, plus an optional manual submit action for phased rollout
  • Clearance-response handling that writes the returned invoice UUID, QR payload, and submission status back onto the Sales Invoice via custom fields
  • QR code rendered into the ERPNext print format so the customer PDF carries the official ISTD mark

Request a Quotation

Tell us about your Jordan JoFotara E-Invoicing 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.