A build-to-order Odoo module that produces Skatteetaten-compliant SAF-T Financial XML and sends EHF 3.0 (Peppol BIS Billing 3) invoices with KID payment references and correct MVA codes. ECOSIRE scopes, builds, installs and supports it for your specific chart of accounts. Built to order by ECOSIRE for Odoo 17, 18, 19 — indicative price from $399.00 USD; request a quote for a scoped proposal.

A build-to-order Odoo module that produces Skatteetaten-compliant SAF-T Financial XML and sends EHF 3.0 (Peppol BIS Billing 3) invoices with KID payment references and correct MVA codes. ECOSIRE scopes, builds, installs and supports it for your specific chart of accounts.
Şimdi ödeme yok. Bu, ekibimize bir teklif talebi gönderir — fiyat ve sonraki adımlarla e-posta ile dönüş yapacağız.
Norwegian businesses face two obligations that Odoo core does not cover out of the box. When the tax authority (Skatteetaten) requests it during an audit or bookkeeping review, you must be able to hand over a SAF-T Financial file — a strictly-schema'd XML export of your ledger, accounts, customers, suppliers and tax codes mapped to the national standard account set. Separately, to invoice the Norwegian public sector (and increasingly B2B partners), you must send EHF 3.0 documents over the Peppol network rather than PDF. Stock Odoo (account, account_edi, l10n_no) gives you a Norwegian chart of accounts and MVA tax setup, but there is no SAF-T generator, no standard-account cross-mapping, no EHF 3.0 UBL builder, and no KID reference on the payment slip. Teams end up exporting to spreadsheets and re-keying invoices into an Access Point portal by hand.
SAF-T Financial XML export generating the Skatteetaten `Audit File - Financial` structure (masterfiles, GL entries, header) for any selected period
Configurable standard-account mapping model that cross-references each Odoo account to the SAF-T standard account set (NS 4102-based) so your own chart still exports against government codes
MVA-to-SAF-T tax-code mapping table covering domestic, reverse-charge, zero-rated and exempt rates
MVA-melding (VAT return) summary computed from the same posted `account.move.line` entries used for SAF-T
XSD validation of the SAF-T file before export, surfacing structural errors in the Odoo UI rather than at the portal
EHF 3.0 / Peppol BIS Billing 3 sales-invoice generation as an `account_edi` document type rendering UBL 2.1 (`cbc`/`cac`)
This is what ECOSIRE builds for you as a made-to-order module. On the SAF-T side we add a generator that walks your account.move / account.move.line data for a selected period and emits the Skatteetaten Audit File - Financial structure: masterfiles (accounts, customers, suppliers, tax table), the general-ledger entries, and the header block carrying your Organisasjonsnummer. Each Odoo account is cross-mapped to the SAF-T standard account (NS 4102-based) via a configurable mapping model, so your own multi-digit chart still exports against the government's standard codes. Every MVA tax in Odoo is mapped to its SAF-T tax code, and we generate the MVA-melding (VAT return) summary figures from the same posted entries. Before anything leaves the system the XML is validated against the official XSD, so you catch structural errors at your desk instead of at the portal.
On the e-invoicing side we implement EHF 3.0 / Peppol BIS Billing 3 as a document type extending account_edi. When you confirm a customer invoice, the module renders Access-Point-ready UBL 2.1 — correct cbc/cac structure, Peppol participant identifiers derived from the validated Organisasjonsnummer, MVA breakdown per rate, and a computed KID (kidnummer) payment reference using the MOD-10 or MOD-11 check-digit scheme your bank uses. The UBL is handed off to your chosen Peppol Access Point for transmission; we do not resell network access, we make Odoo produce a document your provider will accept. We also add inbound EHF: supplier documents you receive are parsed into draft account.move vendor bills for review, so incoming Peppol traffic lands in Odoo instead of an inbox. All of this ships as clean, upgrade-safe code — proper __manifest__.py dependencies, models.Model extensions with @api.depends computes for the KID and MVA fields, ir.model.access.csv plus record rules for who can export SAF-T, XML/OWL views, and a QWeb layout for the KID-bearing invoice. The JSON-RPC/XML-RPC API surface stays intact so your other integrations keep working.
Because it is build-to-order, delivery follows a short, predictable path: a scoping call to confirm your chart of accounts, MVA setup, bank KID scheme and Access Point; a fixed quotation; then we build, validate against the XSD and a real Peppol test corner, run UAT on a staging copy of your database, and deploy with a documented rollback. Typical delivery is 2 to 4 weeks from confirmed scope, and we support Odoo 17.0, 18.0 and 19.0 on Community or Enterprise. Pricing starts from $399 (indicative, single-company base scope); additional legal entities, a non-standard chart of accounts requiring deeper standard-account mapping, custom KID rules, or inbound-EHF automation depth increase the quoted scope.
Runs bookkeeping in Odoo and must be able to produce a valid SAF-T Financial file on demand when Skatteetaten or the auditor asks, without exporting to spreadsheets and re-formatting by hand.
Sells to Norwegian government bodies that mandate EHF over Peppol and needs confirmed Odoo invoices to become Access-Point-ready UBL with the correct KID reference, instead of manual entry in a portal.
Manages multiple client databases and wants one reliable, upgrade-safe SAF-T and EHF module they can standardise on across engagements rather than patching each client individually.
Owns an Odoo rollout in Norway and needs a documented, git-handed-over localization layer with clear models, access rules and tests so the compliance piece is maintainable in-house.
Lisansı ecosire.com adresinden satın alın ve hesap kontrol panelinizden Norway SAF-T Financial + EHF/Peppol for Odoo modülünün ZIP dosyasını indirin.
ZIP'i sunucudaki Odoo özel eklentiler klasörünüze çıkarın (veya Uygulamalar > Odoo.sh / runbot'taki dosyadan yükle yoluyla yükleyin).
Geliştirici Modunu etkinleştirin, Uygulamalar'ı açın, Uygulama Listesini Güncelle'ye tıklayın, Norway SAF-T Financial + EHF/Peppol for Odoo'i arayın ve Yükle'ye basın.
Yeni menüyü açın, ECOSIRE lisans anahtarınızı yapıştırın, tüm harici kimlik bilgilerini (Shopify, Amazon, Stripe vb.) bağlayın ve kaydedin.
Yerleşik bağlantı testini çalıştırın, ilk 10 kaydınızı senkronize edin ve yinelenen cronu planlayın. Herhangi bir sorun olursa desteğe başvurun.
| Kriter | ECOSIRE | Özel Yapı | Rakip | Odoo Yerlisi |
|---|---|---|---|---|
| SAF-T Financial export | Built-in generator emitting the Skatteetaten structure, XSD-validated before export | Possible but you specify and build the whole XML schema yourself | May cover basic SAF-T but rarely tuned to your chart or validated | |
| Standard-account mapping | Configurable mapping of your accounts to the NS 4102-based standard set | Hand-coded mapping you must design and maintain | Fixed mapping assumptions, hard to adapt to your COA | |
| EHF 3.0 / Peppol invoicing | UBL 2.1 document type, Access-Point-ready with Peppol identifiers | Build the UBL builder and identifier logic from scratch | Generic EHF that may not match your Access Point's expectations | |
| KID payment reference | Computed KID with MOD-10 or MOD-11 matching your bank scheme | You implement and test the check-digit algorithm yourself | KID sometimes present but scheme choice may be fixed | |
| Inbound EHF vendor bills | Received Peppol UBL parsed into draft vendor bills for review | Separate parser project on top of the outbound work | Often outbound-only, no inbound path | |
| Fit to your setup | Scoped to your COA, MVA codes, KID scheme and Access Point | Fully bespoke but on your time and QA budget | One-size-fits-all, you adapt around its assumptions | |
| Delivery & support | Built, installed, UAT + rollback, support window, git handover | Depends entirely on your internal capacity and timeline | Download plus forum/ticket support, self-install | |
| Odoo version coverage | 17.0 / 18.0 / 19.0, Community or Enterprise, upgrade-safe | Whatever you build and then re-test each upgrade | Varies by listing; upgrades not guaranteed |
No. This is a build-to-order module. ECOSIRE builds it for your specific chart of accounts, MVA setup, KID scheme and Peppol Access Point, then installs and supports it. It is not an existing apps.odoo.com download, and we never claim an instant download.
Typical delivery is 2 to 4 weeks from confirmed scope. After the scoping call and a fixed quotation, we build the module, validate the SAF-T output against the official XSD and test EHF over a Peppol test corner, run UAT on a staging copy of your database, and then deploy with a rollback plan.
Pricing starts from $399 as an indicative single-company base scope. We give you a firm fixed quote only after a scoping call, because the real drivers are the number of legal entities, how non-standard your chart of accounts is for standard-account mapping, custom KID rules and how much inbound-EHF automation you want. The from-price is indicative, not a fixed quote.
The module produces Access-Point-ready EHF 3.0 / Peppol BIS Billing 3 UBL from your confirmed Odoo invoices and hands it to your chosen Peppol Access Point for transmission. We do not resell network access; we make Odoo generate a document your Access Point will accept, and we help wire up the handoff.
Every build includes a post-go-live support window for defect fixes and configuration questions, and you receive the full git repository so the code is yours to maintain. We keep the SAF-T and EHF logic upgrade-safe, and we can quote a separate engagement to migrate the module when you move to a newer Odoo version.
We support Odoo 17.0, 18.0 and 19.0 on both Community and Enterprise. The module builds on `account`, `account_edi`, `base_vat` and `l10n_no`, and we confirm any edition-specific behaviour during the scoping call.
Yes. The SAF-T Financial export and the MVA-melding (VAT return) summary are computed from the same posted journal entries, so your audit file and your VAT figures reconcile against one source. The SAF-T file is validated against the Skatteetaten XSD before you export it.

A build-to-order 2Checkout (Verifone) payment integration for ERPNext, giving global digital-goods sellers card acceptance, 45+ local payment methods, multi-currency checkout, and reconciled invoices. ECOSIRE scopes, builds, installs, and supports it on your ERPNext v15/v16 instance.

A build-to-order 2Checkout / Verifone payment gateway for Magento 2 and Adobe Commerce: localized checkout in 12 languages, iDEAL, Giropay and regional methods, multi-currency global selling, subscription billing and tax/invoicing automation — engineered, installed and supported by ECOSIRE.

A build-to-order ERPNext application for anonymous 360-degree reviews — configurable peer, manager, report and self rater groups, weighted competency scoring, and aggregated gap-analysis and heatmap reports. ECOSIRE scopes, builds, installs and supports it on your Frappe/ERPNext v15/v16 instance.
A build-to-order Odoo module that produces Skatteetaten-compliant SAF-T Financial XML and sends EHF 3.0 (Peppol BIS Billing 3) invoices with KID payment references and correct MVA codes. ECOSIRE scopes, builds, installs and supports it for your specific chart of accounts.