A clone needs an explicit boundary
A visually correct staging site can still have live integrations. Before testing a subscription migration, decide which environment may process real renewals and which must remain isolated. Record the responsible operator and the production URL. Do not use a real customer payment as a rehearsal.
This guide concerns WooCommerce Subscriptions. Other membership plugins and external billing platforms have different behavior. This is a documentation-based checklist, not a tested migration or payment verification.
Read the mode rather than guessing from the hostname
WooCommerce documents that Subscriptions remembers the site URL where it was first activated. A changed URL is treated as staging, with automatic payments and subscription-related emails disabled. If first activated on a staging site, however, that site is considered live.
Check WooCommerce Status for Subscriptions Mode and its recorded live URL. A hostname containing 'staging' is not proof of isolation. The documented protection is specific to Subscriptions; audit other plugins, custom jobs, email services, and payment integrations separately.
| Control | Evidence to record | Stop condition |
|---|---|---|
| Subscriptions mode | Mode and recorded live URL | Unexpected Live mode |
| Payment integration | Sandbox environment and test credentials configured | Live charging possible |
| Outbound messages | Test recipient or capture service | Customers could receive rehearsal mail |
| Background work | Responsible scheduler and enabled jobs | Both copies could process real work |
Rehearse with synthetic records
Our proposed acceptance matrix includes a synthetic active subscription, a failed renewal, a cancellation, and a paid member accessing the expected course. Use the gateway's documented test environment and your own test accounts. Record the expected result before each case.
A successful test checkout is only one result. Verify the subscription state and access state independently, and make sure the rehearsal did not create a live payment. Do not enable live-mode overrides on staging merely to make a test pass.
Make cutover ownership explicit
Before switching traffic, identify which copy will own real billing and which old workers or integrations must be stopped. Reconcile the final data with the migration owner; a database copy can become stale while the old store continues accepting writes.
After cutover, confirm the intended production mode and review pending work through the normal operator process. If the new site is unhealthy, do not blindly restore an old snapshot over newer orders. Use the rollback reconciliation plan and retain the records needed to account for activity during the transition.
Sources & verification
Product details and prices can change. Check the linked provider before buying.
- WooCommerce Subscriptions staging and migrations Accessed 2026-09-14
Sources link directly to providers. Product buttons may use separately labeled affiliate links. Read our disclosure.