Skip to content

Commit

Permalink
Merge pull request #42 from OpenPEPPOL/2020-Spring
Browse files Browse the repository at this point in the history
2020 spring merging to Master. Ready for release
  • Loading branch information
jerouris authored Apr 29, 2020
2 parents bb044fe + 87bbc9a commit 5c64af2
Show file tree
Hide file tree
Showing 66 changed files with 746 additions and 435 deletions.
19 changes: 19 additions & 0 deletions .travis.yml
Original file line number Diff line number Diff line change
Expand Up @@ -4,6 +4,7 @@ services:
- docker
script:
- sh build.sh

deploy:
provider: s3
access_key_id:
Expand All @@ -20,3 +21,21 @@ deploy:
on:
repo: OpenPEPPOL/poacc-upgrade-3
branch: master

deploy:
provider: s3
access_key_id:
secure: RY4Ibctdr/020yuDcghXzcgBuwLVfBZbRUD6d5GkUHLIRSoV0Ylww8IKHg7nZRFoI5HcqhXB5jAEf/MDEKDddnqBLyJDapqohxk2lHe3tkTe42dyfoRz6bIKqoTWgtxTu7mZNILYZ8hba5ENLhGHKUszbIphCIXBnDhmBO9Hjcomv8YNG0zIiCJZ/ZD6vRaehHDfIVJZVHw8z00pfyByNbWCsJIME4/+NAXKbqjyddlV/5OXdeyP5/YuRTT1S72uFK8DfQ54gJkV/j/afhFPs5HP5KEFNUAldYSz0ADq0EWXSKXIhwjzibTtMN8nF8R7kIJu5LRMCwKZxNP05vSl7ZJbUKP3El9lTzydDGES/u/9YW++u6ff6vHo8wcJ04znU6rB9n5CurqKkRu49pY2uJhNFCJm9JJROotwOpddCyAuB1UVehTZj8qfezIG7aDdBtdS6ASGSIQms0+9S2k0gf+T16WZijQ8h3ksqEj4Cd6Nkx8X7uuFUJl+oBXt/ZQXIpx/0smQw2C6SX8aWH6ULh8The2HSkA8oeVb5InM3nRlifn/QFvXlXFtGo5TcTLc50p3goHufOlNfNoTYqen55vpsoELB918zrC7ZjfG/4pPEDFhkJOMfSacfrGuQ3Ecrebu9yI7CKwUzp/9YF2OJnoxA/fAw4mmkFLwl3/bI1E=
secret_access_key:
secure: J8fFryEMB3t1QxafOLoZpDpKRmpJWDESq525l6Ozdvy8rrhz6bIxRGZYgLe8mbciZWaSgYo4MM/k1ovWm/ibidmibmLDcRt+QQqezBYLBDg6Gs13Yn6kgdjEvIFxEeAYNcxax0fGBPZnaKAMgGx9XP4bwWuNxEoZKDrC/HcQE8qifmnXFPUw+pIcseTnb5fqAIZfu1IM9QXNgHYjUP1zW9C7A3DtzoJgNtkuB/DkPp6QxkEoro0AufHOKD1Dli2z8D9wDvZWNIWndyjchbmCzk7FrBrUKFkbAi6EeSU6ZSEa7Hn0maQU1YZhuZANp5LXnxxq5SlcVjF9FhyV6O+A+I1TnNu9gmww7gfS0ZSwp2b/6j2d92/BKRp1J+64jpPXSjfAIstbIJQWSCfd0fogwIFjpzZ0/z86dngmMKJJcA4HXA73NypBhh0CVDBkK1lYFl5s095OPLTZ9qNSJjYaXm7k45fy9o+NhPXDdLECog+72vKd89sCTnFt57LHHP32lYD6WBNDrx3W/e2Tn5jlvhKj7p9T5PHfbKEPquetj9NgZkjCleJ4X9QoUOg2jO0ctwu2OGOwVRTIz/gAK6NIOvGaY3RocmkvPcoY4xJz9xQv9/Og50qkPK9mpuY1g/zwGIBc72doDSOp90h8G5/zhEiMPgp4FNUlCwybmIIaN8s=
bucket:
secure: M4LsdUF4xuJ7jY8d+i709ZpdJLzsnoHjccbHwUd4JYxPRh6292IJA2LEcIuOSV2ySWTHWvQnp1rPeQP5UO4vSngh0PmZtMh9Ch9EMNXXV9UrD2vghtq+NJLewWGNn6wkxV3I2EsixrFqo8008LEQdPt7GtIAz0kbhnQEjjSVrND/acGL0286oJFvQfw997wzhGnH7pSEPF4PDTEnYevn3XXZQFxplzIgcmu43t+DgDwNy89WXuZtZYyhe/dEN3NnDqtMs+10eWeciS21ygHR/h+Q4p7fXI9Q1lO705bS//lV7s+M7mm8BL5ppWBkKxjkckN3oPYtQGlUInOXh3JQQAbG7jJFBdRwa18FlsN8LwnSMFJAH1e9Nd88RWem/DynwvAhFJ5iWUJN8tBsx9djyukqxhEOuMC3x5QAODIZhwraarsP7LUZPR+SriB8KAOMzX+WNZEGRLIp3yIJN4J3McrUKDAVh7Em7q80Kpnf9kf7mCfidCXVQ1XC7b8HnLESNDtNwb1GtteNBfLUq3R04TJJ6vGedOVAJbDTrTDcTg4//qezuf6ICfcITV9gJNP1YfSuBHLV+sgqkUYvPCsKvizfUZmoupobG4G+RT+cDAiIfBe9/Ja8NrHUWdKzKeXXjOpnx3cPqIuvXfVs0bwepusCs9g2dOcvWVvDY2cmh90=
region: eu-west-1
local-dir: target/site
upload-dir: $TRAVIS_BRANCH/poacc/upgrade-3
acl: public_read
skip_cleanup: true
on:
repo: OpenPEPPOL/poacc-upgrade-3
all_branches: true
condition: $TRAVIS_BRANCH != 'master'
2 changes: 1 addition & 1 deletion README.md
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@

# PEPPOL BIS Upgrade

This repository is used for the PEPPOL BIS Upgrade project
This repository is used for the PEPPOL BIS Upgrade project...
2 changes: 1 addition & 1 deletion guides/profiles/1-catalogueonly/main.adoc
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
include::../../shared/links.adoc[]

= image:../../shared/images/peppol.png[float="right"]PEPPOL BIS Catalogue Only 3.0
= image:../../shared/images/peppol.png[float="right"]PEPPOL BIS Catalogue Only 3.1
{author}
v{version}
:doctype: book
Expand Down
2 changes: 1 addition & 1 deletion guides/profiles/18-punchout/description/index.adoc
Original file line number Diff line number Diff line change
Expand Up @@ -14,7 +14,7 @@ a. A line identifier.
b. The line quantity.
c. The name of the item.
d. The price of the item.
e. The VAT category and percentage rate for the item.
e. The TAX category and percentage rate for the item.

In addition to the mandatory information the shopping cart may optionally contain additional information details.
The following sections detail how different parts of the shopping cart message are used.
Expand Down
10 changes: 5 additions & 5 deletions guides/profiles/28-ordering/principles/scope.adoc
Original file line number Diff line number Diff line change
Expand Up @@ -19,14 +19,14 @@ The buyer may provide some information that the seller is required to place on t
Invoice Verification::
The buyer may provide some information that the seller is required to place on the invoice for aiding and automation of invoice approval.

VAT reporting::
VAT reporting is not a general requirement on orders.
TAX reporting::
TAX reporting is not a general requirement on orders. In this context the term TAX is used as a generalization of taxes such as VAT, GST or Sales Tax.
The level of support in orders is to

* Enable VAT reporting in invoices by providing VAT number of buyer in case of reverse charges.
* VAT can be stated as an estimate to enable buyers to state expected value of order. +
* Enable TAX reporting in invoices by providing TAX number of buyer. As an example in case of reverse charges in EU.
* TAX can be stated as an estimate to enable buyers to state expected value of order. +
This can be helpful in automated matching of orders and invoices. +
VAT information is informative and does not affect the terms of trade.
TAX information is informative and does not affect the terms of trade.

Transport and delivery::

Expand Down
8 changes: 4 additions & 4 deletions guides/profiles/3-order-only/principles/scope.adoc
Original file line number Diff line number Diff line change
Expand Up @@ -11,12 +11,12 @@ Accounting:: The ordering process must support the allocation of budgets, so the

Invoice Verification:: The buyer may provide some information that the seller is required to place on the invoice for aiding and automation of invoice approval.

VAT reporting:: VAT reporting is not a general requirement on orders.
TAX reporting:: TAX reporting is not a general requirement on orders. In this context the term TAX is used as a generalization of taxes such as VAT, GST or Sales Tax.
The level of support in orders is to
* Enable VAT reporting in invoices by providing VAT number of buyer in case of reverse charges.
* VAT can be stated as an estimate to enable buyers to state expected value of order.
* Enable TAX reporting in invoices by providing TAX number of buyer. As an example in case of reverse charges in EU.
* TAX can be stated as an estimate to enable buyers to state expected value of order.
This can be helpful in automated matching of orders and invoices.
VAT information is informative and does not affect the terms of trade.
TAX information is informative and does not affect the terms of trade.

Transport and delivery:: Only limited support is in scope for transport related information, but it is recognized that the buyer needs to be able to provide some information about requested delivery location, some basic term, time and contact persons for a delivery of an order.

Expand Down
2 changes: 1 addition & 1 deletion guides/profiles/30-despatchadvice/main.adoc
Original file line number Diff line number Diff line change
Expand Up @@ -10,7 +10,7 @@ include::../../shared/links.adoc[]
:sectnums:
:title-logo-image: ../images/peppol.jpg
:snippet-dir: ../../../../rules/snippets/despatch
= image:../../shared/images/peppol.png[float="right"]PEPPOL BIS Despatch Advice 3.0
= image:../../shared/images/peppol.png[float="right"]PEPPOL BIS Despatch Advice 3.1
{author}
v{version}

Expand Down
4 changes: 2 additions & 2 deletions guides/profiles/42-orderagreement/description/allowance.adoc
Original file line number Diff line number Diff line change
Expand Up @@ -9,7 +9,7 @@ _Information on allowance and/or charges applies to the whole order agreement an


* Several allowances and charges may be supplied
* Specification of VAT for allowances and charges, `cac:TaxCategory` with sub elements, shall be supplied
* Specification of TAX for allowances and charges, `cac:TaxCategory` with sub elements, shall be supplied
* The sum of all allowances and charges on the header level shall be specified in `cbc:AllowanceTotalAmount` and `cbc:ChargeTotalAmount` respectively. See <<totals>>


Expand All @@ -27,7 +27,7 @@ stem:["Amount" = "Base amount" times ("Percentage" div 100)]
====


.UBL example of Allowances and Charges on the document level
.UBL example of Allowances and Charges on the document level, when TAX is VAT.
[source, xml, indent=0]
----
include::{snippet-dir}/snippet-oa.xml[tags=allowance]
Expand Down
2 changes: 1 addition & 1 deletion guides/profiles/42-orderagreement/description/prices.adoc
Original file line number Diff line number Diff line change
Expand Up @@ -4,7 +4,7 @@ Prices must be exchanged in the Order Agreement transaction. The price may be 0

Price sent is related to the articles or services within this order agreement

Prices includes allowances and/or charges but exclude VAT amounts
Prices includes allowances and/or charges but exclude TAX amounts


.Example of price information in an Order Agreement message
Expand Down
6 changes: 3 additions & 3 deletions guides/profiles/63-invoiceresponse/descriptions/response.adoc
Original file line number Diff line number Diff line change
Expand Up @@ -23,7 +23,7 @@ The clarification may further give the instructions regarding actions expected f
To assist with resolution the Buyer might want to provide instructions on what is the correct data.


.UBL example:
.UBL example where TAX is VAT:
[source, xml]
----
<cac:DocumentResponse>
Expand Down Expand Up @@ -54,8 +54,8 @@ To assist with resolution the Buyer might want to provide instructions on what i
----
<1> An invoice is rejected using the status code RE.
<2> The reason code for this rejection is LEG indicating that the invoice does not fulfil legal requirements
<3> In text it is stated that the VAT reference is not found
<4> Further reference is given to the element BT-48 in the Invoice (Buyers VAT number)
<3> In text it is stated that the TAX reference is not found
<4> Further reference is given to the element BT-48 in the Invoice (Buyers TAX number)
<5> Expected value in BT-48 is EU123456789
<6> The Buyer expects the Seller to issue a Credit Note that fully cancels the rejected Invoice
<7> The Buyer also expects the Seller to issue a new Invoice with corrected information.
Original file line number Diff line number Diff line change
Expand Up @@ -18,7 +18,7 @@ Similar business reason (for example missing order number) may trigger different
== Detail type codes and values

For each clarification code the Buyer can provide details to assist in the correction.
For example, if an invoice contains the wrong Buyers VAT number then the Buyer can provide the correct number in the Invoice Response.
For example, if an invoice contains the wrong Buyers TAX number then the Buyer can provide the correct number in the Invoice Response.
When a textual clarification that includes information about the correct values is not sufficient, but the correct values need to be provided in a structured way that information can be given by providing a type code that identifies the information type and the correct value.

The detail type code for each data type shall be the business term identifier of the referenced document that shall be corrected, and the detail value shall be the value that the Buyer proposes as the correct one.
Expand All @@ -28,10 +28,10 @@ Example:
A Buyer receives a PEPPOL invoice where the following is true

* The invoice complies to PEPPOL Billing specification
* The Buyer‘s VAT number in the invoice is incorrect and should be EU12345
* The Buyer requests the Seller to send a credit note to cancel the incorrect invoice and issue a new invoice with the correct VAT number.
* The Buyer‘s TAX number in the invoice is incorrect and should be EU12345
* The Buyer requests the Seller to send a credit note to cancel the incorrect invoice and issue a new invoice with the correct TAX number.

In the Billing specification for an invoice (See {peppol-billing}) the business term identifier for the Buyers VAT number is BT-48.
In the Billing specification for an invoice (See {peppol-billing}) the business term identifier for the Buyers TAX number is BT-48.

To inform and assist in resolution of the issue the Buyer sends an Invoice Response to the Seller as follows:

Expand Down
2 changes: 1 addition & 1 deletion guides/profiles/64-catalogue-wo-response/main.adoc
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
include::../../shared/links.adoc[]

= image:../../shared/images/peppol.png[float="right"]PEPPOL BIS Catalogue without response 3.0
= image:../../shared/images/peppol.png[float="right"]PEPPOL BIS Catalogue without response 3.1
{author}
v{version}
:doctype: book
Expand Down
2 changes: 2 additions & 0 deletions guides/release-notes/main.adoc
Original file line number Diff line number Diff line change
Expand Up @@ -14,6 +14,8 @@ IMPORTANT: Changes in code lists are also reflected by changes in the validation

:leveloffset: +1

include::v3.0.4.adoc[]

include::v3.0.3.adoc[]

include::v3.0.2-hotfix.adoc[]
Expand Down
34 changes: 34 additions & 0 deletions guides/release-notes/v3.0.4.adoc
Original file line number Diff line number Diff line change
@@ -0,0 +1,34 @@
= Version 3.0.4 - 2020 Spring
[horizontal]
Release date:: 2020-05-01

== Changes to BIS document
* The code example in section 6.6 (Classification) is updated from the temporary code ”MC” to the code “TST” (The UNSPSC commodity classification system) from code list UCL7143. [POACC-274]
** for PEPPOL BIS Catalogue without response 3
** for PEPPOL BIS Catalogue only 3
* Following BIS generalized so that they use term TAX instead of VAT. Enables using them for other similar taxes like GST. Catalogue, Catalogue only, Order, Ordering, Order Agreement, Punch Out, Invoice Response. [POACC-265]
** Text in guidelines generalized from VAT to GST
** Element names and descriptions that had VAT in them generalized as TAX
** Rules requesting Tax type ID as VAT removed to allow for GST. VAT now given as example.
** Added new code for allowed TaxScheme Identifiers. Now allows VAT or GST.
* Updated the link “Peppol Identifiers” of all the BIS DOCUMENTS in https://docs.peppol.eu/poacc/upgrade-3/ to reflect the newest version of “Policy for use of identifiers”[POACC-188]

== Changes to syntax
* Added cac:Package with elements cbc:ID and cbc:PackageTypeCode to support identification of packages within a transport handling unit. [POACC-301]
* In the Order Syntax the sequence of Item Description (tir01-133) and Item Name (tir01-135) has been corrected so that Description is now before the Name. This is now in line with the UBL 2.1 syntax specification. [POACC-299]
* Added name attribute to ItemClassificationCode and aligned Catalogue, Order, OrderAgreement, Order Respones and Shopping Cart. [POACC-277]

== Changes to supporting documents
* Updated test files with valid GLN numbers to pass travis validation according to the updated GLN validation rules introduced in version 3.0.3. [POACC-321]

== Changes to code lists and validation artefacts
* Added country code 1A for Kosovo into ISO 3166 for all BIS specifications. [POACC-324]
* Updated test file poacc-upgrade-3\\rules\\snippets
mlr/snippet-3.xml in order for the test file to conform to mlr syntax. [POACC-322]
* Rule R026 in OrderAgreement modified so that it is fired only when TaxTotal is provided. [POACC-302]
* In the Catalogue transaction the code PRODUCT_IMAGE is added to allowed DocumentTypeCodes in ItemSpecificationDocumentReference on line level. The code may be used to identify the main image of a product. [POACC-297]
* Added code TRADE_ITEM_DESCRIPTION as allowed attachment type in Catalogue and PunchOut [POACC-279]
* PEPPOL-T19-R011 and PEPPOL-T19-R016 updated to take unbounded cac:RequiredItemLocationQuantity into consideration. [POACC-255]
* Changed character (code ) for citation marks (“) as it was in conflict with some implementations. Changes was made in Rules for transactions T16, T19 and T110. [POACC-249]
* Validation of cbc:CustomizationID in all BIS specifications changed from element must contain exactly the relevant transaction identifier to element content must begin with that identifier value. [POACC-191]
* Descriptions and some names of codes in UNCL7143 corrected in line with the official code list version d19a. Applies to all BIS using this code list. [POACC-258]
30 changes: 15 additions & 15 deletions guides/shared/files/calculation/vat-calc.adoc
Original file line number Diff line number Diff line change
@@ -1,45 +1,45 @@
= Calculation of VAT amounts
= Calculation of TAX amounts

[[vat-calc]]
== Total VAT amount
== Total TAX amount

The total VAT amount can be provided without providing the VAT breakdown, but if the VAT breakdown is present, the total VAT amount is the sum of all VAT Category VAT amounts.
The total TAX amount can be provided without providing the TAX breakdown, but if the TAX breakdown is present, the total TAX amount is the sum of all TAX Category TAX amounts.


====
stem:["Total VAT amount" = sum("VAT category tax amount")]
stem:["Total TAX amount" = sum("TAX category tax amount")]
====

== VAT Breakdown
== TAX Breakdown

One VAT Breakdown shall be provided for each distinct combination of VAT category code and VAT rate found in either the line VAT information or the Document level allowance or charges.
One TAX Breakdown shall be provided for each distinct combination of TAX category code and TAX rate found in either the line TAX information or the Document level allowance or charges.

For each distinct combination of VAT category code and VAT rate the calculations are:
For each distinct combination of TAX category code and TAX rate the calculations are:
====
stem:["VAT category taxable amount" = sum("Line net amounts")] +
stem:["TAX category taxable amount" = sum("Line net amounts")] +
stem:[+ "Document level charge amount" - "Document level allowance amount"]
====

====
stem:["VAT category tax amount" = "VAT category taxable amount" times ("VAT rate" div 100)]
stem:["TAX category tax amount" = "TAX category taxable amount" times ("TAX rate" div 100)]
====

IMPORTANT: For VAT Breakdown where the VAT Category is "Not subject to VAT" (O), the VAT category tax amount shall be zero.
IMPORTANT: For TAX Breakdown where the TAX Category indicates the invoice is not subject to TAX (e.g. (O) in EU), then the TAX category tax amount shall be zero.

Please note that for the VAT rate, only significant decimals should be considered, i.e any difference in trailing zeros should not result in different VAT breakdowns.
Please note that for the TAX rate, only significant decimals should be considered, i.e any difference in trailing zeros should not result in different TAX breakdowns.

.Example
.Example where TAX is VAT.
====
Line 1 has category code = S and VAT rate = *25* +
Line 2 has category code = S and VAT rate = *25.00* +
This should result in only one VAT Breakdown.
====

.UBL Example of tax total and tax breakdown
.UBL Example of tax total and tax breakdown, when TAX is VAT.
[source, xml, indent=0]
----
include::../../snippets/snippet-oa-vat.xml[tags=taxtotal]
----
<1> The class `cac:TaxCategory` is used for tax category information
<2> VAT category according to codelist {vat-codes}
<3> VAT rate
<2> TAX category according to codelist {vat-codes}
<3> TAX rate
2 changes: 1 addition & 1 deletion guides/shared/files/scope.adoc
Original file line number Diff line number Diff line change
Expand Up @@ -15,7 +15,7 @@ The main activities supported by this BIS are:
* Item comparison
* Item dependency and composition
* Description of packaging and storage requirements
* VAT classification
* TAX classification (e.g. for VAT, GST and Sales Tax)
* Item instance description
* Maintenance of catalogue
Expand Down
14 changes: 7 additions & 7 deletions guides/shared/files/vat-cat-line.adoc
Original file line number Diff line number Diff line change
@@ -1,15 +1,15 @@

= Line VAT Category
= Line TAX Category

VAT information on line level is provided in the class `cac:ClassifiedTaxCategory`.
TAX information on line level is provided in the class `cac:ClassifiedTaxCategory`.

Each line shall have the item VAT information including category code and percentage rate except when the invoice is "Not subject to VAT" (VAT category code on document level =O) then percentage shall not be given on line level.
Each line shall have the item TAX information including category code and percentage rate except when the invoice as a whole is not subject to TAX, in which case the percentage shall not be given on line level.

.UBL example of line VAT category
.UBL example of line TAX category, when TAX is VAT
[source, xml, indent=0]
----
include::../snippets/snippet-common.xml[tags=vat-line]
----
<1> VAT category according to codelist {vat-codes}
<2> VAT percentage, must be present unless VAT category code is O.(the value "O" means "Out of scope for VAT")
<3> Value must be VAT
<1> TAX category according to codelist {vat-codes}
<2> TAX percentage. For EN must be present unless TAX category code is O (the value "O" means "Out of scope for TAX").
<3> Value must identify the correct tax type. For example VAT, GST or sales tax.
Loading

0 comments on commit 5c64af2

Please sign in to comment.