An item's default sales price can be set on product card. To tailor and customize pricing, it is possible to use price lists and promotions.

Price Lists

A price list can contain:

  1. Prices for specific items;
  2. Discount percentages for product groups.

A price list can optionally have a start and/or an end date. Outside this date range, the price list is always inactive.

On its own, a price list does not do anything; to put it into use, it needs to be associated with a customer or customer group (to make it a "customer price list") or location or region (to make it a "store price list"). A customer can have several price lists, and so can locations and regions. (Regions can have an unlimited number of price lists.)

So multiple customer price lists, as well as multiple store price lists can apply to a particular sale. The rules how the price lists cumulate or overwrite each other are as follows:

  1. In general, system calculates "store price", and continuing from the same value, a "customer price". At the end, the lower of the two is picked.
  2. Both the store price and customer price are calculated by going through applicable price lists in priority order. A list price overwrites previous one, a discount percentage is applied on top of the previous value.


A "promotion" in Erply's terminology is a conditional discount. It only applies when a certain condition is met:

  1. Total value of customer's shopping cart exceeds a threshold;
  2. Shopping cart contains a specific item;
  3. Customer has loyalty points to spend.

In contrast, price lists usually apply unconditionally, ie. regardless of the shopping cart. This distinction may help to decide whether to implement a discount as a promotion or a price list.

A promotion can be made unconditional if needed (eg. if it should be a manually applied promotion). To achieve this, the condition "Customer's basket value" should be set to $0.01.

A promotion can be:

  1. automatically applying;
  2. tied to a coupon;
  3. activatable manually.

To apply a promotion manually, cashier needs to select it from the list in POS. "Tied to a coupon" means that customer has to hand in a coupon with a serial number. The cashier scans it and if it is found to be not expired and not used yet, and matching a valid coupon rule and a valid promotion, the discount applies.

Promotions can also have a start and/or an end date (outside that range, a promotion is disabled), and it can be tied to a specific store or region.

Only point-of-sale applications (Berlin POS, Providence POS) apply promotions. When creating an invoice from the back office, promotions are not applied! This has not been implemented yet due to complexity reasons and lack of demand.

List of promotion types

Erply supports the following types of promotions:

  1. Buy a specific quantity of a product for total price $...
  2. Product X with a special price $... each if you buy ... pcs or more
  3. Product X with a $ or % discount if you buy ... pcs or more
  4. Buy ... pcs of product X and get a $ or % discount on product Y
  5. Buy ... pcs of product X and get $ or % off entire transaction
  6. Spend at least $... and get a $ or % discount on product Y
  7. Spend at least $... and get $ or % off entire transaction
  8. Spend ... loyalty points and get $ off entire transaction
  9. Spend ... loyalty points and get % off of product Y