Skip to main content

Price specification

Price Specification (Price)

A Price Specification is a structured value representing a monetary amount, consisting of a value and currency code.

The PriceSpecification entity is the HiiRetail representation of a currency-specific value related to an Item. It might be a Purchase Price in which it states what the Item is purchased for from a Supplier. It might be a Sales Price that indicates what the Item is sold for in a sales process.

There are several other Price Types for different purposes. Depending on the Price Type the Price can and should be used for different things. A Promotion Price should always reference a Promotion and a Member Price has no meaning without a relation to a member identifier.

An Item MUST have a minimum of one sales price specification. If no specific sales price is present there must always be a Default Price on the Item to make sure any downstream usage always has a possibility to deduct a valid gross profit calculation. Usually a Default Price is not enough, and a minimum of one Sales Price must exist too.

Also see GS1 Price Specification

Price Types

Price typeDescription
SALESThe regular sales price for the item. It can be placed on any level in the price level hierarchy all the way down to the leaf level (business unit). It must have a from date, and an optional to date. Whenever it is replaced the replaced price should get an end date. Sales prices can be scheduled into the future. A from date in the future indicates a future price.
PURCHASEThe price the item is purchased for from a given Business Partner.
LOWEST_HISTORIC_PRICEPrice specification for providing the lowest retail price in the last x days. EU Directive 98/6/EC - Article 6a

Statuses

The Status is used to manage the lifespan of a Price Specification. If a Price Specification is to be active and part of the retail business, it has a status for it called "Active".

Deleted Price Specifications are typically kept for historical reasons. An Price Specification that has status "Deleted" is considered no longer in service, and should be ignored by most systems - except for reporting perhaps.

StatusDescription
ACTIVEActive means the entity is active and available for normal operation. It can be used, processed and displayed as expected.
DELETEDDeleted indicates that the entity is deleted and should not be used. It may be displayed but it should never be part of active results or part of business logic unless it actually is to return it to an active state.