{"id":382937,"date":"2026-10-12T10:15:18","date_gmt":"2026-10-12T10:15:18","guid":{"rendered":"https:\/\/wordpress.org\/plugins\/subscription-manager-dashboard-for-stripe\/"},"modified":"2026-10-12T10:14:43","modified_gmt":"2026-10-12T10:14:43","slug":"rankzaar-subscriptions-manager-for-stripe","status":"publish","type":"plugin","link":"https:\/\/wordpress.org\/plugins\/rankzaar-subscriptions-manager-for-stripe\/","author":23582049,"comment_status":"closed","ping_status":"closed","template":"","meta":{"version":"1.0.0","stable_tag":"1.0.0","tested":"7.1.3","requires":"6.0","requires_php":"7.4","requires_plugins":null,"header_name":"Rankzaar Subscriptions Manager for Stripe","header_author":"Tohidul Islam Tawhid","header_description":"Sync and manage Stripe subscriptions from the WordPress admin, and sell services with a checkout shortcode that supports price options, quantity, coupon codes and transaction fees.","assets_banners_color":"6d7781","last_updated":"2026-10-12 10:14:43","external_support_url":"","external_repository_url":"","donate_link":"","header_plugin_uri":"","header_author_uri":"","rating":0,"author_block_rating":0,"active_installs":0,"downloads":56,"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":"tohidulislamtawhid","date":"2026-10-12 10:14:43","revision":3741068}},"upgrade_notice":{"1.0.0":"<p>Initial release.<\/p>"},"ratings":[],"assets_icons":{"icon-128x128.gif":{"filename":"icon-128x128.gif","revision":3741089,"resolution":"128x128","location":"assets","locale":"","width":128,"height":128},"icon-256x256.gif":{"filename":"icon-256x256.gif","revision":3741089,"resolution":"256x256","location":"assets","locale":"","width":256,"height":256}},"assets_banners":{"banner-1544x500.png":{"filename":"banner-1544x500.png","revision":3741089,"resolution":"1544x500","location":"assets","locale":"","width":1544,"height":500},"banner-772x250.png":{"filename":"banner-772x250.png","revision":3741089,"resolution":"772x250","location":"assets","locale":"","width":772,"height":250}},"assets_blueprints":{},"all_blocks":[],"tagged_versions":["1.0.0"],"block_files":[],"assets_screenshots":{"screenshot-1.png":{"filename":"screenshot-1.png","revision":3741131,"resolution":"1","location":"assets","locale":"","width":1280,"height":1133},"screenshot-2.png":{"filename":"screenshot-2.png","revision":3741131,"resolution":"2","location":"assets","locale":"","width":1280,"height":1417},"screenshot-3.png":{"filename":"screenshot-3.png","revision":3741131,"resolution":"3","location":"assets","locale":"","width":1280,"height":1056},"screenshot-4.png":{"filename":"screenshot-4.png","revision":3741131,"resolution":"4","location":"assets","locale":"","width":1280,"height":1447},"screenshot-5.png":{"filename":"screenshot-5.png","revision":3741131,"resolution":"5","location":"assets","locale":"","width":1280,"height":1485},"screenshot-6.png":{"filename":"screenshot-6.png","revision":3741131,"resolution":"6","location":"assets","locale":"","width":1280,"height":678},"screenshot-7.png":{"filename":"screenshot-7.png","revision":3741131,"resolution":"7","location":"assets","locale":"","width":1280,"height":641}},"screenshots":{"1":"Subscription list with key numbers, status tabs and filters.","2":"Subscription page with invoices, failed-payment reason and actions.","3":"Services with price options and copy-ready shortcodes.","4":"Service editor.","5":"Notification email templates with placeholders.","6":"Coupon codes.","7":"Checkout shortcode on the front end."}},"plugin_section":[],"plugin_tags":[3148,591,32529,5349,4079],"plugin_category":[41,45],"plugin_contributors":[286079],"plugin_business_model":[],"class_list":["post-382937","plugin","type-plugin","status-publish","hentry","plugin_tags-checkout","plugin_tags-coupons","plugin_tags-recurring-payments","plugin_tags-stripe","plugin_tags-subscriptions","plugin_category-communication","plugin_category-ecommerce","plugin_contributors-tohidulislamtawhid","plugin_committers-tohidulislamtawhid"],"banners":{"banner":"https:\/\/ps.w.org\/rankzaar-subscriptions-manager-for-stripe\/assets\/banner-772x250.png?rev=3741089","banner_2x":"https:\/\/ps.w.org\/rankzaar-subscriptions-manager-for-stripe\/assets\/banner-1544x500.png?rev=3741089","banner_rtl":false,"banner_2x_rtl":false},"icons":{"svg":false,"icon":"https:\/\/ps.w.org\/rankzaar-subscriptions-manager-for-stripe\/assets\/icon-128x128.gif?rev=3741089","icon_2x":"https:\/\/ps.w.org\/rankzaar-subscriptions-manager-for-stripe\/assets\/icon-256x256.gif?rev=3741089","generated":false},"screenshots":[{"src":"https:\/\/ps.w.org\/rankzaar-subscriptions-manager-for-stripe\/assets\/screenshot-1.png?rev=3741131","caption":"Subscription list with key numbers, status tabs and filters."},{"src":"https:\/\/ps.w.org\/rankzaar-subscriptions-manager-for-stripe\/assets\/screenshot-2.png?rev=3741131","caption":"Subscription page with invoices, failed-payment reason and actions."},{"src":"https:\/\/ps.w.org\/rankzaar-subscriptions-manager-for-stripe\/assets\/screenshot-3.png?rev=3741131","caption":"Services with price options and copy-ready shortcodes."},{"src":"https:\/\/ps.w.org\/rankzaar-subscriptions-manager-for-stripe\/assets\/screenshot-4.png?rev=3741131","caption":"Service editor."},{"src":"https:\/\/ps.w.org\/rankzaar-subscriptions-manager-for-stripe\/assets\/screenshot-5.png?rev=3741131","caption":"Notification email templates with placeholders."},{"src":"https:\/\/ps.w.org\/rankzaar-subscriptions-manager-for-stripe\/assets\/screenshot-6.png?rev=3741131","caption":"Coupon codes."},{"src":"https:\/\/ps.w.org\/rankzaar-subscriptions-manager-for-stripe\/assets\/screenshot-7.png?rev=3741131","caption":"Checkout shortcode on the front end."}],"raw_content":"<!--section=description-->\n<p>Rankzaar Subscriptions Manager for Stripe brings your Stripe subscriptions into the WordPress admin and gives you a simple way to sell one-time or recurring services on any page.<\/p>\n\n<p>No Stripe.js, no card fields on your site: customers pay on the secure, Stripe-hosted Checkout page.<\/p>\n\n<p>Rankzaar Subscriptions Manager for Stripe is not affiliated with or endorsed by Stripe, Inc.<\/p>\n\n<h4>Manage subscriptions<\/h4>\n\n<ul>\n<li><strong>Subscription list<\/strong> with search, status tabs, filters (service, next billing date, start date, failed payments) and key numbers: active subscriptions, failed payments, past due, billing this month, canceling, and monthly recurring revenue per currency.<\/li>\n<li><strong>Subscription page<\/strong> with customer details (name, email, business name, phone), invoices, the reason a payment failed (in plain language, straight from the bank's decline code) and a full activity history.<\/li>\n<li><strong>Actions:<\/strong> change plan (with proration choice), pause and resume payments, cancel at the end of the period (and undo), cancel immediately, retry a failed payment, and keep private internal notes. Each action can be turned off.<\/li>\n<li><strong>Test and live mode<\/strong> with separate keys. Each mode keeps its own data.<\/li>\n<li><strong>Webhook<\/strong> keeps everything up to date in real time. One click creates the endpoint in Stripe for you. A scheduled background sync catches anything a webhook missed.<\/li>\n<\/ul>\n\n<h4>Sell services with a shortcode<\/h4>\n\n<ul>\n<li>Create a <strong>service<\/strong> with several <strong>price options<\/strong> (for example Basic \/ Pro \/ Premium, monthly or yearly). Prices are created in Stripe automatically when you save, or you can paste existing Stripe price IDs.<\/li>\n<li><strong>Import<\/strong> existing Stripe Payment Links as services in one click.<\/li>\n<li>Put <code>[smfs_checkout service=\"your-service\"]<\/code> on any page. Customers pick an option, optionally a quantity, see a live price breakdown, and are sent to Stripe Checkout.<\/li>\n<li>Optional <strong>transaction fee<\/strong> (percentage and\/or fixed amount), as a default for all services or per service, charged on every renewal or only on the first payment.<\/li>\n<li><strong>Coupon codes:<\/strong> create, edit, activate, deactivate and delete Stripe promotion codes from WordPress. Limit them to first-time customers, set a usage limit and an expiry date, and choose whether the fee is discounted.<\/li>\n<li>Ask for <strong>full name, business name and phone number<\/strong> on the checkout page; the details are saved to the Stripe customer.<\/li>\n<\/ul>\n\n<h4>Email notifications<\/h4>\n\n<ul>\n<li>Get an email for new subscriptions, payments received, failed payments (with the reason and a link the customer can pay), scheduled cancellations and canceled subscriptions.<\/li>\n<li>Every email has a <strong>ready-made default template<\/strong>. Change the subject and message in Settings \u2192 Notifications using placeholders such as <code>{customer_name}<\/code>, <code>{plan}<\/code>, <code>{amount}<\/code> or <code>{failure_reason}<\/code>, send yourself a test, and reset to the default at any time.<\/li>\n<li>Optional <strong>SMTP<\/strong> settings (with presets for common providers) if your server's built-in email is unreliable.<\/li>\n<\/ul>\n\n<h4>Shortcode options<\/h4>\n\n<ul>\n<li><code>variant=\"premium\"<\/code> \u2013 show only one option, or <code>variant=\"basic,premium\"<\/code> for several.<\/li>\n<li><code>layout=\"dropdown\"<\/code> \u2013 show the options in a dropdown instead of cards.<\/li>\n<li><code>label=\"Buy now\"<\/code> \u2013 button text for this placement.<\/li>\n<li><code>breakdown=\"no\"<\/code> \u2013 hide the price line.<\/li>\n<li><code>class=\"my-class\"<\/code> \u2013 add CSS classes to the button.<\/li>\n<\/ul>\n\n<p>Any element with <code>data-smfs-variant=\"option-id\"<\/code> (for example a button in a pricing table) selects that option when clicked.<\/p>\n\n<h4>For developers<\/h4>\n\n<ul>\n<li>Keys can be defined in <code>wp-config.php<\/code> instead of the database: <code>SMFS_STRIPE_SECRET_KEY<\/code>, <code>SMFS_STRIPE_WEBHOOK_SECRET<\/code> and <code>SMFS_SMTP_PASSWORD<\/code>.<\/li>\n<li>Filter <code>smfs_checkout_button_classes<\/code> to add your theme's button classes to the checkout button.<\/li>\n<\/ul>\n\n<h3>External services<\/h3>\n\n<p>This plugin connects to the <strong>Stripe API<\/strong> (<code>https:\/\/api.stripe.com<\/code>), a payment service provided by Stripe, Inc. It cannot work without it. Requests are made from your server with the secret key you enter; nothing is loaded from Stripe in visitors' browsers.<\/p>\n\n<p>Data is sent to Stripe in these situations:<\/p>\n\n<ul>\n<li><strong>When a visitor clicks the checkout button:<\/strong> the selected price, quantity, transaction fee, the return URLs of your site and the service\/option identifiers are sent to create a Stripe Checkout Session. The visitor is then redirected to Stripe's hosted checkout page (<code>checkout.stripe.com<\/code>), where they enter their email address, payment details and, if you enabled them, their name, business name and phone number directly with Stripe.<\/li>\n<li><strong>After a checkout is completed<\/strong> (via the webhook): the customer's name, business name and phone number collected on the checkout page are saved to the Stripe customer record.<\/li>\n<li><strong>When an administrator uses the plugin:<\/strong> testing a key, syncing subscriptions, viewing a subscription, creating or editing services (product names, prices, billing intervals), creating coupon codes, creating the webhook endpoint, and subscription actions (change plan, pause, resume, cancel, retry a payment). These requests send the related IDs and values to Stripe and read back subscriptions, customers (email, name, phone, business name), invoices, prices, products, coupons and payment links.<\/li>\n<li><strong>Background sync<\/strong> (WP-Cron, if enabled): subscription, customer and product data is read from Stripe on the schedule you choose.<\/li>\n<\/ul>\n\n<p>Stripe also sends events to your site's webhook URL (<code>\/wp-json\/smfs\/v1\/webhook<\/code>); every request is verified with the Stripe signing secret.<\/p>\n\n<ul>\n<li>Stripe Services Agreement and legal terms: https:\/\/stripe.com\/legal<\/li>\n<li>Stripe Privacy Policy: https:\/\/stripe.com\/privacy<\/li>\n<\/ul>\n\n<p>If you turn on the optional SMTP feature, all email from your site is sent through the SMTP server you configure (for example your email provider). That provider receives the content and recipients of those emails; its own terms and privacy policy apply.<\/p>\n\n<!--section=installation-->\n<ol>\n<li>Upload the <code>rankzaar-subscriptions-manager-for-stripe<\/code> folder to <code>\/wp-content\/plugins\/<\/code>, or install the plugin from the Plugins screen.<\/li>\n<li>Activate the plugin.<\/li>\n<li>Go to <strong>Subscriptions \u2192 Settings \u2192 Stripe connection<\/strong>.<\/li>\n<li>Paste your Stripe <strong>test<\/strong> secret key (or a restricted key, see the FAQ) and click <strong>Save &amp; test<\/strong>.<\/li>\n<li>Click <strong>Create webhook<\/strong> to add the webhook endpoint in Stripe and store its signing secret automatically.<\/li>\n<li>Go to <strong>Subscriptions \u2192 All Subscriptions<\/strong> and click <strong>Sync from Stripe<\/strong> to import existing subscriptions.<\/li>\n<li>To sell on your site: add a service under <strong>Settings \u2192 Services<\/strong>, then paste its shortcode on a page.<\/li>\n<li>When everything works in test mode, add your live keys, create the live webhook and switch to <strong>Live mode<\/strong>.<\/li>\n<\/ol>\n\n<!--section=faq-->\n<dl>\n<dt id=\"do%20i%20need%20a%20stripe%20account%3F\"><h3>Do I need a Stripe account?<\/h3><\/dt>\n<dd><p>Yes. The plugin works with your own Stripe account and uses Stripe's API and hosted checkout page.<\/p><\/dd>\n<dt id=\"which%20permissions%20does%20a%20restricted%20key%20need%3F\"><h3>Which permissions does a restricted key need?<\/h3><\/dt>\n<dd><p>Write access to Subscriptions, Checkout Sessions, Customers, Products, Prices, Coupons, Promotion codes, Invoices and Webhook endpoints, and read access to PaymentIntents and Payment Links. A standard secret key also works.<\/p><\/dd>\n<dt id=\"are%20card%20details%20stored%20on%20my%20site%3F\"><h3>Are card details stored on my site?<\/h3><\/dt>\n<dd><p>No. Customers pay on Stripe's hosted checkout page. Your site never sees card numbers.<\/p><\/dd>\n<dt id=\"how%20do%20i%20test%20without%20charging%20anyone%3F\"><h3>How do I test without charging anyone?<\/h3><\/dt>\n<dd><p>Use test mode with your test keys and Stripe's test card <code>4242 4242 4242 4242<\/code>, any future expiry date and any CVC.<\/p><\/dd>\n<dt id=\"why%20don%27t%20changes%20made%20in%20stripe%20show%20up%3F\"><h3>Why don't changes made in Stripe show up?<\/h3><\/dt>\n<dd><p>Make sure a webhook signing secret is saved (Settings \u2192 Stripe connection shows the status). Without it, changes only appear after a sync. You can always click <strong>Sync from Stripe<\/strong>.<\/p><\/dd>\n<dt id=\"can%20i%20change%20the%20notification%20emails%3F\"><h3>Can I change the notification emails?<\/h3><\/dt>\n<dd><p>Yes. Go to Settings \u2192 Notifications and open any email. Edit the subject and message, click a placeholder to insert it, and use <strong>Save &amp; send test<\/strong> to see the result. <strong>Reset to default<\/strong> restores the original text.<\/p><\/dd>\n<dt id=\"what%20happens%20to%20my%20data%20when%20i%20delete%20the%20plugin%3F\"><h3>What happens to my data when I delete the plugin?<\/h3><\/dt>\n<dd><p>Deleting the plugin removes its settings, services, email templates, cached subscriptions, activity log and scheduled events from WordPress. Nothing is deleted in Stripe: your customers, subscriptions, prices, coupons and webhook endpoints stay there. Deactivating the plugin only stops the scheduled sync.<\/p><\/dd>\n<dt id=\"i%20use%20a%20page%20cache.%20will%20the%20checkout%20button%20work%3F\"><h3>I use a page cache. Will the checkout button work?<\/h3><\/dt>\n<dd><p>The checkout form includes a security token (nonce) that WordPress accepts for 12\u201324 hours. If your caching plugin keeps pages longer than that, exclude the pages that contain the <code>[smfs_checkout]<\/code> shortcode from the cache, or set the cache lifetime to 10 hours or less. Otherwise visitors may see \u201cwe could not start the checkout\u201d until the page is refreshed in the cache.<\/p><\/dd>\n<dt id=\"does%20it%20work%20with%20page%20builders%3F\"><h3>Does it work with page builders?<\/h3><\/dt>\n<dd><p>Yes. Add the shortcode with a Shortcode block or your page builder's shortcode widget.<\/p><\/dd>\n\n<\/dl>\n\n<!--section=changelog-->\n<h4>1.0.0<\/h4>\n\n<ul>\n<li>Initial release.<\/li>\n<\/ul>","raw_excerpt":"Manage Stripe subscriptions from WordPress and sell services with a checkout shortcode that supports price options, quantity, coupons and fees.","jetpack_sharing_enabled":true,"_links":{"self":[{"href":"https:\/\/wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin\/382937","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin"}],"about":[{"href":"https:\/\/wordpress.org\/plugins\/wp-json\/wp\/v2\/types\/plugin"}],"replies":[{"embeddable":true,"href":"https:\/\/wordpress.org\/plugins\/wp-json\/wp\/v2\/comments?post=382937"}],"author":[{"embeddable":true,"href":"https:\/\/wordpress.org\/plugins\/wp-json\/wporg\/v1\/users\/tohidulislamtawhid"}],"wp:attachment":[{"href":"https:\/\/wordpress.org\/plugins\/wp-json\/wp\/v2\/media?parent=382937"}],"wp:term":[{"taxonomy":"plugin_section","embeddable":true,"href":"https:\/\/wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_section?post=382937"},{"taxonomy":"plugin_tags","embeddable":true,"href":"https:\/\/wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_tags?post=382937"},{"taxonomy":"plugin_category","embeddable":true,"href":"https:\/\/wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_category?post=382937"},{"taxonomy":"plugin_contributors","embeddable":true,"href":"https:\/\/wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_contributors?post=382937"},{"taxonomy":"plugin_business_model","embeddable":true,"href":"https:\/\/wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_business_model?post=382937"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}