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 $499.00 USD; request a quote for a scoped proposal.

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.
Keine Zahlung jetzt. Dies sendet eine Angebotsanfrage an unser Team – wir melden uns per E-Mail mit Preisen und nächsten Schritten.
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.
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
QR-code payload builder producing the AT-specified field string, embedded into compliant print formats
SAF-T(PT) XML export as a whitelisted server method assembling Header, MasterFiles and SourceDocuments, XSD-validated before download
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 2 to 4 weeks from confirmed scope, depending on how many document types and edge cases (self-billing, cash-VAT, retention) you need covered.
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.
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.
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.
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.
Kaufen Sie die Lizenz auf ecosire.com und laden Sie die ZIP-Datei der ERPNext Portugal (SAF-T & Certified Invoicing)-App von Ihrem Konto-Dashboard herunter.
Extrahieren Sie die ZIP-Datei in den Apps-Ordner Ihrer Bank oder führen Sie „bench get-app“ mit dem Pfad zur extrahierten App aus.
Führen Sie „bench --site SITE_NAME install-app APP_NAME“ gefolgt von „bench migrate“ aus, um ERPNext Portugal (SAF-T & Certified Invoicing) zu installieren und sein Schema anzuwenden.
Öffnen Sie die ECOSIRE-Lizenzeinstellungen auf Ihrer Website und aktivieren Sie Ihren Lizenzschlüssel. Erfordert die kostenlosen Apps ecosire_connect und ecosire_license_client.
| Kriterium | ECOSIRE | Benutzerdefinierter Build | Konkurrent | Odoo 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 | |
| ATCUD & QR codes | Auto-generated per certified series on every document | Hand-coded per project, easy to get wrong | Usually included but rigidly configured | |
| 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 | |
| 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 | |
| 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 | |
| Delivery & timeline | 2-4 weeks from confirmed scope, staging UAT included | Often months with uncertain scope | Instant install but generic fit | |
| Support & updates | Post-go-live window + optional maintenance for AT changes | You own all future maintenance | Vendor roadmap, may lag AT changes | |
| Source & ownership | Full git repo handover, no lock-in | You own it but built alone | Usually closed or license-restricted |
This is a build-to-order app, not an instant download. Typical delivery is 2 to 4 weeks 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.
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.
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.
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.
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.
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.
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.
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.