Version 1.6.0 adds native support for Flexible Subscriptions by WP Desk. The plugin detects Flexible Subscriptions automatically at activation — no extra configuration required. All subscription lifecycle features work with Flexible Subscriptions products: automatic member removal, smart multi-subscription protection, access cut-off controls, and both checkout flows.
Requirements #
- Subscriber Manager Pro v1.6.0 or later
- Flexible Subscriptions by WP Desk installed and activated
- WooCommerce installed and activated
You do not need WooCommerce Subscriptions installed. Flexible Subscriptions and WooCommerce Subscriptions are independent plugins. The plugin detects which one is active and uses the correct handler automatically.
Supported Product Types #
| Product Type | Supported |
|---|---|
Flexible Subscription (fsb-subscription) | Yes |
Flexible Variable Subscription (fsb-variable-subscription) | Yes |
Simple WooCommerce products with timed access expiry also continue to work alongside Flexible Subscriptions.
Setting Up a Flexible Subscription Product #
Step 1. Create a new product or open an existing product in WooCommerce.
Step 2. In the Product data section, select Flexible Subscription as the product type.
Step 3. Configure your subscription settings (price, billing period, etc.) as you normally would with Flexible Subscriptions.
Step 4. Click the Telegram Access tab in the Product data panel. This tab appears automatically for Flexible Subscription product types.
Step 5. In the Select Channels/Groups box, choose the channels or groups you want to grant access to. You can select multiple channels per product.
Step 6. Optionally configure the subscription-specific settings:
- Immediate removal on cancellation — Remove the customer from channels immediately when they cancel (rather than waiting until the billing period ends)
- Cancellation cut-off days — Number of days from the subscription start within which early cancellation triggers immediate removal (use this to align with your refund policy)
Step 7. Save the product.
That’s it. When a customer purchases this product, the plugin handles everything automatically — invite link generation, join request validation, and member removal on cancellation or expiry.
How Access is Managed #
When a New Subscription is Created #
When a customer purchases a Flexible Subscription product and the order transitions to processing or completed, the plugin generates one-time use Telegram invite links for each assigned channel. If the direct invite flow is active, these links are shown on the thank-you page and emailed to the customer. If the activation flow is enabled, the customer activates via the Telegram bot first.
On Subscription Renewal #
Renewal orders are automatically detected and skipped. The plugin does not generate new invite links on renewal because the customer already has access. Their existing channel membership continues uninterrupted.
On Subscription Cancellation #
When a subscription is cancelled, the customer is removed from all assigned channels — but only from channels where they have no other active access from other orders or subscriptions. This is the smart protection feature: a customer with two subscriptions granting access to the same channel keeps access as long as at least one subscription is still active.
If “Immediate removal on cancellation” is enabled on the product, removal happens when the subscription enters pending-cancel status (before the billing period ends). The cancellation cut-off days setting controls how far into the subscription this applies.
On Subscription Expiry #
When a subscription expires naturally (e.g., a fixed-term subscription reaches its end date), the customer is removed from the assigned channels using the same smart protection logic.
On Subscription Hold #
When a subscription is placed on hold (e.g., due to a failed payment), the same removal process runs. If the subscription is later reactivated, the customer would need to go through the purchase flow again.
Differences from WooCommerce Subscriptions #
From your perspective as a store owner, the experience is identical. The Telegram Access tab, checkout flow, email notifications, and member removal all work the same way. The differences are internal:
| Aspect | WooCommerce Subscriptions | Flexible Subscriptions |
|---|---|---|
| Product types | subscription, variable-subscription | fsb-subscription, fsb-variable-subscription |
| Subscription storage | shop_subscription order type | fsb_subscription order type |
| Both use WooCommerce HPOS | Yes | Yes |
| All lifecycle features supported | Yes | Yes |
The plugin automatically uses the correct internal APIs for whichever subscription backend is active. You do not need to configure this.
Switching Between Subscription Plugins #
If you switch from WooCommerce Subscriptions to Flexible Subscriptions (or vice versa), the plugin will detect the change on the next page load and use the correct handler. However, existing subscriptions created under the previous plugin will still use that plugin’s order type. New subscriptions will use the active plugin.
Frequently Asked Questions #
Q: Do I need WooCommerce Subscriptions installed as well?
A: No. Flexible Subscriptions by WP Desk works independently. If both plugins are installed, the plugin will use the Flexible Subscriptions handler.
Q: Does this work with variable Flexible Subscription products?
A: Yes. Both fsb-subscription and fsb-variable-subscription product types are fully supported.
Q: Can I use Simple products alongside Flexible Subscription products?
A: Yes. Simple products with timed access expiry work independently of the subscription handler. You can sell both Simple and Flexible Subscription products from the same store.
Q: Will the WooCommerce Webhook fire for Flexible Subscription orders?
A: Yes. The WooCommerce Webhook integration fires for any order that generates Telegram invite links, regardless of product type.