e-invoice

  • Posts: 85392
  • Thank you received: 13956
  • MODERATOR
1 year 2 months ago #365195

Hi,

Thank you for your feedback on this.
I've made a patch for this and released a new version of the plugin:
www.hikashop.com/marketplace/product/18-plugin-pdf.html
Update the plugin and you'll get the patch.

Please Log in or Create an account to join the conversation.

  • Posts: 74
  • Thank you received: 8
  • Hikashop Business
1 year 2 months ago #365196

Works.

The following user(s) said Thank You: nicolas

Please Log in or Create an account to join the conversation.

  • Posts: 105
  • Thank you received: 8
1 year 1 month ago #365629

Hi!

I'm from Germany and have to use e-invoice too. Could anyone provide a sample of a complete set of files (pdf + ubl), please? I would test it (open it on an invoice software to check the function).

Cheers

Please Log in or Create an account to join the conversation.

  • Posts: 85392
  • Thank you received: 13956
  • MODERATOR
1 year 1 month ago #365631

Hi,

You can purchase the plugin directly here:
www.hikashop.com/marketplace/product/18-plugin-pdf.html
That way, you can generate the files with your own information.
And if there is an issue, you can provide feedback and we can modify the plugin if necessary.

Please Log in or Create an account to join the conversation.

  • Posts: 105
  • Thank you received: 8
1 year 1 month ago #365638

nicolas wrote: And if there is an issue, you can provide feedback and we can modify the plugin if necessary.

Okay, I'll take your word for it! B)

The following user(s) said Thank You: nicolas

Please Log in or Create an account to join the conversation.

  • Posts: 19
  • Thank you received: 4
  • Hikashop Business
1 month 2 days ago #370631

I tested the xml file on test.peppolautoriteit.nl/validate and this is the error it comes with:

Document validated as: Peppol BIS 3 UBL Invoice
2 errors
error [BR-37]-Each Document level charge (BG-21) shall have a Document level charge VAT category code (BT-102).
location /ubl:Invoice[1]/cac:AllowanceCharge[1]
test exists(cac:TaxCategory[cac:TaxScheme/normalize-space(upper-case(cbc:ID))='VAT']/cbc:ID)
error [BR-S-08]-For each different value of VAT category rate (BT-119) where the VAT category code (BT-118) is "Standard rated", the VAT category taxable amount (BT-116) in a VAT breakdown (BG-23) shall equal the sum of Invoice line net amounts (BT-131) plus the sum of document level charge amounts (BT-99) minus the sum of document level allowance amounts (BT-92) where the VAT category code (BT-151, BT-102, BT-95) is "Standard rated" and the VAT rate (BT-152, BT-103, BT-96) equals the VAT category rate (BT-119).
location /ubl:Invoice[1]/cac:TaxTotal[1]/cac:TaxSubtotal[1]/cac:TaxCategory[1]
test every $rate in xs:decimal(cbc:Percent) satisfies (((exists(//cac:InvoiceLine[cac:Item/cac:ClassifiedTaxCategory/normalize-space(cbc:ID) = 'S'][cac:Item/cac:ClassifiedTaxCategory/xs:decimal(cbc:Percent) =$rate]) or exists(//cac:AllowanceCharge[cac:TaxCategory/normalize-space(cbc:ID)='S'][cac:TaxCategory/xs:decimal(cbc:Percent) = $rate])) and ((../xs:decimal(cbc:TaxableAmount - 1) < (sum(../../../cac:InvoiceLine[cac:Item/cac:ClassifiedTaxCategory/normalize-space(cbc:ID)='S'][cac:Item/cac:ClassifiedTaxCategory/xs:decimal(cbc:Percent) =$rate]/xs:decimal(cbc:LineExtensionAmount)) + sum(../../../cac:AllowanceCharge[cbc:ChargeIndicator=true()][cac:TaxCategory/normalize-space(cbc:ID)='S'][cac:TaxCategory/xs:decimal(cbc:Percent) = $rate]/xs:decimal(cbc:Amount)) - sum(../../../cac:AllowanceCharge[cbc:ChargeIndicator=false()][cac:TaxCategory/normalize-space(cbc:ID)='S'][cac:TaxCategory/xs:decimal(cbc:Percent) = $rate]/xs:decimal(cbc:Amount)))) and (../xs:decimal(cbc:TaxableAmount + 1) > (sum(../../../cac:InvoiceLine[cac:Item/cac:ClassifiedTaxCategory/normalize-space(cbc:ID)='S'][cac:Item/cac:ClassifiedTaxCategory/xs:decimal(cbc:Percent) =$rate]/xs:decimal(cbc:LineExtensionAmount)) + sum(../../../cac:AllowanceCharge[cbc:ChargeIndicator=true()][cac:TaxCategory/normalize-space(cbc:ID)='S'][cac:TaxCategory/xs:decimal(cbc:Percent) = $rate]/xs:decimal(cbc:Amount)) - sum(../../../cac:AllowanceCharge[cbc:ChargeIndicator=false()][cac:TaxCategory/normalize-space(cbc:ID)='S'][cac:TaxCategory/xs:decimal(cbc:Percent) = $rate]/xs:decimal(cbc:Amount)))))) or (exists(//cac:CreditNoteLine[cac:Item/cac:ClassifiedTaxCategory/normalize-space(cbc:ID) = 'S'][cac:Item/cac:ClassifiedTaxCategory/xs:decimal(cbc:Percent) =$rate]) or exists(//cac:AllowanceCharge[cac:TaxCategory/normalize-space(cbc:ID)='S'][cac:TaxCategory/xs:decimal(cbc:Percent) = $rate])) and ((../xs:decimal(cbc:TaxableAmount - 1) < (sum(../../../cac:CreditNoteLine[cac:Item/cac:ClassifiedTaxCategory/normalize-space(cbc:ID)='S'][cac:Item/cac:ClassifiedTaxCategory/xs:decimal(cbc:Percent) =$rate]/xs:decimal(cbc:LineExtensionAmount)) + sum(../../../cac:AllowanceCharge[cbc:ChargeIndicator=true()][cac:TaxCategory/normalize-space(cbc:ID)='S'][cac:TaxCategory/xs:decimal(cbc:Percent) = $rate]/xs:decimal(cbc:Amount)) - sum(../../../cac:AllowanceCharge[cbc:ChargeIndicator=false()][cac:TaxCategory/normalize-space(cbc:ID)='S'][cac:TaxCategory/xs:decimal(cbc:Percent) = $rate]/xs:decimal(cbc:Amount)))) and (../xs:decimal(cbc:TaxableAmount + 1) > (sum(../../../cac:CreditNoteLine[cac:Item/cac:ClassifiedTaxCategory/normalize-space(cbc:ID)='S'][cac:Item/cac:ClassifiedTaxCategory/xs:decimal(cbc:Percent) =$rate]/xs:decimal(cbc:LineExtensionAmount)) + sum(../../../cac:AllowanceCharge[cbc:ChargeIndicator=true()][cac:TaxCategory/normalize-space(cbc:ID)='S'][cac:TaxCategory/xs:decimal(cbc:Percent) = $rate]/xs:decimal(cbc:Amount)) - sum(../../../cac:AllowanceCharge[cbc:ChargeIndicator=false()][cac:TaxCategory/normalize-space(cbc:ID)='S'][cac:TaxCategory/xs:decimal(cbc:Percent) = $rate]/xs:decimal(cbc:Amount))))))

This is the peppol xml:

<?xml version="1.0"?>
<Invoice xmlns="urn:oasis:names:specification:ubl:schema:xsd:Invoice-2" xmlns:cbc="urn:oasis:names:specification:ubl:schema:xsd:CommonBasicComponents-2" xmlns:cac="urn:oasis:names:specification:ubl:schema:xsd:CommonAggregateComponents-2">
 <cbc:UBLVersionID>2.1</cbc:UBLVersionID>
 <cbc:CustomizationID>urn:cen.eu:en16931:2017#compliant#urn:fdc:peppol.eu:2017:poacc:billing:3.0</cbc:CustomizationID>
 <cbc:ProfileID>urn:fdc:peppol.eu:2017:poacc:billing:01:1.0</cbc:ProfileID>
 <cbc:ID>C1A0R73</cbc:ID>
 <cbc:IssueDate>2026-02-28</cbc:IssueDate>
 <cbc:InvoiceTypeCode>380</cbc:InvoiceTypeCode>
 <cbc:DocumentCurrencyCode>EUR</cbc:DocumentCurrencyCode>
 <cac:OrderReference>
  <cbc:ID>NA</cbc:ID>
  <cbc:SalesOrderID>C1D1W46</cbc:SalesOrderID>
 </cac:OrderReference>
 <cac:AccountingSupplierParty>
  <cac:Party>
   <cbc:EndpointID schemeID="9944">NL182610202B02</cbc:EndpointID>
   <cac:PartyName>
    <cbc:Name>Bloem en Oogst</cbc:Name>
   </cac:PartyName>
   <cac:PostalAddress>
    <cbc:StreetName>3 van Zijlweg</cbc:StreetName>
    <cbc:CityName>Wapserveen</cbc:CityName>
    <cbc:PostalZone>8351HW</cbc:PostalZone>
    <cac:Country>
     <cbc:IdentificationCode>NL</cbc:IdentificationCode>
    </cac:Country>
   </cac:PostalAddress>
   <cac:PartyTaxScheme>
    <cbc:CompanyID>NL182610202B02</cbc:CompanyID>
    <cac:TaxScheme>
     <cbc:ID>VAT</cbc:ID>
    </cac:TaxScheme>
   </cac:PartyTaxScheme>
   <cac:PartyLegalEntity>
    <cbc:RegistrationName>Bloem en Oogst</cbc:RegistrationName>
    <cbc:CompanyID schemeID="0106">NL182610202B02</cbc:CompanyID>
   </cac:PartyLegalEntity>
   <cac:Contact>
    <cbc:Name>Eline Houtkamp</cbc:Name>
    <cbc:Telephone>+31624897106</cbc:Telephone>
    <cbc:ElectronicMail>verkoop@bloemenoogst.nl</cbc:ElectronicMail>
   </cac:Contact>
  </cac:Party>
 </cac:AccountingSupplierParty>
 <cac:AccountingCustomerParty>
  <cac:Party>
   <cbc:EndpointID schemeID="9944">123123182</cbc:EndpointID>
   <cac:PartyName>
    <cbc:Name>GossiePozzie</cbc:Name>
   </cac:PartyName>
   <cac:PostalAddress>
    <cbc:StreetName>van Zijlweg</cbc:StreetName>
    <cbc:AdditionalStreetName>3</cbc:AdditionalStreetName>
    <cbc:CityName>Wapserveen</cbc:CityName>
    <cbc:PostalZone>8351 HW</cbc:PostalZone>
    <cac:Country>
     <cbc:IdentificationCode>NL</cbc:IdentificationCode>
    </cac:Country>
   </cac:PostalAddress>
   <cac:PartyLegalEntity>
    <cbc:RegistrationName>GossiePozzie</cbc:RegistrationName>
   </cac:PartyLegalEntity>
   <cac:Contact>
    <cbc:Name>Gossen Rijkeboer</cbc:Name>
    <cbc:Telephone>+31626660482</cbc:Telephone>
    <cbc:ElectronicMail>info@gozz.nl</cbc:ElectronicMail>
   </cac:Contact>
  </cac:Party>
 </cac:AccountingCustomerParty>
 <cac:AllowanceCharge>
  <cbc:ChargeIndicator>true</cbc:ChargeIndicator>
  <cbc:AllowanceChargeReason>Verzending</cbc:AllowanceChargeReason>
  <cbc:Amount currencyID="EUR">4.4</cbc:Amount>
 </cac:AllowanceCharge>
 <cac:TaxTotal>
  <cbc:TaxAmount currencyID="EUR">0.63</cbc:TaxAmount>
  <cac:TaxSubtotal>
   <cbc:TaxableAmount currencyID="EUR">7.42</cbc:TaxableAmount>
   <cbc:TaxAmount currencyID="EUR">0.63</cbc:TaxAmount>
   <cac:TaxCategory>
    <cbc:ID>S</cbc:ID>
    <cbc:Percent>21.00</cbc:Percent>
    <cac:TaxScheme>
     <cbc:ID>VAT</cbc:ID>
    </cac:TaxScheme>
   </cac:TaxCategory>
  </cac:TaxSubtotal>
 </cac:TaxTotal>
 <cac:LegalMonetaryTotal>
  <cbc:LineExtensionAmount currencyID="EUR">3.02</cbc:LineExtensionAmount>
  <cbc:TaxExclusiveAmount currencyID="EUR">7.42</cbc:TaxExclusiveAmount>
  <cbc:TaxInclusiveAmount currencyID="EUR">8.05</cbc:TaxInclusiveAmount>
  <cbc:AllowanceTotalAmount currencyID="EUR">0.00</cbc:AllowanceTotalAmount>
  <cbc:ChargeTotalAmount currencyID="EUR">4.40</cbc:ChargeTotalAmount>
  <cbc:PrepaidAmount currencyID="EUR">8.05</cbc:PrepaidAmount>
  <cbc:PayableAmount currencyID="EUR">0.00</cbc:PayableAmount>
 </cac:LegalMonetaryTotal>
 <cac:InvoiceLine>
  <cbc:ID>0</cbc:ID>
  <cbc:InvoicedQuantity unitCode="C62">1.00</cbc:InvoicedQuantity>
  <cbc:LineExtensionAmount currencyID="EUR">3.02</cbc:LineExtensionAmount>
  <cac:Item>
   <cbc:Name>ACHILLEA MILLEFOLIUM – DUIZENDBLAD - ‘Summer Pastels mix’</cbc:Name>
   <cac:ClassifiedTaxCategory>
    <cbc:ID>S</cbc:ID>
    <cbc:Percent>21.00</cbc:Percent>
    <cac:TaxScheme>
     <cbc:ID>VAT</cbc:ID>
    </cac:TaxScheme>
   </cac:ClassifiedTaxCategory>
  </cac:Item>
  <cac:Price>
   <cbc:PriceAmount currencyID="EUR">3.02</cbc:PriceAmount>
   <cbc:BaseQuantity unitCode="C62">1.00</cbc:BaseQuantity>
  </cac:Price>
 </cac:InvoiceLine>
</Invoice>
Am I doing something wrong? I must say this is very complicated to figure out. Not any grudges to you Nicolas, I so glad you intergrated this is Hikashop with the PDF plugin.

Do you have any pointers for me?

Thanks in advance,

Gossen Rijkeboer

Last edit: 1 month 2 days ago by nicolas.

Please Log in or Create an account to join the conversation.

  • Posts: 85392
  • Thank you received: 13956
  • MODERATOR
1 month 1 day ago #370634

Hi,

From what I can see, the errors reported have been fixed in a previous release of the PDF invoice. Are you using version 3.2.0 of the plugin ?
www.hikashop.com/marketplace/product/18-plugin-pdf.html

Please Log in or Create an account to join the conversation.

  • Posts: 19
  • Thank you received: 4
  • Hikashop Business
1 month 1 day ago #370637

Yes, i am using 3.2.0.

Please Log in or Create an account to join the conversation.

  • Posts: 85392
  • Thank you received: 13956
  • MODERATOR
1 month 1 day ago #370639

Hi,

Ok, I've looked deeper into it and I think I've found the problems. I've made patches and a new version of the plugin to include them.
Please update to the 3.2.1 of the plugin and it should work better.

Please Log in or Create an account to join the conversation.

  • Posts: 19
  • Thank you received: 4
  • Hikashop Business
1 month 11 hours ago #370649

Hi Nicolas,

thank you for your quick response, but helas, no go. See error below:

Document validated as: Peppol BIS 3 UBL Invoice
2 errors
error [BR-S-07]-In a Document level charge (BG-21) where the Document level charge VAT category code (BT-102) is "Standard rated" the Document level charge VAT rate (BT-103) shall be greater than zero.
location /ubl:Invoice[1]/cac:AllowanceCharge[1]/cac:TaxCategory[1]
test (cbc:Percent) > 0
error [BR-S-08]-For each different value of VAT category rate (BT-119) where the VAT category code (BT-118) is "Standard rated", the VAT category taxable amount (BT-116) in a VAT breakdown (BG-23) shall equal the sum of Invoice line net amounts (BT-131) plus the sum of document level charge amounts (BT-99) minus the sum of document level allowance amounts (BT-92) where the VAT category code (BT-151, BT-102, BT-95) is "Standard rated" and the VAT rate (BT-152, BT-103, BT-96) equals the VAT category rate (BT-119).
location /ubl:Invoice[1]/cac:TaxTotal[1]/cac:TaxSubtotal[1]/cac:TaxCategory[1]
test every $rate in xs:decimal(cbc:Percent) satisfies (((exists(//cac:InvoiceLine[cac:Item/cac:ClassifiedTaxCategory/normalize-space(cbc:ID) = 'S'][cac:Item/cac:ClassifiedTaxCategory/xs:decimal(cbc:Percent) =$rate]) or exists(//cac:AllowanceCharge[cac:TaxCategory/normalize-space(cbc:ID)='S'][cac:TaxCategory/xs:decimal(cbc:Percent) = $rate])) and ((../xs:decimal(cbc:TaxableAmount - 1) < (sum(../../../cac:InvoiceLine[cac:Item/cac:ClassifiedTaxCategory/normalize-space(cbc:ID)='S'][cac:Item/cac:ClassifiedTaxCategory/xs:decimal(cbc:Percent) =$rate]/xs:decimal(cbc:LineExtensionAmount)) + sum(../../../cac:AllowanceCharge[cbc:ChargeIndicator=true()][cac:TaxCategory/normalize-space(cbc:ID)='S'][cac:TaxCategory/xs:decimal(cbc:Percent) = $rate]/xs:decimal(cbc:Amount)) - sum(../../../cac:AllowanceCharge[cbc:ChargeIndicator=false()][cac:TaxCategory/normalize-space(cbc:ID)='S'][cac:TaxCategory/xs:decimal(cbc:Percent) = $rate]/xs:decimal(cbc:Amount)))) and (../xs:decimal(cbc:TaxableAmount + 1) > (sum(../../../cac:InvoiceLine[cac:Item/cac:ClassifiedTaxCategory/normalize-space(cbc:ID)='S'][cac:Item/cac:ClassifiedTaxCategory/xs:decimal(cbc:Percent) =$rate]/xs:decimal(cbc:LineExtensionAmount)) + sum(../../../cac:AllowanceCharge[cbc:ChargeIndicator=true()][cac:TaxCategory/normalize-space(cbc:ID)='S'][cac:TaxCategory/xs:decimal(cbc:Percent) = $rate]/xs:decimal(cbc:Amount)) - sum(../../../cac:AllowanceCharge[cbc:ChargeIndicator=false()][cac:TaxCategory/normalize-space(cbc:ID)='S'][cac:TaxCategory/xs:decimal(cbc:Percent) = $rate]/xs:decimal(cbc:Amount)))))) or (exists(//cac:CreditNoteLine[cac:Item/cac:ClassifiedTaxCategory/normalize-space(cbc:ID) = 'S'][cac:Item/cac:ClassifiedTaxCategory/xs:decimal(cbc:Percent) =$rate]) or exists(//cac:AllowanceCharge[cac:TaxCategory/normalize-space(cbc:ID)='S'][cac:TaxCategory/xs:decimal(cbc:Percent) = $rate])) and ((../xs:decimal(cbc:TaxableAmount - 1) < (sum(../../../cac:CreditNoteLine[cac:Item/cac:ClassifiedTaxCategory/normalize-space(cbc:ID)='S'][cac:Item/cac:ClassifiedTaxCategory/xs:decimal(cbc:Percent) =$rate]/xs:decimal(cbc:LineExtensionAmount)) + sum(../../../cac:AllowanceCharge[cbc:ChargeIndicator=true()][cac:TaxCategory/normalize-space(cbc:ID)='S'][cac:TaxCategory/xs:decimal(cbc:Percent) = $rate]/xs:decimal(cbc:Amount)) - sum(../../../cac:AllowanceCharge[cbc:ChargeIndicator=false()][cac:TaxCategory/normalize-space(cbc:ID)='S'][cac:TaxCategory/xs:decimal(cbc:Percent) = $rate]/xs:decimal(cbc:Amount)))) and (../xs:decimal(cbc:TaxableAmount + 1) > (sum(../../../cac:CreditNoteLine[cac:Item/cac:ClassifiedTaxCategory/normalize-space(cbc:ID)='S'][cac:Item/cac:ClassifiedTaxCategory/xs:decimal(cbc:Percent) =$rate]/xs:decimal(cbc:LineExtensionAmount)) + sum(../../../cac:AllowanceCharge[cbc:ChargeIndicator=true()][cac:TaxCategory/normalize-space(cbc:ID)='S'][cac:TaxCategory/xs:decimal(cbc:Percent) = $rate]/xs:decimal(cbc:Amount)) - sum(../../../cac:AllowanceCharge[cbc:ChargeIndicator=false()][cac:TaxCategory/normalize-space(cbc:ID)='S'][cac:TaxCategory/xs:decimal(cbc:Percent) = $rate]/xs:decimal(cbc:Amount))))))

The XML:
<?xml version="1.0"?>
<Invoice xmlns="urn:oasis:names:specification:ubl:schema:xsd:Invoice-2" xmlns:cbc="urn:oasis:names:specification:ubl:schema:xsd:CommonBasicComponents-2" xmlns:cac="urn:oasis:names:specification:ubl:schema:xsd:CommonAggregateComponents-2">
<cbc:UBLVersionID>2.1</cbc:UBLVersionID>
<cbc:CustomizationID>urn:cen.eu:en16931:2017#compliant#urn:fdc:peppol.eu:2017:poacc:billing:3.0</cbc:CustomizationID>
<cbc:ProfileID>urn:fdc:peppol.eu:2017:poacc:billing:01:1.0</cbc:ProfileID>
<cbc:ID>C1A0R73</cbc:ID>
<cbc:IssueDate>2026-02-28</cbc:IssueDate>
<cbc:InvoiceTypeCode>380</cbc:InvoiceTypeCode>
<cbc:DocumentCurrencyCode>EUR</cbc:DocumentCurrencyCode>
<cac:OrderReference>
<cbc:ID>NA</cbc:ID>
<cbc:SalesOrderID>C1D1W46</cbc:SalesOrderID>
</cac:OrderReference>
<cac:AdditionalDocumentReference>
<cbc:ID>Invoice.pdf</cbc:ID>
<cbc:DocumentDescription>Invoice PDF</cbc:DocumentDescription>
<cac:Attachment>
<cbc:EmbeddedDocumentBinaryObject mimeCode="application/pdf" filename="Invoice.pdf">JVBERi0xLjc........PDF CODE.........AwMDYyNzE2IDAwMDAwIG4gCjAwMDAwNjc0NTUgMDAwMDAgbiAKdHJhaWxlcgo8PCAvU2l6ZSAxOCAvUm9vdCAxNyAwIFIgL0luZm8gMTUgMCBSIC9JRCBbIDwxMTEzZjg4ZGQ3NmQxYTE5ZTRlMmI1NDVjNzc5MGIyZD4gPDExMTNmODhkZDc2ZDFhMTllNGUyYjU0NWM3NzkwYjJkPiBdID4+CnN0YXJ0eHJlZgo2NzY1OAolJUVPRgo=</cbc:EmbeddedDocumentBinaryObject>
</cac:Attachment>
</cac:AdditionalDocumentReference>
<cac:AccountingSupplierParty>
<cac:Party>
<cbc:EndpointID schemeID="9944">NL182610202B02</cbc:EndpointID>
<cac:PartyName>
<cbc:Name>Bloem en Oogst</cbc:Name>
</cac:PartyName>
<cac:PostalAddress>
<cbc:StreetName>3 van Zijlweg</cbc:StreetName>
<cbc:CityName>Wapserveen</cbc:CityName>
<cbc:PostalZone>8351HW</cbc:PostalZone>
<cac:Country>
<cbc:IdentificationCode>NL</cbc:IdentificationCode>
</cac:Country>
</cac:PostalAddress>
<cac:PartyTaxScheme>
<cbc:CompanyID>NL182610202B02</cbc:CompanyID>
<cac:TaxScheme>
<cbc:ID>VAT</cbc:ID>
</cac:TaxScheme>
</cac:PartyTaxScheme>
<cac:PartyLegalEntity>
<cbc:RegistrationName>Bloem en Oogst</cbc:RegistrationName>
<cbc:CompanyID schemeID="0106">NL182610202B02</cbc:CompanyID>
</cac:PartyLegalEntity>
<cac:Contact>
<cbc:Name>Eline Houtkamp</cbc:Name>
<cbc:Telephone>+31624897106</cbc:Telephone>
<cbc:ElectronicMail>This email address is being protected from spambots. You need JavaScript enabled to view it.</cbc:ElectronicMail>
</cac:Contact>
</cac:Party>
</cac:AccountingSupplierParty>
<cac:AccountingCustomerParty>
<cac:Party>
<cbc:EndpointID schemeID="9944">123123182</cbc:EndpointID>
<cac:PartyName>
<cbc:Name>GossiePozzie</cbc:Name>
</cac:PartyName>
<cac:PostalAddress>
<cbc:StreetName>van Zijlweg</cbc:StreetName>
<cbc:AdditionalStreetName>3</cbc:AdditionalStreetName>
<cbc:CityName>Wapserveen</cbc:CityName>
<cbc:PostalZone>8351 HW</cbc:PostalZone>
<cac:Country>
<cbc:IdentificationCode>NL</cbc:IdentificationCode>
</cac:Country>
</cac:PostalAddress>
<cac:PartyLegalEntity>
<cbc:RegistrationName>GossiePozzie</cbc:RegistrationName>
</cac:PartyLegalEntity>
<cac:Contact>
<cbc:Name>Gossen Rijkeboer</cbc:Name>
<cbc:Telephone>+31626660482</cbc:Telephone>
<cbc:ElectronicMail>This email address is being protected from spambots. You need JavaScript enabled to view it.</cbc:ElectronicMail>
</cac:Contact>
</cac:Party>
</cac:AccountingCustomerParty>
<cac:AllowanceCharge>
<cbc:ChargeIndicator>true</cbc:ChargeIndicator>
<cbc:AllowanceChargeReason>Verzending</cbc:AllowanceChargeReason>
<cbc:Amount currencyID="EUR">4.4</cbc:Amount>
<cac:TaxCategory>
<cbc:ID>S</cbc:ID>
<cbc:Percent>0.00</cbc:Percent>
<cac:TaxScheme>
<cbc:ID>VAT</cbc:ID>
</cac:TaxScheme>
</cac:TaxCategory>
</cac:AllowanceCharge>
<cac:TaxTotal>
<cbc:TaxAmount currencyID="EUR">0.63</cbc:TaxAmount>
<cac:TaxSubtotal>
<cbc:TaxableAmount currencyID="EUR">7.42</cbc:TaxableAmount>
<cbc:TaxAmount currencyID="EUR">0.63</cbc:TaxAmount>
<cac:TaxCategory>
<cbc:ID>S</cbc:ID>
<cbc:Percent>21.00</cbc:Percent>
<cac:TaxScheme>
<cbc:ID>VAT</cbc:ID>
</cac:TaxScheme>
</cac:TaxCategory>
</cac:TaxSubtotal>
</cac:TaxTotal>
<cac:LegalMonetaryTotal>
<cbc:LineExtensionAmount currencyID="EUR">3.02</cbc:LineExtensionAmount>
<cbc:TaxExclusiveAmount currencyID="EUR">7.42</cbc:TaxExclusiveAmount>
<cbc:TaxInclusiveAmount currencyID="EUR">8.05</cbc:TaxInclusiveAmount>
<cbc:AllowanceTotalAmount currencyID="EUR">0.00</cbc:AllowanceTotalAmount>
<cbc:ChargeTotalAmount currencyID="EUR">4.40</cbc:ChargeTotalAmount>
<cbc:PrepaidAmount currencyID="EUR">8.05</cbc:PrepaidAmount>
<cbc:PayableAmount currencyID="EUR">0.00</cbc:PayableAmount>
</cac:LegalMonetaryTotal>
<cac:InvoiceLine>
<cbc:ID>0</cbc:ID>
<cbc:InvoicedQuantity unitCode="C62">1.00</cbc:InvoicedQuantity>
<cbc:LineExtensionAmount currencyID="EUR">3.02</cbc:LineExtensionAmount>
<cac:Item>
<cbc:Name>ACHILLEA MILLEFOLIUM – DUIZENDBLAD - ‘Summer Pastels mix’</cbc:Name>
<cac:ClassifiedTaxCategory>
<cbc:ID>S</cbc:ID>
<cbc:Percent>21.00</cbc:Percent>
<cac:TaxScheme>
<cbc:ID>VAT</cbc:ID>
</cac:TaxScheme>
</cac:ClassifiedTaxCategory>
</cac:Item>
<cac:Price>
<cbc:PriceAmount currencyID="EUR">3.02</cbc:PriceAmount>
<cbc:BaseQuantity unitCode="C62">1.00</cbc:BaseQuantity>
</cac:Price>
</cac:InvoiceLine>
</Invoice>


If there something I can do from my end please let me know.

Greetings Gossen

Last edit: 1 month 11 hours ago by gossen.

Please Log in or Create an account to join the conversation.

  • Posts: 19
  • Thank you received: 4
  • Hikashop Business
4 weeks 2 days ago #370651

Ok, so I figured out that I wasn't using any tax on the shipping amount so that <cac:TaxCategory>
<cbc:ID>S</cbc:ID>
<cbc:Percent>0</cbc:Percent>
<cac:TaxScheme>
<cbc:ID>VAT</cbc:ID>
</cac:TaxScheme>
</cac:TaxCategory> gives an error because Percent was zero. I now set it up correctly with a proper tax amount. The Percent is correctly used but now there are some other errors. But I hope this is a step in the right direction. See below:

3 errors
error [BR-DEC-05]-The allowed maximum number of decimals for the Document level charge amount (BT-99) is 2.
location /ubl:Invoice[1]/cac:AllowanceCharge[1]
test string-length(substring-after(cbc:Amount,'.'))<=2
error [BR-CO-13]-Invoice total amount without VAT (BT-109) = Σ Invoice line net amount (BT-131) - Sum of allowances on document level (BT-107) + Sum of charges on document level (BT-108).
location /ubl:Invoice[1]/cac:LegalMonetaryTotal[1]
test ((cbc:ChargeTotalAmount) and (cbc:AllowanceTotalAmount) and (xs:decimal(cbc:TaxExclusiveAmount) = round((xs:decimal(cbc:LineExtensionAmount) + xs:decimal(cbc:ChargeTotalAmount) - xs:decimal(cbc:AllowanceTotalAmount)) * 10 * 10) div 100 )) or (not(cbc:ChargeTotalAmount) and (cbc:AllowanceTotalAmount) and (xs:decimal(cbc:TaxExclusiveAmount) = round((xs:decimal(cbc:LineExtensionAmount) - xs:decimal(cbc:AllowanceTotalAmount)) * 10 * 10 ) div 100)) or ((cbc:ChargeTotalAmount) and not(cbc:AllowanceTotalAmount) and (xs:decimal(cbc:TaxExclusiveAmount) = round((xs:decimal(cbc:LineExtensionAmount) + xs:decimal(cbc:ChargeTotalAmount)) * 10 * 10 ) div 100)) or (not(cbc:ChargeTotalAmount) and not(cbc:AllowanceTotalAmount) and (xs:decimal(cbc:TaxExclusiveAmount) = xs:decimal(cbc:LineExtensionAmount)))
error [UBL-DT-01]-Amounts shall be decimal up to two fraction digits
location /ubl:Invoice[1]/cac:AllowanceCharge[1]/cbc:Amount[1]
test string-length(substring-after(.,'.'))<=2


XML:

<?xml version="1.0"?>
<Invoice xmlns="urn:oasis:names:specification:ubl:schema:xsd:Invoice-2" xmlns:cbc="urn:oasis:names:specification:ubl:schema:xsd:CommonBasicComponents-2" xmlns:cac="urn:oasis:names:specification:ubl:schema:xsd:CommonAggregateComponents-2">
<cbc:UBLVersionID>2.1</cbc:UBLVersionID>
<cbc:CustomizationID>urn:cen.eu:en16931:2017#compliant#urn:fdc:peppol.eu:2017:poacc:billing:3.0</cbc:CustomizationID>
<cbc:ProfileID>urn:fdc:peppol.eu:2017:poacc:billing:01:1.0</cbc:ProfileID>
<cbc:ID>C1A0R73</cbc:ID>
<cbc:IssueDate>2026-02-28</cbc:IssueDate>
<cbc:InvoiceTypeCode>380</cbc:InvoiceTypeCode>
<cbc:DocumentCurrencyCode>EUR</cbc:DocumentCurrencyCode>
<cac:OrderReference>
<cbc:ID>NA</cbc:ID>
<cbc:SalesOrderID>C1D1W46</cbc:SalesOrderID>
</cac:OrderReference>
<cac:AccountingSupplierParty>
<cac:Party>
<cbc:EndpointID schemeID="9944">NL182610202B02</cbc:EndpointID>
<cac:PartyName>
<cbc:Name>Bloem en Oogst</cbc:Name>
</cac:PartyName>
<cac:PostalAddress>
<cbc:StreetName>3 van Zijlweg</cbc:StreetName>
<cbc:CityName>Wapserveen</cbc:CityName>
<cbc:PostalZone>8351HW</cbc:PostalZone>
<cac:Country>
<cbc:IdentificationCode>NL</cbc:IdentificationCode>
</cac:Country>
</cac:PostalAddress>
<cac:PartyTaxScheme>
<cbc:CompanyID>NL182610202B02</cbc:CompanyID>
<cac:TaxScheme>
<cbc:ID>VAT</cbc:ID>
</cac:TaxScheme>
</cac:PartyTaxScheme>
<cac:PartyLegalEntity>
<cbc:RegistrationName>Bloem en Oogst</cbc:RegistrationName>
<cbc:CompanyID schemeID="0106">NL182610202B02</cbc:CompanyID>
</cac:PartyLegalEntity>
<cac:Contact>
<cbc:Name>Eline Houtkamp</cbc:Name>
<cbc:Telephone>+31624897106</cbc:Telephone>
<cbc:ElectronicMail>This email address is being protected from spambots. You need JavaScript enabled to view it.</cbc:ElectronicMail>
</cac:Contact>
</cac:Party>
</cac:AccountingSupplierParty>
<cac:AccountingCustomerParty>
<cac:Party>
<cbc:EndpointID schemeID="9944">123123182</cbc:EndpointID>
<cac:PartyName>
<cbc:Name>GossiePozzie</cbc:Name>
</cac:PartyName>
<cac:PostalAddress>
<cbc:StreetName>van Zijlweg</cbc:StreetName>
<cbc:AdditionalStreetName>3</cbc:AdditionalStreetName>
<cbc:CityName>Wapserveen</cbc:CityName>
<cbc:PostalZone>8351 HW</cbc:PostalZone>
<cac:Country>
<cbc:IdentificationCode>NL</cbc:IdentificationCode>
</cac:Country>
</cac:PostalAddress>
<cac:PartyLegalEntity>
<cbc:RegistrationName>GossiePozzie</cbc:RegistrationName>
</cac:PartyLegalEntity>
<cac:Contact>
<cbc:Name>Gossen Rijkeboer</cbc:Name>
<cbc:Telephone>+31626660482</cbc:Telephone>
<cbc:ElectronicMail>This email address is being protected from spambots. You need JavaScript enabled to view it.</cbc:ElectronicMail>
</cac:Contact>
</cac:Party>
</cac:AccountingCustomerParty>
<cac:AllowanceCharge>
<cbc:ChargeIndicator>true</cbc:ChargeIndicator>
<cbc:AllowanceChargeReason>Verzending</cbc:AllowanceChargeReason>
<cbc:Amount currencyID="EUR">3.63636</cbc:Amount>
<cac:TaxCategory>
<cbc:ID>S</cbc:ID>
<cbc:Percent>21.00</cbc:Percent>
<cac:TaxScheme>
<cbc:ID>VAT</cbc:ID>
</cac:TaxScheme>
</cac:TaxCategory>
</cac:AllowanceCharge>
<cac:TaxTotal>
<cbc:TaxAmount currencyID="EUR">1.40</cbc:TaxAmount>
<cac:TaxSubtotal>
<cbc:TaxableAmount currencyID="EUR">6.65</cbc:TaxableAmount>
<cbc:TaxAmount currencyID="EUR">1.40</cbc:TaxAmount>
<cac:TaxCategory>
<cbc:ID>S</cbc:ID>
<cbc:Percent>21.00</cbc:Percent>
<cac:TaxScheme>
<cbc:ID>VAT</cbc:ID>
</cac:TaxScheme>
</cac:TaxCategory>
</cac:TaxSubtotal>
</cac:TaxTotal>
<cac:LegalMonetaryTotal>
<cbc:LineExtensionAmount currencyID="EUR">3.02</cbc:LineExtensionAmount>
<cbc:TaxExclusiveAmount currencyID="EUR">6.65</cbc:TaxExclusiveAmount>
<cbc:TaxInclusiveAmount currencyID="EUR">8.05</cbc:TaxInclusiveAmount>
<cbc:AllowanceTotalAmount currencyID="EUR">0.00</cbc:AllowanceTotalAmount>
<cbc:ChargeTotalAmount currencyID="EUR">3.64</cbc:ChargeTotalAmount>
<cbc:PrepaidAmount currencyID="EUR">8.05</cbc:PrepaidAmount>
<cbc:PayableAmount currencyID="EUR">0.00</cbc:PayableAmount>
</cac:LegalMonetaryTotal>
<cac:InvoiceLine>
<cbc:ID>0</cbc:ID>
<cbc:InvoicedQuantity unitCode="C62">1.00</cbc:InvoicedQuantity>
<cbc:LineExtensionAmount currencyID="EUR">3.02</cbc:LineExtensionAmount>
<cac:Item>
<cbc:Name>ACHILLEA MILLEFOLIUM – DUIZENDBLAD - ‘Summer Pastels mix’</cbc:Name>
<cac:ClassifiedTaxCategory>
<cbc:ID>S</cbc:ID>
<cbc:Percent>21.00</cbc:Percent>
<cac:TaxScheme>
<cbc:ID>VAT</cbc:ID>
</cac:TaxScheme>
</cac:ClassifiedTaxCategory>
</cac:Item>
<cac:Price>
<cbc:PriceAmount currencyID="EUR">3.02</cbc:PriceAmount>
<cbc:BaseQuantity unitCode="C62">1.00</cbc:BaseQuantity>
</cac:Price>
</cac:InvoiceLine>
</Invoice>

Please Log in or Create an account to join the conversation.

  • Posts: 19
  • Thank you received: 4
  • Hikashop Business
4 weeks 2 days ago #370652

It seems its tripping over the amount of decimals in Amount currencyID:

<cac:AllowanceCharge>
<cbc:ChargeIndicator>true</cbc:ChargeIndicator>
<cbc:AllowanceChargeReason>Verzending</cbc:AllowanceChargeReason>
<cbc:Amount currencyID="EUR">3.63636</cbc:Amount>
<cac:TaxCategory>
<cbc:ID>S</cbc:ID>
<cbc:Percent>21.00</cbc:Percent>
<cac:TaxScheme>
<cbc:ID>VAT</cbc:ID>
</cac:TaxScheme>
</cac:TaxCategory>
</cac:AllowanceCharge>

I tried to change the shipping value in hika to a number with 2 decimals but it just pasts zero's at the end when I save. (3.63000) Is it hardcoded with 5 decimals?

Please Log in or Create an account to join the conversation.

  • Posts: 85392
  • Thank you received: 13956
  • MODERATOR
4 weeks 2 days ago #370654

Hi,

Thank you for reporting these validation errors with detailed information, that was very helpful.

We've just released version 3.2.2 of the plugin which fixes the issues you encountered:
- BR-DEC-05 (maximum 2 decimal places): The shipping/payment/additional charge amounts in the AllowanceCharge elements are now properly rounded to 2 decimal places. Previously, when computing the tax-exclusive amount from a tax-inclusive price (e.g., 4.40 EUR with 21% VAT), the result could have more than 2 decimals (e.g., 3.63636) which the Peppol validator rejected.
- BR-CO-13 / BR-S-08 (amount calculation mismatches): All monetary amounts are now rounded to 2 decimal places before being accumulated into totals. This ensures that the formula TaxExclusiveAmount = LineExtensionAmount + ChargeTotalAmount - AllowanceTotalAmount holds exactly in the generated XML.

These fixes apply to both UBL invoices and UBL credit notes.
You can download the new version from your account and test it with the Peppol validator. Let us know if you still encounter any validation errors.

Please Log in or Create an account to join the conversation.

  • Posts: 19
  • Thank you received: 4
  • Hikashop Business
4 weeks 2 days ago #370658

Yeah, succes. It validates. Thank you.

Now I've got the next challenge.

Some business clients from Belgium are exempted from paying tax. So then the Percent fields are zero and the tax ID must be Exempted instead of Standard. Can these fields dynamically change based on the Country and/or a custom field?

I'm sorry for all the questions and thanks for your effort.

Greetings Gossen

Please Log in or Create an account to join the conversation.

  • Posts: 85392
  • Thank you received: 13956
  • MODERATOR
4 weeks 2 days ago #370668

Hi,

I've looked into it and made another release of the plugin. It should now handle this automatically based on the taxes being applied, or not. You can download the new version from your account and test it again.

Please Log in or Create an account to join the conversation.

  • Posts: 19
  • Thank you received: 4
  • Hikashop Business
4 weeks 1 day ago #370688

Hi,

this is the output:

Document validated as: Peppol BIS 3 UBL Invoice
3 errors
error [BR-E-01]-An Invoice that contains an Invoice line (BG-25), a Document level allowance (BG-20) or a Document level charge (BG-21) where the VAT category code (BT-151, BT-95 or BT-102) is "Exempt from VAT" shall contain exactly one VAT breakdown (BG-23) with the VAT category code (BT-118) equal to "Exempt from VAT".
location /ubl:Invoice[1]
test ((exists(//cac:TaxCategory[cac:TaxScheme/normalize-space(upper-case(cbc:ID))='VAT']/cbc:ID[normalize-space(.) = 'E']) or exists(//cac:ClassifiedTaxCategory[cac:TaxScheme/normalize-space(upper-case(cbc:ID))='VAT']/cbc:ID[normalize-space(.) = 'E'])) and (count(cac:TaxTotal/cac:TaxSubtotal/cac:TaxCategory[cac:TaxScheme/normalize-space(upper-case(cbc:ID))='VAT']/cbc:ID[normalize-space(.) = 'E']) = 1)) or (not(//cac:TaxCategory[cac:TaxScheme/normalize-space(upper-case(cbc:ID))='VAT']/cbc:ID[normalize-space(.) = 'E']) and not(//cac:ClassifiedTaxCategory[cac:TaxScheme/normalize-space(upper-case(cbc:ID))='VAT']/cbc:ID[normalize-space(.) = 'E']))
error [BR-S-01]-An Invoice that contains an Invoice line (BG-25), a Document level allowance (BG-20) or a Document level charge (BG-21) where the VAT category code (BT-151, BT-95 or BT-102) is "Standard rated" shall contain in the VAT breakdown (BG-23) at least one VAT category code (BT-118) equal with "Standard rated".
location /ubl:Invoice[1]
test ((count(//cac:AllowanceCharge/cac:TaxCategory[normalize-space(cbc:ID) = 'S']) + count(//cac:ClassifiedTaxCategory[normalize-space(cbc:ID) = 'S'])) > 0 and count(cac:TaxTotal/cac:TaxSubtotal/cac:TaxCategory[normalize-space(cbc:ID) = 'S']) > 0) or ((count(//cac:AllowanceCharge/cac:TaxCategory[normalize-space(cbc:ID) = 'S']) + count(//cac:ClassifiedTaxCategory[normalize-space(cbc:ID) = 'S'])) = 0 and count(cac:TaxTotal/cac:TaxSubtotal/cac:TaxCategory[normalize-space(cbc:ID) = 'S']) = 0)
error [BR-S-08]-For each different value of VAT category rate (BT-119) where the VAT category code (BT-118) is "Standard rated", the VAT category taxable amount (BT-116) in a VAT breakdown (BG-23) shall equal the sum of Invoice line net amounts (BT-131) plus the sum of document level charge amounts (BT-99) minus the sum of document level allowance amounts (BT-92) where the VAT category code (BT-151, BT-102, BT-95) is "Standard rated" and the VAT rate (BT-152, BT-103, BT-96) equals the VAT category rate (BT-119).
location /ubl:Invoice[1]/cac:TaxTotal[1]/cac:TaxSubtotal[1]/cac:TaxCategory[1]
test every $rate in xs:decimal(cbc:Percent) satisfies (((exists(//cac:InvoiceLine[cac:Item/cac:ClassifiedTaxCategory/normalize-space(cbc:ID) = 'S'][cac:Item/cac:ClassifiedTaxCategory/xs:decimal(cbc:Percent) =$rate]) or exists(//cac:AllowanceCharge[cac:TaxCategory/normalize-space(cbc:ID)='S'][cac:TaxCategory/xs:decimal(cbc:Percent) = $rate])) and ((../xs:decimal(cbc:TaxableAmount - 1) < (sum(../../../cac:InvoiceLine[cac:Item/cac:ClassifiedTaxCategory/normalize-space(cbc:ID)='S'][cac:Item/cac:ClassifiedTaxCategory/xs:decimal(cbc:Percent) =$rate]/xs:decimal(cbc:LineExtensionAmount)) + sum(../../../cac:AllowanceCharge[cbc:ChargeIndicator=true()][cac:TaxCategory/normalize-space(cbc:ID)='S'][cac:TaxCategory/xs:decimal(cbc:Percent) = $rate]/xs:decimal(cbc:Amount)) - sum(../../../cac:AllowanceCharge[cbc:ChargeIndicator=false()][cac:TaxCategory/normalize-space(cbc:ID)='S'][cac:TaxCategory/xs:decimal(cbc:Percent) = $rate]/xs:decimal(cbc:Amount)))) and (../xs:decimal(cbc:TaxableAmount + 1) > (sum(../../../cac:InvoiceLine[cac:Item/cac:ClassifiedTaxCategory/normalize-space(cbc:ID)='S'][cac:Item/cac:ClassifiedTaxCategory/xs:decimal(cbc:Percent) =$rate]/xs:decimal(cbc:LineExtensionAmount)) + sum(../../../cac:AllowanceCharge[cbc:ChargeIndicator=true()][cac:TaxCategory/normalize-space(cbc:ID)='S'][cac:TaxCategory/xs:decimal(cbc:Percent) = $rate]/xs:decimal(cbc:Amount)) - sum(../../../cac:AllowanceCharge[cbc:ChargeIndicator=false()][cac:TaxCategory/normalize-space(cbc:ID)='S'][cac:TaxCategory/xs:decimal(cbc:Percent) = $rate]/xs:decimal(cbc:Amount)))))) or (exists(//cac:CreditNoteLine[cac:Item/cac:ClassifiedTaxCategory/normalize-space(cbc:ID) = 'S'][cac:Item/cac:ClassifiedTaxCategory/xs:decimal(cbc:Percent) =$rate]) or exists(//cac:AllowanceCharge[cac:TaxCategory/normalize-space(cbc:ID)='S'][cac:TaxCategory/xs:decimal(cbc:Percent) = $rate])) and ((../xs:decimal(cbc:TaxableAmount - 1) < (sum(../../../cac:CreditNoteLine[cac:Item/cac:ClassifiedTaxCategory/normalize-space(cbc:ID)='S'][cac:Item/cac:ClassifiedTaxCategory/xs:decimal(cbc:Percent) =$rate]/xs:decimal(cbc:LineExtensionAmount)) + sum(../../../cac:AllowanceCharge[cbc:ChargeIndicator=true()][cac:TaxCategory/normalize-space(cbc:ID)='S'][cac:TaxCategory/xs:decimal(cbc:Percent) = $rate]/xs:decimal(cbc:Amount)) - sum(../../../cac:AllowanceCharge[cbc:ChargeIndicator=false()][cac:TaxCategory/normalize-space(cbc:ID)='S'][cac:TaxCategory/xs:decimal(cbc:Percent) = $rate]/xs:decimal(cbc:Amount)))) and (../xs:decimal(cbc:TaxableAmount + 1) > (sum(../../../cac:CreditNoteLine[cac:Item/cac:ClassifiedTaxCategory/normalize-space(cbc:ID)='S'][cac:Item/cac:ClassifiedTaxCategory/xs:decimal(cbc:Percent) =$rate]/xs:decimal(cbc:LineExtensionAmount)) + sum(../../../cac:AllowanceCharge[cbc:ChargeIndicator=true()][cac:TaxCategory/normalize-space(cbc:ID)='S'][cac:TaxCategory/xs:decimal(cbc:Percent) = $rate]/xs:decimal(cbc:Amount)) - sum(../../../cac:AllowanceCharge[cbc:ChargeIndicator=false()][cac:TaxCategory/normalize-space(cbc:ID)='S'][cac:TaxCategory/xs:decimal(cbc:Percent) = $rate]/xs:decimal(cbc:Amount))))))

And the XML:

<?xml version="1.0"?>
<Invoice xmlns="urn:oasis:names:specification:ubl:schema:xsd:Invoice-2" xmlns:cbc="urn:oasis:names:specification:ubl:schema:xsd:CommonBasicComponents-2" xmlns:cac="urn:oasis:names:specification:ubl:schema:xsd:CommonAggregateComponents-2">
<cbc:UBLVersionID>2.1</cbc:UBLVersionID>
<cbc:CustomizationID>urn:cen.eu:en16931:2017#compliant#urn:fdc:peppol.eu:2017:poacc:billing:3.0</cbc:CustomizationID>
<cbc:ProfileID>urn:fdc:peppol.eu:2017:poacc:billing:01:1.0</cbc:ProfileID>
<cbc:ID>C1B0C83</cbc:ID>
<cbc:IssueDate>2026-03-04</cbc:IssueDate>
<cbc:InvoiceTypeCode>380</cbc:InvoiceTypeCode>
<cbc:DocumentCurrencyCode>EUR</cbc:DocumentCurrencyCode>
<cac:OrderReference>
<cbc:ID>NA</cbc:ID>
<cbc:SalesOrderID>C1E1G56</cbc:SalesOrderID>
</cac:OrderReference>
<cac:AccountingSupplierParty>
<cac:Party>
<cbc:EndpointID schemeID="9944">NL182610202B02</cbc:EndpointID>
<cac:PartyName>
<cbc:Name>Bloem en Oogst</cbc:Name>
</cac:PartyName>
<cac:PostalAddress>
<cbc:StreetName>3 van Zijlweg</cbc:StreetName>
<cbc:CityName>Wapserveen</cbc:CityName>
<cbc:PostalZone>8351HW</cbc:PostalZone>
<cac:Country>
<cbc:IdentificationCode>NL</cbc:IdentificationCode>
</cac:Country>
</cac:PostalAddress>
<cac:PartyTaxScheme>
<cbc:CompanyID>NL182610202B02</cbc:CompanyID>
<cac:TaxScheme>
<cbc:ID>VAT</cbc:ID>
</cac:TaxScheme>
</cac:PartyTaxScheme>
<cac:PartyLegalEntity>
<cbc:RegistrationName>Bloem en Oogst</cbc:RegistrationName>
<cbc:CompanyID schemeID="0106">NL182610202B02</cbc:CompanyID>
</cac:PartyLegalEntity>
<cac:Contact>
<cbc:Name>Eline Houtkamp</cbc:Name>
<cbc:Telephone>+31624897106</cbc:Telephone>
<cbc:ElectronicMail>This email address is being protected from spambots. You need JavaScript enabled to view it.</cbc:ElectronicMail>
</cac:Contact>
</cac:Party>
</cac:AccountingSupplierParty>
<cac:AccountingCustomerParty>
<cac:Party>
<cbc:EndpointID schemeID="9925">5677</cbc:EndpointID>
<cac:PartyName>
<cbc:Name>gozz</cbc:Name>
</cac:PartyName>
<cac:PostalAddress>
<cbc:StreetName>hhj</cbc:StreetName>
<cbc:AdditionalStreetName>7</cbc:AdditionalStreetName>
<cbc:CityName>sjsn</cbc:CityName>
<cbc:PostalZone>7777jj</cbc:PostalZone>
<cac:Country>
<cbc:IdentificationCode>BE</cbc:IdentificationCode>
</cac:Country>
</cac:PostalAddress>
<cac:PartyLegalEntity>
<cbc:RegistrationName>gozz</cbc:RegistrationName>
</cac:PartyLegalEntity>
<cac:Contact>
<cbc:Name>Gossen rij</cbc:Name>
<cbc:Telephone>92737</cbc:Telephone>
<cbc:ElectronicMail>This email address is being protected from spambots. You need JavaScript enabled to view it.</cbc:ElectronicMail>
</cac:Contact>
</cac:Party>
</cac:AccountingCustomerParty>
<cac:AllowanceCharge>
<cbc:ChargeIndicator>true</cbc:ChargeIndicator>
<cbc:AllowanceChargeReason>Verzending</cbc:AllowanceChargeReason>
<cbc:Amount currencyID="EUR">9.40</cbc:Amount>
<cac:TaxCategory>
<cbc:ID>E</cbc:ID>
<cbc:Percent>0.00</cbc:Percent>
<cac:TaxScheme>
<cbc:ID>VAT</cbc:ID>
</cac:TaxScheme>
</cac:TaxCategory>
</cac:AllowanceCharge>
<cac:TaxTotal>
<cbc:TaxAmount currencyID="EUR">0.00</cbc:TaxAmount>
<cac:TaxSubtotal>
<cbc:TaxableAmount currencyID="EUR">12.42</cbc:TaxableAmount>
<cbc:TaxAmount currencyID="EUR">0.00</cbc:TaxAmount>
<cac:TaxCategory>
<cbc:ID>S</cbc:ID>
<cbc:Percent>0.00</cbc:Percent>
<cac:TaxScheme>
<cbc:ID>VAT</cbc:ID>
</cac:TaxScheme>
</cac:TaxCategory>
</cac:TaxSubtotal>
</cac:TaxTotal>
<cac:LegalMonetaryTotal>
<cbc:LineExtensionAmount currencyID="EUR">3.02</cbc:LineExtensionAmount>
<cbc:TaxExclusiveAmount currencyID="EUR">12.42</cbc:TaxExclusiveAmount>
<cbc:TaxInclusiveAmount currencyID="EUR">12.42</cbc:TaxInclusiveAmount>
<cbc:AllowanceTotalAmount currencyID="EUR">0.00</cbc:AllowanceTotalAmount>
<cbc:ChargeTotalAmount currencyID="EUR">9.40</cbc:ChargeTotalAmount>
<cbc:PrepaidAmount currencyID="EUR">12.42</cbc:PrepaidAmount>
<cbc:PayableAmount currencyID="EUR">0.00</cbc:PayableAmount>
</cac:LegalMonetaryTotal>
<cac:InvoiceLine>
<cbc:ID>0</cbc:ID>
<cbc:InvoicedQuantity unitCode="C62">1.00</cbc:InvoicedQuantity>
<cbc:LineExtensionAmount currencyID="EUR">3.02</cbc:LineExtensionAmount>
<cac:Item>
<cbc:Name>ACHILLEA MILLEFOLIUM – DUIZENDBLAD - ‘Summer Pastels mix’</cbc:Name>
<cac:ClassifiedTaxCategory>
<cbc:ID>E</cbc:ID>
<cbc:Percent>0.00</cbc:Percent>
<cac:TaxScheme>
<cbc:ID>VAT</cbc:ID>
</cac:TaxScheme>
</cac:ClassifiedTaxCategory>
</cac:Item>
<cac:Price>
<cbc:PriceAmount currencyID="EUR">3.02</cbc:PriceAmount>
<cbc:BaseQuantity unitCode="C62">1.00</cbc:BaseQuantity>
</cac:Price>
</cac:InvoiceLine>
</Invoice>


Sorry it didn't work.

Thanks and have a nice evening.

Gossen

Please Log in or Create an account to join the conversation.

  • Posts: 19
  • Thank you received: 4
  • Hikashop Business
4 weeks 1 day ago #370689

I read a little bit about the tax category codes and I think the right one for my situation (Selling from the Netherlands to a business in Belgium) is the AE Vat Reverse Charge (Code specifying that the standard VAT rate is levied from the invoicee.)

But that doesn't mean that it is the right one for everybody I guess.

I am sorry that I can't help you more with this. I find it very hard to wrap my head around with all the unknown jargon used.

Gossen

Please Log in or Create an account to join the conversation.

  • Posts: 19
  • Thank you received: 4
  • Hikashop Business
4 weeks 1 day ago #370690

Ok. I checked, edited and checked with my local llm and the result is this:

<?xml version="1.0"?>
<Invoice xmlns="urn:oasis:names:specification:ubl:schema:xsd:Invoice-2"
xmlns:cbc="urn:oasis:names:specification:ubl:schema:xsd:CommonBasicComponents-2"
xmlns:cac="urn:oasis:names:specification:ubl:schema:xsd:CommonAggregateComponents-2">
<!-- UBL Version - Required for Peppol compliance -->
<cbc:UBLVersionID>2.1</cbc:UBLVersionID>

<!-- Customization ID - Indicates Peppol BIS 3.0 compliance -->
<cbc:CustomizationID>urn:cen.eu:en16931:2017#compliant#urn:fdc:peppol.eu:2017:poacc:billing:3.0</cbc:CustomizationID>

<!-- Profile ID - Peppol BIS Billing 3.0 -->
<cbc:ProfileID>urn:fdc:peppol.eu:2017:poacc:billing:01:1.0</cbc:ProfileID>

<!-- Invoice number - Unique identifier for this invoice -->
<cbc:ID>C1B0C83</cbc:ID>

<!-- Invoice date - When the invoice was issued -->
<cbc:IssueDate>2026-03-04</cbc:IssueDate>

<!-- Invoice type code - 380 = Commercial invoice -->
<cbc:InvoiceTypeCode>380</cbc:InvoiceTypeCode>

<!-- Currency code - EUR for this invoice -->
<cbc:DocumentCurrencyCode>EUR</cbc:DocumentCurrencyCode>

<!-- Order reference - Link to the sales order -->
<cac:OrderReference>
<cbc:ID>NA</cbc:ID> <!-- Order reference ID -->
<cbc:SalesOrderID>C1E1G56</cbc:SalesOrderID> <!-- Sales order number -->
</cac:OrderReference>

<!-- Supplier information -->
<cac:AccountingSupplierParty>
<cac:Party>
<!-- Supplier's Peppol endpoint ID -->
<cbc:EndpointID schemeID="9944">NL182610202B02</cbc:EndpointID>

<!-- Supplier's name -->
<cac:PartyName>
<cbc:Name>Bloem en Oogst</cbc:Name>
</cac:PartyName>

<!-- Supplier's address -->
<cac:PostalAddress>
<cbc:StreetName>3 van Zijlweg</cbc:StreetName> <!-- Street name -->
<cbc:CityName>Wapserveen</cbc:CityName> <!-- City -->
<cbc:PostalZone>8351HW</cbc:PostalZone> <!-- Postal code -->
<cac:Country>
<cbc:IdentificationCode>NL</cbc:IdentificationCode> <!-- Country code -->
</cac:Country>
</cac:PostalAddress>

<!-- Supplier's VAT information -->
<cac:PartyTaxScheme>
<cbc:CompanyID>NL182610202B02</cbc:CompanyID> <!-- Dutch VAT number -->
<cac:TaxScheme>
<cbc:ID>VAT</cbc:ID> <!-- Tax scheme identifier -->
</cac:TaxScheme>
</cac:PartyTaxScheme>

<!-- Supplier's legal entity information -->
<cac:PartyLegalEntity>
<cbc:RegistrationName>Bloem en Oogst</cbc:RegistrationName> <!-- Registered name -->
<cbc:CompanyID schemeID="0106">NL182610202B02</cbc:CompanyID> <!-- Dutch Chamber of Commerce number -->
</cac:PartyLegalEntity>

<!-- Supplier's contact information -->
<cac:Contact>
<cbc:Name>Eline Houtkamp</cbc:Name> <!-- Contact person -->
<cbc:Telephone>+31624897106</cbc:Telephone> <!-- Phone number -->
<cbc:ElectronicMail>This email address is being protected from spambots. You need JavaScript enabled to view it.</cbc:ElectronicMail> <!-- Email address -->
</cac:Contact>
</cac:Party>
</cac:AccountingSupplierParty>

<!-- Customer information -->
<cac:AccountingCustomerParty>
<cac:Party>
<!-- Customer's Peppol endpoint ID -->
<cbc:EndpointID schemeID="9925">5677</cbc:EndpointID>

<!-- Customer's name -->
<cac:PartyName>
<cbc:Name>gozz</cbc:Name>
</cac:PartyName>

<!-- Customer's address -->
<cac:PostalAddress>
<cbc:StreetName>hhj</cbc:StreetName> <!-- Street name -->
<cbc:AdditionalStreetName>7</cbc:AdditionalStreetName> <!-- House number -->
<cbc:CityName>sjsn</cbc:CityName> <!-- City -->
<cbc:PostalZone>7777jj</cbc:PostalZone> <!-- Postal code -->
<cac:Country>
<cbc:IdentificationCode>BE</cbc:IdentificationCode> <!-- Country code -->
</cac:Country>
</cac:PostalAddress>

<!-- Customer's VAT information -->
<cac:PartyTaxScheme>
<cbc:CompanyID>BE0123456789</cbc:CompanyID> <!-- Replace with customer's actual Belgian VAT number -->
<cac:TaxScheme>
<cbc:ID>VAT</cbc:ID> <!-- Tax scheme identifier -->
</cac:TaxScheme>
</cac:PartyTaxScheme>

<!-- Customer's legal entity information -->
<cac:PartyLegalEntity>
<cbc:RegistrationName>gozz</cbc:RegistrationName> <!-- Registered name -->
<cbc:CompanyID>0123456789</cbc:CompanyID> <!-- Replace with customer's actual 10-digit Belgian company number -->
</cac:PartyLegalEntity>

<!-- Customer's contact information -->
<cac:Contact>
<cbc:Name>Gossen rij</cbc:Name> <!-- Contact person -->
<cbc:Telephone>92737</cbc:Telephone> <!-- Phone number -->
<cbc:ElectronicMail>This email address is being protected from spambots. You need JavaScript enabled to view it.</cbc:ElectronicMail> <!-- Email address -->
</cac:Contact>
</cac:Party>
</cac:AccountingCustomerParty>

<!-- Payment information - Bancontact (online banking) -->
<cac:PaymentMeans>
<cbc:PaymentMeansCode>42</cbc:PaymentMeansCode> <!-- 42 = Online banking payment method -->
<cbc:PaymentID>BANCONTACT-123456789</cbc:PaymentID> <!-- Bancontact transaction reference (optional) -->
<cac:PayeeFinancialAccount>
<cbc:ID>NL99BANK1234567890</cbc:ID> <!-- Replace with your actual IBAN -->
</cac:PayeeFinancialAccount>
</cac:PaymentMeans>

<!-- Payment terms - Prepaid via Bancontact -->
<cac:PaymentTerms>
<cbc:Note>Prepaid via Bancontact (Transaction ID: BANCONTACT-123456789)</cbc:Note> <!-- Payment terms description -->
</cac:PaymentTerms>

<!-- Shipping charges -->
<cac:AllowanceCharge>
<cbc:ChargeIndicator>true</cbc:ChargeIndicator> <!-- true = charge, false = allowance -->
<cbc:AllowanceChargeReason>Shipping</cbc:AllowanceChargeReason> <!-- Reason for charge -->
<cbc:Amount currencyID="EUR">9.40</cbc:Amount> <!-- Shipping amount -->
<cac:TaxCategory>
<cbc:ID>AE</cbc:ID> <!-- AE = Reverse charge VAT category -->
<cbc:Percent>0.00</cbc:Percent> <!-- VAT percentage (0% for reverse charge) -->
<cac:TaxScheme>
<cbc:ID>VAT</cbc:ID> <!-- Tax scheme identifier -->
</cac:TaxScheme>
</cac:TaxCategory>
</cac:AllowanceCharge>

<!-- Tax information -->
<cac:TaxTotal>
<cbc:TaxAmount currencyID="EUR">0.00</cbc:TaxAmount> <!-- Total VAT amount (0.00 for reverse charge) -->
<cac:TaxSubtotal>
<cbc:TaxableAmount currencyID="EUR">12.42</cbc:TaxableAmount> <!-- Taxable amount -->
<cbc:TaxAmount currencyID="EUR">0.00</cbc:TaxAmount> <!-- VAT amount (0.00 for reverse charge) -->
<cac:TaxCategory>
<cbc:ID>AE</cbc:ID> <!-- AE = Reverse charge VAT category -->
<cbc:Percent>0.00</cbc:Percent> <!-- VAT percentage (0% for reverse charge) -->
<cbc:TaxExemptionReason>Reverse charge</cbc:TaxExemptionReason> <!-- Reason for VAT exemption -->
<cac:TaxScheme>
<cbc:ID>VAT</cbc:ID> <!-- Tax scheme identifier -->
</cac:TaxScheme>
</cac:TaxCategory>
</cac:TaxSubtotal>
</cac:TaxTotal>

<!-- Monetary totals -->
<cac:LegalMonetaryTotal>
<cbc:LineExtensionAmount currencyID="EUR">3.02</cbc:LineExtensionAmount> <!-- Sum of all line amounts -->
<cbc:TaxExclusiveAmount currencyID="EUR">12.42</cbc:TaxExclusiveAmount> <!-- Total amount excluding VAT -->
<cbc:TaxInclusiveAmount currencyID="EUR">12.42</cbc:TaxInclusiveAmount> <!-- Total amount including VAT -->
<cbc:AllowanceTotalAmount currencyID="EUR">0.00</cbc:AllowanceTotalAmount> <!-- Total allowance amount -->
<cbc:ChargeTotalAmount currencyID="EUR">9.40</cbc:ChargeTotalAmount> <!-- Total charge amount (shipping) -->
<cbc:PrepaidAmount currencyID="EUR">12.42</cbc:PrepaidAmount> <!-- Prepaid amount (full invoice amount) -->
<cbc:PayableAmount currencyID="EUR">0.00</cbc:PayableAmount> <!-- Amount due (0.00 because prepaid) -->
</cac:LegalMonetaryTotal>

<!-- Invoice line item -->
<cac:InvoiceLine>
<cbc:ID>0</cbc:ID> <!-- Line item number -->
<cbc:InvoicedQuantity unitCode="C62">1.00</cbc:InvoicedQuantity> <!-- Quantity (C62 = items) -->
<cbc:LineExtensionAmount currencyID="EUR">3.02</cbc:LineExtensionAmount> <!-- Line total amount -->

<!-- Product information -->
<cac:Item>
<cbc:Name>ACHILLEA MILLEFOLIUM – YARROW – ‘Summer Pastels mix’</cbc:Name> <!-- Product name -->
<cac:ClassifiedTaxCategory>
<cbc:ID>AE</cbc:ID> <!-- AE = Reverse charge VAT category -->
<cbc:Percent>0.00</cbc:Percent> <!-- VAT percentage (0% for reverse charge) -->
<cac:TaxScheme>
<cbc:ID>VAT</cbc:ID> <!-- Tax scheme identifier -->
</cac:TaxScheme>
</cac:ClassifiedTaxCategory>
</cac:Item>

<!-- Price information -->
<cac:Price>
<cbc:PriceAmount currencyID="EUR">3.02</cbc:PriceAmount> <!-- Unit price -->
<cbc:BaseQuantity unitCode="C62">1.00</cbc:BaseQuantity> <!-- Base quantity -->
</cac:Price>
</cac:InvoiceLine>
</Invoice>

It validates in the doc checker. I don't know if it's any use to you, but there you go.

Greets Gossen

Please Log in or Create an account to join the conversation.

  • Posts: 85392
  • Thank you received: 13956
  • MODERATOR
4 weeks 14 hours ago #370694

Hi,

Thank you for the detailed testing and the corrected XML, that was very helpful.

You were right, the plugin was using the "E" (Exempt) tax category code for tax-free B2B transactions, but the correct code per the Peppol standard is "AE" (VAT Reverse Charge). On top of that, the TaxSubtotal was still using the configured code "S" while the lines were getting "E", causing the category mismatch you observed.

In version 3.2.4, we've fixed that:
- Tax-exempt lines with a customer VAT number now use "AE" instead of "E", for both invoices and credit notes
- The TaxSubtotal tax category is now adjusted to match the lines, so there's no more mixing of "S" and "AE"
- A "Reverse charge" exemption reason is now included as required by BR-AE-10

Note that if you ever need a different code for specific products (like "K" for intra-community supply), you can set it via the "Tax category code field" option in the plugin settings, which lets you override the code per product.

Please Log in or Create an account to join the conversation.

  • Posts: 19
  • Thank you received: 4
  • Hikashop Business
3 weeks 6 days ago #370696

Hi Nicolas,

we're getting close.

Document validated as: Peppol BIS 3 UBL Invoice
3 errors
error [BR-AE-02]-An Invoice that contains an Invoice line (BG-25) where the Invoiced item VAT category code (BT-151) is "Reverse charge" shall contain the Seller VAT Identifier (BT-31), the Seller Tax registration identifier (BT-32) and/or the Seller tax representative VAT identifier (BT-63) and the Buyer VAT identifier (BT-48) and/or the Buyer legal registration identifier (BT-47).
location /ubl:Invoice[1]
test (exists(//cac:ClassifiedTaxCategory[normalize-space(cbc:ID) = 'AE'][cac:TaxScheme/normalize-space(upper-case(cbc:ID))='VAT']) and (exists(//cac:AccountingSupplierParty/cac:Party/cac:PartyTaxScheme/cbc:CompanyID) or exists(//cac:TaxRepresentativeParty/cac:PartyTaxScheme[cac:TaxScheme/(normalize-space(upper-case(cbc:ID)) = 'VAT')]/cbc:CompanyID)) and (exists(//cac:AccountingCustomerParty/cac:Party/cac:PartyTaxScheme[cac:TaxScheme/(normalize-space(upper-case(cbc:ID)) = 'VAT')]/cbc:CompanyID) or exists(//cac:AccountingCustomerParty/cac:Party/cac:PartyLegalEntity/cbc:CompanyID))) or not(exists(//cac:ClassifiedTaxCategory[normalize-space(cbc:ID) = 'AE'][cac:TaxScheme/normalize-space(upper-case(cbc:ID))='VAT']))
error [BR-AE-04]-An Invoice that contains a Document level charge (BG-21) where the Document level charge VAT category code (BT-102) is "Reverse charge" shall contain the Seller VAT Identifier (BT-31), the Seller tax registration identifier (BT-32) and/or the Seller tax representative VAT identifier (BT-63) and the Buyer VAT identifier (BT-48) and/or the Buyer legal registration identifier (BT-47).
location /ubl:Invoice[1]
test (exists(//cac:AllowanceCharge[cbc:ChargeIndicator=true()]/cac:TaxCategory[normalize-space(cbc:ID) = 'AE'][cac:TaxScheme/normalize-space(upper-case(cbc:ID))='VAT']) and (exists(//cac:AccountingSupplierParty/cac:Party/cac:PartyTaxScheme/cbc:CompanyID) or exists(//cac:TaxRepresentativeParty/cac:PartyTaxScheme[cac:TaxScheme/(normalize-space(upper-case(cbc:ID)) = 'VAT')]/cbc:CompanyID)) and (exists(//cac:AccountingCustomerParty/cac:Party/cac:PartyTaxScheme[cac:TaxScheme/(normalize-space(upper-case(cbc:ID)) = 'VAT')]/cbc:CompanyID) or exists(//cac:AccountingCustomerParty/cac:Party/cac:PartyLegalEntity/cbc:CompanyID))) or not(exists(//cac:AllowanceCharge[cbc:ChargeIndicator=true()]/cac:TaxCategory[normalize-space(cbc:ID) = 'AE'][cac:TaxScheme/normalize-space(upper-case(cbc:ID))='VAT']))
error [BR-AE-10]-A VAT breakdown (BG-23) with VAT Category code (BT-118) "Reverse charge" shall have a VAT exemption reason code (BT-121), meaning "Reverse charge" or the VAT exemption reason text (BT-120) "Reverse charge" (or the equivalent standard text in another language).
location /ubl:Invoice[1]/cac:TaxTotal[1]/cac:TaxSubtotal[1]/cac:TaxCategory[1]
test exists(cbc:TaxExemptionReason) or (exists(cbc:TaxExemptionReasonCode) )

The XML:

<?xml version="1.0"?>
<Invoice xmlns="urn:oasis:names:specification:ubl:schema:xsd:Invoice-2" xmlns:cbc="urn:oasis:names:specification:ubl:schema:xsd:CommonBasicComponents-2" xmlns:cac="urn:oasis:names:specification:ubl:schema:xsd:CommonAggregateComponents-2">
<cbc:UBLVersionID>2.1</cbc:UBLVersionID>
<cbc:CustomizationID>urn:cen.eu:en16931:2017#compliant#urn:fdc:peppol.eu:2017:poacc:billing:3.0</cbc:CustomizationID>
<cbc:ProfileID>urn:fdc:peppol.eu:2017:poacc:billing:01:1.0</cbc:ProfileID>
<cbc:ID>C1B0C83</cbc:ID>
<cbc:IssueDate>2026-03-04</cbc:IssueDate>
<cbc:InvoiceTypeCode>380</cbc:InvoiceTypeCode>
<cbc:DocumentCurrencyCode>EUR</cbc:DocumentCurrencyCode>
<cac:OrderReference>
<cbc:ID>NA</cbc:ID>
<cbc:SalesOrderID>C1E1G56</cbc:SalesOrderID>
</cac:OrderReference>
<cac:AccountingSupplierParty>
<cac:Party>
<cbc:EndpointID schemeID="9944">NL182610202B02</cbc:EndpointID>
<cac:PartyName>
<cbc:Name>Bloem en Oogst</cbc:Name>
</cac:PartyName>
<cac:PostalAddress>
<cbc:StreetName>3 van Zijlweg</cbc:StreetName>
<cbc:CityName>Wapserveen</cbc:CityName>
<cbc:PostalZone>8351HW</cbc:PostalZone>
<cac:Country>
<cbc:IdentificationCode>NL</cbc:IdentificationCode>
</cac:Country>
</cac:PostalAddress>
<cac:PartyTaxScheme>
<cbc:CompanyID>NL182610202B02</cbc:CompanyID>
<cac:TaxScheme>
<cbc:ID>VAT</cbc:ID>
</cac:TaxScheme>
</cac:PartyTaxScheme>
<cac:PartyLegalEntity>
<cbc:RegistrationName>Bloem en Oogst</cbc:RegistrationName>
<cbc:CompanyID schemeID="0106">NL182610202B02</cbc:CompanyID>
</cac:PartyLegalEntity>
<cac:Contact>
<cbc:Name>Eline Houtkamp</cbc:Name>
<cbc:Telephone>+31624897106</cbc:Telephone>
<cbc:ElectronicMail>This email address is being protected from spambots. You need JavaScript enabled to view it.</cbc:ElectronicMail>
</cac:Contact>
</cac:Party>
</cac:AccountingSupplierParty>
<cac:AccountingCustomerParty>
<cac:Party>
<cbc:EndpointID schemeID="9925">5677</cbc:EndpointID>
<cac:PartyName>
<cbc:Name>gozz</cbc:Name>
</cac:PartyName>
<cac:PostalAddress>
<cbc:StreetName>hhj</cbc:StreetName>
<cbc:AdditionalStreetName>7</cbc:AdditionalStreetName>
<cbc:CityName>sjsn</cbc:CityName>
<cbc:PostalZone>7777jj</cbc:PostalZone>
<cac:Country>
<cbc:IdentificationCode>BE</cbc:IdentificationCode>
</cac:Country>
</cac:PostalAddress>
<cac:PartyLegalEntity>
<cbc:RegistrationName>gozz</cbc:RegistrationName>
</cac:PartyLegalEntity>
<cac:Contact>
<cbc:Name>Gossen rij</cbc:Name>
<cbc:Telephone>92737</cbc:Telephone>
<cbc:ElectronicMail>This email address is being protected from spambots. You need JavaScript enabled to view it.</cbc:ElectronicMail>
</cac:Contact>
</cac:Party>
</cac:AccountingCustomerParty>
<cac:AllowanceCharge>
<cbc:ChargeIndicator>true</cbc:ChargeIndicator>
<cbc:AllowanceChargeReason>Verzending</cbc:AllowanceChargeReason>
<cbc:Amount currencyID="EUR">9.40</cbc:Amount>
<cac:TaxCategory>
<cbc:ID>AE</cbc:ID>
<cbc:Percent>0.00</cbc:Percent>
<cac:TaxScheme>
<cbc:ID>VAT</cbc:ID>
</cac:TaxScheme>
</cac:TaxCategory>
</cac:AllowanceCharge>
<cac:TaxTotal>
<cbc:TaxAmount currencyID="EUR">0.00</cbc:TaxAmount>
<cac:TaxSubtotal>
<cbc:TaxableAmount currencyID="EUR">12.42</cbc:TaxableAmount>
<cbc:TaxAmount currencyID="EUR">0.00</cbc:TaxAmount>
<cac:TaxCategory>
<cbc:ID>AE</cbc:ID>
<cbc:Percent>0.00</cbc:Percent>
<cac:TaxScheme>
<cbc:ID>VAT</cbc:ID>
</cac:TaxScheme>
</cac:TaxCategory>
</cac:TaxSubtotal>
</cac:TaxTotal>
<cac:LegalMonetaryTotal>
<cbc:LineExtensionAmount currencyID="EUR">3.02</cbc:LineExtensionAmount>
<cbc:TaxExclusiveAmount currencyID="EUR">12.42</cbc:TaxExclusiveAmount>
<cbc:TaxInclusiveAmount currencyID="EUR">12.42</cbc:TaxInclusiveAmount>
<cbc:AllowanceTotalAmount currencyID="EUR">0.00</cbc:AllowanceTotalAmount>
<cbc:ChargeTotalAmount currencyID="EUR">9.40</cbc:ChargeTotalAmount>
<cbc:PrepaidAmount currencyID="EUR">12.42</cbc:PrepaidAmount>
<cbc:PayableAmount currencyID="EUR">0.00</cbc:PayableAmount>
</cac:LegalMonetaryTotal>
<cac:InvoiceLine>
<cbc:ID>0</cbc:ID>
<cbc:InvoicedQuantity unitCode="C62">1.00</cbc:InvoicedQuantity>
<cbc:LineExtensionAmount currencyID="EUR">3.02</cbc:LineExtensionAmount>
<cac:Item>
<cbc:Name>ACHILLEA MILLEFOLIUM – DUIZENDBLAD - ‘Summer Pastels mix’</cbc:Name>
<cac:ClassifiedTaxCategory>
<cbc:ID>AE</cbc:ID>
<cbc:Percent>0.00</cbc:Percent>
<cac:TaxScheme>
<cbc:ID>VAT</cbc:ID>
</cac:TaxScheme>
</cac:ClassifiedTaxCategory>
</cac:Item>
<cac:Price>
<cbc:PriceAmount currencyID="EUR">3.02</cbc:PriceAmount>
<cbc:BaseQuantity unitCode="C62">1.00</cbc:BaseQuantity>
</cac:Price>
</cac:InvoiceLine>
</Invoice>


Thanks again.

Greets Gossen

Please Log in or Create an account to join the conversation.

Time to create page: 0.092 seconds
Powered by Kunena Forum