Country-specific e-invoicing requirements
Each clearance country supported by TrustWeaver has specific document formats, signature formats, and branch registration requirements that apply when using the corroborate operation.
All clearance flows use the corroborate operation on the storage service. Before submitting documents for any clearance country, confirm that you've met the general prerequisites in Clear documents.
In addition to the country-specific constraints, the following restrictions apply to all clearance corroborate calls:
-
CorroborationSpec/SigningFormust not beReceiver. Signing can only be performed on behalf of the supplier. -
CorroborationSpec/ValidatingFormust not beSender. Validation can only be performed on behalf of the buyer. -
Combined signing and validation in a single call is not supported for clearance formats. The invoice can only be processed for one party at a time.
-
The
CorroborationPartyInfofor the party being processed (SenderInfowhen signing,ReceiverInfowhen validating) must identify a registered branch.Name,CountryCode, andTaxIdmust all be provided for this party. -
The
CountryCodeof bothSenderInfoandReceiverInfomust match the country implied by the clearance signature format.
Mexico
Mexico uses the Comprobante Fiscal Digital por Internet (CFDI) format for e-invoicing. TrustWeaver supports CFDI versions 3.2 and 3.3. Clearance is handled through the corroborate operation, which signs the document and submits it to the Servicio de Administración Tributaria (SAT) for approval. The invoice is not legally valid until SAT returns authorization.
| Operation | Document format | Signature format (AuditCategory) |
|---|---|---|
| Sign (clearance) | MXCFDI | MXCFDIT (no applicable audit category) |
The Mexican CFDI XML signature format is proprietary and not based on XMLDSIG. It has no applicable signature audit category.
Before signing Mexican CFDI documents, register a branch for the supplier using RegisterBranch with CountryCode set to MX and TaxId set to the supplier's Registro Federal de Contribuyentes (RFC). Individual signing keys belonging to the supplier must be stored in the section and associated with the branch using CryptoKeyReference in BranchInfo. Set UseBranchKey to true in CorroborationSpec to select the key by branch identity during the corroborate call.
TrustWeaver supports a range of Mexican CFDI complementos and complementos conceptos alongside the base CFDI format. For the complete list of supported complementos and their versions, contact Sovos Support.
India
India operates under a clearance-based e-invoicing regime for taxpayers subject to the Goods and Services Tax (GST) mandate. TrustWeaver supports both validation of Invoice Registration Portal (IRP)-signed JSON invoices and signing of PDF e-invoices for domestic and cross-border scenarios. These are distinct operations with different document and signature formats.
For taxpayers subject to the GST clearance regime, the IRP applies a JSON Web Signature (JWS) to the JSON invoice during the clearance process. TrustWeaver supports validation of this IRP-applied JWS. Set the following parameters in a corroborate call in validate mode:
- Document.DocumentFormat
-
Use
INIDJSON. - Document.ExplicitAuditDataInfo.SignatureFormat
-
Use
INJWS. - Document.ExplicitAuditDataInfo.AuditCategory
-
Use
NotSpecified. - SenderInfo.CountryCode
-
Use
IN. - ReceiverInfo.CountryCode
-
Use
IN.
The signed JSON returned by the IRP (not the unsigned invoice data) is the input to this validation call. The signed JSON proves successful IRP clearance and is the primary document that you must archive.
For domestic Indian invoices that require a digitally signed PDF, set the following parameters in a corroborate call in sign mode: The recommended signature format is PDF with CADESEPES, as PDF/CAdES-EPES signatures can be validated with standard PDF viewers including Adobe Reader:
- Document.DocumentFormat
-
Use
PDF. - CorroborationSpec.ImplicitSignatureSpec.SignatureFormat
-
Use
PDF. - CorroborationSpec.ImplicitSignatureSpec.AuditCategory
-
Use
CADESEPES. - SenderInfo.CountryCode
-
Use
IN. - ReceiverInfo.CountryCode
-
Use
IN.
The recommended signature format is PDF with CADESEPES, as PDF and CAdES-EPES signatures can be validated with standard PDF viewers, including Adobe Acrobat Reader.
For import invoices (foreign supplier, Indian buyer), use PAdES-LTV to guarantee long-term validation. Import invoices aren't subject to the same domestic limitations. Set the following parameters:
- Document.DocumentFormat
-
Use
PDF. - CorroborationSpec.ImplicitSignatureSpec.SignatureFormat
-
Use
PDF. - CorroborationSpec.ImplicitSignatureSpec.AuditCategory
-
Use
PADESLTV. - SenderInfo.CountryCode
-
Use the sending country's two-letter code.
- ReceiverInfo.CountryCode
-
Use
IN.
TrustWeaver also supports the following Indian document formats for clearance-related operations:
- INCDJSON
-
Indian Cancellation Document JSON. Signature format:
INCCDJSON. - INEDJSON
-
Indian e-Waybill Issuance Document JSON.
- INECDJSON
-
Indian e-Waybill Cancellation Document JSON. Signature format:
INECJSON.
India requires a registered branch per Goods and Services Tax Identification Number (GSTIN). Set CountryCode to IN and TaxId to the company's Goods and Services Tax Identification Number (GSTIN). The BranchInfo.BackendCredential.UsernameTokenCredential element must be set to the GST portal credentials: The UserName and Password issued upon GST portal registration. These credentials are required for TrustWeaver to authenticate to the IRP on behalf of the company. BrFormatProfile must be omitted for India.
Italy
Italy requires clearance for B2B and B2C e-invoices through the Sistema di Interscambio (SDI), the Italian tax authority's clearance platform. B2G invoicing uses a separate, non-clearance flow. TrustWeaver supports both scenarios with different document and signature format combinations.
TrustWeaver uses canonical XML version 1.1 for all e-invoices signed for Italian suppliers or validated for Italian buyers. This is configured automatically when SenderInfo.CountryCode or ReceiverInfo.CountryCode is set to IT. If canonical XML version 1.0 is required for interoperability reasons, contact Sovos Support to request a Custom Compliance Configuration (CCC).
TrustWeaver doesn't add a signature policy identifier when the sender or receiver country code is IT. Italian regulations prohibit XML signatures from including signing policies. This behavior applies automatically to all CAdES, XAdES, and PAdES signatures produced for Italian parties.
Detached CMS signatures (PKCS7D) are deprecated in Italy. Detached XML signatures are permitted.
To validate a FatturaPA/XAdES-EPES signature in a B2B flow, invoke corroborate in validate mode using one of the following approaches:
-
Set
CreateAuditDetailstotrueto receive a validation report. -
Set
CorroborationSpec.ImplicitSignatureSpec.AuditCategorytoXADESAto receive a FatturaPA/XAdES-A signature with long-term validation data.
Set CountryCode to IT and TaxId to the Italian tax identifier (Codice Fiscale or Partita IVA) of the invoicing party. Register a branch before submitting B2B or B2C clearance invoices.
CountryOfEstablishment is set to IT in RegisterSection, all Italian e-invoices for that entity must be stored in the same section. TrustWeaver runs the Italian preservation process automatically for invoices stored under the IT country code, and the process requires all invoices for the entity to be in the same section.
South Korea
TrustWeaver supports South Korean invoice documents through the KRREGNTSD document format. South Korean clearance requires a private key belonging to the invoicing party, stored as part of the branch registration.
| Operation | Document format | Signature format |
|---|---|---|
| Sign | KRREGNTSD |
KRREGNTS |
South Korea requires the KrProfile element in RegisterBranch. Set CountryCode to KR. KrProfile contains a KrPrivateKeyContainer with two required sub-elements:
- KeyData
-
The Base64-encoded private key in binary format. Maximum size: 100,000 bytes.
- KeyPwd
-
The password used to decrypt the private key. Length: 1-250 characters.
You must omit KrProfile from countries other than South Korea.
Turkey
Turkey uses the Turkish UBL format (UBL-TR) for e-invoicing. TrustWeaver supports both standard Turkish UBL invoices and the e-Arsiv variant, which applies to certain taxpayer categories. Clearance is handled through the corroborate operation.
| Use case | Document format | Signature format |
|---|---|---|
| e-Fatura (standard invoice) | UBLTR | Turkish UBL Signature (UBLTRP) |
| e-Arsiv | UBLTRA | Turkish UBL Signature (UBLTRP) |
The Turkish UBL Signature is an enveloped XML signature (UBL-TR) based on XMLDSIG.
Set CountryCode to TR and TaxId to the company's Turkish tax identification number. When creating a new Turkish branch , the AuthorizationToken element is required. You must omit AuthorizationToken when updating an existing branch. Maximum length: 32 characters.
