This module implements the exchange of electronic invoices with the Postfinance web service.
auto_awesome What this module does
AI-generated from the code · Odoo 19.0Send customer invoices and credit notes electronically to Postfinance eBill, and track their status (sent, paid, rejected) directly in Odoo.
This module connects Odoo to the Postfinance eBill service so you can send invoices electronically instead of by post. You configure one or more Postfinance services (Biller ID, username, password, bank account, invoice format and language) under the Payment menu.
- On a customer contract you set the Postfinance Contract ID, the service and the payment method; Odoo checks that both the Contract ID and the service are filled in.
- A button on the contract sets the Postfinance transmit method on the customer, and another button opens the list of invoices already sent for that contract.
- When an invoice uses the Postfinance transmit method, Odoo automatically picks the bank account defined on the service, generates the PDF, builds the XML message and uploads it to Postfinance.
- Each sent invoice creates a message record showing transaction ID, submission date, payload, response, server state and error code/text. You can resend a message or check that its XML payload is valid.
- A scheduled job runs every hour to check invoice states on the server; paid invoices are marked done and a note is added in the invoice chatter, while rejected or errored invoices create a warning activity for follow-up.
- The module also touches
account.move,account.move.line,sale.orderandebill.payment.contract.
Depends on
Required by other modules
Models and fields (5)
- sale.order · extends an existing modelpostfinance_ebill_client_order_ref
- account.move · extends an existing model
- ebill.payment.contract · extends an existing modelpayment_type (Payment method), postfinance_billerid (Contract ID), postfinance_service_id (Service), is_postfinance_contract, is_postfinance_method_on_partner
- ebill.postfinance.service · new modelname, active, password, username, biller_id (Biller ID), partner_bank_id (Bank account), file_type_to_use (Invoice Format), use_test_service (Testing), operation_timeout (HTTP Timeout), xml_file_language (XML file Language), invoice_message_ids (Invoice Messages), use_file_type_xml_paynet (Use Paynet/SIX format), ebill_payment_contract_ids (Contracts)
- ebill.postfinance.invoice.message · new modelref (Reference No.), state, payload (Payload sent), response, invoice_id, service_id (Service used), payload_size (Payload Size (MB)), payment_type, server_state, submitted_on (Submitted on), attachment_id, file_type_used, transaction_id, server_reason_code (Error code), server_reason_text (Error text), ebill_account_number (Payer Id), ebill_payment_contract_id
Text generated by AI (DeepSeek) from reading the Odoo 19.0 code on GitHub; it may contain mistakes, so check the code before deciding. View the code on GitHub
Availability by version
Reviewed: 2026-11-03Confirmation status: 5 confirmed, 4 with no information of 9 versions.
Sources · Odoo 17.0
Confirmed on 2026-11-03 in branch 17.0 of OCA/l10n-switzerland.
terminal Installation and usage
OCA documentation · Odoo 19.0Installation
Source · Odoo 19.0This module needs the Python library ebilling_postfinance which can be installed from Pypi. More information can be found at repository https://github.com/camptocamp/ebilling-postfinance.
Configuration
Source · Odoo 19.0Create a service
First you need to be registred on 'Postfinance eBill service \<\>' To create a service go to Accounting - Configuration - Payments - Postfinance eBill Service
Configure a customer and create his contract
The contracts specific to Postfinance e-billing are located in Accounting - Customers - eBill Postfinance Contract Create a contract for a customer with his PayerId and make sure that the contract is active by being in Open state with valid start/end dates.
Set Customer Invoice Transmission Method on the customer to Postfinance.
Usage
Source · Odoo 19.0To use this module, you need to:
- Configure the service, customers and contracts as described in the CONFIGURATION section.
- Create an invoice for a customer with an open Postfinance contract.
- Validate the invoice, and click the Send eBill button.
Installation instructions, the distribution package, dependencies and configuration steps are not shown because they have not yet been verified in the module documentation for any version.
Data imported from GitHub: this sheet reflects the latest catalog review, not a live lookup. Always check the module documentation and staging before installing in production.