A build-to-order Odoo connector that submits, retrieves, and reconciles structured invoices through Poland's KSeF national e-invoicing platform. ECOSIRE scopes, builds, installs, and supports it for your Odoo 17, 18, or 19 database. Built to order by ECOSIRE for Odoo 17, 18, 19 — indicative price from $599.00 USD; request a quote for a scoped proposal.

A build-to-order Odoo connector that submits, retrieves, and reconciles structured invoices through Poland's KSeF national e-invoicing platform. ECOSIRE scopes, builds, installs, and supports it for your Odoo 17, 18, or 19 database.
अभी कोई भुगतान नहीं। यह हमारी टीम को एक कोटेशन अनुरोध भेजता है — हम कीमत और अगले चरणों के साथ ईमेल द्वारा संपर्क करेंगे।
If your company sells into Poland, the mandatory KSeF (Krajowy System e-Faktur) national e-invoicing platform is not something you can bolt onto Odoo with a setting. Every B2B invoice has to leave your system as a government-defined structured XML document (the FA schema), be transmitted to the KSeF API under an authenticated session, and come back with an official reference number (KSeF ID) that must live on the invoice and appear on the customer-facing PDF. Odoo core gives you account.move, tax logic, and QWeb PDFs, but it has no concept of the KSeF session lifecycle, the FA XML structure, the government authorization tokens, or the acceptance/rejection acknowledgements — so finance teams end up rekeying invoices into a separate government portal and manually copying reference numbers back, which does not scale and breaks audit traceability.
Outbound FA-schema XML generation built directly from posted `account.move` records, taxes, and partner NIP data
Authenticated KSeF session lifecycle handled by the module — token fetch, cache, and refresh from encrypted `ir.config_parameter`, no manual login
Stored KSeF status field on `account.move` (`to_send`/`sent`/`accepted`/`rejected`) with `@api.depends` computes and colored status widget in the invoice view
Official KSeF reference number (`ksef_id`) and acceptance timestamp written back onto the invoice and stamped on the QWeb PDF
Inbound vendor-bill retrieval via scheduled `ir.cron` — polls KSeF for invoices addressed to your NIP and creates or matches `account.move` bills
Manual 'Send to KSeF' server action plus optional auto-submit on invoice post, configurable per journal
We build a dedicated connector module that lives inside your Odoo database and wires the full KSeF exchange onto the native accounting workflow. On the customer (outbound) side, posting or confirming an account.move triggers generation of a schema-valid FA XML built from your invoice lines, taxes, partner fiscal identifiers (NIP), and payment terms; the module opens an authenticated KSeF session, uploads the document, polls for the acceptance status, and writes the returned ksef_id plus timestamp back onto the invoice with a stored state field (to_send, sent, accepted, rejected). On the supplier (inbound) side, a scheduled ir.cron job queries KSeF for invoices addressed to your NIP, downloads them, and creates or matches vendor bills so nothing is lost. Everything is modeled properly — new fields on account.move via a models.Model inherit, @api.depends computes for status, ir.model.access.csv plus record rules so only accounting roles can trigger submissions, XML/OWL views for the KSeF status widget and a manual "Send to KSeF" action, a QWeb report extension that stamps the KSeF ID on the invoice PDF, and structured logging of every request/response for tax audits. Authorization credentials and the environment endpoint (test vs production) are held in encrypted system parameters, and the government session token is fetched, cached, and refreshed by the module rather than pasted by a user.
Because this is government infrastructure with strict schema validation and error semantics, we treat correctness and recoverability as first-class: failed submissions surface a readable error and a retry action rather than silently blocking the post, and a lightweight status dashboard lets your team see, filter, and re-drive any invoice stuck in rejected. The connector uses Odoo's standard API surface (the ORM internally, and the XML-RPC/JSON-RPC API where you want to trigger submissions from an external system), and we target your exact release — Odoo 17.0, 18.0, or 19.0 — noting Community vs Enterprise differences in the accounting layer so the module behaves identically on whichever edition you run.
Delivery is build-to-order: this is not an instant download. After a short scoping call we confirm your Odoo version and edition, your KSeF authorization method, whether you need outbound-only or full two-way exchange, and your multi-company/branch structure, then build against a copy of your database. Typical delivery is 2 to 4 weeks from confirmed scope, including UAT on a staging instance against the KSeF test environment before we ever touch production. Pricing starts from $599 (indicative, single-company base scope); multi-company setups, additional integrations, deeper FA-schema field mapping, and historical data migration volume increase the quoted scope. You receive a fixed written quote after the scoping call — never a surprise on the invoice.
Runs Odoo accounting for a company that invoices B2B in Poland and needs KSeF compliance without rekeying every invoice into a separate government portal. Wants the reference number and status visible directly on the invoice.
Oversees several legal entities in one or more Odoo databases and needs per-company NIP resolution, per-company KSeF credentials, and consistent behaviour across branches and journals.
Owns the Odoo instance and cares about a clean module (proper ORM models, access rules, cron jobs, encrypted secrets) that they can maintain, plus the ability to trigger submissions from another system over XML-RPC/JSON-RPC.
Manages Odoo bookkeeping on behalf of Polish clients and needs a reliable, auditable KSeF pipeline with full request/response logging and a dashboard to re-drive any rejected invoices.
Buy the license on ecosire.com and download the KSeF Polish E-Invoicing Connector for Odoo module ZIP from your account dashboard.
Extract the ZIP into your Odoo custom addons folder on the server (or upload via Apps > Install from file on Odoo.sh / runbot).
Activate Developer Mode, open Apps, click Update Apps List, search for KSeF Polish E-Invoicing Connector for Odoo, and press Install.
Open the new menu, paste your ECOSIRE license key, connect any external credentials (Shopify, Amazon, Stripe, etc.), and save.
Run the built-in connection test, sync your first 10 records, and schedule the recurring cron. Contact support if anything fails.
| Criterion | ECOSIRE | Custom Build | Competitor | Odoo Native |
|---|---|---|---|---|
| KSeF connectivity | Full session lifecycle, submit + retrieve, built for your DB | Possible but you build the whole KSeF protocol yourself | Generic feature set, may not match your workflow | |
| FA schema XML | Generated from your invoices, mapped to your fields | You author and maintain the schema mapping | Standard mapping, limited customization | |
| Fit to your process | Scoped to your journals, entities, and edition | Fully yours if you have the in-house Odoo team | One-size-fits-all, adapt your process to it | |
| Odoo version/edition | Built for your exact 17/18/19, Community or Enterprise | Depends on your team's coverage | Often lags new releases or one edition only | |
| Delivery model | Build-to-order, 2-4 weeks, UAT + rollback plan | Your own project timeline and risk | Instant download but self-integrate | |
| Support & ownership | Support window + full git repo handover, you own it | You own and maintain everything | Vendor support, code often locked | |
| Audit & error handling | Full request/response logging + retry dashboard | Build the logging and retry yourself | Varies, often basic logging | |
| Upfront cost | From $599 indicative, fixed quote after scoping | High dev hours, unpredictable | Low license fee, integration cost hidden |
No. This is a build-to-order product. We scope your requirements, then build, install, and support the connector against your specific Odoo version and edition. There is no instant download — you receive installable source code for your version as part of the engagement.
Typical delivery is 2 to 4 weeks from confirmed scope. That window covers building against a copy of your database, UAT on a staging instance against the KSeF test environment, and a documented go-live. Larger multi-company or data-migration scopes can extend it, and we confirm the timeline in writing after the scoping call.
Pricing starts from $599 (indicative, single-company base scope). Multi-company setups, additional integrations, deeper FA-schema field mapping, and historical data migration volume increase the quoted scope. After a 15-45 minute scoping call we send a fixed written quote — the from-price is indicative, and you approve the fixed number before we build.
Every engagement includes a post-go-live support window for defect fixes and configuration questions. Because you receive the full git repository and source, you own the code. We offer ongoing support and version-upgrade retainers separately if you want us to track KSeF schema changes and Odoo version migrations for you.
We target Odoo 17.0, 18.0, and 19.0, on both Community and Enterprise. We build for your exact release and handle the accounting-layer differences between editions so the connector behaves identically on whichever you run.
Yes, if you scope it that way. Outbound covers generating FA-schema XML from your Odoo invoices and submitting them to KSeF with the reference number written back. Inbound uses a scheduled job to retrieve invoices addressed to your NIP and create or match vendor bills. You can start outbound-only and add inbound later.
KSeF authorization credentials and the environment endpoint are stored in encrypted Odoo system parameters, not hard-coded or pasted per invoice. A single environment switch keeps your staging instance pointed at the KSeF test environment, and we only enable the production endpoint after UAT passes.
A build-to-order Odoo connector that submits, retrieves, and reconciles structured invoices through Poland's KSeF national e-invoicing platform. ECOSIRE scopes, builds, installs, and supports it for your Odoo 17, 18, or 19 database.