High-intent Belgium routing confusion 0208 vs 9925 in Belgium: which Peppol ID should you use?
Belgian Peppol delivery often fails because the counterparty is stored with the wrong identifier scheme. This page explains when 0208 and 9925 diverge and what to verify first.
Check a Belgian participant now Blocked Odoo send flow Odoo says Peppol sent the invoice, but the customer never received it
If Odoo marks an invoice as sent while the customer sees nothing, you are usually dealing with routing, registration, or access-point issues rather than broken invoice content.
Diagnose Odoo delivery Odoo maintenance and trust issues What Odoo means by 'Revalidate IDs' in Peppol
The revalidation prompt usually signals stale participant metadata or a registration mismatch. This page shows what to refresh before you resend.
Refresh the right identifiers Failed partner onboarding No valid Peppol ID found for a Belgian customer
This usually means the customer is registered under a different identifier or not fully published. Here is how to separate a real absence from a lookup mismatch.
Validate the counterparty Directory lookup confusion Partner not found in the Peppol Directory
A missing directory hit does not always mean the company is absent from the network. Learn when the directory is advisory and what else to check.
Compare directory evidence Endpoint-level routing mismatch Wrong endpoint scheme in a Belgian Peppol invoice
The invoice can look structurally valid and still fail because the participant scheme does not match the recipient's published routing identity.
Check endpoint structure Access-point authentication failure Odoo Peppol invalid signature for request
An invalid request signature is usually a provider credential or environment problem, especially after database copies or restores.
Triage the signature failure Validation passed but delivery failed Why a valid invoice can still fail on Peppol
Passing XML validation is not enough. Routing, registration, and provider state can still block delivery. This page explains the gap.
See the missing layer German document rejection XRechnung buyer reference missing
German XRechnung flows commonly reject invoices missing the buyer reference. Learn how to spot the issue fast and avoid another failed submission.
Check XRechnung fields Rule-code translation BR-CO-10 explained without validator jargon
If you hit BR-CO-10, the invoice totals do not reconcile. This page translates the rule into practical bookkeeping and ERP checks.
Translate BR-CO-10 Profile-field export failure Missing CustomizationID in a Peppol invoice
A Peppol invoice can contain the business data and still fail because the export is missing the profile marker tools expect to classify it correctly.
Check profile metadata Inconclusive lookup triage Peppol Directory inconclusive: what it means before you resend
An inconclusive directory result is not a green light and not a final rejection. This page explains how to handle the gray zone without wasting retries.
Review the lookup evidence VAT validation friction Belgian VAT number not found in VIES
If VIES cannot confirm the Belgian VAT number you used for an e-invoice workflow, you need to separate a real format problem from a temporary upstream gap.
Check the VAT evidence Odoo multi-company drift Odoo Peppol is using the wrong company binding
Multi-company setups, duplicates, and restored databases can leave Odoo pointing at the wrong Belgian participant even when the invoice itself looks fine.
Check the company binding Totals and rounding failure Cash rounding is breaking Peppol totals
Rounding logic that looks harmless in the ERP can still produce totals that fail e-invoice validation. This page isolates the most common pattern.
Check the totals logic Identifier-format mismatch My customer has a GLN in Odoo, but I still get 'no valid Peppol ID'
A stored GLN or alternate identifier does not guarantee Odoo will resolve the exact Peppol participant the recipient expects. This page shows where the mismatch happens.
Compare the stored identifier Exact routing-field failure Peppol EndpointID missing: why the invoice cannot route
If the invoice has business lines and totals but no EndpointID, the document still cannot route over Peppol. This page explains the exact failure and what to fix first.
Check the missing EndpointID Odoo restore-triggered failure Odoo Peppol broke after a database restore or clone
Restores and cloned environments often leave Odoo Peppol bindings out of sync. This page isolates the exact symptoms that usually follow and how to recover cleanly.
Triage the restored environment Exact access-point registration blocker Odoo Error 201: 'Your company is already registered on another Access Point' and sender-only fallback
This exact Odoo Peppol message usually appears after a restore, duplicate database, or half-reset receiving setup. The result is a blocked receiving registration and a sender-only fallback that still does not restore the real workflow.
Fix the access-point conflict Contradictory Peppol registration query Recipient is on Peppol, but Odoo still says no valid Peppol ID
This contradiction usually means Odoo has the wrong identifier, wrong scheme, or stale participant evidence. This page breaks down the mismatch clearly.
Compare Odoo against the live participant Exact VAT lookup ambiguity VIES inconclusive for a Belgian VAT number
An inconclusive VIES result is a gray zone, not a clean pass and not a final rejection. This page shows how to proceed without overcorrecting.
Review the inconclusive VAT result Exact totals arithmetic symptom Payable amount is higher than the tax-inclusive total
This is a precise invoice arithmetic failure, not vague validator fog. The page shows what causes it and which ERP fields to inspect first.
Check the payable amount mismatch Exact Odoo validity error Odoo says 'PEPPOL is not valid' even though the customer looks registered
This exact Odoo message usually means the ERP is validating the wrong participant identity, stale evidence, or the wrong identifier scheme rather than proving the customer is truly unavailable.
Diagnose the exact validity error Global Odoo Peppol outage symptom Odoo suddenly says all customers are not on Peppol
If Odoo marks every customer as not on Peppol all at once, treat it as an environment or provider incident first, not a data-cleanup job on every partner record.
Triage the global lookup failure Odoo branch and parent-company routing drift Odoo Peppol is using the commercial company or mother company instead of the branch
Branch setups and commercial-company relationships can send Peppol traffic through the wrong legal entity. This page isolates the exact binding problem and how to correct it.
Check the branch-versus-parent binding Exact Odoo endpointverification mismatch Odoo endpointverification says 'not on Peppol' for a customer that is registered
If Odoo's endpointverification flow says a customer is not on Peppol while other evidence shows they are, the mismatch is usually in the exact route Odoo is verifying rather than in the customer's existence.
Compare the verification route Technical Peppol DNS failure Odoo Peppol DNS check failed on iso6523-actorid-upis.edelivery.tech.ec.europa.eu
When Odoo or the verification path fails on the upstream ISO6523 resolver host, it looks like every customer is wrong even though the real problem is infrastructure or resolver state.
Triage the DNS failure Zero-VAT Belgian send blocker Peppol error when sending an invoice without a VAT amount in Odoo
Belgian zero-VAT or exempt invoices can still fail Peppol export when the tax category and exemption metadata do not line up with what the connector expects.
Check the zero-VAT send blocker Belgian VAT and RV export conflict Peppol conflict: VAT and 'Roerende Voorheffing' on one invoice line in Odoo
Odoo may let you combine Belgian VAT and roerende voorheffing logic on one line, but the Peppol UBL export can still fail when that tax structure does not map cleanly to one invoice item.
Check the VAT and RV conflict Inbound Peppol receiving blocker Suppliers can't send me invoices via Peppol in Odoo
Being listed in the Peppol directory is not always enough to receive invoices. This page isolates the Odoo receiving-side failures that leave inbound invoices stuck even after registration.
Check the receiving setup