AAdvanced Subscriptions
Features Pricing Docs Changelog Contact — Español
Sign in Buy the plugin →
Feature

Upgrade. Downgrade. Without losing the customer.

A customer on the €19 plan wants to move to the €49 plan today. Or the reverse: they're paying €49 and want to step down to €19 instead of cancelling. The plugin handles both — with prorate, with token reuse, with no second checkout.

How it works

Switch in a few clicks. The plugin does the maths.

The customer picks the new plan from their My Account → Subscriptions page. The plugin calculates the prorated balance, applies it as credit (upgrade) or as a positive remainder (downgrade), reuses the saved payment token, and updates the renewal cycle.

  • Token reuse. The saved Stripe / PayPal / WooPayments / Redsys token is reused. Customer doesn't re-enter card data.
  • No second checkout. The switch happens in-place. No abandoned cart, no friction.
  • Prorate, your way. You decide how prorate is computed (full amount, daily, none) and whether it shifts the next payment date or not.
  • Signup fee, optional on switch. Charge it on the switch or skip it. Per-product setting.
  • Variable products. Downgrade within a variable subscription product (e.g. monthly → yearly variation) is supported as a special case.
store.example.com / my-account / show-subscription / 482

Switch plan

Active
Current plan
Studio€19.00 / month
Switching to
Pro€49.00 / month
Prorate credit (18 days left)− €11.40
New plan, partial month+ €29.40
Charged now€18.00
Eight settings to tune the behaviour

No prorate? Full prorate? Charge the signup fee on switch? You decide.

All settings live under WooCommerce → Settings → Advanced Subscriptions → Advanced. Each one is on/off or a small enum. No code required for any of these decisions.

SettingWhat it doesDefault
aswc_enbale_downgrade_upgrade_subscriptionMaster toggle to allow customers to switch plans from My Account.Off
aswc_downgrade_variable_subscriptionAllow downgrading within a variable subscription product (e.g. yearly → monthly variation).Off
aswc_enable_prorate_on_price_downgrade_upgrade_subscriptionApply prorate when switching plans.On
aswc_enable_signup_fee_downgrade_upgrade_subscriptionCharge the new plan's signup fee on a switch.Off
aswc_manage_prorate_amountHow the prorate amount is computed (full / daily / fixed).Daily
aswc_manage_prorate_next_payment_dateWhether the prorate also shifts the next payment date forward.Off
aswc_prorate_noHard override: never prorate. Useful for flat-price businesses.Off
aswc_prorate_price_on_syncProrate the next payment when syncing to an anchored day.Off
Why this matters

A switch is not a churn.

When a customer downgrades because the current plan is too much, the right answer is to keep them on the cheaper plan, not to lose them. The plan-switching engine lets a downgrade replace a cancellation — and lets an upgrade happen without sending the customer back through checkout.

Combine it with Customer self-service: pause, switch and change-payment-method together cover the three most common reasons a subscription would otherwise end. The math on retention compounds fast.

Don't let a price-point objection end the subscription.

Buy the plugin