Jump to content

Additional Price Level on Products and Discounting Sale Price (Prestashop 1.6)

Recommended Posts

I'm new to PrestaShop, so I need some help getting pointed in the right direction. We have a rather complicated pricing structure for products that is based on the following criteria:

  1. Customer Type
    1. Retail (standard customer, no special discounts)
    2. Bulk customer (gets products at a "bulk" price)
    3. Bulk Discounted ("BD" customers get products at a % off "bulk" price based on product categories)
  2. Sale Price Considerations
    1. Retail customers get whatever the sale price is (no real change)
    2. Bulk customers get the lower of either the sale price or their bulk price
    3. BD customers get 10% off the sale price if it is lower than their discounted bulk price, otherwise they get their discounted bulk price

I was hoping to code this logic without using overrides, but from what I can tell, that's probably not possible. My thoughts on how to code this are as follows:

  1. Add a "bulk_price" field to the products table
  2. Hook the "displayAdminProductsExtra" to allow editing of the "bulk_price" field
  3. Use customer groups to flag customers for appropriate pricing
    1. "Bulk" group gets bulk price
    2. "BD 25% off XYZ Category" to apply % off bulk price (obviously would have to have a group for each % level per category...a little complicated, but I don't see any other way around it)
  4. Override "Product::getPriceStatic" method to do price calculations and set the price based on above criteria. (Differences in pricing based on attributes, combinations, etc. would also be calculated here.)

My questions for the more experienced PrestaShop developers are:

  1. Am I over looking any hooks, methods, or other functionality that would let me do this without overriding?
  2. What problems might I run into down the road if I do use overrides? (Obviously, I'm not going to touch any core files, but I want to know if there are any unexpected consequences that others have run into with overrides.)
  3. Does my logic over look some other PrestaShop functionality that may cause unintended consequences?

I appreciate any advice provided.

Edited by chdwck (see edit history)
Link to comment
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
  • Create New...