Stripe setup
Stripe is not bundled in our plugin — instead we provide the recurring bridge on top of WooCommerce's official Stripe gateway. Two plugins running side by side: one talks to Stripe, the other handles subscriptions.
Prerequisites
- A Stripe account in the country / currency where you bill.
- The free WooCommerce Stripe Gateway plugin, version 7.0 or newer, installed and active alongside Advanced Subscriptions.
Connect Stripe
- In WooCommerce → Settings → Payments → Stripe, click Connect. Stripe's OAuth dance opens; sign in and authorise.
- Once connected, you see Stripe enabled in the gateway list with your public and secret keys filled in.
- For your first integration, toggle Test mode on. Use Stripe's test card
4242 4242 4242 4242. - Save. Place a test order from the front-end to confirm the flow.
How recurring works with Stripe
The bridge in Advanced Subscriptions uses Stripe's setup intents:
- At checkout, the WC Stripe Gateway creates a setup intent and confirms it (3DS challenge if needed).
- Stripe returns a saved payment method ID linked to the customer.
- Our plugin stores that ID against the subscription.
- On every renewal, our plugin creates a Stripe payment intent off-session against that payment method.
- If Stripe needs additional auth (3DS challenge required for this MIT), the plugin captures the challenge URL and emails the customer to confirm.
Webhooks
The WC Stripe Gateway registers webhooks automatically during the OAuth connect. Our plugin listens to charge.succeeded, charge.failed, charge.refunded to keep subscription status in sync. If you ever see "subscription stuck on-hold after a successful charge", check the webhook delivery in your Stripe dashboard — that's the link that broke.
Relevant hooks
aswc_stripe_payment_intent_args— filter the payment intent parameters before charging.aswc_stripe_webhook_handled— fires after we process a Stripe webhook.