AAdvanced Subscriptions
Features Pricing Docs Changelog Contact — Español
Sign in Buy the plugin →
Migration · 6 min read

Migrate from WooCommerce Subscriptions

Two strategies are supported today. Coexist (run both plugins, let the built-in compat bridge keep your existing WCS subscriptions ticking while new ones are created in ASWC) or manual cutover (we help you plan it). The native one-click importer is in the roadmap but not shipped yet.

Last reviewed 2026-05-27 Plugin v2.0.0

Strategy 1: coexist

The plugin includes a compatibility bridge (ASWC_Subscription_Hooks_Bridge) that auto-activates when WooCommerce Subscriptions is detected as active. The bridge re-emits 20 native WCS hooks as aswc_* hooks so the rest of the ASWC code keeps working during a transition.

  1. Install and activate Advanced Subscriptions for WooCommerce alongside your existing WC Subscriptions. Both stay active.
  2. Existing WCS subscriptions keep renewing through WCS. Tokens stay where they are.
  3. Mark new subscription products as ASWC products. New checkouts route through ASWC and use its own gateway flows.
  4. Over time the WCS book shrinks naturally; once it reaches zero you can deactivate WCS.

What the bridge does (and doesn't)

The bridge fires 20 hooks that exist only while WCS is active. They are marked as Compat bridge (WCS) in the Hooks reference with an amber badge. The full list includes status updates (aswc_subscription_status_updated, aswc_subscription_status_scheduled_to_cancelled), cart events (aswc_recurring_cart_key, aswc_recurring_cart_next_payment_date), and view-action filters (aswc_view_subscription_actions, aswc_subscription_bulk_actions).

The bridge does NOT migrate data. It does not copy WCS subscriptions into ASWC tables. It does not transfer payment tokens. Each plugin keeps its own subscriptions in its own storage.

Payment tokens

This is the part that most often blocks a fast cutover.

  • Stripe, PayPal, WooPayments — tokens live in WooCommerce's WC_Payment_Tokens store. Both plugins read from there, so a customer's saved card or PayPal billing agreement is usable by either plugin. New subscriptions created in ASWC can charge an existing Stripe token without re-asking the customer.
  • Redsys — same: tokens are stored as WC payment tokens and are reusable.
  • Bizum — not recurring-native, so no token transfer applies.
  • Other gateways — check the gateway plugin's docs. If it uses Woo's standard token store you are covered.

Strategy 2: manual cutover

If you want everything on ASWC at once:

  1. Export your active WCS subscriptions to CSV (Subscriptions → Export).
  2. Snapshot the database. Test the cutover on staging first.
  3. Recreate the subscription products in ASWC mode.
  4. For each customer, create the new ASWC subscription via the REST API or admin UI, pointing it at the existing WC payment token.
  5. Cancel the equivalent WCS subscription (so it stops renewing).
  6. Deactivate WC Subscriptions once all are moved.

This is the path we help with on the contact form. Doing it without a dry run on staging is high-risk.

Relevant hooks