UOM conversion is the most common reason Sage X3 product imports fail or produce incorrect data after loading. The logic is not complicated, but it has specific rules about direction, coefficient placement, and validation sequence that aren't obvious from the documentation. This guide covers the full setup from GESTCO through ITF coefficients, with the checks that catch errors before they reach the import log.
How Sage X3 stores UOM conversions
Sage X3 manages UOM conversions at two levels. The GESTCO table holds global conversion factors — standard conversions that apply across all products (EA to DOZ, LB to KG, GL to LT, etc.). The ITF table holds product-specific conversions — overrides at the item level for products with non-standard pack ratios or catch-weight configurations.
GESTCO is checked first. If a product-specific conversion exists in ITF, it takes precedence. Understanding this hierarchy is the foundation of correct setup.
Coefficient direction — the most common error
The coefficient always represents how many of the target unit equal one of the source unit. EA to CS with a factor of 12 means 12 EA = 1 CS. The direction is: source unit quantity → 1 target unit.
Where this breaks: when operators enter the reciprocal. Instead of 12 (EA per CS), they enter 0.0833 (CS per EA). Sage X3 accepts both values without error. The wrong direction produces incorrect calculated quantities on every order line that uses that conversion.
Validation method: after setting the coefficient, manually calculate a known conversion and confirm the result. Do this for 10–15 products before running the full import.
Catch-weight setup
Catch-weight items have two units — a nominal order unit (CS, each) and a variable weight unit (LB, KG) that changes per lot. In Sage X3, catch-weight is enabled at the item level with the CWFLG field. The UOM setup requires a stock unit (typically LB or KG), a catch-weight unit (the order unit), and a nominal coefficient used for planning purposes only — actual weight is entered at receipt.
Common errors: setting the stock unit as the order unit instead of the weight unit, or populating the nominal coefficient as a fixed conversion (it isn't — it's a planning estimate).
Food, seafood, and protein distribution catalogs almost always have catch-weight items. They must be identified and handled separately from standard UOM items in the import file.
Validating before import
Before importing any product file with UOM conversions, run these checks:
(1) Confirm every UOM code in the import file exists in Sage X3's unit table. (2) For every GESTCO conversion referenced, confirm the record exists and the direction matches your coefficient logic. (3) For ITF overrides, confirm the item code exists before loading the ITF record — ITF is a child of the item master. (4) Spot-check 10–15 calculated conversions manually against expected values. (5) If catch-weight items exist, validate CWFLG status and nominal coefficients separately from standard items.
What to do when the import log shows no errors but data is wrong
A clean import log with wrong conversion data is a sign that Sage X3 accepted a value it didn't validate. This happens most often when a coefficient is within a plausible numeric range but directionally wrong — it passes field-level validation but produces incorrect calculations.
The diagnostic: export the item records post-import and calculate several conversions manually using the imported coefficients. Compare against your source data. If the results are reciprocals of what you expected, the direction is inverted. This requires a corrected import file and a re-import of the affected records.
UOM configuration is the most technically demanding part of a Sage X3 product import. If you're working through a catalog with complex pack hierarchies or catch-weight items, get in touch — this is the work we do most.
Heading into a Sage X3 migration? We handle the data work — fixed fee, fully remote. See services →