- 首页
- Apps
- SaaS Tools
- 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.
什么是 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.
核心功能
按需定制,全程代劳
无需自行搭建——由 ECOSIRE 构建、安装并提供支持的可用应用。
- 1
您下单
以一次性构建价格开始。我们在启动时与您共同确定范围。
- 2
我们构建与安装
ECOSIRE 在您的 ERPNext 上构建、配置并安装。
- 3
上线 + 支持
约一个工作周内上线,并包含两周上线支持。我们交付的代码中的缺陷免费修复。
技术规格
- ERPNext 兼容性
- —
- 许可证
- 许可证需要确认
- Python 要求
- Python 3.10+
- 数据库
- MariaDB 10.6+
关于此产品
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.
你得到什么
- 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
这是给谁的
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.
ERPNext Portugal (SAF-T & Certified Invoicing) 如何比较
| 标准 | 伊科西尔 | 定制建造 | 竞争对手 | ERPNext 原生 |
|---|---|---|---|---|
| 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 |
关于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.
相关模块
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



