Product Addons¶
Product Addons allow you to offer customizable extras for your products, similar to how restaurants offer toppings, sauces, or sides. Addon groups can be reused across multiple products, making it easy to manage common customization options.
Overview¶
The Addon system consists of two main components:
- Addon Groups: Collections of related addons (e.g., "Sauces", "Toppings", "Extra Ingredients")
- Addons: Individual options within a group (e.g., "Ketchup", "Mayo", "BBQ Sauce")
Key features include:
- Reusable Groups: Create addon groups once and assign them to multiple products
- Selection Types: Single choice, multiple choice, or quantity-based selection
- Required/Optional: Mark groups as required or optional for customers
- Min/Max Limits: Set minimum and maximum selection limits per group
- Simple Pricing: Each addon has a fixed price (free or paid)
- Quantity Support: Some addons can support quantity selection with min/max limits
- Default Selections: Pre-select certain addons as defaults
Common use cases:
- Pizza toppings (pepperoni, mushrooms, olives)
- Burger extras (extra cheese, bacon, onion rings)
- Drink sizes and add-ons (extra shot, whipped cream)
- Service packages (installation, warranty, support)
Accessing the Addon Manager¶
- Navigate to Catalog Management > Addon Groups Manager in the admin sidebar
- This opens the centralized management page for all addon groups and their addons

Overview of the Addon Groups Manager showing all groups with their addon counts

Expanded view of an addon group showing individual addons with prices
Understanding Selection Types¶
Addon groups support three selection types:
| Selection Type | Description | Use Case |
|---|---|---|
| Single | Customer selects exactly one option (radio buttons) | Sauce choice, crust type |
| Multiple | Customer selects multiple options (checkboxes) | Pizza toppings, burger extras |
| Quantity | Customer can adjust quantity of selected addons | Extra ingredients with quantity |
Creating an Addon Group¶
- Click the + Add Group button in the top-right corner
- Fill in the group details:
| Field | Description |
|---|---|
| Name | Group name displayed to customers (translatable) |
| Description | Optional description (translatable) |
| Selection Type | Single, Multiple, or Quantity |
| Is Required | If checked, customers must make a selection |
| Min Selections | Minimum number of selections required (for multiple type) |
| Max Selections | Maximum selections allowed (leave empty for unlimited) |
| Sort Order | Display order in the list |
| Disabled | Hide this group from display |
- Click Save to create the group

Managing Addons within a Group¶
Adding Addons¶
- Expand an addon group by clicking its header
- Click + Add Addon at the bottom of the group
- Fill in the addon details:
| Field | Description |
|---|---|
| Name | Addon name displayed to customers (translatable) |
| Description | Optional description (translatable) |
| Price | Price for this addon (0 = free) |
| Image | Optional image for the addon |
| Is Default | Pre-select this addon by default |
| Supports Quantity | Allow quantity selection |
| Min Quantity | Minimum quantity (if quantity supported) |
| Max Quantity | Maximum quantity (if quantity supported) |
| Default Quantity | Starting quantity (if quantity supported) |
| Sort Order | Display order within the group |
| Disabled | Hide this addon from display |
- Click Save to add the addon

Editing Addons¶
- Click the Edit button next to any addon
- Modify the details as needed
- Click Save to update
Reordering Addons¶
- Drag and drop addons using the handle icon to reorder
- Changes are saved automatically
Deleting Addons¶
- Click the Delete button next to the addon
- Confirm the deletion in the dialog
Assigning Addon Groups to Products¶
Addon groups are assigned to products through the product edit page:
- Navigate to Products and edit a product
- Go to the Addons tab
- Select the addon groups to associate with this product
- Use drag-and-drop to set the display order
- Click Save to update the product

Frontend Display¶
When a customer views a product with addons:
- Addon groups are displayed in order below the product details
- Required groups show an asterisk (*) indicator
- Selection rules are displayed (e.g., "Choose up to 3")
- Addon prices are shown next to each option:
- Free addons show "Free"
- Paid addons show "+ $X.XX"

Frontend addon selector showing addon groups with selection options and pricing
Customer Interaction¶
Single Selection Groups: - Displayed as radio buttons - Customer can select one option - Clicking a new option deselects the previous one
Multiple Selection Groups: - Displayed as checkboxes - Customer can select multiple options - Min/max limits are enforced with error messages
Quantity-Based Addons: - Include +/- buttons or quantity input - Min/max quantity limits are enforced
Cart and Order Integration¶
Cart Display¶
When a product with addons is added to the cart:
- Selected addons are listed under the product
- Individual addon prices are shown
- Addon totals are included in the line item total
- If quantity > 1, addon totals are multiplied accordingly
Order Storage¶
Addon selections are stored as snapshots at order time:
- Addon names and prices are captured at purchase
- Changes to addons after purchase don't affect existing orders
- Order details show all selected addons per item
Pricing Examples¶
Example 1: Pizza Order¶
| Item | Price |
|---|---|
| Large Pizza | $15.00 |
| + Pepperoni (x1) | $2.00 |
| + Extra Cheese (x2) | $3.00 |
| Item Total | $20.00 |
Example 2: Multiple Quantities¶
| Item | Qty | Price |
|---|---|---|
| Burger with Addons | 2 | |
| - Base Price | $8.00 | |
| - Extra Cheese | $1.50 | |
| - Bacon | $2.00 | |
| Per Item Total | $11.50 | |
| Line Total (x2) | $23.00 |
Validation Rules¶
The system enforces the following validations:
| Rule | Behavior |
|---|---|
| Required Group | Customer cannot proceed without selection |
| Single Selection | Only one addon can be selected |
| Min Selections | Error if fewer than minimum selected |
| Max Selections | Error if more than maximum selected |
| Min Quantity | Quantity cannot go below minimum |
| Max Quantity | Quantity cannot exceed maximum |
Error messages are displayed inline to guide the customer.
Workflow Examples¶
Create Restaurant Sauces¶
- Go to Addon Groups Manager
- Click + Add Group
- Enter name: "Sauces"
- Selection Type: Single
- Check Is Required
- Save the group
- Add addons:
- Ketchup (Free, Is Default)
- Mayo (Free)
- BBQ Sauce ($0.50)
- Garlic Aioli ($0.75)
- Save all addons
- Assign to burger products in product edit
Create Pizza Toppings¶
- Create addon group "Extra Toppings"
- Selection Type: Multiple
- Max Selections: 5
- Add addons:
- Pepperoni ($2.00)
- Mushrooms ($1.50)
- Olives ($1.50)
- Extra Cheese ($2.50, supports quantity, max 3)
- Assign to pizza products
Create Service Packages¶
- Create addon group "Additional Services"
- Selection Type: Multiple
- Is Required: No
- Add addons:
- Installation ($49.99)
- Extended Warranty ($29.99)
- Premium Support ($19.99/month)
- Assign to electronics products
Best Practices¶
Naming Conventions¶
- Use clear, descriptive group names
- Keep addon names concise
- Include price in name if helpful (e.g., "Extra Cheese (+$1.50)")
Pricing Strategy¶
- Offer some free options to encourage customization
- Price premium addons appropriately
- Consider bundle discounts through coupons
Organization¶
- Group related addons logically
- Set sensible defaults for required groups
- Use sort order to prioritize popular options
Performance¶
- Limit the number of addons per group (recommend < 20)
- Disable unused addons instead of deleting
- Review and clean up unused addon groups periodically
Troubleshooting¶
Q: Why don't I see addon groups on a product? A: Ensure addon groups are assigned in the product's Addons tab and are not disabled.
Q: Why can't customers add to cart? A: Check if required addon groups have valid selections. Validate min/max rules.
Q: Why are addon prices not showing? A: Verify addon prices are set correctly. Free addons show "Free" text.
Q: How do I bulk assign addon groups to products? A: Currently, addon groups must be assigned per product. Consider using the API for bulk operations.
Q: Can I have different addon prices per product? A: No, addon prices are global. Create separate addon groups if different pricing is needed.
Q: What happens if I delete an addon group? A: Products using that group will no longer show those addons. Historical orders retain their snapshots.
Related Sections¶
- Products - Create products to add addon groups
- Item Variations - Product variations (different from addons)
- Orders - View orders with addon details
- Cart Settings - Configure cart behavior