{"id":201146,"date":"2024-08-17T00:45:00","date_gmt":"2024-08-17T00:45:00","guid":{"rendered":"https:\/\/wordpress.org\/plugins\/restore-cancelled-stripe-subscriptions-for-restrict-content\/"},"modified":"2026-02-13T17:50:25","modified_gmt":"2026-02-13T17:50:25","slug":"subscriptions-restorer-for-stripe-and-restrict-content-pro","status":"publish","type":"plugin","link":"https:\/\/sk.wordpress.org\/plugins\/subscriptions-restorer-for-stripe-and-restrict-content-pro\/","author":18417231,"comment_status":"closed","ping_status":"closed","template":"","meta":{"_crdt_document":"","version":"1.0.1","stable_tag":"1.0.1","tested":"6.9.4","requires":"5.0","requires_php":"","requires_plugins":null,"header_name":"Subscriptions Restorer for Stripe and Restrict Content Pro","header_author":"WPSPIN LLC","header_description":"Restore cancelled stripe subscriptions using stripe API for Restrict content.","assets_banners_color":"185169","last_updated":"2026-02-13 17:50:25","external_support_url":"","external_repository_url":"","donate_link":"","header_plugin_uri":"https:\/\/wpspins.com?utm-ref=subscriptions-restorer-for-stripe-and-restrict-content-pro","header_author_uri":"https:\/\/wpspins.com","rating":0,"author_block_rating":0,"active_installs":0,"downloads":861,"num_ratings":0,"support_threads":0,"support_threads_resolved":0,"author_block_count":0,"sections":["description","installation","faq","changelog"],"tags":{"1.0.0":{"tag":"1.0.0","author":"wpspin","date":"2025-08-08 17:58:49"},"1.0.1":{"tag":"1.0.1","author":"wpspin","date":"2026-02-13 17:50:25"}},"upgrade_notice":[],"ratings":[],"assets_icons":{"icon-128x128.png":{"filename":"icon-128x128.png","revision":3136864,"resolution":"128x128","location":"assets","locale":""},"icon-256x256.png":{"filename":"icon-256x256.png","revision":3136864,"resolution":"256x256","location":"assets","locale":""}},"assets_banners":{"banner-772x250.png":{"filename":"banner-772x250.png","revision":3460972,"resolution":"772x250","location":"assets","locale":""}},"assets_blueprints":{},"all_blocks":[],"tagged_versions":["1.0.0","1.0.1"],"block_files":[],"assets_screenshots":{"screenshot-1.png":{"filename":"screenshot-1.png","revision":3140057,"resolution":"1","location":"assets","locale":""},"screenshot-2.png":{"filename":"screenshot-2.png","revision":3140057,"resolution":"2","location":"assets","locale":""},"screenshot-3.png":{"filename":"screenshot-3.png","revision":3140057,"resolution":"3","location":"assets","locale":""},"screenshot-4.png":{"filename":"screenshot-4.png","revision":3140057,"resolution":"4","location":"assets","locale":""}},"screenshots":{"1":"Enter your Stripe API key to securely connect your Stripe account.","2":"View a detailed list of all cancelled subscriptions with customer and plan information.","3":"Use the bulk restore feature to select and restore multiple subscriptions at once.","4":"Restored subscriptions show a green checkmark and are synced back with Restrict Content Pro."},"jetpack_post_was_ever_published":false},"plugin_section":[],"plugin_tags":[1932,32529,52569,5349,255815],"plugin_category":[41,45],"plugin_contributors":[193842],"plugin_business_model":[],"class_list":["post-201146","plugin","type-plugin","status-publish","hentry","plugin_tags-membership","plugin_tags-recurring-payments","plugin_tags-restrict-content-pro","plugin_tags-stripe","plugin_tags-subscription-recovery","plugin_category-communication","plugin_category-ecommerce","plugin_contributors-wpspin","plugin_committers-wpspin"],"banners":{"banner":"https:\/\/ps.w.org\/subscriptions-restorer-for-stripe-and-restrict-content-pro\/assets\/banner-772x250.png?rev=3460972","banner_2x":false,"banner_rtl":false,"banner_2x_rtl":false},"icons":{"svg":false,"icon":"https:\/\/ps.w.org\/subscriptions-restorer-for-stripe-and-restrict-content-pro\/assets\/icon-128x128.png?rev=3136864","icon_2x":"https:\/\/ps.w.org\/subscriptions-restorer-for-stripe-and-restrict-content-pro\/assets\/icon-256x256.png?rev=3136864","generated":false},"screenshots":[{"src":"https:\/\/ps.w.org\/subscriptions-restorer-for-stripe-and-restrict-content-pro\/assets\/screenshot-1.png?rev=3140057","caption":"Enter your Stripe API key to securely connect your Stripe account."},{"src":"https:\/\/ps.w.org\/subscriptions-restorer-for-stripe-and-restrict-content-pro\/assets\/screenshot-2.png?rev=3140057","caption":"View a detailed list of all cancelled subscriptions with customer and plan information."},{"src":"https:\/\/ps.w.org\/subscriptions-restorer-for-stripe-and-restrict-content-pro\/assets\/screenshot-3.png?rev=3140057","caption":"Use the bulk restore feature to select and restore multiple subscriptions at once."},{"src":"https:\/\/ps.w.org\/subscriptions-restorer-for-stripe-and-restrict-content-pro\/assets\/screenshot-4.png?rev=3140057","caption":"Restored subscriptions show a green checkmark and are synced back with Restrict Content Pro."}],"raw_content":"<!--section=description-->\n<p>\ud83d\udd04 <strong>Subscriptions Restorer for Stripe and Restrict Content Pro<\/strong> is a must-have recovery tool for membership site owners who use Restrict Content Pro with Stripe payments.<\/p>\n\n<p>Accidentally cancelled Stripe subscriptions can mean lost revenue and frustrated members. This plugin makes it easy to restore those subscriptions in bulk \u2014 directly from your WordPress dashboard.<\/p>\n\n<h4>\ud83c\udfaf Who Is This Plugin For?<\/h4>\n\n<p>This plugin is built for you if:<\/p>\n\n<ol>\n<li>You use <strong>Restrict Content Pro<\/strong> to manage memberships and subscriptions.<\/li>\n<li>Your members pay via <strong>Stripe<\/strong> recurring billing.<\/li>\n<li>You still have active member records in Restrict Content Pro, but their Stripe subscriptions were cancelled.<\/li>\n<\/ol>\n\n<h4>\ud83d\udca1 10+ Real-World Use Cases<\/h4>\n\n<ol>\n<li><strong>\ud83c\udf10 Staging Site Accident<\/strong> \u2014 A staging\/dev copy of your site still had live Stripe webhooks connected, and changes on staging cancelled real subscriptions.<\/li>\n<li><strong>\ud83d\uddd1\ufe0f Accidental Dashboard Cancellation<\/strong> \u2014 Someone on your team manually cancelled subscriptions from the Stripe dashboard by mistake.<\/li>\n<li><strong>\ud83d\udd0c Plugin Conflict<\/strong> \u2014 A plugin update or conflict triggered unexpected subscription cancellations in Stripe.<\/li>\n<li><strong>\u2699\ufe0f Migration Gone Wrong<\/strong> \u2014 During a site migration or server move, Stripe webhooks fired incorrectly and cancelled active subscriptions.<\/li>\n<li><strong>\ud83e\uddea Testing on Live Data<\/strong> \u2014 Testing payment flows on a live site accidentally cancelled real subscriber billing.<\/li>\n<li><strong>\ud83d\udd01 Webhook Misconfiguration<\/strong> \u2014 Incorrectly configured Stripe webhooks caused cancellation events to fire on the wrong environment.<\/li>\n<li><strong>\ud83d\udce6 Backup Restoration Side Effect<\/strong> \u2014 Restoring a database backup re-triggered old cancellation events through Stripe.<\/li>\n<li><strong>\ud83d\udc65 Bulk Action Mistake<\/strong> \u2014 An admin accidentally bulk-cancelled memberships, and the cancellation propagated to Stripe.<\/li>\n<li><strong>\ud83d\udd04 Subscription Sync Issue<\/strong> \u2014 A sync mismatch between RCP and Stripe left subscriptions cancelled on the Stripe side but active in RCP.<\/li>\n<li><strong>\ud83d\udee1\ufe0f Fraud Prevention Overreaction<\/strong> \u2014 Automated fraud tools or Stripe Radar flagged and cancelled legitimate subscriptions.<\/li>\n<li><strong>\ud83d\udcc9 Revenue Recovery Audit<\/strong> \u2014 You noticed a revenue dip and found that multiple subscriptions were silently cancelled \u2014 now you need to restore them all at once.<\/li>\n<\/ol>\n\n<h4>\u2705 Key Features<\/h4>\n\n<ul>\n<li><strong>\ud83d\udd04 One-Click Restoration<\/strong> \u2014 Restore cancelled Stripe subscriptions by creating new ones synced with your existing RCP membership records.<\/li>\n<li><strong>\ud83d\udccb Bulk Restore<\/strong> \u2014 Select multiple subscriptions and restore them all at once. No more fixing them one by one.<\/li>\n<li><strong>\ud83d\udd17 Seamless Integration<\/strong> \u2014 Works directly with the Stripe API and Restrict Content Pro's database for accurate syncing.<\/li>\n<li><strong>\ud83d\udcc5 Smart Date Handling<\/strong> \u2014 Restored subscriptions start immediately with a trial period that ends on the original expiration date, so members aren't charged twice.<\/li>\n<li><strong>\u2714\ufe0f Restoration Tracking<\/strong> \u2014 Restored subscriptions are clearly marked with a green checkmark in the admin table.<\/li>\n<\/ul>\n\n<h4>\ud83d\udee0\ufe0f How to Use This Plugin<\/h4>\n\n<p><strong>Step 1: Install &amp; Activate<\/strong>\nUpload the plugin via the WordPress plugin installer or install it from the WordPress plugin repository. Activate it from the Plugins screen.<\/p>\n\n<p><strong>Step 2: Enter Your Stripe API Key<\/strong>\nGo to <strong>Settings \u2192 RC Restore Cancelled Stripe Subscriptions<\/strong> and paste your Stripe <strong>Secret API Key<\/strong> (starts with <code>sk_live_<\/code> or <code>sk_test_<\/code>). Click <strong>Save Changes<\/strong>.<\/p>\n\n<blockquote>\n  <p>\ud83d\udca1 You can find your Stripe API key at <a href=\"https:\/\/dashboard.stripe.com\/apikeys\">Stripe Dashboard \u2192 Developers \u2192 API Keys<\/a>.<\/p>\n<\/blockquote>\n\n<p><strong>Step 3: View Cancelled Subscriptions<\/strong>\nAfter saving your API key, the plugin will fetch and display all cancelled subscriptions from Stripe in a detailed table, including customer name, email, plan details, and cancellation date.<\/p>\n\n<p><strong>Step 4: Select &amp; Restore<\/strong>\nUse the checkboxes to select the subscriptions you want to restore (or use \"Select All\"). Choose <strong>Restore<\/strong> from the Bulk Actions dropdown and click <strong>Apply<\/strong>. Confirm the action when prompted.<\/p>\n\n<p><strong>Step 5: Verify<\/strong>\nRestored subscriptions will show a \u2714\ufe0f green checkmark in the Status column. The corresponding RCP memberships will be set back to active with auto-renew enabled.<\/p>\n\n<h4>\ud83e\udd1d Works Great With These Popular Plugins<\/h4>\n\n<ul>\n<li><strong><a href=\"https:\/\/restrictcontentpro.com\/\">Restrict Content Pro<\/a><\/strong> \u2014 Required. The membership and subscription management plugin this tool is built for.<\/li>\n<li><strong><a href=\"https:\/\/woocommerce.com\/\">WooCommerce<\/a><\/strong> \u2014 If you run an e-commerce store alongside your membership site, both can share the same Stripe account.<\/li>\n<li><strong><a href=\"https:\/\/wpmailsmtp.com\/\">WP Mail SMTP<\/a><\/strong> \u2014 Ensure your members receive email notifications when their subscriptions are restored.<\/li>\n<li><strong><a href=\"https:\/\/updraftplus.com\/\">UpdraftPlus<\/a><\/strong> \u2014 Backup your site before performing bulk restoration for peace of mind.<\/li>\n<li><strong><a href=\"https:\/\/wp-staging.com\/\">WP Staging<\/a><\/strong> \u2014 Use a proper staging plugin that isolates webhooks, preventing the exact problem this plugin solves.<\/li>\n<li><strong><a href=\"https:\/\/wordpress.org\/plugins\/checkout-plugins-stripe-woo\/\">Stripe Payment Gateway for WooCommerce<\/a><\/strong> \u2014 If you also use Stripe with WooCommerce, this ensures your Stripe account is properly managed.<\/li>\n<li><strong><a href=\"https:\/\/wordpress.org\/plugins\/user-switching\/\">User Switching<\/a><\/strong> \u2014 Quickly switch to a member's account to verify their subscription was restored correctly.<\/li>\n<\/ul>\n\n<h4>\ud83d\udd12 Security<\/h4>\n\n<ul>\n<li>Nonce verification on all AJAX requests<\/li>\n<li>Input sanitization and output escaping throughout<\/li>\n<li>Stripe API key is stored securely in the WordPress options table<\/li>\n<li>Admin-only access (requires <code>manage_options<\/code> capability)<\/li>\n<\/ul>\n\n<h3>Usage of Third-Party Services<\/h3>\n\n<p>This plugin relies on the Stripe API to manage and restore canceled subscriptions. The following endpoints are used:<\/p>\n\n<ul>\n<li><code>https:\/\/api.stripe.com\/v1\/customers<\/code><\/li>\n<li><code>https:\/\/api.stripe.com\/v1\/subscriptions<\/code><\/li>\n<\/ul>\n\n<p>Your data will be sent to these Stripe endpoints under the following circumstances:<\/p>\n\n<ol>\n<li>To fetch information about canceled subscriptions.<\/li>\n<li>To fetch customer details associated with the subscriptions.<\/li>\n<li>To create new subscriptions based on previously canceled subscriptions.<\/li>\n<\/ol>\n\n<p>Please ensure you have reviewed Stripe's terms of use and privacy policies:<\/p>\n\n<ul>\n<li><a href=\"https:\/\/stripe.com\/legal\">Stripe Terms of Use<\/a><\/li>\n<li><a href=\"https:\/\/stripe.com\/privacy\">Stripe Privacy Policy<\/a><\/li>\n<\/ul>\n\n<!--section=installation-->\n<ol>\n<li>Upload the plugin files to the <code>\/wp-content\/plugins\/subscriptions-restorer-for-stripe-and-restrict-content-pro<\/code> directory, or install the plugin through the WordPress plugins screen directly.<\/li>\n<li>Activate the plugin through the <strong>Plugins<\/strong> screen in WordPress.<\/li>\n<li>Go to <strong>Settings \u2192 RC Restore Cancelled Stripe Subscriptions<\/strong> to configure the plugin.<\/li>\n<li>Enter your Stripe Secret API Key and click <strong>Save Changes<\/strong>.<\/li>\n<li>Select cancelled subscriptions from the list and use the <strong>Restore<\/strong> bulk action.<\/li>\n<\/ol>\n\n<!--section=faq-->\n<dl>\n<dt id=\"do%20i%20need%20restrict%20content%20pro%20installed%3F\"><h3>Do I need Restrict Content Pro installed?<\/h3><\/dt>\n<dd><p>Yes. This plugin requires Restrict Content Pro to be installed and active, as it reads and updates RCP membership records.<\/p><\/dd>\n<dt id=\"what%20stripe%20api%20key%20do%20i%20need%3F\"><h3>What Stripe API key do I need?<\/h3><\/dt>\n<dd><p>You need your <strong>Secret API Key<\/strong> from Stripe (starts with <code>sk_live_<\/code> for production or <code>sk_test_<\/code> for testing). You can find it in your <a href=\"https:\/\/dashboard.stripe.com\/apikeys\">Stripe Dashboard under Developers \u2192 API Keys<\/a>.<\/p><\/dd>\n<dt id=\"will%20restored%20subscriptions%20charge%20the%20customer%20immediately%3F\"><h3>Will restored subscriptions charge the customer immediately?<\/h3><\/dt>\n<dd><p>No. Restored subscriptions use a trial period that ends on the original expiration date. The customer will be charged at their next regular billing cycle, not immediately upon restoration.<\/p><\/dd>\n<dt id=\"can%20i%20restore%20subscriptions%20one%20at%20a%20time%3F\"><h3>Can I restore subscriptions one at a time?<\/h3><\/dt>\n<dd><p>Yes. You can select individual subscriptions using the checkboxes, or use \"Select All\" for bulk restoration.<\/p><\/dd>\n<dt id=\"is%20it%20safe%20to%20use%20on%20a%20live%20site%3F\"><h3>Is it safe to use on a live site?<\/h3><\/dt>\n<dd><p>Yes, but we recommend creating a backup before performing bulk restorations. Always test with your Stripe test key first if you're unsure.<\/p><\/dd>\n\n<\/dl>\n\n<!--section=changelog-->\n<h4>1.0.1<\/h4>\n\n<ul>\n<li>Updated plugin description and documentation<\/li>\n<li>Added support contact banner on settings page<\/li>\n<li>Updated compatibility to WordPress 6.9.1<\/li>\n<li>Improved plugin tags for discoverability<\/li>\n<\/ul>\n\n<h4>1.0.0<\/h4>\n\n<ul>\n<li>Initial release<\/li>\n<\/ul>","raw_excerpt":"Restore accidentally cancelled Stripe subscriptions in Restrict Content Pro. Prevent revenue loss and keep your members happy with one-click bulk rest &hellip;","jetpack_sharing_enabled":true,"_links":{"self":[{"href":"https:\/\/sk.wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin\/201146","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/sk.wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin"}],"about":[{"href":"https:\/\/sk.wordpress.org\/plugins\/wp-json\/wp\/v2\/types\/plugin"}],"replies":[{"embeddable":true,"href":"https:\/\/sk.wordpress.org\/plugins\/wp-json\/wp\/v2\/comments?post=201146"}],"author":[{"embeddable":true,"href":"https:\/\/sk.wordpress.org\/plugins\/wp-json\/wporg\/v1\/users\/wpspin"}],"wp:attachment":[{"href":"https:\/\/sk.wordpress.org\/plugins\/wp-json\/wp\/v2\/media?parent=201146"}],"wp:term":[{"taxonomy":"plugin_section","embeddable":true,"href":"https:\/\/sk.wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_section?post=201146"},{"taxonomy":"plugin_tags","embeddable":true,"href":"https:\/\/sk.wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_tags?post=201146"},{"taxonomy":"plugin_category","embeddable":true,"href":"https:\/\/sk.wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_category?post=201146"},{"taxonomy":"plugin_contributors","embeddable":true,"href":"https:\/\/sk.wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_contributors?post=201146"},{"taxonomy":"plugin_business_model","embeddable":true,"href":"https:\/\/sk.wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_business_model?post=201146"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}