Unit of Measurements and Packaging
Products can be configured at different levels of detail depending on how the product needs to be represented. This page explains the difference between using a simple unit of measure VS defined unit of measures.
Simple Unit of Measurement
At the simplest level, a product can be configured using only SimpleUnitOfMeasurement.
For example:
{
"SimpleUnitOfMeasurement": "Kgm"
}
This means the product is measured and tracked in kilograms.
For example, if an event contains a quantity of 10, this represents:
10 kg of the product
This approach is useful when the product does not need an additional packaging or commercial-unit definition.
Adding Packaging Detail
If the product needs to be represented at a more specific packaging or commercial-unit level, UnitQuantity and UnitDescriptor can be added.
For example:
{
"SimpleUnitOfMeasurement": "Kgm",
"UnitQuantity": 2,
"UnitDescriptor": "Cases"
}
This defines the product as a:
2 kg case
In this example:
SimpleUnitOfMeasurement: "Kgm"defines the underlying measurement as kilograms.UnitQuantity: 2defines how many kilograms are contained in the commercial unit.UnitDescriptor: "Cases"defines that commercial unit as a case.
Therefore:
1 Case = 2 kg
For example, if an event contains a quantity of 10, this represents:
10 Cases of 2kg each
Allowed Values
SimpleUnitOfMeasurement
The following values are supported for SimpleUnitOfMeasurement.
| Value | Description |
|---|---|
Kgm | Kilograms |
Lbs | Pounds |
Cases | Cases |
Units | Units |
Where possible, it is recommended to use one of the standard values above.
Accepted UOM Aliases
Wholechain can also interpret a number of common UOM aliases and map them to the appropriate SimpleUnitOfMeasurement.
Aliases are matched case-insensitively (for example KG and kg both map to Kgm).
For example:
{
"SimpleUnitOfMeasurement": "kg"
}
is interpreted as:
{
"SimpleUnitOfMeasurement": "Kgm"
}
The following aliases are supported:
| Submitted Value | Mapped To |
|---|---|
kgm | Kgm |
kg | Kgm |
lbs | Lbs |
lb | Lbs |
pounds | Lbs |
pound | Lbs |
lbr | Lbs |
cases | Cases |
case | Cases |
cas | Cases |
cs | Cases |
ca | Cases |
units | Units |
line items | Units |
stop | Units |
stops | Units |
halfcases | Units |
half cases | Units |
pallets | Units |
pallet | Units |
UnitDescriptor
UnitDescriptor is used when additional packaging or commercial-unit information needs to be provided alongside the simple unit of measurement.
The following values are supported:
| Value | Description |
|---|---|
Cases | Product is represented as cases |
Units | Product is represented as individual units |
Totes | Product is represented as totes |
Pallets | Product is represented as pallets |
Totes and Pallets can be used as UnitDescriptor only. They are not valid SimpleUnitOfMeasurement values.
UnitDescriptor must be used together with UnitQuantity.
For example:
{
"SimpleUnitOfMeasurement": "Kgm",
"UnitQuantity": 10,
"UnitDescriptor": "Cases"
}
This represents:
1 Case = 10 kg
Simple UOM vs Unit Descriptor
SimpleUnitOfMeasurement and UnitDescriptor serve different purposes.
Example 1 — Product Tracked Directly in Kilograms
{
"SimpleUnitOfMeasurement": "Kgm"
}
The product is simply measured in kilograms.
For example:
Quantity 25 = 25 kg
Example 2 — 2 kg Case Product
{
"SimpleUnitOfMeasurement": "Kgm",
"UnitQuantity": 2,
"UnitDescriptor": "Cases"
}
The underlying measurement remains kilograms, but Wholechain now also knows that the product is packaged as a 2 kg case.
Therefore:
1 Case = 2 kg
Example 3 — 20 kg Pallet Product
{
"SimpleUnitOfMeasurement": "Kgm",
"UnitQuantity": 20,
"UnitDescriptor": "Pallets"
}
This represents:
1 Pallet = 20 kg