Skip to content

Using Standard Codified Data

Joseph Potvin edited this page Mar 5, 2017 · 3 revisions

RATIONALE

When Xalgorithms components exchanging data with underlying commerce, forms or payment systems, such systems may or may not provide an obvious direct means of applying global standards-based codes to transactions (such as UNSPSC, HS, ISIC and SKU codes). Also we cannot assume that such systems mplement UBL at all, or broadly enough.

Xalgo Codes provide a way for sellers, buyer and intermediaries to exchange UBL data and global coding standards data through non-conformant systems and interfaces.

The Xalgo Code is a flexible and extensible protocol for use in an "Item Code" field (or similar) to express a concatenated string of codes all in one as follows: ISIC[J6201]UNSPSC[43233500]HS[991999]SKU[...] Such an approach is extensible to any other potential codes the parties may want to include:

  • UPC (Universal Product Codes)
  • EAN (International Article Numbers)
  • GTIN (Global Trade Identification Numbers) Currently this uses a verbose way to identify each segment code type, but this is for ease of use during alpha. The data can be reduced later, say for beta.

PARSING THE CONCATENATED CODES INTO UBL-CONFORMANT DATA (preliminary draft for discussion)

When Lichen obtains a properly-formed concatenated string from a generic "Item Code" field in an underlying commerce, forms or payment solution, it parses the segments into their correct UBL elements.

ISIC

ISIC is a organization classification expressing what industry an organization is classified as. Lichen (alpha) uses this for the seller/supplier, and it's meant as a attribute linked to an instance of a commodity/item within the context of the present transaction, within a longer supply chain of transactions.

In UBL this is located in "Party": http://docs.oasis-open.org/ubl/os-UBL-2.1/mod/summary/reports/UBL-AllDocuments-2.1.html#t-CommonLibrary-1312 ... called IndustryClassificationCode: http://docs.oasis-open.org/ubl/os-UBL-2.1/mod/summary/reports/UBL-AllDocuments-2.1.html#t-CommonLibrary-1318

UNSPSC

UNSPSC codes be stored with cac:Item using cac:CommodityClassification http://docs.oasis-open.org/ubl/os-UBL-2.1/mod/summary/reports/UBL-AllDocuments-2.1.html#Table_Item.CommodityClassification

http://docs.oasis-open.org/ubl/os-UBL-2.1/mod/summary/reports/UBL-AllDocuments-2.1.html#t-CommonLibrary-270http://docs.oasis-open.org/ubl/os-UBL-2.1/mod/summary/reports/UBL-AllDocuments-2.1.html#t-CommonLibrary-270

HS Code

Integrated Trade Intelligence Portal https://www.wto.org/english/res_e/statis_e/itip_e.htm

HS codes can also be stored with cac:Item using cbc:ItemClassificationCode through cac:CommodityClassification as is done with UNSPSC (see below)

GLOBAL STANDARD CODES FOR XALGORITHMS ALPHA (preliminary draft for discussion)

For current prototyping during Xalgorithms Alpha v0.x.x, we use ISIC, UNSPSC, HS and SKU. Following is reference information on each of these.

INDUSTRY CODE OF SELLER/SUPPLIER

ISIC (Rev.4) has a 4-level tree structure (Section, Division, Group, Class) expressed with one letter and four digits, for example: Section: J - Information and communication Division: J62 - Computer programming, consultancy and related activities Group: J620 - Computer programming, consultancy and related activities Class: J6201 - Computer programming activities

Find ISIC: http://unstats.un.org/unsd/cr/registry/regcs.asp?Cl=27&Lg=1&Co=6201

ISIC Download: http://unstats.un.org/unsd/cr/registry/regdnld.asp?Lg=1

Explanation: http://siccode.com/en/pages/isic

Example, the UNSPSC commodity code for Xalgoritms computer programming activity is: Class: J6201 Computer programming activities

COMMODITY CODES

UNSPSC has a 4-level tree structure (Segment, Family, Class and Commodity) expressed with 8 digits, for example: Segment 44 000000 Office Equipment and Accessories and Supplies Family 44 10 0000 Office machines and their supplies and accessories Class 4410 31 00 Printer and facsimile and photocopier supplies Commodity 441031 03 Toner

Find UNSPSC: http://www.unspsc.org/search-code

UNSPSC codes be stored with cac:Item using cac:CommodityClassification http://docs.oasis-open.org/ubl/os-UBL-2.1/mod/summary/reports/UBL-AllDocuments-2.1.html#Table_Item.CommodityClassification This can specify the value in the cbc:ItemClassificationCode http://docs.oasis-open.org/ubl/os-UBL-2.1/mod/summary/reports/UBL-AllDocuments-2.1.html#t-CommonLibrary-270 element.

UNSPSC Download: https://www.unspsc.org/codeset-downloads

Explanation: https://www.unspsc.org/Portals/3/Documents/Introduction%20to%20UNSPSC.pdf

Example, the UNSPSC commodity code for Xalgoritms software components is: 43233500 Information exchange software

HARMONIZED SYSTEM CODE (TRADE AGREEMENTS)

HS a has a 4-level tree structure (Section, Division, Group, Class) expressed with six digits, for example: Chapter 10 (Cereals) Heading 1006 (Rice) Subheading 100630 (Semi-milled or wholly milled rice, whether or not polished or glazed)

Find HS: http://www.foreign-trade.com/reference/hscode.htm

ISIC Download: https://www.wto.org/english/tratop_e/tariffs_e/database_explanation_e.htm

Explanation: http://www.wcoomd.org/en/topics/nomenclature/overview/what-is-the-harmonized-system.aspx

Example, the UNSPSC commodity code for Xalgoritms computer programming activity is: 991999 Information Retrieval Services

STOCK KEEPING UNIT (SKU)

Xalgorithms defaults to the INDUSTRY DATA WAREHOUSE (IDW) SKU structure. IDW expresses 43 critical data fields, but we impose a constraint that this must be expressed within varchar(255)

Explanation: http://idea4industry.com/news-events/update-introducing-new-idw-standard-flat-file-specifications http://idea4industry.com/news-events/update-programming-documentation-available-for-idws-43-critical-fields-comp On field length, see discussion at https://stackoverflow.com/questions/2089370/size-sku-in-magento