Skip to main content
Singapore InvoiceNow (Peppol) Compliance — An InvoiceNow-ready ERPNext integration that generates SG Peppol BIS invoices, tra — 1/1Illustrative preview

An InvoiceNow-ready ERPNext integration that generates SG Peppol BIS invoices,

transmits them through the InvoiceNow network, and files the required data to IRAS. Built to order, installed, and supported by

ECOSIRE on your ERPNext v15/v16.

What is Singapore InvoiceNow (Peppol) Compliance?

An InvoiceNow-ready ERPNext integration that generates SG Peppol BIS invoices, transmits them through the InvoiceNow network, and files the required data to IRAS. Built to order, installed, and supported by ECOSIRE on your ERPNext v15/v16. Built to order by ECOSIRE for ERPNext v15, v16 — indicative price from $999.00 USD; request a quote for a scoped proposal.

Key Features

`hooks.py` `on_submit` doc event on `Sales Invoice` that validates SG BIS mandatory fields before any transmission
UBL 2.1 / Peppol BIS Billing 3.0 XML generator rendering compliant e-invoices from ERPNext invoice, tax, and party data
Peppol Participant registration helper capturing the UEN-based scheme/ID (`0195`) and buyer endpoint for sender and recipients
InvoiceNow (Peppol) Access Point transport layer with configurable endpoint and encrypted credential storage in a Single settings DocType
IRAS reporting layer that submits the mandated invoice data in the required format after successful delivery
New DocTypes for `InvoiceNow Transmission` logging and a `Peppol Participant` registry, keeping every send auditable and retryable
Custom fields for Participant scheme/ID, GST registration number, and BIS document metadata added via fixtures (upgrade-safe)
GST-compliant tax mapping covering standard-rated, zero-rated, exempt, and reverse-charge lines into the correct BIS tax categories
`scheduler_events` background job that reconciles delivery/acknowledgement status and retries transient failures with backoff
`frappe.whitelist()` methods and REST-callable endpoints for validate, transmit, re-send, and status lookup from UI or external systems
Client script + document action button on `Sales Invoice` to view BIS payload, transmission status, and Peppol message IDs inline
Role profiles and DocType-level permissions separating connection admin, transmit, and view-only audit access
Idempotent transmission with persisted Peppol message IDs to prevent duplicate sends on retry
Built and regression-tested against Frappe/ERPNext v15 and v16, packaged as a versioned `bench get-app` installable module

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

Singapore's move to mandatory InvoiceNow reporting means GST-registered businesses can no longer treat an invoice as a PDF attachment. IRAS now expects structured Peppol BIS documents delivered over the InvoiceNow (Peppol) network and reported to the tax authority, and government agencies increasingly require suppliers to transact through InvoiceNow to get paid. ERPNext gives you clean Sales Invoice and Customer DocTypes and a solid GST-aware tax engine, but out of the box it has no concept of a Peppol Participant ID, no SG BIS Billing 3.0 UBL generator, no Access Point transport, and no IRAS reporting hook — so the last mile of compliance falls to spreadsheets and manual portal entry.

ECOSIRE builds a dedicated Frappe app that closes that gap end to end. We add the Singapore-specific fields ERPNext lacks — Peppol Participant scheme and ID (typically the UEN/0195 scheme), buyer endpoint, GST registration number, and BIS document metadata — as custom fields and a small set of new DocTypes (for example an InvoiceNow Transmission log and a Peppol Participant registry). On Sales Invoice submit, a hooks.py on_submit doc event validates the mandatory SG BIS fields, then a server-side generator renders a compliant UBL 2.1 / Peppol BIS Billing 3.0 XML payload from the ERPNext invoice, tax lines, and party data. The document is handed to your chosen InvoiceNow Access Point for delivery to the recipient's Participant ID, and the IRAS reporting layer submits the required invoice data in the mandated format.

Technically it is a proper, upgrade-safe Frappe module — not a pile of manual customizations. Transport credentials and the Access Point endpoint live in a Single settings DocType (encrypted password fields), transmission state and Peppol message IDs are persisted so every send is auditable and retryable, and a scheduler_events job reconciles delivery/acknowledgement status and retries transient failures with backoff. We expose whitelisted frappe.whitelist() methods and REST-callable endpoints so validation, re-send, and status lookups can be triggered from the ERPNext UI (via client scripts and a document action button) or from external systems. Role profiles and DocType permissions scope who can configure the connection, who can transmit, and who can only view the audit trail, and everything is tuned for and tested on Frappe/ERPNext v15 and v16.

Because this is build-to-order, we tailor the app to your actual configuration — your UEN and Participant registration, your Access Point provider, your GST treatment (standard, zero-rated, exempt, reverse charge), multi-company or multi-branch setups, and any custom invoice fields you already run. After a short scoping call we confirm the exact SG BIS profile and integration points, build against your requirements, and deliver on a typical timeline of one working week from confirmed scope. You get the installable source, UAT on a staging bench with a rollback plan, go-live support, and the git repository handed over so you own what we build.

What you get

  • Installable Frappe app source code for your ERPNext version (v15 or v16), scoped to your configuration
  • Installation and configuration on your bench, including Access Point credentials, settings DocType, and role profiles
  • Technical documentation covering architecture, DocTypes, doc events, whitelisted methods, and scheduler jobs
  • End-user guide plus a live training session for finance and operations staff
  • UAT on a staging bench with a documented test matrix and a rollback plan before production cutover
  • Post-go-live support window for defect fixes and configuration adjustments
  • Git repository handover so you fully own the delivered source
  • SG BIS profile and Peppol Participant registration configuration checklist tailored to your UEN and provider

Who this is for

GST-registered SME finance lead

Runs billing in ERPNext and must meet IRAS InvoiceNow reporting obligations without adding manual portal entry. Needs Sales Invoice submit to produce a compliant Peppol document and report to IRAS automatically.

GovTech / public-sector supplier

Sells to Singapore government agencies that mandate InvoiceNow transactions to get paid. Needs reliable Access Point delivery to buyer Participant IDs with an auditable transmission log for procurement queries.

ERP / finance systems manager

Owns the ERPNext instance and wants an upgrade-safe Frappe app — proper DocTypes, hooks, permissions, and REST endpoints — rather than brittle manual customizations, with the git repo handed over for internal maintenance.

Accounting outsourcing / shared-services firm

Handles invoicing for multiple SG entities and needs multi-company Participant registration and consistent SG BIS generation across clients from one ERPNext platform.

How Singapore InvoiceNow (Peppol) Compliance Compares

CriterionECOSIRECustom BuildCompetitorERPNext Native
Fit to your ERPNext setupBuilt to order for your UEN, Access Point, and GST treatmentFully bespoke but you own all analysis and riskGeneric template, limited SG BIS coverageNo Peppol or InvoiceNow concept at all
SG BIS / Peppol generationCompliant UBL 2.1 / BIS Billing 3.0 from invoice dataPossible if you have Peppol expertise in-houseOften EU-focused, needs SG adaptationNot available
IRAS reporting layerSubmits required data in the mandated format, loggedMust be designed and built from scratchRarely included for SingaporeManual portal entry only
Delivery modelone working week from confirmed scope, installed for youWeeks to months depending on your teamInstant install but integration work still yoursN/A
Technical architectureProper Frappe app: DocTypes, hooks, scheduler, whitelisted APIsDepends entirely on your developer's disciplineVaries; often thin or unmaintainedCore invoicing only
v15 / v16 supportBuilt and regression-tested on bothYour responsibility to testMay lag ERPNext releasesCore versions only, no e-invoicing
Support and updatesGo-live window plus optional ongoing maintenanceInternal team must maintain itCommunity or paid tier, variable SLANo SG e-invoicing to support
OwnershipFull source and git repo handed over to youYou own it, at full build costUsually licensed, source often closedN/A

Frequently Asked Questions about Singapore InvoiceNow (Peppol) Compliance

Is this an app I can download and install immediately?

No. This is a build-to-order ERPNext integration. ECOSIRE builds it against your actual configuration — your UEN and Peppol Participant registration, your Access Point provider, and your GST treatment — then installs and supports it. It is not an off-the-shelf Frappe Cloud Marketplace download.

How long does delivery take?

Typical delivery is one working week from confirmed scope. After the scoping call we agree on the exact SG BIS profile and integration points; the timeline depends on your Access Point setup, GST complexity, and any multi-company or custom-field requirements.

Which ERPNext versions are supported?

The app is built and regression-tested against Frappe/ERPNext v15 and v16. We package it as a versioned, `bench get-app`-installable module so it stays upgrade-safe on your bench.

Do I still need an InvoiceNow Access Point provider?

Yes. InvoiceNow uses the Peppol four-corner model, so documents are delivered through a certified Access Point. Our app generates the SG BIS payload and drives transmission; you connect it to your chosen Access Point, and we help configure those credentials during installation.

How does the IRAS reporting work?

On successful delivery, the IRAS reporting layer submits the required invoice data in the mandated format. The exact reporting behavior is confirmed during scoping against the current IRAS requirements and your GST registration details, and every submission is logged for audit.

What about ongoing support and updates?

Every engagement includes a post-go-live support window for defect fixes and configuration adjustments. Because Peppol/IRAS specifications evolve, we offer optional ongoing maintenance to keep the BIS profile and reporting current across ERPNext upgrades. You also receive the git repository so your team can maintain it internally.

Can it handle multiple companies and GST scenarios?

Yes. We support multi-company and multi-branch setups with per-entity Participant registration, and we map standard-rated, zero-rated, exempt, and reverse-charge lines to the correct BIS tax categories. These are confirmed during scoping.

Request a quote

Singapore InvoiceNow (Peppol) Compliance

An InvoiceNow-ready ERPNext integration that generates SG Peppol BIS invoices, transmits them through the InvoiceNow network, and files the required data to IRAS. Built to order, installed, and supported by ECOSIRE on your ERPNext v15/v16.

  • `hooks.py` `on_submit` doc event on `Sales Invoice` that validates SG BIS mandatory fields before any transmission
  • UBL 2.1 / Peppol BIS Billing 3.0 XML generator rendering compliant e-invoices from ERPNext invoice, tax, and party data
  • Peppol Participant registration helper capturing the UEN-based scheme/ID (`0195`) and buyer endpoint for sender and recipients
  • InvoiceNow (Peppol) Access Point transport layer with configurable endpoint and encrypted credential storage in a Single settings DocType

Request a Quotation

Tell us about your Singapore InvoiceNow (Peppol) 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.