With WooPayments, there are potentially two ways to sell subscription products:
- Using the built-in Stripe Billing feature.
- Using the Woo Subscriptions extension.
See this document for a comparison between the two options, as well as information on why the Stripe Billing feature might not be available for you.
These two offerings are both powered by much of the same code. This makes it possible for most extensions that add features to Woo Subscriptions to also add those same features to WooPayments’ Stripe Billing functionality as well.
The following extensions are confirmed to be compatible with WooPayments:
- All Products for WooCommerce Subscriptions
- AutomateWoo
- AutomateWoo – Refer A Friend add-on
- WooCommerce Subscriptions Downloads
- Gifting for WooCommerce Subscriptions
- Product Bundles
- Composite Products
- Conditional Shipping and Payments
- Follow-Ups
- EU VAT Number
- Sensei products
- Shipment Tracking
- Gift Cards
- WooCommerce Points and Rewards
- Back In Stock Notifications
Other extensions may perform a check to see if the Woo Subscriptions plugin is active. Of course, if you’re using the Stripe Billing feature in WooPayments and the Woo Subscriptions plugin is not active, then this check will fail. In these cases, the extension may need to be updated to support WooPayments.
Compatibility checks
↑ Back to topNOTE: This section provides example code intended for use by developers.
If you’ve tested your extension with both Woo Subscriptions and the WooPayments Stripe Billing functionality, it can be updated to load when either one is available.
The recommended approach is shown here:
if ( class_exists( 'WC_Subscriptions' ) || class_exists( 'WC_Subscriptions_Core_Plugin' ) ) { // Load any subscriptions functionality }
If you need to check for a specific version:
if ( class_exists( 'WC_Subscriptions_Core_Plugin' ) && version_compare( WC_subscriptions_Core_Plugin::instance()->get_plugin_version(), '3.1.0', '>=' ) ) { // Load any subscriptions functionality for version 3.1.0 or later }