OptionalshortShort description of the variant
"Sodium Chloride 500g"
OptionalratingRating of the variant
4.5
OptionalreviewNumber of reviews for the variant
100
OptionalbaseReference quantity for unit conversion calculations
500
OptionalbaseReference unit of measurement for conversions
"g"
OptionalusdPrice converted to USD for comparison
19.99
OptionallocalThe price convert to the users local currency
OptionalskuStock keeping unit identifier for inventory tracking
"NaCl-500"
OptionalidUnique identifier within the system
12345
OptionaluuidGlobally unique identifier
"550e8400-e29b-41d4-a716-446655440000"
OptionalcacheStable per-product cache/exclusion identity, as derived by
SupplierBase.getUniqueProductKey and frozen on the builder at parse
time. Combined with the supplier name (via getProductIdentityKey) to
key the product-detail cache and the "Ignore Product" exclusion store.
"FAM_889460"
OptionalgradeChemical grade specification (e.g., 'ACS', 'Technical')
"ACS"
OptionalconcentrationChemical concentration specification
"98%"
OptionalmoleweightMolecular weight of the variant
100.00
OptionalformulaMolecular formula
`C<sub>18</sub>H<sub>33</sub>NaO<sub>3</sub>`
OptionalpurityPurity of the variant, as a percentage string. Keeps any qualifier the supplier reports,
e.g. comparators (<, >, ≤, ≥) and the % sign.
"98%"
"≥99%"
OptionalstatusCurrent status code of the variant
"IN_STOCK"
OptionalstatusHuman-readable status description
"In Stock"
OptionalshippingSpecial shipping requirements or information
"Hazardous material - special shipping required"
OptionalpurchaseParsed purchase restrictions (region/buyer/etc.) used to hide options a given user cannot buy. See PurchaseRestriction.
OptionalavailabilityAvailability of the variant
"IN_STOCK"
OptionalattributesAttributes of the variant
`[{ name: "Size", value: "500g" }]`
OptionalmolesNumber of moles of the variant
23.5
OptionalimagesFlat list of the product's images. Full-size images and thumbnails are
kept as separate, independent entries distinguished by their type field
(see ProductImage; a supplier's main image/thumbnail is often not
part of its gallery). The
first entry of each type is treated as that type's default.
`[{ href: "https://example.com/image.jpg", type: "image" }, { href: "https://example.com/thumb.jpg", type: "thumbnail" }]`
Optional_Positional index of the product within the current search-results list,
assigned at render/persist time. This is NOT a stable product identifier
(that is id) — it only conveys row position, so consumers that need a
unique row key can use it without clobbering the real product id.
0
OptionalparentDisplay-only back-reference to the main product, set on flattened variant
rows when the "group product variants" setting is off (see
flattenProductVariants). Lets the detail panel link back to the parent
instead of listing variants. Never set by suppliers, never persisted or
exported.
OptionalpriceDisplay-only price-history series id for this row, stamped on flattened
variant rows when the "group product variants" setting is off (see
flattenProductVariants). Because flattening merges the variant onto a copy
of the product and drops variants, the row can no longer recompute its own
variantSeriesKey; carrying the resolved key lets the results table look up
the variant's recorded series directly. Never set by suppliers, never
persisted or exported.
OptionalpriceDisplay-only signed percent change of this row's price trend (rising = +, falling = −), stamped by the results table so its trend column has a value to sort by (price history isn't on the row — it's loaded separately). Absent when the row has no drawable trend. Never set by suppliers, never persisted or exported.
Name of the supplier providing the product
"Loudwolf"
Full product title/name
"Sodium Chloride ACS Grade 500g"
Absolute URL ChemPal queries/processes for this product. For scraped suppliers this is the product page; for JSON-backed suppliers it may be an API endpoint. Used as the product's processing identity (cache and exclusion keys, detail fetches).
"https://supplier.com/products/sodium-chloride-500g"
OptionalpermalinkAbsolute human-facing page the user opens in the browser. Defaults to url (so scraped suppliers need not set it); JSON-backed suppliers whose web UI differs from their API endpoint set it explicitly.
"https://supplier.com/products/sodium-chloride-500g"
Current price of the product
19.99
ISO currency code for the price
"USD"
Display symbol for the currency
"$"
Available quantity in stock
100
Standardized unit of measurement
"g"
OptionaldescriptionDetailed product description
"ACS grade sodium chloride suitable for analytical use"
OptionalmanufacturerName of the product manufacturer
"Sigma-Aldrich"
OptionalcasChemical Abstracts Service registry number
"7647-14-5"
OptionalvendorAlternative name for the supplier
"Sigma"
OptionalvariantsArray of available product variations
OptionaldocURLs to related documentation (MSDS, SDS, etc.)
["https://supplier.com/msds/nacl.pdf"]
OptionalsdsURL to the product's SDS page
"https://supplier.com/sds/nacl.pdf"
OptionalcoaURL to the product's Certificate of Analysis (COA) document
"https://supplier.com/coa/nacl.pdf"
Optionalspecspecsheet
OptionalsupplierCountry of the supplier
"US"
OptionalsupplierShipping scope of the supplier
"worldwide" | "domestic" | "international" | "local"
OptionalpaymentPayment methods accepted by the supplier
["visa", "mastercard"]
OptionalsupplierThe supplier's eBay storefront, set when they accept "ebayonly" — they restrict shipping
on their own site but ship more freely via the marketplace.
"https://www.ebay.com/str/dailybiousa"
OptionalsupplierThe supplier's Amazon storefront, set when they accept "amazononly".
"https://www.amazon.com/s?k=HiMedia"
Optional_Levenshtein result of the product title and the search string
95
OptionalmatchMatch percentage of the product title and the search string
95
OptionalsmilesSMILES notation for the product
"C1=CC=CC=C1"
OptionaliupacIUPAC name for the product
"dipotassium;oxalate"
OptionalpubchemPubChem Compound ID (CID) for the product
11413
OptionalinchiInChIKey for the product
"IRXRGVFLQOSHOH-UHFFFAOYSA-L"
OptionalinchiInChI string for the product
"1S/C2H2O4.2K/c3-1(4)2(5)6;;/h(H,3,4)(H,5,6);;/q;2*+1/p-2"
Represents a chemical product with its complete details, extending the Variant interface. This is the main product type used throughout the application.
Example