A weight of1.25 has no usable meaning without a unit. At catalogue handover, separate product mass, packed mass and the exact API/import unit. A thousand-fold conversion error can survive a visually correct product page and appear only when a shipping quote is requested.
Who should use this acceptance brief
Retailers exporting product data to shipping integrations. Use this as a scoped website handover task. Where real system evidence is required, teaching examples are not a substitute.
Source-bound platform fact
Shopify’s product CSV documents a weight value in grams with numeric content, alongside other weight/display fields. Confirm the exact current schema before importing. Shopify: product CSV weight fields · Checked 16 October 2026.
Filled teaching example
Synthetic example, not a client case. Finite inputs, expected decisions and counterexamples follow; no live integration is claimed.
On narrow screens, scroll to read the complete table.
| Input / case | Check basis | Expected decision |
|---|---|---|
| 1.25kg | ×1000 to grams | 1250g |
| 1250g | already grams | 1250g |
| 1.25, unit missing | cannot infer | unknown |
Run the acceptance exercise
- Approve the source mass and whether packaging is included.
- Map each outbound field to its documented unit and test a small and a heavy item.
- Compare the final submitted value with the shipping provider’s observed request, without placing an order.
Interpret the result and retain evidence
The fixture converts only explicit kilograms or grams, rejecting absent units as unknown. It does not round an unapproved precision or estimate packaging. A matching unit conversion cannot prove the source weight was measured correctly; retain the measurement source and any separately approved packed weight.
Limits before implementation
No live CSV imports, carrier calls or shipping charges. Excludes volumetric weight and a universal rule for every platform field.
Replay the finite example
Save both files in one folder and run with Node22.13 or newer. The example sends no network requests and changes no account or site. Filled inputs and expected outputs · Inspectable functions
node decision-check.mjs catalogue-shipping-mass-unit.json