- Home
- Apps
- SaaS Tools
- Nigeria FIRS Peppol E-Invoicing for ERPNext
Illustrative previewA build-to-order ERPNext app that maps your Sales Invoices to Nigeria's FIRS national e-invoicing regime over
Peppol BIS Billing, handling B2B e-invoicing, B2C e-reporting, Access Point submission and status tracking.
ECOSIRE scopes, builds, installs and supports it for you.
What is Nigeria FIRS Peppol E-Invoicing for ERPNext?
A build-to-order ERPNext app that maps your Sales Invoices to Nigeria's FIRS national e-invoicing regime over Peppol BIS Billing, handling B2B e-invoicing, B2C e-reporting, Access Point submission and status tracking. ECOSIRE scopes, builds, installs and supports it for you. Built to order by ECOSIRE for ERPNext v15, v16 — 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 ERPNext.
- 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
Nigerian large taxpayers moving onto the FIRS national e-invoicing regime hit a wall with stock ERPNext very quickly. ERPNext gives you a clean Sales Invoice DocType, tax templates and print formats, but it has no concept of a Peppol BIS Billing document, no FIRS-specific validation rules, no Access Point handshake, and no way to carry the Invoice Reference Number (IRN), QR payload or clearance status back onto the invoice. Finance teams end up re-keying invoices into a portal or a third-party bridge, reconciling two sources of truth, and discovering rejections days later when a customer disputes a bill. That is exactly the gap this app is built to close.
ECOSIRE builds a proper Frappe app (for example firs_einvoicing) that installs cleanly on your ERPNext v15 or v16 bench and layers the FIRS regime directly onto your existing invoicing flow. The core is a mapping engine that converts a submitted Sales Invoice into a Peppol BIS Billing 3.0 UBL XML document tailored to the FIRS Nigeria specification: supplier/customer party identifiers (including TIN and scheme IDs), line-level allowances and charges, VAT category codes, and Withholding Tax lines derived from your ERPNext tax templates. hooks.py doc events (on_submit, on_cancel) trigger generation and submission, while a dedicated E-Invoice Log DocType stores the outbound XML, the FIRS/Access Point response, IRN, QR code and a status field (Pending, Cleared, Rejected, Cancelled) so every invoice carries an auditable trail.
Submission is handled through the Access Point / service-provider model that FIRS uses under Peppol. We implement the transport as configurable connector logic with credentials and endpoints held in a single FIRS E-Invoicing Settings DocType, so sandbox and production environments are a toggle rather than a code change. Whitelisted server-side methods exposed via the Frappe REST API let you (re)submit, poll status and fetch the clearance response for a given invoice, and a scheduler event reconciles any invoices still Pending against the Access Point on a fixed cadence so nothing silently stalls. B2C transactions follow the e-reporting path rather than per-invoice clearance, batched and reported on schedule, with the same logging and retry semantics. Client scripts surface status badges, the QR code and a "Resubmit to FIRS" action on the Sales Invoice form, and a dedicated role profile plus permission rules keep submission and settings access scoped to your tax/compliance users.
Because this is build-to-order, nothing ships as a blind download. We start with a scoping call to confirm your entity structure, VAT and WHT treatment, invoice volumes, the specific FIRS/Access Point provider you are onboarding with, and your ERPNext version. We then build against your real chart of accounts and tax templates, validate generated XML against the current FIRS Peppol schema and business rules, and run UAT on a staging bench with your own sample invoices before touching production. Typical delivery is one working week from confirmed scope depending on complexity. You receive the installable source, install and configuration on your bench, technical and user documentation, a training session, and a post-go-live support window — plus the full git repository so your team or ours can maintain it going forward.
What you get
- Installable source code for your build (a standard Frappe app, e.g. `firs_einvoicing`) targeting your ERPNext v15/v16 version
- Installation and configuration on your bench, including `FIRS E-Invoicing Settings`, role profile and Access Point credentials wiring
- Technical documentation: DocTypes, hooks, whitelisted methods, scheduler events and the XML mapping reference
- User guide plus a live training session for your finance/tax compliance team
- UAT on a staging bench with your own sample invoices, and a documented rollback plan
- Post-go-live support window for defect fixes and FIRS/Access Point onboarding issues
- Full git repository handover so your team (or ECOSIRE) can maintain and extend it
Who this is for
Large-taxpayer tax & compliance lead
Owns FIRS obligations and needs invoices cleared over Peppol with a defensible audit trail (IRN, XML, clearance status) without re-keying into an external portal.
ERPNext / finance systems manager
Runs the ERPNext bench and wants a clean, upgrade-safe Frappe app that layers e-invoicing onto existing Sales Invoice flows rather than a fragile external bridge with two sources of truth.
Financial controller at a multi-entity Nigerian group
Needs consistent VAT and Withholding Tax mapping, B2B clearance and B2C e-reporting handled across entities, with reconciliation of pending submissions so nothing is missed at month-end.
Head of IT integrating with an Access Point provider
Is onboarding with a FIRS-accredited service provider and needs the ERPNext side to speak the right transport, handle sandbox-to-production cutover, and expose REST methods for monitoring.
How Nigeria FIRS Peppol E-Invoicing for ERPNext Compares
| Criterion | ECOSIRE | Custom Build | Competitor | ERPNext Native |
|---|---|---|---|---|
| FIRS Peppol XML mapping | Purpose-built BIS Billing mapping validated against FIRS rules | Built from scratch in-house, long spec-reading effort | Generic Peppol, rarely FIRS-Nigeria specific | No Peppol or FIRS concept at all |
| Access Point submission | Connector wired to your provider, sandbox/prod toggle | You design and maintain the transport yourself | May assume one fixed provider or region | None |
| Status, IRN & QR tracking | `E-Invoice Log` DocType with per-invoice status and QR | Depends entirely on what you build | Varies; often minimal logging | Not available |
| VAT & WHT handling | Mapped from your real ERPNext tax templates | You wire it yourself against your accounts | Generic tax mapping, may need rework | ERPNext tax templates but no e-invoice mapping |
| Fit to your setup | Built for your entities, versions and volumes | Fully bespoke but you own all the risk | One-size-fits-all, configure around it | Generic ERPNext only |
| Delivery & support | one working week, install, docs, training, support window | Timeline and support depend on internal capacity | Instant install but self-serve support | No delivery; you build everything |
| Ownership | Full git repo handover, you can self-maintain | You own the code and all maintenance | Vendor-locked, closed or licensed | N/A |
| Upgrade safety (v15/v16) | Standard Frappe app built and tested on your version | Risk depends on how it was written | May lag ERPNext releases | Core only, no e-invoicing |
Frequently Asked Questions about Nigeria FIRS Peppol E-Invoicing
Is this an existing app I can download and install right now?
No. This is a build-to-order engagement. ECOSIRE builds the Frappe app against your ERPNext version, your chart of accounts and tax templates, and the specific FIRS Access Point provider you are onboarding with, then installs and supports it. There is no instant download.
How long does delivery take?
Typical delivery is one working week from confirmed scope, depending on complexity such as multi-entity setups, custom tax treatments and your Access Point provider's onboarding timeline. We agree a firm timeline after the scoping call.
Which ERPNext versions are supported?
Frappe/ERPNext v15 and v16. We build and test against your exact bench version so the app installs cleanly and survives your upgrade path.
How does it submit to FIRS?
FIRS operates its national e-invoicing regime over Peppol using Access Points / accredited service providers. The app generates the Peppol BIS Billing XML and submits through your chosen Access Point, with endpoints and credentials held in a single settings DocType so sandbox and production are a toggle.
Does it handle both B2B and B2C?
Yes. B2B invoices follow the per-invoice clearance path with IRN and status tracking, while B2C transactions follow the e-reporting path (batched reporting on a scheduler event). Both share the same logging, validation and retry logic.
How does it stay in sync if FIRS or the Access Point changes rules?
During your post-go-live support window we address defects and adapt to specification or Access Point changes covered by scope. Because you receive the full git repository, your team can also maintain and extend the app, and we offer ongoing support arrangements beyond the initial window.
What if the app is not installed on our production system?
We deliver against a staging bench first, run UAT with your own sample invoices, and only cut over to production with a documented rollback plan. If something is wrong, we roll back and fix on staging before retrying.
Related Modules

MyFatoorah Payment Gateway for ERPNext
A MyFatoorah aggregator integration for ERPNext that turns GCC-local rails — KNET, mada, Benefit, Apple Pay — into a single connector with invoice-based payment links, webhook-verified settlement, and refund sync. ECOSIRE builds, installs, and supports it after a scoping call; it is not an instant download.

n8n Automation Connector
A deep, build-to-order integration between ERPNext (Frappe v15/v16) and self-hosted n8n — custom ERPNext nodes, outbound event webhooks, and credential helpers that let technical teams build complex automations on execution-priced infrastructure. ECOSIRE builds, installs, and supports it after you confirm scope.

Norway SAF-T Financial for ERPNext
A build-to-order ERPNext app that produces validated Norwegian SAF-T Financial XML directly from your ERPNext general ledger, tax masters and party records. ECOSIRE scopes, builds, installs and supports it on your Frappe bench — it is not a marketplace download.

NPS / CSAT Survey & Feedback Engine for ERPNext
A build-to-order Frappe app that fires NPS, CSAT, and CES surveys automatically from ERPNext lifecycle events, captures responses on the customer record, and routes detractor feedback into follow-up workflows. ECOSIRE scopes, builds, installs, and supports it for your instance.
Nigeria FIRS Peppol E-Invoicing
A build-to-order ERPNext app that maps your Sales Invoices to Nigeria's FIRS national e-invoicing regime over Peppol BIS Billing, handling B2B e-invoicing, B2C e-reporting, Access Point submission and status tracking. ECOSIRE scopes, builds, installs and supports it for you.
- Peppol BIS Billing 3.0 UBL XML generation mapped to the FIRS Nigeria e-invoicing specification, driven from the ERPNext `Sales Invoice` DocType
- `hooks.py` doc events (`on_submit`, `on_cancel`) that generate, submit and cancel e-invoices automatically as invoices move through their lifecycle
- Dedicated `E-Invoice Log` DocType storing outbound XML, IRN, QR payload, Access Point response and a `Pending`/`Cleared`/`Rejected`/`Cancelled` status per invoice
- Access Point / service-provider submission connector with endpoints and credentials centralised in a `FIRS E-Invoicing Settings` DocType (sandbox vs production toggle)