Prices On Demand

The api call [Price] will query Caliq for a specific customer, product(s) and quantity and will return the appropriate price. This has the advantage of always providing the most up to date prices from Caliq and also means the web site doesn't need to store many prices. There is a big downside howver in that if the api is not available for a period of time then no pricing is available. For this reason the preferred solution is for the website to store and periodically refresh the prices.


Below is a typical response. It shows for product APITEST for a quantity of 1 that the customer should pay 2.79. The normal list price for the item is 3.10 with an RRP price of 8.99




Price Lists

To retrieve full price list information you should call the [PriceListNormal] api. This can be called for all products by leaving the parameter unset or for a collection of products. Below is an example of the results when called for just our test product.


Normal Pricing


Particular points to note here are:

  1. This is the unqiue ID of this price list. This is used to construct an association between a customer account and the price list to use when they are ordering on the site. This is described further below.
  2. The VAT status of the price list.
  3. Quantity breaks. This item offers a lower price for orders of 4 or more pieces.



Promotional Pricing

It is possible within Caliq to put certain products 'on sale'. If we take the above example and put it on sale for £2 the result data would change to this. Here we can see the price is now returned as 2 for a quantity of 1. There is now also a 'was' price (W) telling us the normal price for the item 'was' 3.10



There is an api call for PriceListPromo which will just return promotional prices only. This may be useful to build a 'clearance' section on the web site. Care needs to be taken however as within Caliq it is possible to deny certain customers access to promotional pricing.


Customer Specific Pricing

Within Caliq it is possible to give certain customer access to customer pricing, either just for them or for a group of customers. This may be something as simple as 5% of all products but can be much more complex and can be any or all of the below.


  • Fixed discount off all products
  • Fixed discount off ranges of products
  • Product specific prices
  • Denied access to bulk quantity discounts
  • Denied access to promotional/sale pricing


Rather than try and pass all these rules to the website and hope that they could be implemented we have decided to take customer pricing in a different direction.


Any customer with any form of custom pricing, however simple or complex will have their own price list


Here is a snippet from the api call [Customer] and highlights the price list id to be used when pricing products for this customer.

The arrow highlights that this customer 'buys from' price list id 5 named specifically for them. It also lists the 'standard' price list id on which their customer pricing is based.


If we rerun the [PriceListNormal] api and include customer pricing via the parameter we get the below. The structure is the same as any other price list. The only difference being that this price list is specifically for this customer.


It is possible for more than 1 customer to share a price list should their custom pricing be identical.


The final point to note is that customer price lists will include prices for ALL items, even if the price for the customer is the same as the normal list price. So even if the only part of their custom pricing is a different price for just one item, their price list will have all products in it. Whilst this does generate more data it does keep the processing of pricing consistent. Get the customer -> check their price list id - > retrieve pricing from that list



RRP Prices

RRP Pricing, if defined in Caliq is available on the api call to [PriceListRRP] Thsi returns the same prices and included in the normal api call but is available in one simple list.