Quick answer
WooCommerce Subscriptions 9.2 adds physical-product proration choices. Test an upgrade and a downgrade with a copied subscription before enabling them broadly. A successful payment calculation does not establish whether shipping, inventory, tax, and the next renewal all match your business rules.
Choose a test that resembles a real customer
Use a staging store with payment gateways in their supported test mode, outgoing customer mail contained, and fulfillment integrations disconnected or pointed at a sandbox. Do not copy a live payment token and then force a renewal. Confirm that the staging environment cannot create a warehouse order.
Pick one physical subscription with a simple billing interval first. Record its purchase date, last paid period, next renewal, quantity, delivery address, and whether the current shipment has already left the warehouse. Avoid beginning with a mixed basket of subscriptions and one-time products. You need a small example whose expected result a colleague can calculate independently.
Write the commercial rule before changing the setting
Describe what an upgrade should mean to the customer. Should they pay a partial difference immediately? Does the higher-value box arrive immediately or only at the next dispatch? What happens when they switch down after receiving the current box? A plugin setting cannot settle an ambiguous delivery policy.
The new physical-upgrade option applies recurring-price proration to upgrades, while physical covers both directions. Default behavior is unchanged. Choose the setting that matches the agreed policy, then preserve a screenshot or configuration export showing exactly what was selected. Do not assume that installing an update enabled it.
Run four small comparisons
Test an upgrade near the start of a paid period and the same upgrade near its end. Repeat with a downgrade. Keep the same address and quantity so tax and shipping differences do not hide the effect you are examining. Use deliberately fictional customer details.
For each test, save the old recurring total, immediate switch total, new recurring total, next payment date, and order notes. Break the immediate total into products, tax, shipping, discounts, and any adjustment. When a number differs from your expectation, identify the component instead of changing several subscription options until the grand total looks right.
- Check the cart before payment, not just the order receipt.
- Verify the subscription record after payment, including quantity and next renewal.
- Compare the warehouse instruction with what the customer was promised.
- Confirm that only the intended customer notification would be sent.
Test the delivery boundary separately
If a shipment has already been fulfilled, an immediate downgrade credit might not be commercially appropriate. Your test should show which system decides this and where staff will see the exception. The article does not prescribe a refund policy; it gives you a way to verify the policy you actually use.
Check a subscription with an address change separately from the original fixture. Also check a discounted subscription once the undiscounted example passes. These are second-stage tests, because coupons and address changes can alter calculations without indicating a proration defect.
Know the rollback trap
Older versions do not understand the new physical proration values. Rolling back can turn proration off, and saving the older settings screen can replace an unrecognized value. Record the configuration before rollback and explicitly review it after any later re-upgrade.
A database restore is not a routine way to undo a production switch after orders have arrived. Coordinate the recovery with order history and payment records so recent customer activity is not lost. Keep code rollback, settings restoration, and commercial adjustments as separate decisions.
Release only when the evidence agrees
Have someone other than the tester review one upgrade and one downgrade from the customer perspective. They should be able to explain the immediate charge, the next charge, and the next shipment without reading plugin source code. If they cannot, improve the customer wording before launch.
Monitor the first controlled production examples without triggering extra charges for testing. Keep the initial rollout small enough that support can identify every affected subscription. A clear exception list is more useful than declaring the release successful because the settings saved without an error.
Illustrative diagnostic worksheet. Use your own test results.When to bring in help
Ask for WooCommerce support when the checkout total is plausible but the next shipment or renewal is wrong. Bring a redacted order, the previous plan, the destination plan, and the exact switch time. Those details are more useful than a screenshot of the final price alone.
Related troubleshooting
Compare subscription versions across staging and production.
Helpful references
WooCommerce Subscriptions 9.2 advisory. Subscriptions settings guide.