e-invoicing

September 5, 2026

We released the following Compliance Network updates to production on September 5, 2026.

New and improved

API
  • We added the document upload URL method to the external API. You can now request a pre-signed upload URL and send documents larger than 5 MB directly to storage, instead of including them in the request payload.

  • We added optional lifecycle fields for the document status code and the amount information that a tax authority response carries. You can now receive these values in the integration format instead of losing them when the response is mapped.

  • We added support for credit notes that use the invoice root element in the Sovos integration format. You can now send and receive credit notes in this structure, and Compliance Network recognizes them as credit notes with the correct document type code instead of processing them as invoices.

  • We added a configurations API endpoint for company identity validation. Workspace administrators can now set or revoke a company's identity validation status through the API.

  • We improved error handling for requests made while the authorization service is unavailable. Requests are no longer rejected as forbidden when your permissions could not be determined, so you can recognize a temporary problem and retry.

  • We improved error handling when the token validation service is unavailable. The API now returns a service-unavailable response instead of an authorization error, so you can identify a temporary service problem and try the request again without changing your access information.

Document management
  • We added the integration format identifier to the outgoing delivery details of a transaction. You can now see which integration format Compliance Network used for a delivery without leaving the transaction details.

  • We improved how Compliance Network handles failures when it retrieves a PDF. A failed retrieval no longer blocks or delays the transmission of your documents, and every failure is traced for support.

Document processing
  • We added delivery format generation for lifecycles in a routing error state. You can now receive the outcome of a failed routing through your usual delivery channel, instead of the event staying inside the platform.

  • We added a failure notification for outbound documents that fail during document creation. You now receive this notification through your integration channel, so a submitted invoice no longer stays in an unclear state.

Notifications
  • We added Product ID and ERP Document ID filters to the webhook message log. You can now find webhook notifications by country and product scope or by your own document identifier.

  • We aligned the transaction identifier that a notification carries when a lifecycle responds to another lifecycle. The transaction identifier and the reference transaction identifier now both carry the transaction identifier of the parent lifecycle, so you can match these notifications to the transaction that produced them with the same field that you use for every other notification.

Platform
  • We improved audit log search performance. Audit log searches now use more indexing and exact match filtering, so results return faster when you investigate an event.

  • We added a Tax Authority Channel Id field to the Network page of workspace settings. You can now set this identifier for each workspace and product, and Compliance Network uses it to identify who submits a document to a public entity.

System administration
  • We added filter options to the Plugins page. You can now filter plugins by format variant family, format variant type, and creation or update date.

  • We improved audit log processing. Audit entries are now available sooner, because the audit service no longer repeats reference data maintenance for values it has already processed.

User management
  • We added company close, open, and soft delete permissions to the workspace admin and organization admin roles. You can now manage the full company lifecycle during onboarding and offboarding without escalating to a higher admin role.

Brazil
  • We added authorization for Nota Fiscal Eletrônica documents. You can now submit NF-e documents to the state tax authority and receive the authorization for use, in both synchronous and asynchronous processing.

  • We added cancellation for Nota Fiscal Eletrônica documents. You can now cancel an authorized NF-e within the legal window of 24 hours, and Compliance Network blocks cancellation attempts that fall outside that window.

Croatia
  • We improved how Compliance Network recovers from duplicate submission responses for outbound documents. The system now retrieves the original submission reference automatically and continues the status check without manual intervention.

France
  • The France mandate went live on September 1, 2026. We updated the France product to align with the mandate. To learn more, read the documentation at About compliance in France.

  • We added routing error handling for inbound invoices sent to an address that Compliance Network no longer manages. The system now returns a rejection document with process condition code 221 (ERREUR_ROUTAGE) to the sending platform, so the platform can consult the directory again and retransmit the invoice to the correct destination instead of the invoice being rejected and reissued.

  • We added support for uploading invoice files of up to 100 MB for e-reporting. You can now send large files without splitting them, and schema validation runs on the file before it is processed.

  • We added a Delete option for unsent amendments. You can now remove an amendment that is available for review and that you no longer need, without affecting records that were already sent.

  • We added a Draft Amendment label to the report board. You can now tell amendments apart from regular reports at a glance.

  • We added the option to remove a report document after the tax authority approves it. You can now start an amendment when a correction is needed.

  • We added a Historical View sub-tab under eReporting. You can now review past report records separately from your active work.

  • We improved the report template options in account setup, which now use radio buttons. You can now assign only one report type per account, which prevents conflicting report configurations.

  • We improved report aggregation so that it applies the workspace defined in the report definition. Your reports now aggregate only the documents that belong to the correct workspace.

  • We improved document validation during aggregation. Documents in a rejected or error status are now excluded from consolidated reports.

  • We improved supplier and buyer identification in the trade message details. Compliance Network now uses French company registration identifiers from the seller and buyer legal information. It uses optional identifiers only when the legal identifiers are not available, helping you identify the parties consistently when you review a document.

  • We added an operation that removes all endpoints registered for a company, in both the Peppol directory and the French central directory. You can now release a company's registrations in a single operation when the company moves to another platform.

  • We added reception of inbound documents from Chorus Pro through the existing trade connector. Compliance Network now checks the central directory for the recipient, so status messages for public entities are routed to Chorus Pro.

  • We improved how a directory line is created in the French central directory when you register an endpoint. Previously, a registration could fail when a line was already active for the same platform. Compliance Network now closes an earlier line and opens the new one when the dates allow it, keeps the registration you already have when the dates and the registration number match, and explains which date overlaps a later line when it cannot continue, so you can complete the registration or correct the dates yourself.

Malaysia
  • We improved how Compliance Network renews tax authority tokens for high-volume processing. Token renewals are now shared across parallel jobs, so your submissions are no longer rejected because of tax authority rate limits.

Mexico
  • We added support for forced namespace declarations on the Addenda node. You can now use the transmission scope to declare namespaces explicitly on the Addenda node, so your invoices pass the schema validation of trading partners that require them.

Poland
  • We added batch processing for invoices issued in offline mode. You can now send offline-mode invoices in a batch, with schema validation applied before transmission, rendering, and distribution.

  • We added the Invoice Date, Date of Supply, and KSeF Date columns to the document list for inbound documents. You can now identify the key fiscal dates of an invoice without opening it, which speeds up reconciliation and audit reviews.

Bug fixes

API
  • We fixed a problem that caused requests with Brotli (br) in the Accept-Encoding header to return an HTTP 500 error. You can now use clients that add this encoding automatically without changing the request header.

Document management
  • We fixed a problem that was causing the detail view of an outbound document to display as a blank page. Previously, the page gave no indication of what had gone wrong when the document could not be retrieved. You can now open the detail view of an outbound document as expected, and when a document cannot be retrieved, a clear message displays instead of an empty page.

  • We fixed a problem that was causing the sent documents list to render blank when a document carried a currency code outside the supported code list. The list now displays your documents, and an unsupported currency code no longer stops the page from rendering.

  • We fixed a problem that was causing the document details page to render blank when the document could not be retrieved. The page now displays an error message instead of a blank screen.

  • We fixed a problem that was causing lifecycle archiving to fail with an unexpected error. Lifecycles are now archived as expected.

  • We fixed a problem that was delivering a Portable Document Format (PDF) attachment as a link when your notification settings request the content in the response. Attachments now follow the setting configured for the notification, so your system receives the file without another request.

Document processing
  • We fixed a problem that was causing the document type code to be lost in the UBL EXTENDED mapping when an invoice line had no order reference. The document type code is now preserved.

  • We fixed a problem that was causing the generated PDF to repeat the document date, document number, profile, and document type values that already display in the document header. The PDF no longer shows these values a second time, so it is easier to read.

Notifications
  • We fixed a problem that was causing the failure notification for an outbound document to be skipped when Compliance Network could not determine the product of the sender. You now receive this notification for every outbound document that fails during document creation, so a submitted invoice no longer stays in an unclear state.

  • We fixed a problem that was causing the correlation identifier of a notification to differ from the identifier of the transaction that produced it. Every notification for a transaction now carries the same correlation identifier, so you can match a notification to the document that you submitted.

System administration
  • We fixed a problem that was causing translation file uploads to load indefinitely for system and workspace translations. You can now upload translation files successfully.

  • We fixed a problem that was causing the log out action in System Administration to fail with an error. You can now end your session from System Administration.

  • We fixed a problem that was causing audit entries to be missing when you added an existing user to an organization. Compliance Network now records an audit entry with the correct timestamp, so the organization history stays complete.

  • We fixed a problem that was causing the add product window to keep the values of the previous submission when you added a second product to a company. The window now opens empty every time.

  • We fixed a problem that was causing an organization created in the portal to be missing from the rest of the platform without any indication. Organization synchronization is now recorded and traceable, reducing the risk of missing organization data.

  • We fixed a problem that was causing an event to be reported as distributed before the delivery service confirmed it. Events are now recorded as distributed only after confirmation, reducing silent synchronization failures for data that you create in the portal.

  • We fixed a problem that was causing the upload of a globalization file in comma-separated values (CSV) format to fail with an invalid field error. You can now upload translation files in this format.

User management
  • We fixed a problem that was causing the Resend Invitation action to fail for portal admin users. You can now resend an invitation from the user detail page and receive a confirmation.

Brazil
  • We fixed a problem with Bilhete de Passagem Eletrônico documents issued during offline contingency. When a document key is recalculated, the document metadata now matches the value recorded by the tax authority.

  • We fixed a problem that was causing tax events to be sent for cancelled Nota Fiscal Eletrônica documents. Cancellation and event actions are no longer available for a cancelled document.

  • We fixed a problem that was causing Bilhete de Passagem Eletrônico documents to end in an error status after automatic offline contingency processing. Documents that the tax authority cannot receive are now issued in offline contingency as expected.

  • We fixed a problem that was causing an untranslated label to appear in the actions menu of the issued document list. The cancellation action now shows a readable label.

Ecuador
  • We fixed a problem that was causing documents to be rejected when the access key was already registered with the tax authority. The system now checks the document status automatically and resolves the submission.

  • We fixed a problem that was causing connection and certificate errors when documents were sent to the tax authority. The system now retries the submission automatically.

France
  • We fixed a problem that was causing valid Factur-X invoices to be rejected by a French item attribute validation rule when an item attribute contained a value without a unit. These invoices are now accepted.

  • We fixed a problem that was causing a mismatch between the document identifier of an invoice and the identifier of the incoming Certificate of Document Acceptance or Rejection (CDAR) when the seller declared only a company registration number. Compliance Network now includes the company registration number when it resolves the French seller tax identification, so CDAR responses are matched to the correct invoice.

  • We fixed a problem that was causing the legal archiving step to be missing for the Validated by sender platform (200 Déposée) lifecycle event. Compliance Network now archives this event, so every required lifecycle status of a French transaction is available for legal archiving.

  • We fixed a problem that was causing the ERP document identifier to be missing from outbound notifications when a document reached the Made available status. Every notification now includes the ERP document identifier, so you can match each notification to the originating ERP document.

  • We fixed a problem that was causing documents in the Validated by sender platform (200 — Déposée) lifecycle status to be left out of legal archiving. Documents in that status are now archived legally, in line with the French archiving obligations.

  • We fixed a problem that was causing documents to fail when the transmission extension timed out. Timed-out documents are now treated as an infrastructure error and retried, so they are no longer left in an error status.

  • We fixed a problem that was causing the routing error lifecycle response to name the seller as the recipient and to carry an incorrect reason code. The response now names the issuing platform as the recipient and carries the routing error reason code required by the French mandate.

  • We fixed a problem that was causing the French mandate status Visée to be recorded as accepted by the tax authority. Compliance Network now records this status as endorsed.

  • We fixed a problem that was causing document signing to fail when the buyer had no value added tax (VAT) number. Compliance Network now derives the buyer country from the French company registration number, so these invoices are signed and processed.

  • We fixed a problem that was causing a document to be missing after the API accepted the submission. Compliance Network now completes document creation when processing takes longer than expected, so an accepted submission results in a document.

  • We fixed a problem that was causing the VAT category code and the VAT amount of each invoice line to be missing from the generated PDF. Both values now display in the PDF and in the document viewer.

  • We fixed a problem that was causing the response date and time of a lifecycle response to carry a default value instead of the time of the event. These responses now carry the time of the event that produced them, so you can order notifications correctly.

  • We fixed a problem that was causing the registration details of a company to be lost when a Peppol registration or update failed. Previously, the recovery step cleared the existing values instead of restoring them, so a directory line could stay closed or a company could be left partly configured. Compliance Network now restores the previous values for every registration step, so a failed registration leaves your configuration as it was and the company stays reachable.

  • We fixed a problem that was causing a buyer refusal returned by the buyer's platform to be missing from the invoice lifecycle. The refusal now displays in the lifecycle, so you can see that the buyer refused an invoice and act on it.

  • We fixed a problem that was causing an invoice to be rejected when a line price discount carried both a reason code and a reason text. Invoices that carry both values now pass validation.

  • We fixed a problem that was causing credit notes to be accepted for sending but never delivered to the recipient. Credit notes now carry the correct document type and subtype, so the recipient receives them.

  • We fixed a problem that was causing documents to be rejected as not sent when the seller and the buyer both use Sovos as their accredited platform. Previously, Compliance Network did not recognize that the buyer had an active platform, so none of these documents reached the recipient. These documents are now routed inside the network and delivered to the recipient.

  • We fixed a problem that was causing an invoice with an exempt VAT category to be rejected by the tax authority. Previously, the tax percentage was left empty for an exempt category, which the tax authority rejected. Compliance Network now sends a tax percentage of zero for these lines, so the invoice is accepted.

  • We fixed a problem that was causing an invoice to be rejected with a fatal validation error when it carried more than one supporting document reference with a scheme identifier. Previously, Compliance Network marked every one of these references as the invoiced object identifier, and an invoice can carry only one. A reference is now marked as the invoiced object identifier only when the invoice carries exactly one candidate. When the invoice carries more than one, all of them are sent as plain supporting references, so the invoice passes validation.

  • We fixed a problem that was causing a rejected invoice to be blocked as a duplicate when you resubmitted it with the same document number. Previously, an invoice that was rejected before it reached the buyer still counted for duplicate control, and the only way forward was a credit note for an invoice that the buyer never received. Compliance Network now stops processing when signing fails, and counts an invoice for duplicate control only when the buyer received it, so you can correct and resend an invoice with the same document number.

  • We fixed a problem that was causing an invoice to be rejected with a signing error when a party was identified by a French company registration number instead of a value added tax (VAT) number. Previously, Compliance Network read the first two digits of that registration as a country code, so the party country was wrong and no signing policy matched. Compliance Network now keeps the registration whole with France as the country, and uses the VAT registration when a party sends both, so these invoices are signed and delivered.

  • We fixed a problem that was causing documents of some document types to be sent successfully and then stop before the recipient received them. Previously, the trade connector and the response mapper did not apply the document type conversions, so these documents carried a type that the receiving side could not process. The conversions now apply in both places, so documents of these types reach the recipient.

  • We fixed a problem that was causing a party identifier sent without a scheme identifier to be dropped without a message when you submit an invoice in the Sovos integration format. Previously, the identifier was missing from the processed invoice and nothing explained why. Compliance Network now handles this identifier the same way as in Universal Business Language (UBL) invoices, so the identifier is no longer lost silently.

  • We fixed a problem that was causing the reprocessing of outbound documents to fail with a conflict error. Previously, when you reprocessed the transmission of a document that had already been registered, Compliance Network reported the document as a duplicate and the transmission stayed blocked, so the document was never resubmitted to the tax authority. You can now reprocess these documents, and the transmission is sent to the tax authority as expected.

  • We fixed a problem that was causing credit notes to be rejected when the credit note type code was sent in the invoice type code field. Previously, the clearance validation rule blocked these documents, even though the invoice definition accepts credit note type codes. You can now submit credit notes that carry a credit note type code in the invoice type code field, so credit notes issued from your Enterprise Resource Planning (ERP) system are accepted without reissuing them in another structure.

  • We fixed a problem that was causing the buyer to be identified with the tax country and tax identification number instead of the registered endpoint when the buyer issues the invoice in a self-billing flow. Previously, the endpoint lookup was skipped, so the buyer could be resolved to the wrong party. Compliance Network now looks up the registered endpoint first and uses the tax country and tax identification number only when no endpoint matches, so self-billed documents are routed to the party you registered.

Poland
  • We fixed a problem that was causing the start date of a manual reconciliation to be removed. You can now run a manual reconciliation for the period you select and recover the documents for that period.

Regulatory updates

Brazil
  • We updated the validation of Nota Fiscal de Comunicação documents to apply rule 310, which the tax authority activated. Documents that are missing required data are now stopped before submission, and the missing data is reported to you.

France
  • We updated the internal invoice format with new fields and revised cardinalities, so your documents meet the July 2026 AFNOR specifications.

  • We updated the internal code lists with the latest UNTDID 4053 and Incoterms values, so you can send documents that use the current code values.

  • We added mapping for the new French EXTENDED elements that carry reference document dates at header and line level, so these dates reach the tax authority instead of being dropped.

  • We updated the French validation chain with the FNFE schematron package version 1.4.0, published June 30, 2026, so your documents are validated against the current French rules before they are sent.

  • We added profile detection to the Sovos canonical invoice mapper. The mapper reads the customization identifier from the incoming document and applies standard or extended mapping behavior accordingly, so you can send both profiles without extra configuration.

  • We added profile detection to the French UBL mapper. The mapper applies standard or extended mapping behavior based on the customization identifier in the incoming document, so one mapper handles both profiles.

  • We updated the response message for the Déposée (200) status to include the NON_TRANSMISE reason code, so your lifecycle responses meet the French mandate requirements.

  • We added mapping for the exchange rate used when the VAT accounting currency differs from the invoice currency. We also added mapping for reason codes that identify non-VAT taxes at the document and line levels. These values now remain in the transformed invoice, helping you meet the French core set requirements.

  • We added mapping for the line-level delivery terms code and delivery location name. You can now include delivery conditions for each invoice line as required by the extended French invoice format.

  • We added mapping for the unit price discount reason and reason code at the line level. You can now include the required discount details in extended French invoices.

  • We added the start-up schematron of the French public portal to document checks. Compliance Network now checks submissions against the public portal's baseline rules before sending them, reducing tax authority rejections.

  • We updated how Compliance Network selects the schematron for French invoices in Universal Business Language (UBL) format. Compliance Network now uses the profile stated on the document to select the standard or extended schematron, so extended invoices are checked against the correct rules.

  • We added opt-in authorization checks for French inbound e-invoicing endpoint registration. When you create an endpoint in Compliance Network or with the API, Compliance Network now confirms that the electronic address is covered by a signed opt-in form before registering it. Unauthorized addresses are rejected before any registration, helping you meet French mandate requirements.

  • We updated the e-reporting validation pipeline to apply the PPF Schematron for Flow 10, published by the tax authority. Your e-reporting submissions are now checked against the business rules of the tax authority before they are sent.

  • We updated the e-reporting consolidation pipeline to apply the FNFE 1.4.0 schematron validation to source documents. Documents in the UBL, CII, and CDAR formats are now validated against the current specification before they are consolidated into a report.

  • We added an opt-in authorization check before an electronic address is registered. Compliance Network now confirms that the company authorized the registration of the address before it registers the address in the French central directory, whether you create the endpoint in the portal or with the API.

  • We updated document validation to check the original document that you submit and to select the rule set from the profile stated in the document. Factur-X 1.09 invoices are now checked against the rules of the profile that they declare, so an extended invoice is no longer checked against standard rules.

  • We added the identifier of the sending platform to the directory lookup and to the mapped document data. Routing error and undeliverable status messages now carry the identifier that the French mandate requires.

  • We added business rule G6.25 to the outbound invoice validation for France. An invoice that carries an invoice period is now rejected when the end date is earlier than or equal to the start date, so you can correct the period before the invoice is sent and your French invoices stay compliant with the mandate validation requirements. The rule is only evaluated when both dates are present, so invoices without an invoice period are unaffected.

Slovakia
  • We added Slovakia routing to the Indirect Tax API for inbound and outbound invoice documents. You can now use the country code sk to route these documents to Compliance Network.