From a7a689880108d89f6d3087a1e086d4d06912e3a8 Mon Sep 17 00:00:00 2001 From: Jelte Jansen Date: Mon, 18 Sep 2023 17:47:30 +0200 Subject: [PATCH 01/21] Make sure NL-R-007 only fires on invoices, not on creditnotes (UBL) NL-R-007 requires that a payment means is provided, which only makes sense if there is a payment, i.e. for positive invoices. --- rules/sch/PEPPOL-EN16931-UBL.sch | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/rules/sch/PEPPOL-EN16931-UBL.sch b/rules/sch/PEPPOL-EN16931-UBL.sch index bef742f5..34372a6f 100644 --- a/rules/sch/PEPPOL-EN16931-UBL.sch +++ b/rules/sch/PEPPOL-EN16931-UBL.sch @@ -635,7 +635,7 @@ Last update: 2023 May release 3.0.15. [NL-R-006] For suppliers in the Netherlands, if the fiscal representative is in the Netherlands, the representative's address (cac:TaxRepresentativeParty/cac:PostalAddress) MUST contain street name (cbc:StreetName), city (cbc:CityName) and post code (cbc:PostalZone) - + [NL-R-007] For suppliers in the Netherlands, the supplier MUST provide a means of payment (cac:PaymentMeans) if the payment is from customer to supplier From 5cc83d53e12c58385f9b43398d4c6693b8d742b2 Mon Sep 17 00:00:00 2001 From: Jelte Jansen Date: Mon, 18 Sep 2023 17:48:48 +0200 Subject: [PATCH 02/21] Make sure NL-R-007 only fires on invoices, not on creditnotes (CII) NL-R-007 requires that a payment means is provided, which only makes sense if there is a payment, i.e. for positive invoices (typecode != 381). --- rules/sch/PEPPOL-EN16931-CII.sch | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/rules/sch/PEPPOL-EN16931-CII.sch b/rules/sch/PEPPOL-EN16931-CII.sch index 3c855f7e..d7a8410f 100644 --- a/rules/sch/PEPPOL-EN16931-CII.sch +++ b/rules/sch/PEPPOL-EN16931-CII.sch @@ -482,7 +482,7 @@ Last update: 2022 May release 3.0.13. - [NL-R-007] For suppliers in the Netherlands, the supplier MUST provide a means of payment (ram:SpecifiedTradeSettlementPaymentMeans) if the payment is from customer to supplier + [NL-R-007] For suppliers in the Netherlands, the supplier MUST provide a means of payment (ram:SpecifiedTradeSettlementPaymentMeans) if the payment is from customer to supplier From 6c84f6e1fb15fb4deb45f34bde2cd326e8b08606 Mon Sep 17 00:00:00 2001 From: Jelte Jansen Date: Wed, 20 Sep 2023 14:46:05 +0200 Subject: [PATCH 03/21] Add test case for update to NL-R-007 to UBL unit tests --- rules/unit-UBL-NL/NL-R-007.xml | 177 ++++++++++++++++++++++++++++++++- 1 file changed, 173 insertions(+), 4 deletions(-) diff --git a/rules/unit-UBL-NL/NL-R-007.xml b/rules/unit-UBL-NL/NL-R-007.xml index 035676e4..66c8161b 100755 --- a/rules/unit-UBL-NL/NL-R-007.xml +++ b/rules/unit-UBL-NL/NL-R-007.xml @@ -1,10 +1,11 @@ - For suppliers in the Netherlands, the supplier MUST provide a means of payment (cac:PaymentMeans) if the payment is from customer to supplier + For suppliers in the Netherlands, the supplier MUST provide a means of payment (cac:PaymentMeans) if the payment is from customer to supplier NL-R-007 + NL-R-007 @@ -181,7 +182,6 @@ - 17409.09 @@ -287,6 +287,7 @@ + NL-R-007 @@ -454,7 +455,6 @@ - 17409.09 @@ -559,4 +559,173 @@ - + + + + NL-R-007 + + + 2.1 + urn:cen.eu:en16931:2017#compliant#urn:fdc:peppol.eu:2017:poacc:billing:3.0 + urn:fdc:peppol.eu:2017:poacc:billing:01:1.0 + 12115118 + 2015-01-09 + 381 + + Alle leveringen zijn franco. Alle prijzen zijn incl. BTW. Betalingstermijn: 14 dagen netto. Prijswijzigingen voorbehouden. Op al onze + aanbiedingen, leveringen en overeenkomsten zijn van toepassing in de algemene verkoop en leveringsvoorwaarden. Gedeponeerd bij de K.v.K. te + Amsterdam 25-04-'85##Delivery terms + + EUR + 47806 + + 47806 + + + + 46568 + + + + + SITEST00000 + + Simplerstraat 1 + InvoicingStad + 1111 ZZ + + NL + + + + NL1111.11.111.B.01 + + VAT + + + + SimplerInvoicing + SITEST00000 + + + + + + 11111111 + + 10202 + + + Teststraat 123 + Grotestad + 1111 AA + + NL + + + + Ontvanger + 11111111 + + + + + Credit note + + + 27.00 + + 100.00 + 21.00 + + S + 21 + + VAT + + + + + 100.00 + 6.00 + + S + 6 + + VAT + + + + + + 200.00 + 200.00 + 227.00 + 227.00 + + + 1 + 4 + 200.00 + + SimplerInvoicing test invoice + + 166022 + + + S + 21 + + VAT + + + + + 50.00 + + + + 2 + 1 + 100.00 + + Testing procedures + + 661813 + + + S + 6 + + VAT + + + + + 100.00 + + + + 3 + -1 + -100.00 + + Previous Test CreditNote returned + + 438146 + + + S + 21 + + VAT + + + + + 100.00 + + + + + \ No newline at end of file From e63340893cc03e3ff2cb81839a81c930c065a3c1 Mon Sep 17 00:00:00 2001 From: Jelte Jansen Date: Wed, 20 Sep 2023 14:49:19 +0200 Subject: [PATCH 04/21] Add test case for update to NL-R-007 to CII unit tests --- rules/unit-CII-NL/NL-R-007.xml | 251 +++++++++++++++++++++++++++------ 1 file changed, 208 insertions(+), 43 deletions(-) diff --git a/rules/unit-CII-NL/NL-R-007.xml b/rules/unit-CII-NL/NL-R-007.xml index 80aee1b4..46dfa9f6 100755 --- a/rules/unit-CII-NL/NL-R-007.xml +++ b/rules/unit-CII-NL/NL-R-007.xml @@ -1,21 +1,15 @@ - For suppliers in the Netherlands, the supplier MUST provide a means of payment (ram:SpecifiedTradeSettlementPaymentMeans) if the payment is from customer to supplier + For suppliers in the Netherlands, the supplier MUST provide a means of payment (ram:SpecifiedTradeSettlementPaymentMeans) if the payment is from customer to supplier NL-R-007 + NL-R-007 - - + urn:fdc:peppol.eu:2017:poacc:billing:01:1.0 @@ -24,7 +18,6 @@ urn:cen.eu:en16931:2017#compliant#urn:fdc:peppol.eu:2017:poacc:billing:3.0 - 12345 380 @@ -32,9 +25,7 @@ 20210101 - - 1 @@ -61,7 +52,6 @@ - 2 @@ -88,7 +78,6 @@ - 123_reference @@ -109,7 +98,6 @@ NL1111111111B01 - Buyers B.V. @@ -123,17 +111,14 @@ - Trade Party - 08/00355 SEK - 30 @@ -143,7 +128,6 @@ BANKSBIC - 63 VAT @@ -151,7 +135,6 @@ S 21 - false @@ -182,7 +165,6 @@ 21 - 20180307 @@ -199,21 +181,14 @@ - + NL-R-007 - - + urn:fdc:peppol.eu:2017:poacc:billing:01:1.0 @@ -222,7 +197,6 @@ urn:cen.eu:en16931:2017#compliant#urn:fdc:peppol.eu:2017:poacc:billing:3.0 - 12345 380 @@ -230,9 +204,7 @@ 20210101 - - 1 @@ -259,7 +231,6 @@ - 2 @@ -286,7 +257,6 @@ - 123_reference @@ -307,7 +277,6 @@ NL1111111111B01 - Buyers B.V. @@ -321,17 +290,14 @@ - Trade Party - 08/00355 SEK - 63 VAT @@ -339,7 +305,6 @@ S 21 - false @@ -370,7 +335,6 @@ 21 - 20180307 @@ -387,7 +351,208 @@ - - + + + + NL-R-007 + + + + + urn:fdc:peppol.eu:2017:poacc:billing:01:1.0 + + + urn:cen.eu:en16931:2017#compliant#urn:fdc:peppol.eu:2017:poacc:billing:3.0 + + + + 2018210 + 381 + + 20180208 + + + + + + 1 + + + Printing paper + + + + 1 + + + + 1000 + + + + VAT + S + 25 + + + 1000 + + + + + + 2 + + + Parker Pen + + + + 5 + + + + 100 + + + + VAT + S + 25 + + + 500 + + + + + + 3 + + + Eraser P-97 + + + + 5 + + + + 500 + + + + VAT + S + 12 + + + 2500 + + + + + Ref 123 + + Allsälj AB + + 12345678 + + + 1234AA + SellerStreet 1 + Commercity + NL + + + 12345678 + + + SE123456789001 + + + Godkänd för F-skatt + + + + Buyercompany ltd + + DK + + + 87654321 + + + + + + 08/00355 + SEK + + 375 + VAT + 1500 + S + 25 + + + 300 + VAT + 2500 + S + 12 + + + + false + + 10 + 0 + 0 + 95 + Loyal customer + + VAT + S + 25 + + + + + true + + 10 + 0 + 0 + ABL + Packaging + + VAT + S + 25 + + + + + 20180307 + + + + 4000 + 0 + 0 + 4000 + 675 + 4675 + 4675 + + + 12345 + + + + + + \ No newline at end of file From 7b5032fb2917ed5fc857877c8af6713e99eb3255 Mon Sep 17 00:00:00 2001 From: Jelte Jansen Date: Mon, 25 Sep 2023 14:39:17 +0200 Subject: [PATCH 05/21] Do make PaymentMeans mandatory for negative CreditNote (UBL) Addendum to the fix in a7a689880108d89f6d3087a1e086d4d06912e3a8, in case the CreditNote itself is negative, the payment means should be required. --- rules/sch/PEPPOL-EN16931-UBL.sch | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/rules/sch/PEPPOL-EN16931-UBL.sch b/rules/sch/PEPPOL-EN16931-UBL.sch index 34372a6f..5b4be523 100644 --- a/rules/sch/PEPPOL-EN16931-UBL.sch +++ b/rules/sch/PEPPOL-EN16931-UBL.sch @@ -635,9 +635,9 @@ Last update: 2023 May release 3.0.15. [NL-R-006] For suppliers in the Netherlands, if the fiscal representative is in the Netherlands, the representative's address (cac:TaxRepresentativeParty/cac:PostalAddress) MUST contain street name (cbc:StreetName), city (cbc:CityName) and post code (cbc:PostalZone) - + - [NL-R-007] For suppliers in the Netherlands, the supplier MUST provide a means of payment (cac:PaymentMeans) if the payment is from customer to supplier + [NL-R-007] For suppliers in the Netherlands, the supplier MUST provide a means of payment (cac:PaymentMeans) if the payment is from customer to supplier From edc57436a028e4690a990041fbcd6c83888695a3 Mon Sep 17 00:00:00 2001 From: Jelte Jansen Date: Mon, 25 Sep 2023 16:01:47 +0200 Subject: [PATCH 06/21] Do make PaymentMeans mandatory for negative CreditNote (CII) Addendum to the fix in 5cc83d53e12c58385f9b43398d4c6693b8d742b2, in case the CreditNote itself is negative, the payment means should be required. --- rules/sch/PEPPOL-EN16931-CII.sch | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/rules/sch/PEPPOL-EN16931-CII.sch b/rules/sch/PEPPOL-EN16931-CII.sch index d7a8410f..003726a2 100644 --- a/rules/sch/PEPPOL-EN16931-CII.sch +++ b/rules/sch/PEPPOL-EN16931-CII.sch @@ -482,7 +482,11 @@ Last update: 2022 May release 3.0.13. - [NL-R-007] For suppliers in the Netherlands, the supplier MUST provide a means of payment (ram:SpecifiedTradeSettlementPaymentMeans) if the payment is from customer to supplier + [NL-R-007] For suppliers in the Netherlands, the supplier MUST provide a means of payment (ram:SpecifiedTradeSettlementPaymentMeans) if the payment is from customer to supplier From 8a1dae1f41a6b6c0faf4fb89b713aebc52bb26a3 Mon Sep 17 00:00:00 2001 From: Jelte Jansen Date: Mon, 25 Sep 2023 16:07:13 +0200 Subject: [PATCH 07/21] Testcase updates Add additional error cases for the fixes in commits 7b5032fb2917ed5fc857877c8af6713e99eb3255 and edc57436a028e4690a990041fbcd6c83888695a3 --- rules/unit-CII-NL/NL-R-007.xml | 202 +++++++++++++++++++++++++++++++++ rules/unit-UBL-NL/NL-R-007.xml | 169 +++++++++++++++++++++++++++ 2 files changed, 371 insertions(+) diff --git a/rules/unit-CII-NL/NL-R-007.xml b/rules/unit-CII-NL/NL-R-007.xml index 46dfa9f6..651e599a 100755 --- a/rules/unit-CII-NL/NL-R-007.xml +++ b/rules/unit-CII-NL/NL-R-007.xml @@ -555,4 +555,206 @@ + + + + NL-R-007 + + + + + urn:fdc:peppol.eu:2017:poacc:billing:01:1.0 + + + urn:cen.eu:en16931:2017#compliant#urn:fdc:peppol.eu:2017:poacc:billing:3.0 + + + + 2018210 + 381 + + 20180208 + + + + + + 1 + + + Printing paper + + + + 1 + + + + -1000 + + + + VAT + S + 25 + + + -1000 + + + + + + 2 + + + Parker Pen + + + + 5 + + + + -100 + + + + VAT + S + 25 + + + -500 + + + + + + 3 + + + Eraser P-97 + + + + 5 + + + + -500 + + + + VAT + S + 12 + + + -2500 + + + + + Ref 123 + + Allsälj AB + + 12345678 + + + 1234AA + SellerStreet 1 + Commercity + NL + + + 12345678 + + + SE123456789001 + + + Godkänd för F-skatt + + + + Buyercompany ltd + + DK + + + 87654321 + + + + + + 08/00355 + SEK + + -375 + VAT + -1500 + S + 25 + + + -300 + VAT + -2500 + S + 12 + + + + false + + 10 + 0 + 0 + 95 + Loyal customer + + VAT + S + 25 + + + + + true + + 10 + 0 + 0 + ABL + Packaging + + VAT + S + 25 + + + + + 20180307 + + + + -4000 + 0 + 0 + -4000 + -675 + -4675 + -4675 + + + 12345 + + + + + \ No newline at end of file diff --git a/rules/unit-UBL-NL/NL-R-007.xml b/rules/unit-UBL-NL/NL-R-007.xml index 66c8161b..f9704fb1 100755 --- a/rules/unit-UBL-NL/NL-R-007.xml +++ b/rules/unit-UBL-NL/NL-R-007.xml @@ -728,4 +728,173 @@ + + + + NL-R-007 + + + 2.1 + urn:cen.eu:en16931:2017#compliant#urn:fdc:peppol.eu:2017:poacc:billing:3.0 + urn:fdc:peppol.eu:2017:poacc:billing:01:1.0 + 12115118 + 2015-01-09 + 381 + + Alle leveringen zijn franco. Alle prijzen zijn incl. BTW. Betalingstermijn: 14 dagen netto. Prijswijzigingen voorbehouden. Op al onze + aanbiedingen, leveringen en overeenkomsten zijn van toepassing in de algemene verkoop en leveringsvoorwaarden. Gedeponeerd bij de K.v.K. te + Amsterdam 25-04-'85##Delivery terms + + EUR + 47806 + + 47806 + + + + 46568 + + + + + SITEST00000 + + Simplerstraat 1 + InvoicingStad + 1111 ZZ + + NL + + + + NL1111.11.111.B.01 + + VAT + + + + SimplerInvoicing + SITEST00000 + + + + + + 11111111 + + 10202 + + + Teststraat 123 + Grotestad + 1111 AA + + NL + + + + Ontvanger + 11111111 + + + + + Credit note + + + -27.00 + + -100.00 + -21.00 + + S + 21 + + VAT + + + + + -100.00 + -6.00 + + S + 6 + + VAT + + + + + + -200.00 + -200.00 + -227.00 + -227.00 + + + 1 + -4 + -200.00 + + SimplerInvoicing test invoice + + 166022 + + + S + 21 + + VAT + + + + + 50.00 + + + + 2 + -1 + -100.00 + + Testing procedures + + 661813 + + + S + 6 + + VAT + + + + + 100.00 + + + + 3 + 1 + 100.00 + + Previous Test CreditNote returned + + 438146 + + + S + 21 + + VAT + + + + + 100.00 + + + + \ No newline at end of file From f866cf4db60710cd1baa4f5491d7a269db981dbe Mon Sep 17 00:00:00 2001 From: Martin Forsberg Date: Fri, 9 Feb 2024 14:56:56 +0100 Subject: [PATCH 08/21] Prepared release (empty) notes for 2024 May release --- guide/release-notes/main.adoc | 2 ++ guide/release-notes/v3.0.17.adoc | 11 +++++++++++ 2 files changed, 13 insertions(+) create mode 100644 guide/release-notes/v3.0.17.adoc diff --git a/guide/release-notes/main.adoc b/guide/release-notes/main.adoc index 41d5e6cb..b61fa451 100644 --- a/guide/release-notes/main.adoc +++ b/guide/release-notes/main.adoc @@ -15,6 +15,8 @@ IMPORTANT: Changes in code lists are also reflected by changes in the validation :leveloffset: +1 +include::v3.0.17.adoc[] + include::v3.0.16.adoc[] include::v3.0.15.adoc[] diff --git a/guide/release-notes/v3.0.17.adoc b/guide/release-notes/v3.0.17.adoc new file mode 100644 index 00000000..7e38e4c5 --- /dev/null +++ b/guide/release-notes/v3.0.17.adoc @@ -0,0 +1,11 @@ += Version 3.0.17 +[horizontal] +Release date:: May 2024 + +== Changes to BIS document + + +== Changes to code lists and validation artefacts + + +== EN 16931 schematrons updated From d92a40b48c55fe7799f4dddbba5a6a7ffba9c00c Mon Sep 17 00:00:00 2001 From: Martin Forsberg Date: Fri, 9 Feb 2024 16:32:17 +0100 Subject: [PATCH 09/21] POACC-735 SE rule for check digit --- rules/sch/PEPPOL-EN16931-UBL.sch | 27 +- rules/unit-UBL-PEPPOL/PEPPOL-COMMON-R049.xml | 15 +- rules/unit-UBL-SE/UBL-IN_SE-R-013.xml | 311 +++++++++++++++++++ 3 files changed, 351 insertions(+), 2 deletions(-) create mode 100644 rules/unit-UBL-SE/UBL-IN_SE-R-013.xml diff --git a/rules/sch/PEPPOL-EN16931-UBL.sch b/rules/sch/PEPPOL-EN16931-UBL.sch index afb328cb..1749acad 100644 --- a/rules/sch/PEPPOL-EN16931-UBL.sch +++ b/rules/sch/PEPPOL-EN16931-UBL.sch @@ -196,6 +196,30 @@ Last update: 2023 May release 3.0.15. (number($digits[1])*256) "/> + + + + + + + + + + + + + + + + + + @@ -362,7 +386,7 @@ Last update: 2023 May release 3.0.15. Italian VAT Code (Partita Iva) must be stated in the correct format --> - Swedish organization number MUST be stated in the correct format. + Swedish organization number MUST be stated in the correct format. Australian Business Number (ABN) MUST be stated in the correct format. @@ -471,6 +495,7 @@ Last update: 2023 May release 3.0.15. Swedish organisation numbers should be numeric. Swedish organisation numbers consist of 10 characters. + The last digit of a Swedish organization number must be valid according to the Luhn algorithm. For Swedish suppliers, when using Seller tax registration identifier, 'Godkänd för F-skatt' must be stated diff --git a/rules/unit-UBL-PEPPOL/PEPPOL-COMMON-R049.xml b/rules/unit-UBL-PEPPOL/PEPPOL-COMMON-R049.xml index a3c6b8c3..189c8f74 100644 --- a/rules/unit-UBL-PEPPOL/PEPPOL-COMMON-R049.xml +++ b/rules/unit-UBL-PEPPOL/PEPPOL-COMMON-R049.xml @@ -13,7 +13,7 @@ - 5566221100 + 2021005489 @@ -46,4 +46,17 @@ + + + PEPPOL-COMMON-R049 + + + + + 2021005480 + + + + + diff --git a/rules/unit-UBL-SE/UBL-IN_SE-R-013.xml b/rules/unit-UBL-SE/UBL-IN_SE-R-013.xml new file mode 100644 index 00000000..d9d6e23b --- /dev/null +++ b/rules/unit-UBL-SE/UBL-IN_SE-R-013.xml @@ -0,0 +1,311 @@ + + + + The last digit of a Swedish organization number must be valid according to the Luhn algorithm. + SE-R-013 + + + + SE-R-013 + + + + urn:cen.eu:en16931:2017#compliant#urn:fdc:peppol.eu:2017:poacc:billing:3.0 + urn:fdc:peppol.eu:2017:poacc:billing:01:1.0 + 2018210 + 2018-02-08 + 2018-03-07 + 380 + Testfil för kontroll av svenska valideringsregler + SEK + BuyerRef 123 + + + + 2021005489 + + Storgatan 1 + Stockholm + 11122 + + SE + + + + Godkänd för F-skatt + + TAX + + + + SE123456789001 + + VAT + + + + Allsälj AB + 2021005489 + Säte: Stockholm + + + + + + + 2021005489 + + Kommunteknisk service + + + Lilla gränd 9 + Stockholm + 10203 + + SE + + + + Kommunens Tekniska Bolag AB + 2021005489 + + + + + + 30 + 08/00355 + + 1234567 + Account name + + 9999 + + + + + + false + Rabatt + 11 + + S + 25 + + VAT + + + + + true + Förvaring + 11 + + S + 25 + + VAT + + + + + + 25 + + 100 + 25 + + S + 25 + + VAT + + + + + + + 100 + 100 + 125 + + 11 + 11 + 125 + + + + 1 + 5 + 100 + + Utbytesstol + + S + 25 + + VAT + + + + + 20 + + + + + + + + + + SE-R-013 + + + urn:cen.eu:en16931:2017#compliant#urn:fdc:peppol.eu:2017:poacc:billing:3.0 + urn:fdc:peppol.eu:2017:poacc:billing:01:1.0 + 2018210 + 2018-02-08 + 2018-03-07 + 380 + Testfil för kontroll av svenska valideringsregler + SEK + BuyerRef 123 + + + + 2021005489 + + Storgatan 1 + Stockholm + 11122 + + SE + + + + SE123456789001 + + VAT + + + + Allsälj AB + 2021005480 + Säte: Stockholm + + + + + + + 2021005489 + + Kommunteknisk service + + + Lilla gränd 9 + Stockholm + 10203 + + SE + + + + Kommunens Tekniska Bolag AB + 1234512345 + + + + + + 30 + 08/00355 + + 1234567 + Account name + + 9999 + + + + + + false + Rabatt + 11 + + S + 25 + + VAT + + + + + true + Förvaring + 11 + + S + 25 + + VAT + + + + + + 25 + + 100 + 25 + + S + 25 + + VAT + + + + + + + 100 + 100 + 125 + + 11 + 11 + 125 + + + + 1 + 5 + 100 + + Utbytesstol + + S + 25 + + VAT + + + + + 20 + + + + + + + From 42735f26ebbb7b17bd695c9f9b60ae03cc52db3f Mon Sep 17 00:00:00 2001 From: Martin Forsberg Date: Fri, 9 Feb 2024 16:59:37 +0100 Subject: [PATCH 10/21] handlng of non-numeric value --- rules/sch/PEPPOL-EN16931-UBL.sch | 41 +++++++++++++++++--------------- 1 file changed, 22 insertions(+), 19 deletions(-) diff --git a/rules/sch/PEPPOL-EN16931-UBL.sch b/rules/sch/PEPPOL-EN16931-UBL.sch index 1749acad..59323803 100644 --- a/rules/sch/PEPPOL-EN16931-UBL.sch +++ b/rules/sch/PEPPOL-EN16931-UBL.sch @@ -200,25 +200,28 @@ Last update: 2023 May release 3.0.15. - - - - - - - - - - - - - + + + + + + + + + + + + + + + + From 6f0a412933c80fe325722d1145c145c716475361 Mon Sep 17 00:00:00 2001 From: Martin Forsberg Date: Fri, 9 Feb 2024 17:11:10 +0100 Subject: [PATCH 11/21] Added rule and test case for CII --- rules/sch/PEPPOL-EN16931-CII.sch | 31 +- rules/unit-CII-PEPPOL/PEPPOL-COMMON-R049.xml | 30 +- rules/unit-CII-SE/CII-IN_SE-R-013.xml | 494 +++++++++++++++++++ 3 files changed, 552 insertions(+), 3 deletions(-) create mode 100644 rules/unit-CII-SE/CII-IN_SE-R-013.xml diff --git a/rules/sch/PEPPOL-EN16931-CII.sch b/rules/sch/PEPPOL-EN16931-CII.sch index 515b276c..28c3f363 100644 --- a/rules/sch/PEPPOL-EN16931-CII.sch +++ b/rules/sch/PEPPOL-EN16931-CII.sch @@ -171,6 +171,34 @@ Last update: 2022 May release 3.0.13. ((string-to-codepoints(substring($val,11,1)) - 48) * 19)) mod 89 = 0 "/> + + + + + + + + + + + + + + + + + + + + + + Business process MUST be provided. @@ -304,7 +332,7 @@ Last update: 2022 May release 3.0.13. Italian VAT Code (Partita Iva) must be stated in the correct format - Swedish organization number MUST be stated in the correct format. + Swedish organization number MUST be stated in the correct format. Australian Business Number (ABN) MUST be stated in the correct format. @@ -417,6 +445,7 @@ Last update: 2022 May release 3.0.13. Swedish organisation numbers should be numeric. Swedish organisation numbers consist of 10 characters. + The last digit of a Swedish organization number must be valid according to the Luhn algorithm. For Swedish suppliers, when using Seller tax registration identifier, 'Godkänd för F-skatt' must be stated diff --git a/rules/unit-CII-PEPPOL/PEPPOL-COMMON-R049.xml b/rules/unit-CII-PEPPOL/PEPPOL-COMMON-R049.xml index 091a97c6..837bbe39 100644 --- a/rules/unit-CII-PEPPOL/PEPPOL-COMMON-R049.xml +++ b/rules/unit-CII-PEPPOL/PEPPOL-COMMON-R049.xml @@ -22,12 +22,12 @@ - 5544332211 + 2021005489 - 5544332211 + 2021005489 @@ -91,6 +91,32 @@ + + + PEPPOL-COMMON-R049 + + + + + + 380 + + + + + + 2021005480 + + + + + + + diff --git a/rules/unit-CII-SE/CII-IN_SE-R-013.xml b/rules/unit-CII-SE/CII-IN_SE-R-013.xml new file mode 100644 index 00000000..ec76bdec --- /dev/null +++ b/rules/unit-CII-SE/CII-IN_SE-R-013.xml @@ -0,0 +1,494 @@ + + + + The last digit of a Swedish organization number must be valid according to the Luhn algorithm. + SE-R-013 + + + + SE-R-013 + + + + + + + urn:fdc:peppol.eu:2017:poacc:billing:01:1.0 + + + urn:cen.eu:en16931:2017#compliant#urn:fdc:peppol.eu:2017:poacc:billing:3.0 + + + + + 2018210 + 380 + + 20180208 + + + + + + + + 1 + + + Printing paper + + + + 1 + + + + 1000 + + + + VAT + S + 25 + + + 1000 + + + + + + + 2 + + + Parker Pen + + + + 5 + + + + 100 + + + + VAT + S + 25 + + + 500 + + + + + + + 3 + + + Eraser P-97 + + + + 5 + + + + 500 + + + + VAT + S + 12 + + + 2500 + + + + + + Ref 123 + + Allsälj AB + + 2021005489 + + + SE + + + 2021005489 + + + SE123456789001 + + + Godkänd för F-skatt + + + + + Buyercompany ltd + + DK + + + 2021005489 + + + + + + + + 08/00355 + SEK + + + 30 + + 123456 + + + BANKSBIC + + + + 30 + + 1234567 + + + SE:BANKGIRO + + + + 30 + + 12345678 + + + SE:PLUSGIRO + + + + + 375 + VAT + 1500 + S + 25 + + + 300 + VAT + 2500 + S + 12 + + + + + false + + 10 + 0 + 0 + 95 + Loyal customer + + VAT + S + 25 + + + + + true + + 10 + 0 + 0 + ABL + Packaging + + VAT + S + 25 + + + + + + 20180307 + + + + 4000 + 0 + 0 + 4000 + 675 + 4675 + 4675 + + + + + + + + + + SE-R-004 + + + + + + urn:fdc:peppol.eu:2017:poacc:billing:01:1.0 + + + urn:cen.eu:en16931:2017#compliant#urn:fdc:peppol.eu:2017:poacc:billing:3.0 + + + + + 2018210 + 380 + + 20180208 + + + + + + + + 1 + + + Printing paper + + + + 1 + + + + 1000 + + + + VAT + S + 25 + + + 1000 + + + + + + + 2 + + + Parker Pen + + + + 5 + + + + 100 + + + + VAT + S + 25 + + + 500 + + + + + + + 3 + + + Eraser P-97 + + + + 5 + + + + 500 + + + + VAT + S + 12 + + + 2500 + + + + + + Ref 123 + + Allsälj AB + + 2021005480 + + + SE + + + 2021005489 + + + SE123456789001 + + + + + Buyercompany ltd + + DK + + + 2021005489 + + + + + + + + 08/00355 + SEK + + + 30 + + 123456 + + + BANKSBIC + + + + 30 + + 1234567 + + + SE:BANKGIRO + + + + 30 + + 12345 + + + SE:PLUSGIRO + + + + + 375 + VAT + 1500 + S + 25 + + + 300 + VAT + 2500 + S + 12 + + + + + false + + 10 + 0 + 0 + 95 + Loyal customer + + VAT + S + 25 + + + + + true + + 10 + 0 + 0 + ABL + Packaging + + VAT + S + 25 + + + + + + 20180307 + + + + 4000 + 0 + 0 + 4000 + 675 + 4675 + 4675 + + + + + + + + + From 539fc6257378347d49b2ea627b646c2a163f7975 Mon Sep 17 00:00:00 2001 From: Martin Forsberg Date: Sun, 11 Feb 2024 10:42:08 +0100 Subject: [PATCH 12/21] Added rule reference and updated release notes --- guide/release-notes/v3.0.17.adoc | 1 + structure/syntax/part/supplier-party.xml | 1 + 2 files changed, 2 insertions(+) diff --git a/guide/release-notes/v3.0.17.adoc b/guide/release-notes/v3.0.17.adoc index 7e38e4c5..1706ca88 100644 --- a/guide/release-notes/v3.0.17.adoc +++ b/guide/release-notes/v3.0.17.adoc @@ -7,5 +7,6 @@ Release date:: May 2024 == Changes to code lists and validation artefacts +* Added new Swedish rule (SE-R-013) for validation of the check number of a Swedish Organization number. The rule is introduced as severity warning. All rules which verifies the format of Organization numbers (SE-R-003, SE-R-004 and SE-R-013) will be changed to severity fatal in next release. == EN 16931 schematrons updated diff --git a/structure/syntax/part/supplier-party.xml b/structure/syntax/part/supplier-party.xml index 2412656c..793e4157 100644 --- a/structure/syntax/part/supplier-party.xml +++ b/structure/syntax/part/supplier-party.xml @@ -300,6 +300,7 @@ DK-R-014 SE-R-003 SE-R-004 + SE-R-013 schemeID Seller legal registration identifier identification scheme identifier From b174290cbe644a4523cc1251d2660fd2d7b7f5c8 Mon Sep 17 00:00:00 2001 From: Martin Forsberg Date: Thu, 21 Mar 2024 10:44:35 +0100 Subject: [PATCH 13/21] POACC-735, missed one thing in the release notes --- guide/release-notes/v3.0.17.adoc | 2 ++ 1 file changed, 2 insertions(+) diff --git a/guide/release-notes/v3.0.17.adoc b/guide/release-notes/v3.0.17.adoc index 1706ca88..65d2fdb3 100644 --- a/guide/release-notes/v3.0.17.adoc +++ b/guide/release-notes/v3.0.17.adoc @@ -9,4 +9,6 @@ Release date:: May 2024 * Added new Swedish rule (SE-R-013) for validation of the check number of a Swedish Organization number. The rule is introduced as severity warning. All rules which verifies the format of Organization numbers (SE-R-003, SE-R-004 and SE-R-013) will be changed to severity fatal in next release. +* Update of PEPPOL-COMMON-R049 which validates identifiers using ICD/EAS 0007. The change is adding validation of the check number of a Swedish Organization number. + == EN 16931 schematrons updated From 3c9ecda2c7d7f4f324b921e2fb48fcff3d946f2a Mon Sep 17 00:00:00 2001 From: Jerry Dimitriou Date: Mon, 1 Apr 2024 15:18:27 +0300 Subject: [PATCH 14/21] Update v3.0.17.adoc --- guide/release-notes/v3.0.17.adoc | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/guide/release-notes/v3.0.17.adoc b/guide/release-notes/v3.0.17.adoc index 65d2fdb3..3a32df9b 100644 --- a/guide/release-notes/v3.0.17.adoc +++ b/guide/release-notes/v3.0.17.adoc @@ -7,8 +7,10 @@ Release date:: May 2024 == Changes to code lists and validation artefacts -* Added new Swedish rule (SE-R-013) for validation of the check number of a Swedish Organization number. The rule is introduced as severity warning. All rules which verifies the format of Organization numbers (SE-R-003, SE-R-004 and SE-R-013) will be changed to severity fatal in next release. +* Added new Swedish rule (SE-R-013) for validation of the check number of a Swedish Organization number. The rule is introduced as severity warning. All rules which verify the format of Organization numbers (SE-R-003, SE-R-004 and SE-R-013) will be changed to severity fatal in the next release. -* Update of PEPPOL-COMMON-R049 which validates identifiers using ICD/EAS 0007. The change is adding validation of the check number of a Swedish Organization number. +* Update for rule NL-R-007 (mandatory payment means), the check should not fire if the document is a credit note with a positive amount. + +* Update of PEPPOL-COMMON-R049, which validates identifiers using ICD/EAS 0007. The change is adding validation of the check number of a Swedish Organization number. == EN 16931 schematrons updated From 26bb6ffb6b6febf15e14ddbf0a5070ce08687e75 Mon Sep 17 00:00:00 2001 From: Jerry Dimitriou Date: Tue, 2 Apr 2024 13:49:48 +0300 Subject: [PATCH 15/21] Update project.xml --- project.xml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/project.xml b/project.xml index 50696e79..89b0a194 100644 --- a/project.xml +++ b/project.xml @@ -1,7 +1,7 @@ - Peppol BIS Billing 3.0 - November 2023 Release + Peppol BIS Billing 3.0 - May 2024 Release - Member Review Business Interoperability Specifications (BIS) BIS compliance From 816508e7275229015ebd195b20ce3f51b9258bc3 Mon Sep 17 00:00:00 2001 From: Georg Date: Mon, 13 May 2024 13:33:21 +0000 Subject: [PATCH 16/21] Aligning code lists with EN publication #POACC-730 --- structure/codelist/ISO4217_2015.xml | 4 ++-- structure/codelist/UNCL4461.xml | 5 +++++ structure/codelist/UNCL7143.xml | 5 +++++ structure/codelist/UNCL7161.xml | 5 +++++ 4 files changed, 17 insertions(+), 2 deletions(-) diff --git a/structure/codelist/ISO4217_2015.xml b/structure/codelist/ISO4217_2015.xml index 18ab09fa..00b0946f 100644 --- a/structure/codelist/ISO4217_2015.xml +++ b/structure/codelist/ISO4217_2015.xml @@ -521,8 +521,8 @@ Saint Helena Pound - SLL - Leone + SLE + Sierra Leone SOS diff --git a/structure/codelist/UNCL4461.xml b/structure/codelist/UNCL4461.xml index 256164d4..376f5971 100644 --- a/structure/codelist/UNCL4461.xml +++ b/structure/codelist/UNCL4461.xml @@ -474,6 +474,11 @@ Amounts which two partners owe to each other to be compensated in order to avoid useless payments. + + 98 + JP, Electronically Recorded Monetary Claims + An electronically recorded monetary claim is a claim that is separate from the underlying debt that gave rise to its accrual.Therefore, even if an electronically recorded monetary claim is accrued as a means of payment of the underlying debt, the underlying debt will not be extinguished as a matter of course. + ZZZ Mutually defined diff --git a/structure/codelist/UNCL7143.xml b/structure/codelist/UNCL7143.xml index abe0a4a1..55cdc03f 100644 --- a/structure/codelist/UNCL7143.xml +++ b/structure/codelist/UNCL7143.xml @@ -333,6 +333,11 @@ Buyer's internal product group code Product group code used within a buyer's internal systems. + + GMN + Global model number + The GMN is the GS1-identification key used to identify a product model or product family based on attributes common to the model or family as defined by industry or regulation. + GN National product group code diff --git a/structure/codelist/UNCL7161.xml b/structure/codelist/UNCL7161.xml index 7f2a3732..410a168c 100644 --- a/structure/codelist/UNCL7161.xml +++ b/structure/codelist/UNCL7161.xml @@ -762,6 +762,11 @@ Palletizing The service of palletizing. + + PRV + Price variation + Price variation related to energy and or raw materials cost variation. + RAB Repacking From 7524ef39787c32473081514505a8d747f4548b7b Mon Sep 17 00:00:00 2001 From: Georg Date: Mon, 13 May 2024 13:34:33 +0000 Subject: [PATCH 17/21] Adopting EN validation artefacts #POACC-730 --- rules/sch/CEN-EN16931-CII.sch | 104 ++++++++++++++++++---------------- rules/sch/CEN-EN16931-UBL.sch | 28 ++++----- 2 files changed, 68 insertions(+), 64 deletions(-) diff --git a/rules/sch/CEN-EN16931-CII.sch b/rules/sch/CEN-EN16931-CII.sch index 1e2df5af..2efd856a 100644 --- a/rules/sch/CEN-EN16931-CII.sch +++ b/rules/sch/CEN-EN16931-CII.sch @@ -4,7 +4,7 @@ Licensed under European Union Public Licence (EUPL) version 1.2. --> - + @@ -40,23 +40,23 @@ [BR-57]-Each Deliver to address (BG-15) shall contain a Deliver to country code (BT-80). - - [BR-31]-Each Document level allowance (BG-20) shall have a Document level allowance amount (BT-92). - [BR-32]-Each Document level allowance (BG-20) shall have a Document level allowance VAT category code (BT-95). - [BR-33]-Each Document level allowance (BG-20) shall have a Document level allowance reason (BT-97) or a Document level allowance reason code (BT-98). + + [BR-31]-Each Document level allowance (BG-20) shall have a Document level allowance amount (BT-92). + [BR-32]-Each Document level allowance (BG-20) shall have a Document level allowance VAT category code (BT-95). + [BR-33]-Each Document level allowance (BG-20) shall have a Document level allowance reason (BT-97) or a Document level allowance reason code (BT-98). [BR-CO-05]-Document level allowance reason code (BT-98) and Document level allowance reason (BT-97) shall indicate the same type of allowance. - [BR-CO-21]-Each Document level allowance (BG-20) shall contain a Document level allowance reason (BT-97) or a Document level allowance reason code (BT-98), or both. - [BR-DEC-01]-The allowed maximum number of decimals for the Document level allowance amount (BT-92) is 2. - [BR-DEC-02]-The allowed maximum number of decimals for the Document level allowance base amount (BT-93) is 2. - - - [BR-36]-Each Document level charge (BG-21) shall have a Document level charge amount (BT-99). - [BR-37]-Each Document level charge (BG-21) shall have a Document level charge VAT category code (BT-102). - [BR-38]-Each Document level charge (BG-21) shall have a Document level charge reason (BT-104) or a Document level charge reason code (BT-105). + [BR-CO-21]-Each Document level allowance (BG-20) shall contain a Document level allowance reason (BT-97) or a Document level allowance reason code (BT-98), or both. + [BR-DEC-01]-The allowed maximum number of decimals for the Document level allowance amount (BT-92) is 2. + [BR-DEC-02]-The allowed maximum number of decimals for the Document level allowance base amount (BT-93) is 2. + + + [BR-36]-Each Document level charge (BG-21) shall have a Document level charge amount (BT-99). + [BR-37]-Each Document level charge (BG-21) shall have a Document level charge VAT category code (BT-102). + [BR-38]-Each Document level charge (BG-21) shall have a Document level charge reason (BT-104) or a Document level charge reason code (BT-105). [BR-CO-06]-Document level charge reason code (BT-105) and Document level charge reason (BT-104) shall indicate the same type of charge. - [BR-CO-22]-Each Document level charge (BG-21) shall contain a Document level charge reason (BT-104) or a Document level charge reason code (BT-105), or both. - [BR-DEC-05]-The allowed maximum number of decimals for the Document level charge amount (BT-99) is 2. - [BR-DEC-06]-The allowed maximum number of decimals for the Document level charge base amount (BT-100) is 2. + [BR-CO-22]-Each Document level charge (BG-21) shall contain a Document level charge reason (BT-104) or a Document level charge reason code (BT-105), or both. + [BR-DEC-05]-The allowed maximum number of decimals for the Document level charge amount (BT-99) is 2. + [BR-DEC-06]-The allowed maximum number of decimals for the Document level charge base amount (BT-100) is 2. [BR-12]-An Invoice shall have the Sum of Invoice line net amount (BT-106). @@ -93,8 +93,8 @@ [BR-10]-An Invoice shall contain the Buyer postal address (BG-8). [BR-11]-The Buyer postal address shall contain a Buyer country code (BT-55). [BR-16]-An Invoice shall have at least one Invoice line (BG-25). - [BR-62]-The Seller electronic address (BT-34) shall have a Scheme identifier. - [BR-63]-The Buyer electronic address (BT-49) shall have a Scheme identifier. + [BR-62]-The Seller electronic address (BT-34) shall have a Scheme identifier. + [BR-63]-The Buyer electronic address (BT-49) shall have a Scheme identifier. [BR-CO-15]-Invoice total amount with VAT (BT-112) = Invoice total amount without VAT (BT-109) + Invoice total VAT amount (BT-110). [BR-CO-25]-In case the Amount due for payment (BT-115) is positive, either the Payment due date (BT-9) or the Payment terms (BT-20) shall be present. [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". @@ -123,21 +123,21 @@ [BR-CO-18]-An Invoice shall at least have one VAT breakdown group (BG-23). [BR-DEC-23]-The allowed maximum number of decimals for the Invoice line net amount (BT-131) is 2. - - [BR-41]-Each Invoice line allowance (BG-27) shall have an Invoice line allowance amount (BT-136). - [BR-42]-Each Invoice line allowance (BG-27) shall have an Invoice line allowance reason (BT-139) or an Invoice line allowance reason code (BT-140). + + [BR-41]-Each Invoice line allowance (BG-27) shall have an Invoice line allowance amount (BT-136). + [BR-42]-Each Invoice line allowance (BG-27) shall have an Invoice line allowance reason (BT-139) or an Invoice line allowance reason code (BT-140). [BR-CO-07]-Invoice line allowance reason code (BT-140) and Invoice line allowance reason (BT-139) shall indicate the same type of allowance reason. - [BR-CO-23]-Each Invoice line allowance (BG-27) shall contain an Invoice line allowance reason (BT-139) or an Invoice line allowance reason code (BT-140), or both. - [BR-DEC-24]-The allowed maximum number of decimals for the Invoice line allowance amount (BT-136) is 2. - [BR-DEC-25]-The allowed maximum number of decimals for the Invoice line allowance base amount (BT-137) is 2. + [BR-CO-23]-Each Invoice line allowance (BG-27) shall contain an Invoice line allowance reason (BT-139) or an Invoice line allowance reason code (BT-140), or both. + [BR-DEC-24]-The allowed maximum number of decimals for the Invoice line allowance amount (BT-136) is 2. + [BR-DEC-25]-The allowed maximum number of decimals for the Invoice line allowance base amount (BT-137) is 2. - - [BR-43]-Each Invoice line charge (BG-28) shall have an Invoice line charge amount (BT-141). - [BR-44]-Each Invoice line charge (BG-28) shall have an Invoice line charge reason (BT-144) or an Invoice line charge reason code (BT-145). + + [BR-43]-Each Invoice line charge (BG-28) shall have an Invoice line charge amount (BT-141). + [BR-44]-Each Invoice line charge (BG-28) shall have an Invoice line charge reason (BT-144) or an Invoice line charge reason code (BT-145). [BR-CO-08]-Invoice line charge reason code (BT-145) and Invoice line charge reason (BT-144) shall indicate the same type of charge reason. - [BR-CO-24]-Each Invoice line charge (BG-28) shall contain an Invoice line charge reason (BT-144) or an Invoice line charge reason code (BT-145), or both. - [BR-DEC-27]-The allowed maximum number of decimals for the Invoice line charge amount (BT-141) is 2. - [BR-DEC-28]-The allowed maximum number of decimals for the Invoice line charge base amount (BT-142) is 2. + [BR-CO-24]-Each Invoice line charge (BG-28) shall contain an Invoice line charge reason (BT-144) or an Invoice line charge reason code (BT-145), or both. + [BR-DEC-27]-The allowed maximum number of decimals for the Invoice line charge amount (BT-141) is 2. + [BR-DEC-28]-The allowed maximum number of decimals for the Invoice line charge base amount (BT-142) is 2. [BR-30]-If both Invoice line period start date (BT-134) and Invoice line period end date (BT-135) are given then the Invoice line period end date (BT-135) shall be later or equal to the Invoice line period start date (BT-134). @@ -181,15 +181,15 @@ [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). - [BR-AE-03]-An Invoice that contains a Document level allowance (BG-20) where the Document level allowance VAT category code (BT-95) 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). + [BR-AE-03]-An Invoice that contains a Document level allowance (BG-20) where the Document level allowance VAT category code (BT-95) 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). [BR-AE-06]-In a Document level allowance (BG-20) where the Document level allowance VAT category code (BT-95) is "Reverse charge" the Document level allowance VAT rate (BT-96) shall be 0 (zero). - [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). + [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). [BR-AE-07]-In a Document level charge (BG-21) where the Document level charge VAT category code (BT-102) is "Reverse charge" the Document level charge VAT rate (BT-103) shall be 0 (zero). - [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). + [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). [BR-AE-05]-In an Invoice line (BG-25) where the Invoiced item VAT category code (BT-151) is "Reverse charge" the Invoiced item VAT rate (BT-152) shall be 0 (zero). @@ -451,9 +451,9 @@ [CII-SR-098] - MSDSReferenceReferencedDocument should not be present [CII-SR-099] - AdditionalReferenceReferencedDocument should not be present [CII-SR-100] - LegalRightsOwnerTradeParty should not be present - [CII-SR-101] - BrandOwnerTradeParty should not be present - [CII-SR-102] - IncludedReferencedProduct should not be present - [CII-SR-103] - InformationNote should not be present + [CII-SR-101] -BrandOwnerTradeParty should not be present + [CII-SR-102] -IncludedReferencedProduct should not be present + [CII-SR-103] - InformationNoteshould not be present [CII-SR-069] - Description should exist maximum once. @@ -481,7 +481,7 @@ [CII-SR-121] - SequenceNumeric should not be present [CII-SR-122] - CalculationPercent should not be present [CII-SR-123] - BasisAmount should not be present - [CII-SR-124] - BasisQuantityshould not be present + [CII-SR-124] - BasisQuantity should not be present [CII-SR-125] - PrepaidIndicator should not be present [CII-SR-126] - UnitBasisAmount should not be present [CII-SR-127] - ReasonCode should not be present @@ -680,6 +680,8 @@ [CII-SR-456] - DefinedTradeContact of BuyerTradeParty shall exist maximum once [CII-SR-457] - IssuerAssignedID with TypeCode 50 should exist maximum once [CII-SR-458] - IssuerAssignedID with TypeCode 130 should exist maximum once + [CII-SR-459] - SellerTradeParty URIUniversalCommunication should exist maximum once + [CII-SR-460] - BuyerTradeParty URIUniversalCommunication should exist maximum once [CII-SR-308] - RelatedSupplyChainConsignment should not be present @@ -755,7 +757,7 @@ [CII-SR-375] - ExpiryDate should not be present [CII-SR-376] - VerificationNumeric should not be present [CII-SR-377] - ValidFromDateTime should not be present - [CII-SR-378] - CreditLimitAmount should not be present + [CII-SR-378] - CreditLimitAmountshould not be present [CII-SR-379] - CreditAvailableAmount should not be present [CII-SR-380] - InterestRatePercent should not be present [CII-SR-381] - Description should not be present @@ -804,6 +806,8 @@ [CII-SR-437] - UltimatePayeeTradeParty should not be present [CII-SR-452] - Only one SpecifiedTradePaymentTerms should be present [CII-SR-453] - Only one SpecifiedTradePaymentTerms Description should be present + [CII-SR-461] - Only one TaxPointDate shall be present + [CII-SR-462] - Only one DueDateTypeCode shall be present [CII-SR-411] - InformationAmount should not be present @@ -826,17 +830,17 @@ [CII-SR-004] - Value should not be present [CII-SR-005] - SpecifiedDocumentVersion should not be present + + [CII-DT-005] - schemeID should not be present + [CII-DT-006] - schemeAgencyID should not be present + [CII-DT-007] - schemeVersionID should not be present + [CII-DT-001] - schemeName should not be present [CII-DT-002] - schemeAgencyName should not be present [CII-DT-003] - schemeDataURI should not be present [CII-DT-004] - schemeURI should not be present - - [CII-DT-005] - schemeID should not be present - [CII-DT-006] - schemeAgencyID should not be present - [CII-DT-007] - schemeVersionID should not be present - [CII-DT-008] - name should not be present [CII-DT-009] - listURI should not be present @@ -951,13 +955,13 @@ [BR-CL-01]-The document type code MUST be coded by the invoice and credit note related code lists of UNTDID 1001. - [BR-CL-03]-currencyID MUST be coded using ISO code list 4217 alpha-3 + [BR-CL-03]-currencyID MUST be coded using ISO code list 4217 alpha-3 - [BR-CL-04]-Invoice currency code MUST be coded using ISO code list 4217 alpha-3 + [BR-CL-04]-Invoice currency code MUST be coded using ISO code list 4217 alpha-3 - [BR-CL-05]-Tax currency code MUST be coded using ISO code list 4217 alpha-3 + [BR-CL-05]-Tax currency code MUST be coded using ISO code list 4217 alpha-3 [BR-CL-06]-Value added tax point date code MUST be coded using a restriction of UNTDID 2475. @@ -975,7 +979,7 @@ [BR-CL-11]-Any registration identifier identification scheme identifier MUST be coded using one of the ISO 6523 ICD list. - [BR-CL-13]-Item classification identifier identification scheme identifier MUST be coded using one of the UNTDID 7143 list. + [BR-CL-13]-Item classification identifier identification scheme identifier MUST be coded using one of the UNTDID 7143 list. [BR-CL-14]-Country codes in an invoice MUST be coded using ISO code list 3166-1 @@ -984,7 +988,7 @@ [BR-CL-15]-Country codes in an invoice MUST be coded using ISO code list 3166-1 - [BR-CL-16]-Payment means in an invoice MUST be coded using UNTDID 4461 code list + [BR-CL-16]-Payment means in an invoice MUST be coded using UNTDID 4461 code list [BR-CL-17]-Invoice tax categories MUST be coded using UNCL 5305 code list @@ -996,14 +1000,14 @@ [BR-CL-19]-Coded allowance reasons MUST belong to the UNCL 5189 code list - [BR-CL-20]-Coded charge reasons MUST belong to the UNCL 7161 code list + [BR-CL-20]-Coded charge reasons MUST belong to the UNCL 7161 code list [BR-CL-21]-Item standard identifier scheme identifier MUST belong to the ISO 6523 ICD code list - [BR-CL-22]-Tax exemption reason code identifier scheme identifier MUST belong to the CEF VATEX code list + [BR-CL-22]-Tax exemption reason code identifier scheme identifier MUST belong to the CEF VATEX code list [BR-CL-23]-Unit code MUST be coded according to the UN/ECE Recommendation 20 with Rec 21 extension diff --git a/rules/sch/CEN-EN16931-UBL.sch b/rules/sch/CEN-EN16931-UBL.sch index 1e949404..43b85cfc 100644 --- a/rules/sch/CEN-EN16931-UBL.sch +++ b/rules/sch/CEN-EN16931-UBL.sch @@ -4,7 +4,7 @@ Licensed under European Union Public Licence (EUPL) version 1.2. --> - + @@ -568,7 +568,7 @@ [UBL-CR-180]-A UBL invoice should not include the AccountingSupplierParty Party PartyLegalEntity CompanyLegalFormCode [UBL-CR-181]-A UBL invoice should not include the AccountingSupplierParty Party PartyLegalEntity SoleProprietorshipIndicator [UBL-CR-182]-A UBL invoice should not include the AccountingSupplierParty Party PartyLegalEntity CompanyLiquidationStatusCode - [UBL-CR-183]-A UBL invoice should not include the AccountingSupplierParty Party PartyLegalEntity CorporationStockAmount + [UBL-CR-183]-A UBL invoice should not include the AccountingSupplierParty Party PartyLegalEntity CorporateStockAmount [UBL-CR-184]-A UBL invoice should not include the AccountingSupplierParty Party PartyLegalEntity FullyPaidSharesIndicator [UBL-CR-185]-A UBL invoice should not include the AccountingSupplierParty Party PartyLegalEntity RegistrationAddress [UBL-CR-186]-A UBL invoice should not include the AccountingSupplierParty Party PartyLegalEntity CorporateRegistrationScheme @@ -632,7 +632,7 @@ [UBL-CR-244]-A UBL invoice should not include the AccountingCustomerParty Party PartyLegalEntity CompanyLegalForm [UBL-CR-245]-A UBL invoice should not include the AccountingCustomerParty Party PartyLegalEntity SoleProprietorshipIndicator [UBL-CR-246]-A UBL invoice should not include the AccountingCustomerParty Party PartyLegalEntity CompanyLiquidationStatusCode - [UBL-CR-247]-A UBL invoice should not include the AccountingCustomerParty Party PartyLegalEntity CorporationStockAmount + [UBL-CR-247]-A UBL invoice should not include the AccountingCustomerParty Party PartyLegalEntity CorporateStockAmount [UBL-CR-248]-A UBL invoice should not include the AccountingCustomerParty Party PartyLegalEntity FullyPaidSharesIndicator [UBL-CR-249]-A UBL invoice should not include the AccountingCustomerParty Party PartyLegalEntity RegistrationAddress [UBL-CR-250]-A UBL invoice should not include the AccountingCustomerParty Party PartyLegalEntity CorporateRegistrationScheme @@ -667,7 +667,7 @@ [UBL-CR-279]-A UBL invoice should not include the PayeeParty PartyLegalEntity CompanyLegalForm [UBL-CR-280]-A UBL invoice should not include the PayeeParty PartyLegalEntity SoleProprietorshipIndicator [UBL-CR-281]-A UBL invoice should not include the PayeeParty PartyLegalEntity CompanyLiquidationStatusCode - [UBL-CR-282]-A UBL invoice should not include the PayeeParty PartyLegalEntity CorporationStockAmount + [UBL-CR-282]-A UBL invoice should not include the PayeeParty PartyLegalEntity CorporateStockAmount [UBL-CR-283]-A UBL invoice should not include the PayeeParty PartyLegalEntity FullyPaidSharesIndicator [UBL-CR-284]-A UBL invoice should not include the PayeeParty PartyLegalEntity RegistrationAddress [UBL-CR-285]-A UBL invoice should not include the PayeeParty PartyLegalEntity CorporateRegistrationScheme @@ -955,18 +955,18 @@ [UBL-CR-569]-A UBL invoice should not include the InvoiceLine Item BrandName [UBL-CR-570]-A UBL invoice should not include the InvoiceLine Item ModelName [UBL-CR-571]-A UBL invoice should not include the InvoiceLine Item BuyersItemIdentification ExtendedID - [UBL-CR-572]-A UBL invoice should not include the InvoiceLine Item BuyersItemIdentification BareCodeSymbologyID + [UBL-CR-572]-A UBL invoice should not include the InvoiceLine Item BuyersItemIdentification BarecodeSymbologyID [UBL-CR-573]-A UBL invoice should not include the InvoiceLine Item BuyersItemIdentification PhysicalAttribute [UBL-CR-574]-A UBL invoice should not include the InvoiceLine Item BuyersItemIdentification MeasurementDimension [UBL-CR-575]-A UBL invoice should not include the InvoiceLine Item BuyersItemIdentification IssuerParty [UBL-CR-576]-A UBL invoice should not include the InvoiceLine Item SellersItemIdentification ExtendedID - [UBL-CR-577]-A UBL invoice should not include the InvoiceLine Item SellersItemIdentification BareCodeSymbologyID + [UBL-CR-577]-A UBL invoice should not include the InvoiceLine Item SellersItemIdentification BarecodeSymbologyID [UBL-CR-578]-A UBL invoice should not include the InvoiceLine Item SellersItemIdentification PhysicalAttribute [UBL-CR-579]-A UBL invoice should not include the InvoiceLine Item SellersItemIdentification MeasurementDimension [UBL-CR-580]-A UBL invoice should not include the InvoiceLine Item SellersItemIdentification IssuerParty [UBL-CR-581]-A UBL invoice should not include the InvoiceLine Item ManufacturersItemIdentification [UBL-CR-582]-A UBL invoice should not include the InvoiceLine Item StandardItemIdentification ExtendedID - [UBL-CR-583]-A UBL invoice should not include the InvoiceLine Item StandardItemIdentification BareCodeSymbologyID + [UBL-CR-583]-A UBL invoice should not include the InvoiceLine Item StandardItemIdentification BarecodeSymbologyID [UBL-CR-584]-A UBL invoice should not include the InvoiceLine Item StandardItemIdentification PhysicalAttribute [UBL-CR-585]-A UBL invoice should not include the InvoiceLine Item StandardItemIdentification MeasurementDimension [UBL-CR-586]-A UBL invoice should not include the InvoiceLine Item StandardItemIdentification IssuerParty @@ -1149,13 +1149,13 @@ [BR-CL-01]-The document type code MUST be coded by the invoice and credit note related code lists of UNTDID 1001. - [BR-CL-03]-currencyID MUST be coded using ISO code list 4217 alpha-3 + [BR-CL-03]-currencyID MUST be coded using ISO code list 4217 alpha-3 - [BR-CL-04]-Invoice currency code MUST be coded using ISO code list 4217 alpha-3 + [BR-CL-04]-Invoice currency code MUST be coded using ISO code list 4217 alpha-3 - [BR-CL-05]-Tax currency code MUST be coded using ISO code list 4217 alpha-3 + [BR-CL-05]-Tax currency code MUST be coded using ISO code list 4217 alpha-3 [BR-CL-06]-Value added tax point date code MUST be coded using a restriction of UNTDID 2005. @@ -1170,7 +1170,7 @@ [BR-CL-11]-Any registration identifier identification scheme identifier MUST be coded using one of the ISO 6523 ICD list. - [BR-CL-13]-Item classification identifier identification scheme identifier MUST be + [BR-CL-13]-Item classification identifier identification scheme identifier MUST be coded using one of the UNTDID 7143 list. @@ -1180,7 +1180,7 @@ [BR-CL-15]-Country codes in an invoice MUST be coded using ISO code list 3166-1 - [BR-CL-16]-Payment means in an invoice MUST be coded using UNCL4461 code list + [BR-CL-16]-Payment means in an invoice MUST be coded using UNCL4461 code list [BR-CL-17]-Invoice tax categories MUST be coded using UNCL5305 code list @@ -1192,13 +1192,13 @@ [BR-CL-19]-Coded allowance reasons MUST belong to the UNCL 5189 code list - [BR-CL-20]-Coded charge reasons MUST belong to the UNCL 7161 code list + [BR-CL-20]-Coded charge reasons MUST belong to the UNCL 7161 code list [BR-CL-21]-Item standard identifier scheme identifier MUST belong to the ISO 6523 ICD code list - [BR-CL-22]-Tax exemption reason code identifier scheme identifier MUST belong to the CEF VATEX code list + [BR-CL-22]-Tax exemption reason code identifier scheme identifier MUST belong to the CEF VATEX code list [BR-CL-23]-Unit code MUST be coded according to the UN/ECE Recommendation 20 with From e8ff68954bf392fa3525516b678c8d9f52d15742 Mon Sep 17 00:00:00 2001 From: Georg Date: Mon, 13 May 2024 13:44:35 +0000 Subject: [PATCH 18/21] Updating release notes #POACC-730 --- guide/release-notes/v3.0.17.adoc | 23 +++++++++++++++++++++++ 1 file changed, 23 insertions(+) create mode 100644 guide/release-notes/v3.0.17.adoc diff --git a/guide/release-notes/v3.0.17.adoc b/guide/release-notes/v3.0.17.adoc new file mode 100644 index 00000000..b7b44966 --- /dev/null +++ b/guide/release-notes/v3.0.17.adoc @@ -0,0 +1,23 @@ += Version 3.0.17 +[horizontal] +Release date:: May 2024 + +== Changes to BIS document + +None + +== Changes to code lists and validation artefacts + +* Removing Currency code Sierra Leone SLL, new code is SLE +* Adding Payment means code 98 +* Adding Item type identification code GMN +* Adding charge code PRV +* Adding VAT Exemption reason codes VATEX-FR-FRANCHISE, VATEX-FR-CNWVAT + +== EN 16931 schematrons updated +* Changes in the code lists supported +* BT-32 path check missing in BR-AE-02, BR-AE-03, and BR-AE-04 in CII +* [BR-63] fails if multiple URIUniversalCommunication are present +* BR-33 / BR-CO-21 rules validation doesn't work on CII files (OK on UBL files) +* Undocumented and missing changes in v.1.3.11 release +* missing cardinality check for Value added tax point date (BT-7) and Value added tax point date code (BT-8) in CII From 6dc4bc922e2cb77425b67e4e348ca858d00f98ed Mon Sep 17 00:00:00 2001 From: Georg Date: Tue, 14 May 2024 07:10:37 +0000 Subject: [PATCH 19/21] Update main.adoc #POACC-730 --- guide/release-notes/main.adoc | 2 ++ 1 file changed, 2 insertions(+) diff --git a/guide/release-notes/main.adoc b/guide/release-notes/main.adoc index 41d5e6cb..b61fa451 100644 --- a/guide/release-notes/main.adoc +++ b/guide/release-notes/main.adoc @@ -15,6 +15,8 @@ IMPORTANT: Changes in code lists are also reflected by changes in the validation :leveloffset: +1 +include::v3.0.17.adoc[] + include::v3.0.16.adoc[] include::v3.0.15.adoc[] From 563894a74cb83863b2075967f8ee56430261960c Mon Sep 17 00:00:00 2001 From: Jerry Dimitriou Date: Wed, 22 May 2024 18:15:31 +0300 Subject: [PATCH 20/21] Update project.xml --- project.xml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/project.xml b/project.xml index 89b0a194..19fab779 100644 --- a/project.xml +++ b/project.xml @@ -1,7 +1,7 @@ - Peppol BIS Billing 3.0 - May 2024 Release - Member Review + Peppol BIS Billing 3.0 - May 2024 Release Business Interoperability Specifications (BIS) BIS compliance From 67d74704f429f722dcb60a966dbc8a94787cf890 Mon Sep 17 00:00:00 2001 From: Jerry Dimitriou Date: Wed, 22 May 2024 18:16:12 +0300 Subject: [PATCH 21/21] Update settings.adoc --- guide/bis/settings.adoc | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/guide/bis/settings.adoc b/guide/bis/settings.adoc index c6007178..898caa15 100644 --- a/guide/bis/settings.adoc +++ b/guide/bis/settings.adoc @@ -3,7 +3,7 @@ :doctitle: image:../shared/images/peppol.jpg[float="right", width=100%] Peppol BIS Billing :shared-dir: ../../shared :snippet-dir: ../../rules/snippets -:version: 3.0.15 +:version: 3.0.17 :name-op-en: OpenPeppol AISBL, Post-Award Coordinating Community