Product Entities
Overview
The Product collection consists of the global products and their associations with a specific site. This section also provides details related to Product Group entities.
Product Data Model
The following data model shows the Product entity and it's relational links. For the full model, see Data Model.

Competitor Product
| Name | Description |
|---|---|
| Entity Description | Details related to a customer's competitor Product |
| Source Schema | dbo |
| Source Table | PNCompetitorProduct |
| Destination Collection(Endpoint) | Product |
| Entity Type | Product |
| Entity Variant | Competitor |
Competitor Product Attribute Details
This table identifies all of the attributes that are available on the Competitor Product record.
| Field | Reference Entity | Field Description | Format | Max Bytes |
|---|---|---|---|---|
| Active | Defines if the product or competitor site is available for pricing. | bit | 1 | |
| AllowOPISCopy | allows automatic copying of OPIS prices from specific sources to competitor price history. | bit | 1 | |
| CardPriceDiscount | discount associated to the competitor product when using the loyalty card. | money | 8 | |
| CompetitorProductID | An element containing the unique identifier of a competitor product (generally just a number) | int | 4 | |
| CompetitorProductUID | An element containing the unique identifier of a competitor product (sql db string of numbers) | uniqueidentifier | 16 | |
| CompetitorSiteUID | Site | An element containing the unique identifier of a competitor site (sql db string of numbers) | uniqueidentifier | 16 |
| Created | Time the record was created. | datetime | 8 | |
| CurrentPrice | The latest calculated price based on either the Pump price or Last exported price depending on the Export type setting. | money | 8 | |
| CurrentPriceCreated | Time which current pump price was established. | datetime | 8 | |
| CurrentPriceDiscount | Discount amount applied to the own site product price. | money | 8 | |
| CurrentPriceEffectiveTime | Timestamp of current competitor price | datetime | 8 | |
| CurrentPriceOrigin | Origin of current competitor price | nvarchar | 100 | |
| CurrentPriceStartTime | Timestamp of current competitor price start time | datetime | 8 | |
| CurrentPriceStatusID | PriceStatus | Current status of Competitor Price | int | 4 |
| CurrentPriceUserUID | Name Only | Embedded reference to a price user | uniqueidentifier | 16 |
| CurrentSource | Source of data | nvarchar | 20 | |
| GlobalProductUID | Product | unique identifier that defines the global product entity that defines this product (sql string of numbers) | uniqueidentifier | 16 |
| InStock | indicates whether or not there is currently any stock of the product. | bit | 1 | |
| LastUpdated | Time the record was last updated | datetime | 8 | |
| MaxListPricePercentage | Maximum % value of the List Price | money | 8 | |
| MaxPrice | The maximum validation price used by the import; prices above this value will be sent for review to the Error Browser. Must be greater than MinPrice. | money | 8 | |
| MaxPriceDecrement | The maximum validation price decrease used by the import; prices that move down by more than this value will be sent for review to the Error Browser. Must be greater than zero. | money | 8 | |
| MaxPriceIncrement | The maximum validation price increase used by the import; prices that move up by more than this value will be sent for review to the Error Browser. Must be greater than zero. | money | 8 | |
| MinListPricePercentage | Minimum % value of the List Price | money | 8 | |
| MinPrice | The minimum validation price used by the import; prices below this value will be sent for review to the Error Browser. Must be less than MaxPrice and greater than zero. | money | 8 | |
| NearestOwnSiteUID | Site | Distance to nearest Own Site | uniqueidentifier | 16 |
| NumberOfHoses | Defines the number of pumps for this product at a own site. Must be greater than zero. | smallint | 2 | |
| PreviousChangedPrice | Specifies changed price prior to current implemented price. | money | 8 | |
| PreviousChangedPriceEffectiveTime | Timestamp or previous changed price | datetime | 8 | |
| PreviousPrice | Previous competitor price for the product where the price is different from the current price. | money | 8 | |
| PreviousPriceEffectiveTime | timestamp of previous effective time | datetime | 8 | |
| PublishedPrice | Value of Published Price | money | 8 | |
| PublishedPriceEffectiveTime | Timestamp of Published Price | datetime | 8 | |
| SurveyPossible | Flag to indicate whether it is possible to survey the prices for this competitor product or not (e.g. are prices for this product displayed on the totem etc.) | bit | 1 |
Global Product
| Name | Description |
|---|---|
| Entity Description | Details related to a core Global products |
| Source Schema | dbo |
| Source Table | PNGlobalProduct |
| Destination Collection(Endpoint) | Product |
| Entity Type | Product |
| Entity Variant | Global |
Global Product Attribute Details
This table identifies all of the attributes that are available on the Global Product record
| Field | Reference Entity | Field Description | Format | Max Bytes |
|---|---|---|---|---|
| AllowOptimise | Defines if the own site product should be considering during optimisation. | bit | 1 | |
| BreakEvenPercentage | Used by the Break Even Percentage rule to validate if the site has made enough margin. Must be greater than 0. | money | 8 | |
| CFEnableCompetitorPrice | This flag determines if competitor prices should be copied forward by the carry forward functionality. | bit | 1 | |
| CFEnableOwnPrice | This flag determines if own prices should be copied forward by the carry forward functionality. | bit | 1 | |
| CFFillClosedPeriods | This flag determines if the prices should only be carried forward to fill closed periods or if prices should be carried forward for the configured number of days regardless of the presence of a later price. | bit | 1 | |
| CFMaximumPriceAge | This determines the maximum date (back from current date) that prices will be considered for carry forward; the default is 14 days. | int | 4 | |
| CFNumberOfDays | This determines the maximum number of days that prices can be carried forward; the default is 14 days. | int | 4 | |
| CFTimeLag | This determines the maximum number of days prior to the current date that prices are not carried forward; the default is 4 days. | int | 4 | |
| CFValidOnly | This flag will only allow for prices which have passed price checking (i.e. are marked as valid) to be carried forward. | bit | 1 | |
| Created | Time the record was created. | datetime | 8 | |
| DisplayOrder | Defines the order that the products are displayed on pages in PriceNet. Must be greater than zero. | tinyint | 1 | |
| FixedCompanyMargin | specified margin assigned to the company required on top of the current cost of the product. | decimal | 9 | |
| FixedDealerMargin | specified margin assigned to the dealer site required on top of the current cost of the product. | decimal | 9 | |
| GlobalProductID | unique identifier that defines the global product entity that defines this product (usually a number) | int | 4 | |
| GlobalProductUID | unique identifier that defines the global product entity that defines this product (sql string of numbers) | uniqueidentifier | 16 | |
| GPCMaxPriceDecrement | Maximum of amount price is allowed to decrease during a general price change. | money | 8 | |
| GPCMaxPriceIncrement | Maximum of amount price is allowed to increase during a general price change. | money | 8 | |
| ImportCode | identifier that is used to import data relating to a specific model item. | importcode | 100 | |
| LastUpdated | Time the record was last updated. | datetime | 8 | |
| LFLVolumePercentageTarget | Defines the target value used by the pricing page to highlight that the like for like percentage is too low. Must be greater than zero. | float | 8 | |
| MarginAllocationMethodID | MarginAllocationMethod | Legacy setting determining whether margin is allocated by company fixed, dealer fixed or not set. | int | 4 |
| MaxCost | The maximum validation cost price used by the import; cost prices above this value will be sent for review to the Error Browser. Must be greater than MinCost. | costprice | 9 | |
| MaxCostBreakdown | An import validation determining the maximum cost of a breakdown component of cost. | costprice | 9 | |
| MaxDelivery | maximum value for allowed delivered gallons. | int | 4 | |
| MaxPrice | The maximum validation price used by the import; prices above this value will be sent for review to the Error Browser. Must be greater than MinPrice. | money | 8 | |
| MaxPriceDecrement | The maximum validation price decrease used by the import; prices that move down by more than this value will be sent for review to the Error Browser. Must be greater than zero. | money | 8 | |
| MaxPriceIncrement | The maximum validation price increase used by the import; prices that move up by more than this value will be sent for review to the Error Browser. Must be greater than zero. | money | 8 | |
| MaxSales | The maximum sales value used by the import; prices above this value will be sent for review to the Error Browser. Must be greater than MinSales. | float | 8 | |
| MinCost | The minimum validation cost price used by the import; cost prices below this value will be sent for review to the Error Browser. Must be less than MaxCost. | costprice | 9 | |
| MinCostBreakdown | An import validation determining the minimum cost of a breakdown component of cost. | costprice | 9 | |
| MinDelivery | minimum value for allowed delivered gallons. | int | 4 | |
| MinPrice | The minimum validation price used by the import; prices below this value will be sent for review to the Error Browser. Must be less than MaxPrice and greater than zero. | money | 8 | |
| MinSales | The minimum sales value used by the import; prices below this value will be sent for review to the Error Browser. Must be less than MaxSales and greater than zero. | float | 8 | |
| Name | identifier (text) for model item. | nvarchar | 200 | |
| OctaneCode | A legacy input to identify the octane of a product. | nvarchar | 40 | |
| PGMaxPrice | Used as the default value when creating own products. Must be greater than PGMinPrice. | money | 8 | |
| PGMaxPriceDecrement | During price generation process this is the maximum price amount of decrease allowed. | money | 8 | |
| PGMaxPriceIncrement | During price generation process this is the maximum price amount of increase allowed. | money | 8 | |
| PGMinPrice | Minimum price allowed during price generation. | money | 8 | |
| PHHProductCode | Used by the PHH Import to map the PHH specific product code to the PriceNet product code. | int | 4 | |
| PricePointSetUID | PricePointSet | unique identifier that defines the price point set entity that is used to determine which values the product prices can end with. | uniqueidentifier | 16 |
| TaxRate | This value defines the local tax rate that is applied to the product to determine margin. Must be greater than zero. | decimal | 5 | |
| TaxRateEffectiveTime | The read-only field shows the date and time (in hh:mm 24-hour format) at which the retail tax rate is scheduled to change. | datetime | 8 | |
| gpgProducts | Product | Embedded reference to product linked to Global Product Groups | Uniqueidentifier | 16 |
| gpgProductID | System generated ID | tinyint | 1 | |
| entityID | PNGPGProduct | Unique identifier for the own product(s) linked to a Global Product Group | Uniqueidentifier | 16 |
| globalProductGroup entityID | Unique identifier for the global product group | Uniqueidentifier | 16 | |
| offset | Offset value for product | money | 8 |
Own Product
| Name | Description |
|---|---|
| Entity Description | Details related to a customer's Own Product |
| Source Schema | dbo |
| Source Table | PNOwnProduct |
| Destination Collection(Endpoint) | Product |
| Entity Type | Product |
| Entity Variant | Own |
Own Product Attribute Details
This table identifies all of the attributes that are available on the Own Product record
| Field | Reference Entity | Field Description | Format | Max Bytes |
|---|---|---|---|---|
| AchievedVolume | Actual sales for each product at a site which can be stored against the planned volumes for comparison. | float | 8 | |
| AchievedVolumePeriod | Actual sales during a specified period of time for each product at a site. | float | 8 | |
| Active | Defines if the product or competitor site is available for pricing. | bit | 1 | |
| AdditionalCostFormula | Formula used to configure the cost that is added to the net DTW in order to make gross DTW. | nvarchar(max) | not null | |
| AllowOptimise | Defines if the own site product should be considering during optimisation. | bit | 1 | |
| BaseCostFormula | The formula used to configure the product cost for each product in a Dealer trade area. Base cost = Net DTW - Company margin. | nvarchar(max) | not null | |
| BreakEvenPercentage | Used by the Break Even Percentage rule to validate if the site has made enough margin. Must be greater than 0. | int | 4 | |
| CardPriceDiscount | discount associated to the competitor product when using the loyalty card. | money | 8 | |
| Created | Time the record was created. | datetime | 8 | |
| CurrentCost | The last cost input to the system either imported through the data channels or applied on the Product History page. | costprice | 9 | |
| CurrentCostEffectiveTime | Time of last cost input to the system. | datetime | 8 | |
| CurrentDeliveryCost | Most recent cost of product. | costprice | 9 | |
| CurrentDeliveryCostEffectiveTime | Time at which most recent cost of product can be applied to margin and other calculations. | datetime | 8 | |
| CurrentMargin | Standard margin calculation based on current price current cost and tax rate. | decimal | 17 | |
| CurrentPrice | The latest calculated price based on either the Pump price or Last exported price depending on the Export type setting. | money | 8 | |
| CurrentPriceDiscount | Discount amount applied to the own site product price. | money | 8 | |
| CurrentPriceEffectiveTime | Timestamp of the current price | datetime | 8 | |
| CurrentPriceStartTime | Start time of current pump price | datetime | 8 | |
| CurrentPumpPrice | Last implemented price at fuel pump | money | 8 | |
| CurrentPumpPriceDiscount | Value or Pump Price Discount | money | 8 | |
| CurrentPumpPriceEffectiveTime | Timestamp of the current pump price | datetime | 8 | |
| CurrentPumpPriceOrigin | The origin of the current pump price. | nvarchar | 100 | |
| CurrentPumpPriceSource | Data Source that provided current pump price. | source | 40 | |
| CurrentSource | Source of the latest own price for the product. | source | 40 | |
| DealerIndustryZoneMargin | Required margin for proposed prices generated by the Industry Margin Check pricing rule at a Dealer Control Site. | money | 8 | |
| EndTime | Defines the date/time that the product ceases to be active (this property is for information only). | datetime | 8 | |
| FixedCompanyMargin | specified margin assigned to the company required on top of the current cost of the product. | decimal | 9 | |
| FixedDealerMargin | specified margin assigned to the dealer site required on top of the current cost of the product. | decimal | 9 | |
| GlobalProductUID | Product | unique identifier that defines the global product entity that defines this product (sql string of numbers). | uniqueidentifier | 16 |
| GPCMaxPriceDecrement | Maximum of amount price is allowed to decrease during a general price change. | money | 8 | |
| GPCMaxPriceIncrement | Maximum of amount price is allowed to increase during a general price change. | money | 8 | |
| HighPriceIncrease | Validation limit used by the SFR Priority Adjustment to determine if a price increase for a product should send a site to SFR with high priority. | money | 8 | |
| InStock | indicates whether or not there is currently any stock of the product. | bit | 1 | |
| LastProposedEffectiveTime | Timestamp of the Last Proposed Price | datetime | 8 | |
| LastUpdated | Time the record was last updated. | datetime | 8 | |
| ListPrice | A list price is used by some pricing rules to determine a local price for each own product that can be referenced in pricing calculations. | money | 8 | |
| ListPriceChangeLimit | The amount by which the proposed price is allowed to be higher or lower than the local List Price (In PN - own site, product, list price) | money | 8 | |
| ListPriceEffectiveTime | Timestamp of the List Price | datetime | 8 | |
| ListPriceOffset | The price offset from the price at the List Price Competitor (In PN - own site, product, list price) | money | 8 | |
| LocalReferencePriceOffset | Stores the offset to be applied to the global reference price to create a local reference price for a product. | money | 8 | |
| MaintainSpread | Used by the Maintain Grade Spreads price adjustment rule to determine whether or not to adjust the price of this product. | bit | 1 | |
| MarginAllocationMethodID | Legacy setting determining whether margin is allocated by company fixed, dealer fixed or not set. | int | 4 | |
| MaxCost | The maximum validation cost price used by the import; cost prices above this value will be sent for review to the Error Browser. Must be greater than MinCost. | costprice | 9 | |
| MaxCostBreakdown | An import validation determining the maximum cost of a breakdown component of cost. | costprice | 9 | |
| MaxDailyPriceDecrement | Used by the Enforce Price Limits rule to stipulate that maximum amount that a price can decrease in a single day. | money | 8 | |
| MaxDailyPriceIncrement | Used by the Enforce Price Limits rule to stipulate that maximum amount that a price can increase in a single day. | money | 8 | |
| MaxDelivery | maximum value for allowed delivered gallons. | int | 4 | |
| MaxPrice | The maximum validation price used by the import; prices above this value will be sent for review to the Error Browser. Must be greater than MinPrice. | money | 8 | |
| MaxPriceDecrement | The maximum validation price decrease used by the import; prices that move down by more than this value will be sent for review to the Error Browser. Must be greater than zero. | money | 8 | |
| MaxPriceIncrement | The maximum validation price increase used by the import; prices that move up by more than this value will be sent for review to the Error Browser. Must be greater than zero. | money | 8 | |
| MaxSales | The maximum sales value used by the import; prices above this value will be sent for review to the Error Browser. Must be greater than MinSales. | float | 8 | |
| MinCost | The minimum validation cost price used by the import; cost prices below this value will be sent for review to the Error Browser. Must be less than MaxCost. | costprice | 9 | |
| MinCostBreakdown | An import validation determining the minimum cost of a breakdown component of cost. | costprice | 9 | |
| MinDelivery | minimum value for allowed delivered gallons. | int | 4 | |
| MinMargin | Used by the Minimum Margin validation rule to validate the proposed margin against the minimum margin. | money | 8 | |
| MinPrice | The minimum validation price used by the import; prices below this value will be sent for review to the Error Browser. Must be less than MaxPrice and greater than zero. | money | 8 | |
| MinSales | The minimum sales value used by the import; prices below this value will be sent for review to the Error Browser. Must be less than MaxSales and greater than zero. | float | 8 | |
| NotionalStreetPriceDelta | NotionalStreetPriceDelta Value | money | Not null | |
| NumberOfHoses | Defines the number of pumps for this product at a own site. Must be greater than zero. | smallint | 2 | |
| OctaneCode | Octane Value of Product | nvarchar | 20 | |
| OwnProductID | ID of the own product. | int | 4 | |
| OwnProductUID | Unique ID of the own product. | uniqueidentifier | 16 | |
| PGMaxPrice | Used as the default value when creating own products. Must be greater than PGMinPrice. | money | 8 | |
| PGMaxPriceDecrement | During price generation process this is the maximum price amount of decrease allowed. | money | 8 | |
| PGMaxPriceIncrement | During price generation process this is the maximum price amount of increase allowed. | money | 8 | |
| PGMinPrice | Minimum price allowed during price generation. | money | 8 | |
| PreviousChangedCost | Specifies cost prior to current implemented cost. | costprice | 9 | |
| PreviousChangedCostEffectiveTime | Time stamp of previous cost price | datetime | 8 | |
| PreviousChangedPumpPrice | Specifies changed pump price prior to current implemented price. | money | 8 | |
| PreviousChangedPumpPriceEffectiveTime | Timestamp of the previous changed pump price | datetime | 8 | |
| PreviousPrice | Previous own price for the product where the price is different from the current price. | money | 8 | |
| PreviousPriceEffectiveTime | Timestamp of Previous Effective Time | datetime | 8 | |
| PricePointSetUID | PricePointSet | unique identifier that defines the price point set entity that is used to determine which values the product prices can end with. | uniqueidentifier | 16 |
| ReverseAdditionalCostFormula | The formula applied to Net DTW to calculate a notional street price | nvarchar(max) | 2000 | |
| RollingRunningRate | A calculation based on achieved volume (or margin) against planned volume (or margin) over a planning period. | int | 4 | |
| Site | Unique identifier for the own site linked to the product. | uniqueidentifier | 16 | |
| SOEInclude | Flag to determine whether the product is included in the control of prices that are proposed during a state of emergency. | bit | 1 | |
| SOEMargin | The amount of margin that is included in the control of prices that are proposed during a state of emergency. | money | 8 | |
| SOEMarginEffectiveTime | The time at which the margin is active in the control of prices that are proposed during a state of emergency. | datetime | 8 | |
| SOEMaxPrice | Maximum price allowed during state of emergency. | money | 8 | |
| SOEMaxPriceEffectiveTime | Time at which maximum price allowed for state of emergency goes into effect. | datetime | 8 | |
| StartTime | Defines the date/time that the product is active (this property is for information only). | datetime | 8 | |
| SupplierName | Name of supplier. | nvarchar | 80 | |
| Tactic | Stores the tactic value for each product this is either 'E+1.999' (where 1.999 is the last proposed price) or either 'P' or 'S' followed by a price offset value. | varchar | 12 | |
| TaxRate | This value defines the local tax rate that is applied to the product to determine margin. Must be greater than zero. | decimal | 5 | |
| TaxRateEffectiveTime | The read-only field shows the date and time (in hh:mm 24-hour format) at which the retail tax rate is scheduled to change. | datetime | 9 | |
| TimeWeightedCost | An overnight calculated value based on the average (weighted) cost over the time period set at the own site. | costprice | 9 | |
| TimeWeightedCostCalculated | The date and time the TimeWeightedCost was last calculated. | datetime | 8 | |
| TVAAdjustment | positive or negative number to represent the TVA adjustment applied by the Dealer Price rule to calculate the contract price for Dealer Sites. | decimal | 9 | |
| Volatility | behavioral changes to price and cost for each product such as the number of updates and the amount by which prices have increased or decreased within a set period. | nvarchar | 40 | |
| VolatilityCostChangeCountFrom | Specify the lowest number of cost price changes to determine the 'normal' price range. | smallint | 2 | |
| VolatilityCostChangeCountTo | Specify the highest number of cost price changes to determine the 'normal' price range. | smallint | 2 | |
| VolatilityCostChangeValueFrom | the lowest amount of cost price change value to determine the 'normal' range. | money | 8 | |
| VolatilityCostChangeValueTo | the highest amount of cost price change value to determine the 'normal' range. | money | 8 | |
| VolatilityCostChangeWithinLastXDays | Specify the number of days over which the system analyses updates to the cost price. | smallint | 2 | |
| VolatilityCostEnabled | Enable/disable the cost price volatility. | bit | 1 | |
| VolatilityPriceChangeCountFrom | Specify the lowest number of own price changes to determine the 'normal' price range. | smallint | 2 | |
| VolatilityPriceChangeCountTo | Specify the highest number of own price changes to determine the 'normal' price range. | smallint | 2 | |
| VolatilityPriceChangeValueFrom | Specify the lowest amount of own price change value to determine the 'normal' range. | costprice | 9 | |
| VolatilityPriceChangeValueTo | Specify the highest amount of own price change value to determine the 'normal' range. | costprice | 9 | |
| VolatilityPriceChangeWithinLastXHours | Specify the number of hours over which the system analyses updates to the own price. | smallint | 2 | |
| VolatilityPriceEnabled | Enable/disable the volatility for each Own Product on the Pricing page. | bit | 1 | |
| ZOffset | The maximum increase that can occur in a State Of Emergency (a rule property that was set in the own site, product, state of emergency tab in PN) | money | 8 | |
| ZOffsetEffectiveTime | Date and time from which the Zoffset is effective. | datetime | 8 |
