Details

      Description

      The relations of TaxCategory and TaxScheme need some review..

      1) The definition of TaxCategory is "A class to describe one of the tax categories within a taxation scheme (e.g., High Rate VAT, Low Rate VAT).", but the TaxScheme is within TaxCategory and not vice versa..

      2) TaxScheme is mandatory within TaxCategory, but this relation is incompatible with some reporting/business customs as well as some code lists (for example how tax is reported in the U.S., and how X12 code lists represents taxes).

        Attachments

          Activity

          Hide
          keesduvekot Kees Duvekot added a comment -

          Just to specify my position:

          Although Technically we could make the TaxScheme under Tax Category "optional" I think there is no need for that.This is more of a "Mapping" discussion than a XML structure discussion.

          The X12 code list around Tax Type Code has a good fit with the cbc:TaxTypeCode inside of the cac:TaxScheme. It is a "high level code" to describe the various "kinds" of taxes that you might encounter in the US context.

          The actuals details for the Tax that is charged can be put inside the cac:TaxCategory.

          If you would sell something on this address in the US .. than according to this map :https://taxmaps.state.mn.us/salestax/
          .. this would be the tax details:

          Address Returned: 90 Hennepin Ave, Minneapolis, Minnesota, 55401

          Local General Sales & Use Tax Rates

          State Tax: 6.875%
          County Tax: 0.15%, Hennepin County
          City Tax: 0.5%, Minneapolis City
          Other Tax: 0.5%, Hennepin County Transit
          Total Sales Tax Rate: 8.025%

          So based on the X12 code list .. that would be 4 tax category/taxscheme elements

          ST (State Sales Tax)
          CP (County Sales Tax)
          CS (City Sales Tax)
          AZ (Transit Tax) (or OH "Other Taxes")

          the Percentage and the description of the tax would be in the TaxCategory element . the TaxScheme would contain the X12 TaxTypeCodes (or you can put them in the ID element) .. and you can use the cac:JurisdictionRegionAddress to specify the "location" that makes that tax applicable. (in a high level "address" element with for example only Country and State ... or Country, State en County .. or even down the actual address level.

          You can even opt to not do the breakdown in the invoice .. and use the generic "LS"  (or even the generic TX) and the sum of all the Sales Tax Rates (8.025% in this case)

          But based on all this .. I see no need to change the TaxScheme to optional .. but willing to work with the BPC team for further discussion on this subject

           

           

          Show
          keesduvekot Kees Duvekot added a comment - Just to specify my position: Although Technically we could make the TaxScheme under Tax Category "optional" I think there is no need for that.This is more of a "Mapping" discussion than a XML structure discussion. The X12 code list around Tax Type Code has a good fit with the cbc:TaxTypeCode inside of the cac:TaxScheme. It is a "high level code" to describe the various "kinds" of taxes that you might encounter in the US context. The actuals details for the Tax that is charged can be put inside the cac:TaxCategory. If you would sell something on this address in the US .. than according to this map : https://taxmaps.state.mn.us/salestax/ .. this would be the tax details: Address Returned: 90 Hennepin Ave, Minneapolis, Minnesota, 55401 Local General Sales & Use Tax Rates State Tax: 6.875% County Tax: 0.15%, Hennepin County City Tax: 0.5%, Minneapolis City Other Tax: 0.5%, Hennepin County Transit Total Sales Tax Rate: 8.025% So based on the X12 code list .. that would be 4 tax category/taxscheme elements ST (State Sales Tax) CP (County Sales Tax) CS (City Sales Tax) AZ (Transit Tax) (or OH "Other Taxes") the Percentage and the description of the tax would be in the TaxCategory element . the TaxScheme would contain the X12 TaxTypeCodes (or you can put them in the ID element) .. and you can use the cac:JurisdictionRegionAddress to specify the "location" that makes that tax applicable. (in a high level "address" element with for example only Country and State ... or Country, State en County .. or even down the actual address level. You can even opt to not do the breakdown in the invoice .. and use the generic "LS"  (or even the generic TX) and the sum of all the Sales Tax Rates (8.025% in this case) But based on all this .. I see no need to change the TaxScheme to optional .. but willing to work with the BPC team for further discussion on this subject    
          Hide
          keesduvekot Kees Duvekot added a comment -

          I saw that Harm Jan van Burg was a member of the Tax XML committee .. so maybe he also has a view/option about this subject

          Show
          keesduvekot Kees Duvekot added a comment - I saw that Harm Jan van Burg  was a member of the Tax XML committee .. so maybe he also has a view/option about this subject
          Hide
          kenneth.bengtsson Kenneth Bengtsson added a comment -

          Discussed to change cardinality of TaxScheme to 0..1 and to add CurrencyCode to to TaxCategory.

          Show
          kenneth.bengtsson Kenneth Bengtsson added a comment - Discussed to change cardinality of TaxScheme to 0..1 and to add CurrencyCode to to TaxCategory.

            People

            • Assignee:
              kenneth.bengtsson Kenneth Bengtsson
              Reporter:
              kenneth.bengtsson Kenneth Bengtsson
            • Watchers:
              3 Start watching this issue

              Dates

              • Created:
                Updated:
                Resolved: