Combine pricing and discount tweaks safely
Use this workflow before combining category discounts, quantity rules, role prices, price presentation, unit calculations, coupons, taxes, or gateway fees. These components do not all modify the same price at the same time.
Classify each planned rule
| Layer | Relevant behavior |
|---|---|
| Stored product price | Category discounts write sale prices and optional dates to matching products and variations. |
| Role-specific price | Reduced-price components store extra product values and substitute them for members of their corresponding roles. |
| Cart calculation | Quantity discounts use the configured current or regular unit price and combined category quantities. |
| Presentation | Price options can hide or replace price HTML; price-per-unit output divides an applicable price by a saved unit count. |
| Checkout total | Payment-gateway fees add a fixed or percentage taxable fee after a gateway is selected. |
Because the layers use different sources, two individually correct rules can display one value on the product page and calculate another in the cart.
Prepare products and accounts
- Back up or export regular prices, sale prices, sale dates, and relevant product metadata.
- Create a simple product and a variable product with known regular prices.
- Assign products to one category, multiple categories, and an unrelated category.
- Prepare guest, normal customer, and one account for each configured customer pricing role.
- Record the expected product, cart, tax, coupon, and fee values for every case.
Add pricing layers in order
- Open Settings → POM Tweaks → E-Commerce and enable only the pricing modules required by the specification.
- Under Discounts → Category sale prices, save a rule, preview its sale changes, and confirm the operation before any product prices are changed.
- Under Customer role prices, configure the pricing roles and assign each test user to the intended role. Verify precedence separately for users with several pricing roles.
- Configure Discounts → Quantity discounts, including discount type, price source, product-page table, threshold precedence, and category thresholds.
- Add price-visibility text or a price-per-unit display only after the authoritative monetary calculation is verified.
- Add gateway fees last and test recalculation when the gateway changes.
Verify the price journey
For every test account and product:
- Record catalog, product, variation, cart-unit, subtotal, coupon, tax, shipping, fee, and total values.
- Test quantities immediately below and at every quantity threshold.
- Test a product in two discounted categories and confirm the configured conflict outcome.
- Recalculate the cart twice to detect compounding.
- Place a staging order and compare stored order totals with the displayed checkout.
- Repeat with a guest and a country where price visibility should differ.
Roll back safely
Disabling runtime quantity, role, presentation, or fee components stops future calculation but can leave their saved settings and product metadata. Disabling a category sale rule leaves existing WooCommerce sale prices in place. Use its separate preview-and-confirm clearing operation to remove current offers; restore the prepared catalog backup when earlier prices must be recovered.