Product Pricing
Product has one or more ProductPrice associations.
Order price applied for a Product may be different from ProductPrice. Price applied may depend on ProductPriceRule (section ProductPriceAction, ProductPriceRule, ProductPriceCond, MarketingCampaignPrice)
ProductPrice may have a ProductPricePurpose. This allows PaymentMethodType preference to be set for Product and Order.
Order is identified by OrderHeader entity.