Skip to main content

Codes

Extended information on product and variant codes.

MPN - Required

Use the MPN code type to submit your product's Manufacturer Part Number (MPN). MPNs are used to uniquely identify a specific product among all products from the same manufacturer. Shoppers might search specifically for an MPN, so providing the MPN can help ensure that your product is shown in relevant situations.

Format

Follow these formatting guidelines to make sure that Axiom understands the data that you're submitting.

TypeString (Alphanumeric, Unicode characters. Recommended: ASCII only)
Limits1-70 characters
Repeated fieldNo

Minimum Requirements

These are the requirements that you'll need to meet to show your product. If you don't follow these requirements, we could reject your product.

  • MPN is a required field
  • Use the MPN assigned by the manufacturer. Unless you're the manufacturer, don't use a value that you've created.
  • Distinguish between variants.
    • Use the correct MPN for each product. Typically, each variant of a product (different colours or sizes) has its own MPN, so make sure that you submit the correct value. A key exception is different sizes of clothing products, where all sizes often have the same MPN.

Additional Guidelines

Bundles

  • Use the MPN of the 'bundle', not the individual products if the manufacturer created the bundle.
  • Use the MPN of the 'main product' if you created the bundle. For example, if you bundle a camera with a lens and a carry bag, submit the MPN of the camera, which is the main product.

Compatible and Refurbished 3rd Party Products

  • Submit the MPN from the manufacturer who actually built the compatible product. Don't submit the original equipment manufacturer (OEM) details to indicate that your product is compatible with or a replica of the OEM brand's product.

Multipacks

  • Use the MPN of the 'multipack', not the individual products, if the manufacturer created the multipack.
  • Use the MPN of the 'individual products', if you created the multipack.

GTIN

Use one of EAN, UPC or JAN code types to submit Global Trade Item Numbers (GTINs). A GTIN uniquely identifies your product. Products submitted without any unique product identifiers are difficult to classify and may not be eligible for all marketplace programmes or features. Shoppers might search specifically for a GTIN, so providing the GTIN can help ensure that your product is shown in relevant situations.

When to Use

Required for all products with a GTIN assigned by the manufacturer. Only provide a GTIN if you are sure that it is correct. When in doubt do not provide a GTIN (for example, do not guess or make up a value).

Several different types of ID numbers are considered a GTIN. Use this attribute to submit any of the following types of numbers:

  • UPC (in North America/GTIN-12): 12-digit number (convert 8-digit UPC-E codes to 12-digit codes)
  • EAN (in Europe/GTIN-13): 13-digit number
  • JAN (in Japan/GTIN-13): 8 or 13-digit number

Format

Follow these formatting guidelines to make sure that Axiom understands the data that you're submitting.

TypeString (Alphanumeric, Unicode characters. Recommended: ASCII only)
Limits0, 8, 12, 13, or 14 digits (UPC, EAN, JAN, or ITF-14)
Repeated fieldNo

Minimum Requirements

These are the requirements that you'll need to meet to show your product. If you don't follow these requirements, we could reject your product.

  • Submit a value for the GTIN as defined in the official GS1 validation guide. Specifically, make sure that this meets the following requirements:
    • Don't submit a GTIN for a generic product.
    • Don't submit a GTIN for a product that doesn't have one. If you're the only seller of a product or if your product is a shop brand, it generally won't have a GTIN, so you don't need to submit one.
  • Use the correct GTIN for each product, including variants. Each product and variant of a product (different colours or sizes) has its own GTIN, so make sure that you submit the correct value. Do not guess or make up a value.

Additional Guidelines

Bundles

A bundle is a main product that you group with other accessory products and sell together as one package for a single price.

  • If the manufacturer created the bundle: submit the GTIN and MPN of the bundle, and not the individual products, as the values for the corresponding attributes.
  • If you created the bundle: submit the GTIN and MPN of the main product as the values for the corresponding attributes. For example, if you bundle a camera with a lens and carrying bag, submit the GTIN and MPN of the camera, which is the main product.

Shop Brand and White Label Products

Don't submit a value for the GTIN for products without a GTIN. If you're the only seller of a product or if your product is a shop brand, it may not have a GTIN, and if so you don't need to submit one. Instead, submit just the MPN and SKU for this product.

White-label products are products that are produced by one company, but relabelled by the company selling it to make it look like they produced it. For example, Company A makes a connected TV device. Company B buys it to resell and rebrands it with their logo and name.

Products with several GTINs

Make sure that you submit the correct GTIN value for each product:

  • For variants (products that come in multiple colours, sizes etc.), submit a unique GTIN for each variant.
  • For products with more than one valid GTIN (for example, products with a global GTIN and a GTIN specific to the distributor), use the GTIN with the broadest applicability, e.g. the global GTIN.

UNSPSC

United Nations Standard Products and Services Code (UNSPSC) codes are used to classify products and services: in the case of suppliers, to classify the products and services of their company, and in the case of UN staff members, to classify the products and services when publishing procurement opportunities.

When to Use

Optional for all products. If a code is not specified one will be generated by AI.

Format

Follow these formatting guidelines to make sure that Axiom understands the data that you're submitting.

TypeString (Alphanumeric, Unicode characters. Recommended: ASCII only)
Limits1-70 characters
Repeated fieldNo
Version formatXX_XXX (e.g., 26_0801)

Version

UNSPSC periodically undertakes a systematic review of the entire classification framework. This results in an updated version being released. Over time the number of codes has expanded. Version 1 contained about 7,000 codes, while the latest version contains over 20,000 codes. The latest UNSPSC version is 26_0801, released on 14th August 2023.

List of Supported Versions

  • 17_1001
  • 18_0801
  • 19_0501
  • 20_0601
  • 21_0901
  • 22_0601
  • 23_0701
  • 24_0301
  • 25_0901
  • 26_0801

Minimum Requirements

These are the requirements that you'll need to meet to show your product. If you don't follow these requirements, we could reject your product.

  • Submit a value and version for the UNSPSC as defined in the official guide.
  • Use the correct UNSPSC for each product including variants.

CAS

A CAS Registry Number (also referred to as CAS RN or informally CAS Number) is a unique identification number assigned by the Chemical Abstracts Service (CAS) in the US to every chemical substance described in the open scientific literature. It includes all substances described from 1957 through the present, plus some substances from as far back as the early 1800s. It is a chemical database that includes organic and inorganic compounds, minerals, isotopes, alloys, mixtures, and nonstructurable materials (UVCBs, substances of unknown or variable composition, complex reaction products, or biological origin). CAS RNs are generally serial numbers (with a check digit), so they do not contain any information about the structures themselves the way SMILES and InChI strings do.

Multiple CAS numbers can be provided in a CSV upload by seperating them by a | character.

When to Use

Required for all chemicals if it has been assigned a CAS number.

Format

Follow these formatting guidelines to make sure that Axiom understands the data that you're submitting.

TypeString (Alphanumeric)
Limits12 characters (up to 10 digits separated by hyphens into three parts)
Repeated fieldYes

A CAS RN is separated by hyphens into three parts, the first consisting from two up to seven digits, the second consisting of two digits, and the third consisting of a single digit serving as a check digit. This format gives CAS a maximum capacity of 1,000,000,000 unique numbers.

The check digit is found by taking the last digit times 1, the preceding digit times 2, the preceding digit times 3 etc., adding all these up and computing the sum modulo 10. For example, the CAS number of water is 7732-18-5: the checksum 5 is calculated as (8×1 + 1×2 + 2×3 + 3×4 + 7×5 + 7×6) = 105; 105 mod 10 = 5.

INCHI

InChI identifiers describe chemical substances in terms of layers of information — the atoms and their bond connectivity, tautomeric information, isotope information, stereochemistry, and electronic charge information. Not all layers have to be provided; for instance, the tautomer layer can be omitted if that type of information is not relevant to the particular application. The InChI algorithm converts input structural information into a unique InChI identifier in a three-step process: normalization (to remove redundant information), canonicalization (to generate a unique number label for each atom), and serialization (to give a string of characters).

Multiple INCHI can be provided in a CSV upload by seperating them by a | character.

When to Use

Required for all chemicals.

Format

Follow these formatting guidelines to make sure that Axiom understands the data that you're submitting.

TypeString (Alphanumeric)
Repeated fieldYes

Every InChI starts with the string "InChI=" followed by the version number, currently 1. If the InChI is standard, this is followed by the letter S for standard InChIs, which is a fully standardized InChI flavor maintaining the same level of attention to structure details and the same conventions for drawing perception. The remaining information is structured as a sequence of layers and sub-layers, with each layer providing one specific type of information. The layers and sub-layers are separated by the delimiter "/" and start with a characteristic prefix letter (except for the chemical formula sub-layer of the main layer). The six layers with important sublayers are:

  1. Main layer (always present)
    • Chemical formula (no prefix). This is the only sublayer that must occur in every InChI. Numbers used throughout the InChI are given in the formula's element order excluding hydrogen atoms. For example, "/C10H16N5O13P3" implies that atoms numbered 1–10 are carbons, 11–15 are nitrogens, 16–28 are oxygens, and 29–31 are phosphorus.
    • Atom connections (prefix: "c"). The atoms in the chemical formula (except for hydrogens) are numbered in sequence; this sublayer describes which atoms are connected by bonds to which other ones. The type of those bonds is later specified in the stereochemical layer prefixed by "b".
    • Hydrogen atoms (prefix: "h"). Describes how many hydrogen atoms are connected to each of the other atoms.
  2. Charge layer
    • charge sublayer (prefix: "q")
    • proton sublayer (prefix: "p" for "protons")
  3. Stereochemical layer
    • double bonds and cumulenes (prefix: "b")
    • tetrahedral stereochemistry of atoms and allenes (prefixes: "t", "m")
    • type of stereochemistry information (prefix: "s")
  4. Isotopic layer (prefixes: "i", "h", as well as "b", "t", "m", "s" for isotopic stereochemistry)
  5. Fixed-H layer (prefix: "f"); contains some or all of the above types of layers except atom connections; may end with "o" sublayer; never included in standard InChI
  6. Reconnected layer (prefix: "r"); contains the whole InChI of a structure with reconnected metal atoms; never included in standard InChI

The delimiter-prefix format has the advantage that a user can easily use a wildcard search to find identifiers that match only in certain layers.

INCHIKEY

The condensed, 27 character InChIKey is a hashed version of the full InChI (using the SHA-256 algorithm), designed to allow for easy web searches of chemical compounds. The standard InChIKey is the hashed counterpart of standard InChI. Most chemical structures on the Web up to 2007 have been represented as GIF files, which are not searchable for chemical content. The full InChI turned out to be too lengthy for easy searching, and therefore the InChIKey was developed. There is a very small, but nonzero chance of two different molecules having the same InChIKey, but the probability for duplication of only the first 14 characters has been estimated as only one duplication in 75 databases each containing one billion unique structures. With all databases currently having below 50 million structures, such duplication appears unlikely at present. A recent study more extensively studies the collision rate finding that the experimental collision rate is in agreement with the theoretical expectations.

Multiple INCHIKEY can be provided in a CSV upload by seperating them by a | character.

When to Use

Required for all chemicals.

Format

Follow these formatting guidelines to make sure that Axiom understands the data that you're submitting.

TypeString (Alphanumeric)
Repeated fieldYes

The InChIKey currently consists of three parts separated by hyphens, of 14, 10 and one character(s), respectively, like XXXXXXXXXXXXXX-YYYYYYYYFV-P. The first 14 characters result from a SHA-256 hash of the connectivity information (the main layer and /q sublayer of the charge layer) of the InChI. The second part consists of 8 characters resulting from a hash of the remaining layers of the InChI, a single character indicating the kind of InChIKey (S for standard and N for nonstandard), and a character indicating the version of InChI used (currently A for version 1.) Finally, the single character at the end indicates the protonation of the core parent structure, corresponding to the /p sublayer of the charge layer (N for no protonation, O, P, ... if protons should be added and M, L, ... if they should be removed.)

Endpoints

GET

https://api.axiomdata.io/api/suppliers/products/{type}/{identifier}/codes/{code}

POST

https://api.axiomdata.io/api/suppliers/products/{type}/{identifier}/codes

Create Code

PUT

https://api.axiomdata.io/api/suppliers/products/{type}/{identifier}/codes/{code}

DELETE

https://api.axiomdata.io/api/suppliers/products/{type}/{identifier}/codes/{code}

GET

https://api.axiomdata.io/api/suppliers/products/{type}/{identifier}/codes/archives

List Code Archives

POST

https://api.axiomdata.io/api/suppliers/products/{type}/{identifier}/codes/{code}/restore

Last updated on Mar 28, 2025 by omelbs