LemonStand Discount Engine

4 | published by Aleksey Bobkov on Thursday, December 03, 2009

Yesterday we finished developing the discount engine. The discount engine is the last large-scale feature which we planned to implement before the 1.0 release and now we are entering the final straight. We still have a number of minor features to add, and much testing to conduct before the release date, but the real excitement is very close now.

What is the Discount Engine?

The discount engine allows you to put discounts on your products without altering the original product prices. Usually you would to do this when promoting products or running marketing campaigns, such as Christmas Sales.

The discount engine allows you to manage product prices on the catalog level and on the shopping cart level. Also, LemonStand allows you to create tier prices, and as consequence have different product prices for different customer groups.

Managing product tier prices

With the tier price feature you can specify a product price based on quantities and for different customer groups. Even if you don't want to provide price tiers for a product, you can use this feature for creating different prices for different customer groups, by specifying 1 in the tier Quantity field. Thus, depending on the group of a customer which views the product, LemonStand will display different product price in the catalog.

According to the tier prices configuration displayed in the image above, the price for guest customers is 26 USD. For wholesale customers the price is 16 USD until the customer adds 5 or more units of the product to the shopping cart. Then the price will be 10 USD. For all other customer groups LemonStand will use the base product price: 25 USD in this case.

Catalog level price rules

Catalog level price rules allow you to manage product discounts independently on the customer shopping cart content. You can create rules like this: “Discount products which name contains hat by 10%”. You can create complicated conditions for applying the rules, using a handy visual tool. Conditions can be simple, like in the previous example, or compound: “product name contains hat and product category is not either Art or Photography”.

You can enable the catalog price rules only for specific customer groups, or limit the rule action by a specific period of time, allowing you to create seasonal discounts for example.

You can apply multiple price rules at the same time. Price rules are applied in the order which you specify in the price rules list. You can reorder rules by dragging them up and down in the list.

Shopping cart level price rules

Shopping cart level price rules allow you to apply discounts to specific products, or on a whole shopping cart, depending on the shopping cart contents and other conditions. Examples of these conditions could be the selection of a payment or shipping method, a presence of specific items in the shopping cart, subtotal amount and other conditions.

You can assign a coupon code to a shopping cart price rule. In this case the rule will be activated only if the customer provides the corresponding coupon code. Also, you can specify how many times a coupon code can be used, and how many times the rule can be used for a single customer.

Similarly to the catalog price rules, you can specify which customer groups the shopping cart price rules are active for, and limit its action with a time interval.

Extendibility

As with all other things in LemonStand, the discount engine is extendible. It is possible to add new condition types, and actions. It could be very helpful if you have a complicated business model and it is simpler to express a discount condition with two lines of PHP code than by building a complex compound condition in the user interface.

rss Subscribe to Blog Feed

rss Subscribe to Blog Comments Feed

Share LemonStand

Email Updates

Get occasional updates and exclusive offers.

@lemonstand