Decide whether a saved quantity means units to add or a minimum cart total to reach, then make the button label match. In a hypothetical example with three saved units and two matching cart units, adding three more produces five; topping up to three adds only one.
Neither rule should silently reduce an existing cart quantity. These are design alternatives for one supported selection per action, not claims about native WooCommerce or a wishlist tool. New behavior, including top-up, needs implementation and verification.
Inspect one exact selection first
On staging, use a synthetic selection with enough stock. If your interface supports saved quantities, save three units and put two matching units in the cart. Record the button label, quantity before and after, and confirmation. If saved quantities are unavailable, record that implementation requirement.
For this example, use a blue mug, 350 ml, without custom options. Match its product identifier and chosen variation, not its title or parent product alone. Keep other sizes, colours and cart-relevant configurations separate. Document the matching criteria before extending the design to engraving or other options.
Choose the rule and write the handoff
Choose additive for “How many more?” or top-up for “What minimum total do I want?” Top-up adds only missing units and adds nothing at or above the target. Reductions require a separate, explicit cart edit.
Record the chosen rule and matching criteria in the handoff; leave unrelated selections untouched. This example’s proposed failure policy is all or nothing: add the full requested increase or add no units.
For the hypothetical top-up handoff, use:
- Quantity label: “Target cart quantity: at least 3”
- Below-target button: “Top up cart to 3”
- At or above target: Show “View cart” alongside the no-top-up message.
For additive, substitute “Quantity to add: 3” and “Add 3 to cart”. Each deliberate action requests three more, subject to validation—even at or above three matching units. Do not switch this button to “View cart”.
Use the actual saved quantity in labels. For confirmations, use the units added by this action and the refreshed, confirmed matching-cart total. These counts are illustrative:
- Top-up success: “Added 1. Your cart now has 3 blue mugs (350 ml).”
- Additive success: “Added 3. Your cart now has 5 blue mugs (350 ml).”
- No top-up needed: “No top-up needed. Your cart has 4 blue mugs (350 ml).”
- Rejected increase: “Couldn’t add the requested quantity. No units added. Your cart currently has 2 blue mugs (350 ml).” Add a verified failure reason where available and offer a “Review cart” action.
Rejection means this action added zero, not that the entire cart stayed unchanged: another tab may have changed it. Refresh the count even when nothing is added.
Include these expected outcomes in the handoff. They are hypothetical, not observations from your store.
TRY THE SCENARIOS
What happens with three saved units?
Hypothetical example: one exact supported selection, sufficient stock, no blocking quantity rules and no concurrent cart changes during each action.
Empty cart: 0 matching units
Top-up adds 3, ending at 3. Additive also adds 3, ending at 3.
Below target: 2 matching units
Top-up adds 1, ending at 3. Additive adds 3, ending at 5.
At target: 3 matching units
Top-up adds nothing and retains 3. Additive adds 3, ending at 6.
Above target: 4 matching units
Top-up adds nothing and retains 4. Additive adds 3, ending at 7.
Compare all scenarios
| Situation | What happens |
|---|---|
| Empty cart: 0 matching units | Top-up adds 3, ending at 3. Additive also adds 3, ending at 3. |
| Below target: 2 matching units | Top-up adds 1, ending at 3. Additive adds 3, ending at 5. |
| At target: 3 matching units | Top-up adds nothing and retains 3. Additive adds 3, ending at 6. |
| Above target: 4 matching units | Top-up adds nothing and retains 4. Additive adds 3, ending at 7. |
Illustrative examples. Your selection is not saved or sent, and changes no store settings.
Recheck the cart before changing it
A displayed cart count is only a snapshot. Require the implementation to:
- Read the current matching quantity and verify the selected product configuration.
- Determine the increase: missing units for top-up, including zero at or above target, or the saved number again for additive.
- Validate the resulting cart against current stock and quantity rules. Apply the full increase or add nothing under the proposed all-or-nothing policy; do not bypass existing validation.
- Refresh the visible count and report the confirmed outcome before the shopper proceeds.
Concurrent requests must not both apply a top-up calculated from the same outdated count. Safe handling must be implemented and verified, not assumed as a platform guarantee.
In a hypothetical another-tab change, the matching quantity rises from two to four before a top-up is processed. Add nothing and retain four; do not add the stale one-unit difference or reset the total to three.
Saved quantities do not reserve inventory. A no-top-up result does not replace normal cart and checkout validation.
Verify the handoff on staging
Use these proposed acceptance cases with the fictional mug and three saved units. Reset the starting state each time and keep expectations separate from observations.
- Run all four matching-cart states above. Compare the actual selection, units added, final total, button and message with the chosen rule.
- Repeat with a differently configured item present; its quantity must remain unchanged.
- Reproduce the another-tab change and verify that the result uses the current cart. Check refreshed counts after rejected requests too.
- Have the developer test two simultaneous requests from two matching units, with sufficient stock, no blocking rules and no unrelated changes. Expect three after top-up, or eight after two deliberate additive actions.
- Test hypothetical partial availability: an empty matching cart, saved quantity three, only two units currently permitted and no concurrent changes. Under this proposed all-or-nothing policy, either rule adds zero and leaves zero matching units.
Use these fields in a separate record for each case:
- Case and chosen rule
- Exact selection and starting state
- Expected units added and final total
- Observed units added and final total
- Displayed button and confirmation
- Discrepancy to resolve
Attach the completed records to the handoff. Resolve any mismatch between the chosen rule, refreshed cart and message, then rerun that case before accepting the implementation.



