Skip to end of metadata
Go to start of metadata

INTRODUCTION TO PRICING

In Compiere pricing for your vendors and customers is achieved using Price Lists. Compiere allows you to create as many Price Lists as you need. A Price List is required for anything you buy or sell. Using Price Lists you can control what you sell to which customer and the price to be charged. There is a default Price List which can be overwritten.

Price Lists are created using a discount schema. Price Lists may share discount schemes or they may have a unique scheme. The discount schemes allow you to define the discount percentages and surcharges. After calculation of the (standard) price, the discount percentage is calculated and applied to form the final price.

The Business Partner determines the Price List, and the Price List determines the price. The basic Price Lists which we recommend are a Purchase Price List and a Sales Price List, but you can have any number of Prices Lists you require.

This diagram depicts one of many options. 
The Vendor Price uses the Product Purchasing tab information with the Vendor Price List Schema to Create the Purchase Price List.
The Purchase Price List is then used as the basis or source with a second price list schema (yellow) to create a Sales Price List for my wholesale customers (yellow).
The Purchase Price List is then used as the basis or source with a third price list schema (red) to create a Sales Price List for my government customers (red).
The Wholesale Sales Price List (yellow) is used as the basis or source with a fourth price list schema (blue) to create a Sales Price List for my retail customers (blue).

PRICE TYPES

Each Price List provides the following price types: List Price, Standard Price, and Limit price.

The List Price is used for customers who receive discounts. For this price type, a check box can be enabled to print the discount on the invoice or order.

The Standard Price is the default price which is displayed for the product.

The Limit Price has a limit and issues an error if a price below that limit is entered. The Limit Price can be used to check your final purchase costs after discounts, rebates, etc.

DISCOUNT TYPES

The Price List discount type determines how the List, Standard and Limit Prices are calculated. It comprises the terms you negotiated with your business partner.

PRICE LIST SETUP

Unless a Price List is created manually, a Discount Schema must be used. The Discount Schema is where you define the rules for product prices and determine the currency etc.

After defining a Discount Schema you create your Price List. The Price List window allows you to generate Product Price Lists for all of your products or to apply specific rules for a business partner, product category, or product. Price Lists determine the currency, conversion rates, and tax treatment.

All Price Lists have three prices: List, Standard, and Limit.

The first step is to create a base Price List, which most often will be the Purchase Price List. The Purchase Price List is mainly determined by the product information. (The Purchasing tab in the Product window contains the main pricing information for this business partner). This information is often used as a basis for your initial Sales  Price List. You can manually add products and enter the prices or create them automatically.

Important: When you import products, the corresponding products will be created in Compiere. Within the individual product, a purchasing record is created. Updates on the import will also update the purchasing information if the necessary information is included in the import.

The following are some general concepts regarding Price Lists.

  • All Price Lists in Compiere have Versions. Price List Versions allow you to maintain parallel lists for different date ranges. The most current price list version is used on the basis of the document date. You can either enter the Version manually or derive it from the Discount Schema or a Base Version. If there is no Base Version, the product purchasing info is used to create the Price List.
  • To limit Price List maintenance, have one Purchase Price List and multiple Sales Price Lists, which are based on your Purchase Price List. By structuring your Price Lists in this manner, when you vendors update their prices all that is required is to update the prices for your Purchase Price List and then re-run your Sales Price Lists.
  • If you have multiple vendors for a single product, you would need to create multiple Purchase Price Lists: vendor A price list, vendor B price list, vendor C price list, etc. Since a Price List can only contain a product once.
  • You may also have a separate Price List per Vendor. If this is done then when a Purchase Order is entered for a particular Vendor, the list of items available for purchase will be restricted to just that vendor's items.
  • You can only sell products which are on a Price List (Sales Price List in that case).
  • You may also define additional pricing rules for Price Lists by using Discount Breaks. This allows you to define flat rate discounts as will as volume discounts. Unlike, Discount Schemas which apply to the creation of a Price List, Discount Breaks are applied at Order or Invoice time based on the prices provided in the Price List and any Business Partner or Volume Rules.
  • If you manually add products and prices to a price list (often done with Service product types) take care when automatically updating your price lists.  This is controlled by the Delete Old/Existing records option in price list generation.

Discount Schema

The first step in defining Price Lists is the Discount Schema. To create or modify a Discount Schema in Compiere, click on Discount Schema from the Main Menu.

The Discount Schema window allows you to define a Discount Schema on which your Price List is to be based. It determines how to calculate the prices using either the vendor prices or another Price List as a source.
 

 
Enter the Name and the Description for the Discount Schema. Enter a Valid from date for the Discount Schema to become effective. Click on the Renumber button to renumber the sequences in the Price List tab. This would generally be done if major maintenance had been done and you wanted to provide gaps between sequence numbers. If the process is successful, the number of updated entries is displayed in the bottom message line.
The Discount Type is Price List.

Click on the Price List Line tab to enter the Discounts and Sequence information for your Discount Schema.
 

 
Enter the Sequence for this Schema Line. It indicates the order in which the prices will be calculated and is important for your pricing structure. The lowest number comes first. The values will default in increments of 10 to allow for future expansion.

Two areas are displayed: Reference and Amounts.

In the Reference area, enter the Conversion Rate Type and the Conversion Date. This rate is used when generating a Price List in alternate currency. You will need to create a unique Price List for each currency you will use for Purchasing or Sales.

Note: To create a Price List in a different Currency, define a Price List Schema with the appropriate Currency and Conversion Rate Type. In the Amounts section select a List price Base of 'List Price', a Standard price Base of 'Standard Price' and a Limit price Base of 'Limit (PO) Price.  When this Price List Schema is used with your Sales Price list (in your home currency), it will convert all the prices to the desired currency.

The Conversion Rate Type indicates the type of conversion rate. This allows you to enter multiple rates for the same currency pair. For example, one rate may be used for Spot conversions and a different rate for Price Lists. You could set up a Manual Rate, a Fixed Rate, a Company Rate, or whatever you like.

The Business Partner, Product Category, and Product fields can be used to restrict the products in which this discount sequence applies. When creating your Base Price List we suggest that for the first sequence these fields remain blank. That will ensure that prices are created for all products. Ensuing sequences can be used to define discounts for specific Business Partners, Product Categories, or Products. Prices calculated in later sequences will over write prices calculated in previous sequences.

For example, assume products A, B, and C each with a cost of 100.00. In sequence 10 all products are given a discount of 20%. The price calculated would then be 80.00. In sequence 20 we specify a discount of 25% but for product B only. When the calculation of the price list is completed, the prices will be as follows: product A 80.00, product B 75.00, and product C 80.00. Note the second sequence does not apply the discount to the price calculated in the first sequence, but to the original cost.

In the Amounts area, you enter your Price information.

Select (or accept) the List Price Base, the Standard Price Base, or the Limit Price Base to indicate which Price should be used as a Basis for a new List Price, a new Standard Price, or a new Limit Price.

Note: When creating your base price list (which is based on the Product, Purchasing Tab), if you select List Price the List Price from the product will be used in the calculation, if you select Limit Price the PO Price from the product will be used and if you select Standard Price, no price will be calculated.

The Surcharge Amount fields indicate the amount to be added to the price prior to multiplication.

The Discount% fields indicate the percentage discount which will be subtracted from the base price. A negative amount indicates the percentage which will be added to the base price.

The Min Margin and Max Margin fields indicate the minimum or maximum margin for the base price of a product. The margin is calculated by subtracting the original limit price from the newly calculated price. The the calculated price does not meet the Minimum or Maximum Margin the price will be adjusted so it meets the Margin. If this field contains 0.00, no margin is intended and the field will be ignored.

The Rounding fields indicate which rounding method (if any) should be applied to the final prices in this price list.

Price List

The Price List window allows you to generate product price lists for your Business Partners. Price lists determine currency and tax treatment. Price list versions allow to maintain parallel lists for different date ranges. The most current price list version is used based on the document date.

To create or modify a Price List in Compiere, click on Price List from the Main Menu . The icon in front of the menu item indicates that it is a Window.
 

 
Enter the Name of the Price List and a Description. You also need to select the Currency.

Select a Price Precision. This is used to determine the number of decimal places that will be used when calculating a Price. This may be different than the Currency Precision defined for the selected currency. You may want to have a Price Precision greater than the Currency Precision if you sell products that are a low price (e.g. 1/2 cent) and generally sold in 100's or 1000's. Regardless of the Price Precision, the Order or Invoice line will always be rounded to the Currency Precision.

Select the Price includes Tax check box to indicate if the prices include tax. This is also known as the Gross Price. When an Order or Invoice is Processed, Compiere will calculate what portion of the price is the tax based on the tax rate for the line.

For additional information on Taxes, refer to the Taxes Chapter.

Select the Enforce price limit check box to indicate that prices cannot be below the Limit Price. If a User has a Role that allows for overwriting the Limit Price, then a price may be entered on an Order or Invoice that is less than then Limit Price.

For additional information on Roles, refer to the Implementation and Basic Settings Chapter.

You need to save your Price List before switching to the Version tab.

Click on the Version tab to enter the Version information for the Price List.

Select a Discount Schema, and a Base Version if you like. If a Base Version is selected then the prices, on that price list will be used for calculating your new price list. If no Base Version is entered, then the price list will be calculated based on the List Price and PO Price on the Product. The Valid from field defaults to the current date.

Click on the Create Price List button to start the Process and create Prices based on the parameters of this version. They will be created in the sequence of the Discount Schema Lines. Lines with a higher sequence overwrite existing prices. The sequence should be from generic to specific. You will have the option to delete old/existing records by selecting the dedicated check box.

Click on the Product Price tab to view the Price information generated. You can modify the prices generated.

Select the Product by using the Data Grid toggle, for example Fertilizer. Here you can overwrite or enter your Prices: List Price, Standard Price, and Limit Price.

Note: If you modify or add prices in this window they will be overwritten the next time you generate a Price List. It is best to adjust the Discount Schema to ensure the appropriate prices are calculated.

Discount Break

You may apply and additional level of discounts for a Business Partner, either a flat discount or a discount based on volume, by selecting the appropriate Discount Type in the Discount Schema window and defining an association with a Business Partner.

To create or modify a Discount Schema in Compiere, click on Discount Schema from the Main Menu. The icon in front of the menu item indicates that it is a Window.

Enter a Name and Description for this Discount Schema.

Select the Active check box to indicate this record is active.

Select a Discount Type of Flat Percentage or Break.

If you select a Discount Type of Break open the Discount Break tab.
 

 
Enter a Name and Description for this Discount Schema.

Select the Active check box to indicate this record is active.

Select a Discount Type of Flat Percentage or Break. The selection made will determine what additional fields are displayed. If the Discount Type is Flat Percentage there are two options. You may enter a Flat Discount % which will apply to any Business Partner that references this Discount Schema. Alternatively, you may select the B.Partner Flat Discount check box. The screen display changes as depicted below.

The Flat Discount % field is no longer displayed. When defined in this manner, the Discount % applied will be based on the percentage entered in the Business Partner window, Customer tab.

When the Discount Type is Flat Percentage, the Discount Break tab is not used.

The other option for Discount Type is Breaks. When Breaks is selected, the screen display changes as depicted below.

Select the Quantity based check box to indicate that this Discount Schema is based on the quantity of a Product a customer purchases. If this is un- selected, the Discount Schema is based on the currency amount of a Product a customer purchases.

Select a Cumulative Level of Line. This is the only option at this time.

Click on the Renumber button to renumber the sequences in the Discount Break tab. This would generally be done if major maintenance had been done and you wanted to provide gaps between sequence numbers. If the process is successful, the number of updated entries is displayed in the bottom message line.

When the Discount Type is Breaks, select the Discount Break tab to define the break levels.

Enter a Sequence for this Discount Break.

Select a Product Category or Product in which this Discount Break applies.

Enter a Break Value and Break Discount %. In this example, if single purchase of any product is a quantity or 100 or greater the standard price is discounted by 5%.

Select the B.Partner Flat Discount check box if you want to apply a flat discount defined for a Business Partner if this Break Value is reached.

Unlike the Discount Schema, the more specific records should be defined first. When a Discount Schema is referenced, Compiere will use the first sequence it finds that meets the criteria.

For example, perhaps you have staggered discount breaks of 1% for quantities of 10 - 49, 2% for 50 - 99 and 4% for 100 or more. It the sequences were defined in the following order, the desired results would not be achieved.

Sequence

Break Quantity

Break %

10

10

1.0%

20

50

2.0%

30

100

4.0%

If a Customer places and Order for 10 Rose Bushes, at Order entry time Compiere will apply the first discount break that it finds that meets the quantity criteria. In this case Sequence 10 as a Break Quantity of 10 which is less than or equal 10 so the criteria is met and the 1.0% discount is applied. This is the desired result.

But, if a Customer places and Order for 100 Rose Bushes, at Order entry time Compiere will apply the first discount break that it finds that meets the quantity criteria. In this case Sequence 10 as a Break Quantity of 10 which is less than or equal 100 so the criteria is met and the 1.0% discount is applied. The desired result is that a 4.0% discount is applied.

To achieve this the sequencing should be defined as follows:

Sequence

Break Quantity

Break %

10

100

4.0%

20

50

2.0%

30

10

1.0%

If a Customer places and Order for 10 Rose Bushes, at Order entry time Compiere will apply the first discount break that it finds that meets the quantity criteria. In this case Sequence 10 and Sequence 20 do not meet the criteria as a Break Quantity of 100 and 50 which is greater than the ordered quantity of 10. Compiere then proceeds to Sequence 30 where the Break Quantity of 10 is less than or equal 10 so the criteria is met and the 1.0% discount is applied. This is the desired result.

When a Customer places and Order for 100 Rose Bushes, at Order entry time Compiere will apply the first discount break that it finds that meets the quantity criteria. In this case Sequence 10 as a Break Quantity or 100 which is less than or equal 100 so the criteria is met and the 4.0% discount is applied. This is also the desired result.

Business Partner

The Business Partner window allows you to define the Price List to be used by your customers for sales and for your purchases from vendors.

Select the Customer or Vendor tab and select the appropriate price list. These are the prices that will be used for Sales or Purchases for this Business Partner.

For your Vendors, open the Business Partner window, Vendor tab. Select the appropriate Purchase Pricelist to be used for this Vendor. This is a default value and can be over-ridden on the Purchase Order or Vendor Invoice.

For your Customers, open the Business Partner window, Customer tab. Select the appropriate Price List to be used for this Customer. This is a default value and can be over-ridden on the Sales Order or Customer Invoice.

Also, if appropriate select a Discount Schema to use for all Sales to this Customer. If the Discount Schema is defined for a Flat Discount %, enter the Flat Discount % to apply.

For example, a Customer will have a 1% discount applied to the prices in the Standard Price List at Order or Invoice entry time if defined here.

For more information about Business Partners, refer to the Business Partners Chapter.

PRICE LIST EXAMPLES

The following explains how Sales Price Lists may be defined.

List Minus Sales Price List

This example explains how to set up the discount schema for a Sales Price list where standard prices are a percentage discount from a list price.

Assumptions:

  • Products have a List Price on Purchasing tab.
  • Standard (selling price) is 25% off of the List Price for Product Category of Bushes and 20% for Product Category of Trees. All other products are 10%.
  • Limit (lowest selling price) is 35% off of the List Price for Product Category of Bushes, 25% for Product Category or Trees. All other products are 20%.
  • All Trees have a surcharge of $10.00.

The following table shows the pertinent fields in the Discount Schema.

    Fields

   Seq 10

    Seq 20

    Seq 30

Product Category

<blank>

Bushes

  Trees

List Price Base

List Price

List Price

  List Price

List Price Discount %

  0

0

  0

Standard Price Base

List Price

List Price

  List Price

Standard Price Discount %

10%

25%

  20%

Standard Surcharge

0

0

  10.00

Limit Price Base

List Price

List Price

  List Price

Limit Price Discount %

20%

35%

  25%

When generating the Price list no base price list is used (as the list price used as the base for all calculations is the list price from the Product.

Assume the following Products, Product Categories and List Prices:

   Product

    Product Category

    List Price

Lawn Tiller

   Tools

   75.00

Rose Bush

   Bushes

   100.00

Oak Tree

   Trees

   150.00

The Prices calculated using the discount schema above would be:

    Product

    List Price

  Standard Price

   Limit Price

  Lawn Tiller

  75.00

67.50

 60.00

  Rose Bush

  100.00

75.00

  65.00

  Oak Tree

  150.00

130.00

112.50

Lawn Tillers are in the Tool Category and have a discount of 10% for the Standard Price (75 - (75.00 * .10)) and 20 % for the Limit Price (75 - (75 * .20)). Rose Bushes are in the Bush Category and have a discount of 25% for the Standard Price (100 - (100*.25)) and 35% for the Limit Price (100 - (100 *.35)). Lastly, Oak Trees are in the Tree Category and have a discount of 20% for the Standard Price plus a 10.00 surcharge (150 - (150 * .20)) + 10 and a discount of 25% for the Limit Price (150 - (150* .25)).

Cost Plus Sales Price List

This example explains how to set up the discount schema for a Sales Price list where standard prices are a percentage increase from the purchase price.

Assumptions:

  • Purchase Price List has been defined with a Standard Price equal to the cost.
  • The List Price is equal to the List Price on the Purchase Price List.
  • Standard (selling price) is 25% over the cost for Product Category of Bushes and 20% for Product Category of Trees. All other products are 30%.
  • Limit (lowest selling price) is 15% over the cost for Product Category of Bushes, 10% for Product Category or Trees. All other products are 20%.

The following table shows the pertinent fields in the Discount Schema:

    Fields

   Seq 10

    Seq 20

    Seq 30

Product Category

<blank>

  Bushes

  Trees

List Price Base

List Price

  List Price

  List Price

List Price Discount %

0

  0

  0

Standard Price Base

Standard Price

  Standard Price

  Standard Price

Standard Price Discount %

-25%

  -20%

  -30%

Limit Price Base

Standard Price

Standard Price

  Standard Price

Limit Price Discount %

-15%

-10%

-20%

When generating the Price list no base price list is used (as the list price used as the base for all calculations is the list price from the Product.

Assume the following Products, Product Categories and List and Standard Prices on the Purchase Price List:

    Product

   Product Category

    List Price

  Standard Price

  Lawn Tiller

  Tools

  75.00

50.00

  Rose Bush

   Bushes

  100.00

70.00

  Oak Tree

  Trees

  150.00

120.00

The Prices calculated using the discount schema above would be:

     Product

    List Price

    Standard Price

     Limit Price

   Lawn Tiller

    75.00

     62.50

    57.50

   Rose Bush

   100.00

     84.00

    77.00

   Oak Tree

    150.00

    156.00

    144.00

Lawn Tillers are in the Tool Category and are priced at 25% over the Standard Price for the Standard Price (50 - (50 * -.25)) and 15% for the Limit Price (50- 50 * -.15)). Rose Bushes are in the Bush Category and are priced at 20% over the Standard Price for the Standard Price (70 - (70 * -.20)) and 10 % for the Limit Price (70 - (70 * -.10)). Lastly, Oak Trees are in the Tree Category and are priced at 30% over the Standard Price for the Standard Price (120 - (120 * -.30)) and 20% for the Limit Price (120 - (120 * -.20)).

PRICE LIST HINTS AND TIPS

  • Enter your first sequence with no restrictions (i.e. blank in Product Category, Product, and Business Partner fields) for your Base Price List and Sales Price List. This ensures that all products on the Base Price List (if used) or Products with Purchasing information are included.
  • Enter your sequences from least specific to most specific.
  • Create your Price Lists in stages as it is easier to identify and correct errors.
  • If you want separate Purchase Price Lists for each Vendor, create a Base Purchase Price List for all products. Then create Vendor specific price lists using the first price list as your base and a single sequence that includes a specific Business Partner. When you create your Sales Price List use the Base Purchase Price List as your base not the individual Vendor Price Lists.
  • For services you sell and do not Purchase from a Vendor, define a Purchasing record with the Admin or User Business Partner as the Vendor. This will allow you to generate prices for the services. The other option is to enter them manually on each price list as required.
Labels
  • None