If you've set up Peppol in Odoo, you've probably noticed that standard e-invoicing sends only the invoice itself. The Odoo account Peppol attachment module (cr_account_peppol_attachment) by Creyox Technologies closes that gap. It lets you send delivery notes, certificates and other supporting documents together with your Peppol invoice, and it imports attachments from incoming Peppol bills automatically. It also adds multi-endpoint routing for subsidiaries and departments, instant notifications for new bills, and a full transmission log.
This guide explains what the module does, who needs it, and how to set it up and use it, step by step. Need help with a custom Peppol workflow? Our team offers Odoo customisation services and Odoo support.
The Gap Nobody Mentions in Peppol Compliance
Every Odoo implementation guide covers the basics: register your company on Peppol, verify your customer's endpoint, click Send, done. For a straightforward invoice, that works perfectly. But here is what those guides consistently skip over.
In real B2B transactions, an invoice almost never stands alone. Your customer expects a delivery note proving goods arrived. Your buyer's AP team needs a quality certificate before approving payment. A construction client requires a signed variation order with every milestone invoice. With standard Odoo Peppol, none of those documents can travel with the invoice, they end up as email attachments sent separately, logged nowhere in the ERP, and completely outside the Peppol audit trail. This is precisely the problem the Creyox Peppol Attachment module (cr_account_peppol_attachment) is built to solve.
What Is the Odoo Account Peppol Attachment Module?
The cr_account_peppol_attachment module by Creyox Technologies extends Odoo's native Peppol e-invoicing capabilities in four critical directions: outbound multi-attachment support, inbound attachment import, instant bill notifications, and multi-endpoint routing for complex corporate structures. It is fully compliant with Peppol BIS Billing 3.0 and UBL 2.1, works on both Odoo Community and Enterprise editions, and supports Odoo.sh and on-premise deployments. Note that it is not compatible with Odoo Online (SaaS).
Why Standard Odoo Peppol Is Not Enough for Most Businesses
Standard Odoo Peppol does many things well it sends and receives UBL 2.1-compliant e-invoices, embeds the invoice PDF in the XML structure, and logs transmission status in the invoice chatter. However, it does not send additional attachments beyond the invoice PDF, does not extract and save all embedded documents from inbound transmissions, does not notify your team when a new Peppol bill arrives, and provides no way to route invoices to different Peppol endpoints within the same parent company.
For businesses in manufacturing, pharma, construction, logistics, or professional services where supporting documents carry commercial and legal weight these limitations create real friction and push teams back into manual workarounds that defeat the purpose of e-invoicing compliance.
Key Features: What the Module Actually Does
1. Send Multiple Supporting Documents via Peppol
This is the headline feature. When you open the Send & Print wizard on a posted invoice, the module adds an attachment selection panel where you can choose which files to bundle alongside the UBL invoice before transmission. Supported formats include PDF, JPEG, PNG, XLSX, ODS, and CSV covering delivery notes, quality certificates, purchase orders, packing lists, timesheets, and statements of work.
Files are Base64-encoded and embedded directly within the UBL XML structure, following the Peppol BIS Billing 3.0 Additional Document Reference specification. This means supporting documents travel through the Peppol network as part of the invoice payload not as separate transmissions. Before sending, the module validates every attachment for both format compatibility and file size against a configurable limit you set in Invoicing → Configuration → Settings → Peppol Configuration. If any file fails validation, the system blocks transmission and alerts the user immediately catching issues before they become network failures.
2. Add a Peppol Attachment Note
Alongside the supporting documents, users can include a free-text Peppol Attachment Note within the Send & Print wizard. This note travels with the invoice payload and gives the recipient additional context: a contract reference, a delivery batch number, or a quality inspection report identifier without requiring a separate communication channel.
3. Automatic Inbound Attachment Import
When a vendor sends you a Peppol e-invoice that includes embedded attachments, standard Odoo may only extract the invoice PDF. The Creyox module changes this entirely. Every document embedded in the incoming UBL XML PDFs, images, spreadsheets is automatically extracted and linked to the corresponding vendor bill record in Odoo. Your accounts payable team has all relevant documents immediately available inside the ERP, without any manual download, email search, or file upload.
4. Instant Email Notifications for Incoming Peppol Bills
Standard Odoo processes incoming Peppol documents on a scheduled basis, which means your team may not know a new vendor bill has arrived until they happen to check the inbox. In high-volume AP environments, that delay can mean missed payment terms and late fees. This module solves the problem with configurable email notifications. You designate one or more users in Settings, and the moment a new Peppol vendor bill is imported, each designated user receives an email containing the vendor name, invoice reference, and a direct View Invoice button linking straight to the bill record. Configuration is found at Invoicing → Configuration → Settings → Peppol Configuration → Notification Recipients.
5. Multi-Endpoint Routing for Complex Corporate Structures
Large organisations often operate with multiple legal entities, subsidiaries, or regional divisions each with its own registered Peppol participant ID. Standard Odoo treats the parent company as a single endpoint, with no native way to route an invoice addressed to a specific subsidiary to that subsidiary's Peppol endpoint. The Creyox module solves this cleanly. When Multi Endpoint Support is enabled in Settings, you can open any child contact or sub-entity in Odoo Contacts and assign a dedicated Peppol EAS code and endpoint. Invoices addressed to that contact then route automatically to the correct endpoint no manual intervention required. This is particularly valuable for group finance functions, shared services teams, and Odoo consultants implementing multi-company environments.
6. Full Audit Trail in the Invoice Chatter
Every outbound Peppol transmission is logged automatically in the invoice chatter, including a timestamped record of which attachments were included. Finance controllers, internal auditors, and compliance teams can verify what was sent, when it was sent, and whether the transmission succeeded all within the ERP itself, not in a separate portal or email log.
7. Automatic Retry for Failed Transmissions
Peppol transmission failures do happen access point outages, network timeouts, temporary endpoint errors. In standard Odoo, these require manual detection and resubmission. The module includes a scheduled action that detects failed e-invoice submissions and automatically retries them, so finance teams do not need to monitor transmission logs or catch failures themselves.
Who Should Use This Module?
This module is a practical necessity if you send invoices alongside delivery notes or compliance certificates, if your buyers require supporting documents with every invoice, if your organisation manages subsidiaries with separate Peppol IDs, or if your AP team processes high volumes of inbound Peppol bills. Industries where it delivers the most value include manufacturing, pharmaceutical and life sciences, construction and engineering, logistics, and professional services operating in EU markets with mandatory e-invoicing requirements.
Peppol Advanced Configuration
- Navigate to >> Invoicing/Accounting >> Configuration >> Settings. under the peppol configuration section, you can define the Peppol attachment size limit for outbound peppol invoices. this ensures that attachments comply with peppol network size limitations before sending.
- Navigate to >> Invoicing/Accounting >> Customers >> Invoices >> Send & Print. this wizard allows users to attach multiple supporting documents and peppol attachment note before sending the invoice via peppol.
- After sending via peppol, the invoice chatter logs the transmission details and shows all sent attachments.
- Navigate to >> Invoicing/Accounting >> Configuration >> Settings. under the peppol configuration section, you can define the users who will receive notifications when new invoices are received via peppol.
- When a new peppol invoice is received, the selected users will receive a notification. the notification also includes a “View Invoice” button, allowing users to directly open the invoice.
- Navigate to >> Invoicing/Accounting >> Configuration >> Settings. under the peppol configuration section, you can enable Multi Endpoint Support allowing child companies or departments to use separate peppol endpoints.
- Navigate to >> Contacts >> Open a Child Company/Department. this screen allows configuring a dedicated Peppol endpoint for child contacts or departments under a parent company.
- This screen displays the validation error shown when an attachment exceeds the configured size limit. if the maximum size is set to 5MB and the selected attachment is 9MB, the system will block the sending process and notify the user.
- This screen shows the error message when a user attempts to attach an unsupported file format for peppol transmission. if a user uploads a .mp4 or unsupported file type, the system validates the format and prevents sending.











Final Thoughts
Standard Odoo Peppol handles the basics well, but for businesses where invoices routinely travel with supporting documents, the native module forces teams into manual workarounds that break the compliance workflow entirely. The Ultimate Peppol Odoo Toolkit module by Creyox Technologies closes that gap outbound multi-attachment support, automatic inbound document import, instant bill notifications, multi-endpoint routing, a full audit trail, and automatic retry for failed transmissions, all within the Peppol BIS 3.0 standard. For support, contact Creyox at support@creyox.com.
Frequently Asked Questions
Not with standard Odoo, which sends only the invoice PDF embedded in the UBL XML. With the Odoo account Peppol attachment module, you can select multiple supporting documents in the Send & Print wizard and send them together with the invoice as a single Peppol payload.
The module supports PDF, JPEG, PNG, XLSX, ODS and CSV files. Each file is validated for format and size against the limit you configure in Invoicing > Configuration > Settings before it is sent.
Yes. Every document embedded in an incoming Peppol UBL invoice is extracted automatically and linked to the matching vendor bill in Odoo, so your accounts payable team does not need to download or upload files manually.
Yes. After enabling Multi Endpoint Support in Settings, you can assign a dedicated Peppol EAS code and endpoint to any child contact. Invoices addressed to that contact are then routed to the correct endpoint automatically.
No. The module works on Odoo Community and Enterprise, on Odoo.sh and on-premise deployments, but it is not compatible with Odoo Online (SaaS).