- Home
- Apps
- SaaS Tools
- ERPNext Portugal (SAF-T & Certified Invoicing)
Illustrative previewA build-to-order ERPNext app that turns your Portuguese ERPNext into an AT-certified billing system:
certified invoice series with ATCUD and QR code, hash-chained documents, IVA tax templates and one-click SAF-T(PT) XML export.
ECOSIRE scopes, builds, installs and supports it.
What is ERPNext Portugal (SAF-T & Certified Invoicing)?
A build-to-order ERPNext app that turns your Portuguese ERPNext into an AT-certified billing system: certified invoice series with ATCUD and QR code, hash-chained documents, IVA tax templates and one-click SAF-T(PT) XML export. ECOSIRE scopes, builds, installs and supports it. 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
Portuguese SMEs run on hard rules from the Autoridade Tributária (AT): every invoice must belong to a certified series, carry an ATCUD code and a QR code, be sequentially numbered without gaps, and be linked to the previous document through a signed hash chain. On top of that, the monthly SAF-T(PT) file must be produced in the AT's exact XML schema for e-Fatura submission. Stock ERPNext gives you Sales Invoices, IVA tax accounts and PDF print formats, but it has no concept of a certified series, no ATCUD, no RSA document signing, and no SAF-T(PT) generator. Bookkeepers end up patching gaps by hand or bolting on a second tool — which is exactly what the AT rules are designed to prevent.
ECOSIRE builds a proper Frappe app (its own module, not loose customizations) that plugs these gaps directly inside ERPNext. We add DocTypes for certified series and their sequential counters, and wire document signing into hooks.py on_submit/before_submit doc events so that at submission time each Sales Invoice, Credit Note and related document is hash-chained to its predecessor and signed with your AT-registered RSA private key. Custom fields carry the ATCUD (series-validation-code + sequential number) and the computed QR-code payload, rendered into compliant print formats. IVA is handled through pre-built tax templates and item tax rules for the standard, intermediate, reduced and exempt rates, with the correct exemption reason codes for zero-rated lines.
The SAF-T(PT) export is a whitelisted server method that assembles the full audit file — Header, MasterFiles (customers, products, tax table), and SourceDocuments (SalesInvoices with the signed hashes and ATCUD) — validated against the AT XSD before download. It is exposed both as a desk button and over the Frappe REST API so your accountant or an external filing tool can pull the file programmatically. Role profiles and permission rules keep signing keys and series configuration limited to finance roles, client scripts guard against manual tampering with numbering, and a scheduler event can pre-stage the monthly file so it is ready before the AT deadline. Everything targets ERPNext v15 and is forward-checked for v16.
Because this is build-to-order, you are not downloading a generic marketplace app and hoping it fits. After a short scoping call we confirm your legal series, IVA profile, chart-of-accounts mapping and AT certification details, then build and test the app against your data on a staging bench. You receive the installable source, install and configuration on your environment, documentation, a training session and a post-go-live support window. Typical delivery is one working week from confirmed scope, depending on how many document types and edge cases (self-billing, cash-VAT, retention) you need covered.
What you get
- Installable source code for your version of the app (Frappe app with its own module, packaged for bench install)
- Installation and configuration on your ERPNext environment (certified series, RSA key, IVA templates, CoA mapping)
- Technical documentation covering DocTypes, hooks, whitelisted methods, custom fields and the SAF-T generator
- User guide plus a live training session for your bookkeeping and finance team
- Post-go-live support window for defect fixes and questions after launch
- UAT on a staging bench with a documented rollback plan before production cutover
- Git repository handover with full commit history and README
- Sample SAF-T(PT) output validated against the AT XSD for your first filing period
Who this is for
Portuguese SME bookkeeper
Handles day-to-day billing and the monthly e-Fatura obligation. Needs ATCUD, QR codes and gap-free certified series to appear automatically on every invoice, and a one-click SAF-T(PT) file that passes AT validation without manual XML surgery.
Finance manager at a growing PT company
Wants ERPNext to be the single certified system of record instead of running a separate billing tool. Cares about audit-safe hash chaining, correct IVA treatment across rates, and controlled access to signing keys and series configuration.
Outsourced accountant / TOC serving multiple clients
Files SAF-T for several companies and needs to pull the audit file programmatically over the Frappe REST API, with consistent tax-table and exemption-code mapping across each client's ERPNext.
IT lead or ERPNext administrator
Owns the bench and upgrades. Wants a clean Frappe app with hooks.py doc events and whitelisted methods rather than scattered customizations, a git repo handover, and v15/v16 compatibility so future upgrades don't break compliance.
How ERPNext Portugal (SAF-T & Certified Invoicing) Compares
| Criterion | ECOSIRE | Custom Build | Competitor | ERPNext Native |
|---|---|---|---|---|
| SAF-T(PT) XML export | Built-in whitelisted generator, XSD-validated, REST-accessible | Possible but you build and maintain the schema yourself | Often partial or a fixed schema version | Not available in ERPNext core |
| ATCUD & QR codes | Auto-generated per certified series on every document | Hand-coded per project, easy to get wrong | Usually included but rigidly configured | No ATCUD or QR concept |
| Certified series & hash chaining | DocTypes + hooks.py signing, gap-free and audit-safe | Depends entirely on developer rigor | Provided but hard to adapt to edge cases | No certified series or document signing |
| IVA templates & exemption codes | Pre-built rate templates with correct exemption reasons | Configured from scratch each time | Generic tax setup, PT codes may be missing | Generic tax accounts, no PT exemption codes |
| Fit to your business | Scoped to your series, CoA and document types | Fully bespoke but slow and costly | Take-it-or-leave-it feature set | General-purpose, no PT localization |
| Delivery & timeline | one working week from confirmed scope, staging UAT included | Often months with uncertain scope | Instant install but generic fit | Immediate but non-compliant for PT |
| Support & updates | Post-go-live window + optional maintenance for AT changes | You own all future maintenance | Vendor roadmap, may lag AT changes | No PT-specific support |
| Source & ownership | Full git repo handover, no lock-in | You own it but built alone | Usually closed or license-restricted | N/A |
Frequently Asked Questions about ERPNext Portugal
How long does delivery take?
This is a build-to-order app, not an instant download. Typical delivery is one working week from confirmed scope. The exact timeline depends on how many document types (invoices, credit/debit notes, self-billing, cash-VAT) and edge cases you need, and how quickly we can validate against your data on a staging bench.
Is the invoicing actually AT-certified?
The app implements the AT technical requirements — certified series, ATCUD, QR codes, sequential numbering and RSA hash-chained document signing using your registered key, plus SAF-T(PT) export in the AT schema. Software certification is granted by the AT to the taxpayer/software producer; we build to those specifications and hand over the source so your certification path is clean. We confirm your specific certification and series details during scoping.
How do updates and support work after go-live?
Every engagement includes a post-go-live support window for defect fixes and questions, and you receive the full git repository so nothing is locked to us. When the AT changes the SAF-T schema or signing rules, or when you upgrade ERPNext, we can provide updates under a support or maintenance arrangement agreed at handover.
Which ERPNext versions are supported?
We target Frappe/ERPNext v15 and forward-check the build for v16. If you are on an older version we will flag any migration needs during the scoping call before committing to scope.
Can our accountant pull the SAF-T file automatically?
Yes. The SAF-T(PT) generator is a whitelisted server method exposed over the Frappe REST API as well as a desk button, so an external filing tool or your accountant's script can request the validated XML programmatically, subject to role permissions.
Will this interfere with our existing ERPNext customizations?
It ships as a self-contained Frappe app with its own module, custom fields and hooks rather than edits to core files, which keeps it upgrade-safe and easy to review. We run UAT on a staging bench with a rollback plan before any production cutover.
What do you need from us to start?
A short scoping call to confirm your legal invoice series, IVA rate profile, chart-of-accounts mapping, AT certification/series details and which document types are in scope. From there we lock the scope and begin the build.
Related Modules

ERPNext Ecuador SRI E-Invoicing
A build-to-order ERPNext app that turns your Sales Invoices and credit notes into SRI-compliant comprobantes electronicos — signed XML, access key generation, RIDE PDFs, and IVA/retention tax mapping. ECOSIRE scopes, builds, installs, and supports it for you.

ERPNext Germany Localization (GoBD/DATEV)
A build-to-order German accounting localization for ERPNext that ships an SKR03/SKR04 chart of accounts, a GoBD-compliant immutable ledger, DATEV-format export and ELSTER-ready VAT (USt) advance return data. ECOSIRE scopes, builds, installs and supports it for your specific Frappe/ERPNext deployment.

E-Signature & Digital Signing for ERPNext
A build-to-order ERPNext app that sends any quotation, sales order or contract print format out for legally binding e-signature, then files the signed PDF and a tamper-evident audit trail back onto the source document. ECOSIRE scopes, builds, installs and supports it for you.

E-Way Bill Manager (India)
A build-to-order ERPNext app for end-to-end e-way bill lifecycle — generation, Part-A/Part-B updates, bulk and consolidated EWBs, cancellation and extension — wired directly to the NIC e-way bill API. ECOSIRE scopes, builds, installs and supports it for your dispatch operation.
ERPNext Portugal
A build-to-order ERPNext app that turns your Portuguese ERPNext into an AT-certified billing system: certified invoice series with ATCUD and QR code, hash-chained documents, IVA tax templates and one-click SAF-T(PT) XML export. ECOSIRE scopes, builds, installs and supports it.
- Certified invoice, credit note and debit note series as dedicated DocTypes with gap-free sequential counters enforced server-side
- ATCUD generation (AT series validation code + sequential number) written to a custom field and rendered on every certified document
- Document hash chaining wired into hooks.py before_submit/on_submit doc events so each document signs over the previous document's hash
- RSA digital signing with your AT-registered private key, matching the software-certification signature format