Skip to content

How-To Guide

This guide provides step-by-step workflows for common tasks with Customer Specific Discounts.


How the Plugin Works

Data Flow Overview

Customer logs in → Plugin checks all discount sources → Priority mode determines discount → Price is adjusted

Detailed Flow: 1. A customer logs into the shop 2. The plugin checks all available discount sources: - Product-specific discounts (custom field on product) - Individual customer discounts (category/product group) - Global customer discount (custom field on customer) - Customer group discounts (category/product group) - Global group discount (custom field on customer group) 3. The priority mode determines which discount is applied 4. The price is adjusted in product listing, product page, and cart


Common Workflows

How to: Set Up B2B Dealer Discount

Goal: All dealers receive 15% discount on all products

Prerequisites: - A customer group "Dealers" exists or needs to be created - Customers are assigned to this group

Steps:

  1. Open customer group
  2. Navigate to: Settings → Shop → Customer Groups
  3. Click on the customer group "Dealers"

  4. Set global discount

  5. Switch to the "Custom Fields" tab
  6. Enter 15 in the "Global Discount (%)" field

  7. Save and clear cache

  8. Click "Save"
  9. Navigate to: Settings → System → Caches & Indexes
  10. Click "Clear All"

Result: All members of the Dealers group now see 15% reduced prices on all products.


How to: Category Discount for a Customer

Goal: A specific customer receives 10% discount on all products in a category

Prerequisites: - The customer exists in the system - The category exists and contains products

Steps:

  1. Open customer profile
  2. Navigate to: Customers → Overview
  3. Search for the customer and click on the name

  4. Find customer discounts section

  5. Scroll down to the "Customer Discounts" section

  6. Add discount

  7. Select the desired category in the "Category" dropdown
  8. Leave "Dynamic Product Group" empty
  9. Enter 10 in the "Discount" field
  10. Click "Add Discount"

  11. Save customer

  12. Click "Save" at the top right

Result: The customer now sees 10% discount on all products in the selected category.

Troubleshooting: If the discount doesn't appear, check: - Is the customer logged in? - Are the products assigned to the category? - Was the cache cleared?


How to: Tiered Discounts for Customer Groups

Goal: Different customer groups receive different discounts on a product category

Prerequisites: - Multiple customer groups exist (e.g. "Bronze", "Silver", "Gold") - A category "Premium Products" exists

Steps:

  1. Configure Bronze group
  2. Navigate to: Settings → Shop → Customer Groups
  3. Open the "Bronze" group
  4. Scroll to the "Group Discounts" section
  5. Select Category: "Premium Products"
  6. Discount: 5
  7. Click "Add Discount" and "Save"

  8. Configure Silver group

  9. Open the "Silver" group
  10. Category: "Premium Products", Discount: 10
  11. Save

  12. Configure Gold group

  13. Open the "Gold" group
  14. Category: "Premium Products", Discount: 15
  15. Save

  16. Clear cache

  17. Navigate to: Settings → System → Caches & Indexes
  18. Click "Clear All"

Result: - Bronze customers: 5% discount on Premium Products - Silver customers: 10% discount on Premium Products - Gold customers: 15% discount on Premium Products


How to: Give VIP Customer a Flat Discount

Goal: A single VIP customer receives 20% on ALL products

Steps:

  1. Open customer profile
  2. Navigate to: Customers → Overview
  3. Open the VIP customer's profile

  4. Set global customer discount

  5. Switch to the "Custom Fields" tab
  6. Find the "Global Customer Discount (%)" field
  7. Enter 20

  8. Save

  9. Click "Save"

Result: The VIP customer sees 20% discount on all products in the shop.


How to: Promotional Product with Fixed Discount

Goal: A specific product should always have 25% discount (for all logged-in customers)

Steps:

  1. Open product
  2. Navigate to: Catalogues → Products
  3. Open the desired product

  4. Set product discount

  5. Switch to the "Custom Fields" tab
  6. Find "Product-specific Discount (%)"
  7. Enter 25

  8. Save

  9. Click "Save"

Result: All logged-in customers see 25% discount on this product.

Note: Depending on the priority mode, an individual customer discount may override this product discount.


How to: Migrate from WebLa_ProductGroupDiscount

Goal: Migrate existing discounts from the old plugin

Prerequisites: - The old plugin WebLa_ProductGroupDiscount was installed - Customer data contains the field webla_product_group_discount_products

Steps:

  1. Install and activate plugin
  2. The new plugin automatically recognizes the old discount data
  3. Your customers continue to receive their discounts

  4. Use migration tool (optional)

  5. Connect to your server via SSH
  6. Execute:
    bin/console webla:migrate-product-group-discounts
    
  7. The command converts the text-based discounts to the new table structure

  8. Verify

  9. Check the customer discounts in admin
  10. Test with a test customer in the frontend

Result: All discounts are transferred to the new system.


Quick Reference

Task Navigation Key Settings
Add customer discount Customers → [Customer] → Customer Discounts Category, Product Group, Percent
Add group discount Settings → Customer Groups → [Group] → Group Discounts Category, Product Group, Percent
Global customer discount Customers → [Customer] → Custom Fields Global Customer Discount (%)
Global group discount Settings → Customer Groups → [Group] → Custom Fields Global Discount (%)
Product discount Catalogues → Products → [Product] → Custom Fields Product-specific Discount (%)
Change priority Extensions → Customer Specific Discounts → Configure Discount Priority Mode

Best Practices

  1. Consistent naming: Name your customer groups clearly (e.g. "Dealers 10%", "VIP 20%")
  2. Regular review: Regularly check which discounts are active
  3. Mind the cache: Always clear the cache after discount changes
  4. Test before going live: Test new discounts with a test customer
  5. Maintain documentation: Keep track of which customers have which special conditions

What to Avoid

  • Overlapping discounts without clear priority rule - define the priority mode
  • Too many individual customer discounts - use customer groups for similar discounts
  • Forgetting to clear cache - discount changes only appear after cache clearing