Language:


Structure of Price Lists

The Price Lists feature in Standard ERP allows you to sell Items at different prices to different Customers. In other words, you can use Price Lists when you need more than one sales price for each Item. For example, you might offer different prices to retail and trade Customers, and/or to retail and educational Customers. You will then need separate trade, educational and possibly retail Price Lists, which you should assign to each Customer as appropriate. When you enter a Customer in an Order, Quotation or Invoice, the appropriate Price List will be used and so the correct prices will be selected automatically. Depending on access rights, you will be able to change to a different Price List in an individual sales transaction.

A Price List in Standard ERP consists of two elements: the Price List itself and the individual prices. These elements are as follows:

  • The Price List register contains the basic details of each Price List (the name, Currency, period of validity, etc). In the example mentioned in the previous paragraph, you will need at least two Price Lists: a trade Price List and an education Price List. You could rely on each Item's Base Price when selling to retail Customers, or you could use a third Price List with these Customers. In a Price List record you will specify its name, Currency if there is one and VAT status (whether the prices in the Price List include or exclude VAT).

  • Having defined your Price Lists, you should then enter the prices themselves in the Price register. You can do this in one of two places, depending on the Type of the Price List:

    • A "Discount" Price List will contain a single price for each Item. These prices will be stored in the Price register. The prices in a "BuyBack" Price List will also be stored in the Price register in the Pricing module.

    • A "Qty Dep Values" Price List can contain several prices for each Item, allowing you to charge different prices for an Item depending on the quantity that you sell. These prices will be stored in the Qty Dependent Prices setting, also in the Pricing module.

    The Price register and the Qty Dependent Prices setting will both usually contain one record for each Item/Price List combination (although in the case of the Price register you can create separate records for specific Customers). In the example and assuming a "Discount" Price List, you will need to enter one record to the Price register for the trade price of an Item, one record for the educational price of the same Item and, if you are not relying on the Item's Base Price, a third record for its retail price. You can enter these records yourself, or you can have them created by the 'Calculate Prices' Maintenance function.
When you enter a Customer in a sales transaction (e.g. in an Order, Quotation or Invoice), that Customer's Price List will be brought in to the sales transaction together with their name, address, Payment Terms and other details. When you then add an Item to the sales transaction, the unit price that you will charge will be determined as follows and depending on the Type of the Price List. If the Price List is a "Discount" or "BuyBack" Price List:
  1. The Unit Price will be taken from the Price record with the relevant Item/Price List/Customer combination. There can only be one Price record for a particular Item/Price List/Customer combination.

  2. It will be taken from the Price record with the relevant Item/Price List combination where the Customer field is empty. Again, there can only be one Price record with this combination.

  3. The Base Price from the Item record will be used.
If the Price List is a "Qty Dep Values" Price List:
  1. The Unit Price will be taken from the Qty Dependent Prices record with the relevant Item/Price List combination and will depend on the quantity sold. There can only be one Qty Dependent Price record with this combination.

  2. The Base Price from the Item record will be used.
In more detail, follow these steps to build up your price structure:
  1. Enter the Items with their Base Prices, using the Item register. An Item's Base Price should be its standard sales price.

  2. Define Price Formulae, using the Price Formula register in the Pricing module. If you will use the 'Calculate Prices' Maintenance function to create your prices as mentioned in step 4 below, the next step is to define the Price Formulae that the function will use to calculate these prices. In our example, the retail price might be the same as the Base Price, the trade price might represent a discount of 20% and an educational price might represent a discount of 30%. For these three calculations, you will need three Price Formulae.

    To define Price Formulae, use the Price Formula register in the Pricing module. This register is described in detail here.

  3. Define each Price List (in our example, retail, trade and educational) using the Price List register in the Pricing module.

    If you will use the 'Calculate Prices' Maintenance function to create the Prices in each Price List, you should list the Items or Item Groups in each Price List together with the appropriate Price Formulae. For example, in the educational Price List, list every Item that you are likely to sell such Customers, together with the 30% discount Price Formula. The Maintenance function will create Price records for all the Items that you include in the Price List, and these Price records will contain prices calculated using the Price Formulae.

    Price Lists are described in detail here.

  4. In this step, you should enter the prices themselves, as follows:

    1. If the Type of the Price List is "Discount", you can either do this yourself, or you can using the 'Calculate Prices' Maintenance function in the Pricing module to have them calculated at one stroke. In both cases, a record will be created in the Price register in the Pricing module for each Item on each Price List and with an appropriate price. The 'Calculate Prices' function will calculate the prices in these Price records by applying the specified Price Formula to each Item in each Price List.

      The first time that you run the 'Calculate Prices' function, it will create the relevant Price records. In our example, it will create three Price records for each Item: one each containing the retail, trade and education prices. The next time you run the function, it will not create more Price records but will instead recalculate the prices in the existing ones. This ensures that there will always only be a single Price record for each Item/Price List combination.

      It is important that you run the 'Calculate Prices' function whenever the Base Value of an Item changes or, if you have Price Lists in various Currencies, whenever there is a change in the Exchange Rate. Otherwise, you risk quoting out-of-date prices to your Customers. The Base Value of an Item is the figure that is the basis of the price calculation (i.e. the figure to which the Price Formula is applied). This will usually be its Base Price or its Cost Price.

    2. If the Type of the Price List is "Qty Dep Values", you should not use the 'Calculate Prices' function. You should enter prices in the Quantity Dependent Prices setting yourself.

    3. If the Type of the Price List is "BuyBack", you can again use the 'Calculate Prices' function to create records in the Price register. This time, the function will create Price records in which the Price field is empty and the BuyBack Cost is the Cost Price of the Item. If the Type of a Price List is "BuyBack", an empty Price field means the Item's Base Price will be the price charged to Customers (this does not apply to "Discount" Price Lists). In each Price record as necessary, change the BuyBack Cost to the discounted Cost Price (i.e. to the final cost after Supplier refund). For this reason, re-running the 'Calculate Prices' function will not update existing Price records for "BuyBack" Price Lists.

    Pleas