wee intro: This guide’ll be pretty straight forward and assumes you:
- already have permitted access to the stripe account you’ll be connecting to this plugin (test mode is recommended for initial setup, if you don’t have a stripe account yet – have a peep at stripes getting started docs)
- you have admin access to your WordPress site
Both licenced and lite version plugin users can follow this guide to setup and you’ll want WordPress 6.0+ and PHP 8.0+ required as minimum.
0 you need to get the plugin
Pro plugin + license
If you’re looking to get the Pro license (and why wouldn’t you? It’s a great deal and a single one off payment instead of another sub! 🙂↕️✨),
- head over to the licences page pick from a x1, x5 or unlimited site installs licence and complete your purchase.
- Then check your email for your licence key (
EEWD-XXXX-XXXX-XXXX-XXXX) and download link for the Pro version plugin - Download the Pro version and upload the
.zipto your site via WordPress admin dashboard Plugins ➡️ Add New ➡️ Upload Plugin - Activate the newly uploaded plugin!
Free plugin
Not ready to commit? No problem, the lite plugin version includes subscription forms & subscription management, no license required.
- Download the free Lite version from WordPress.org directly
- or search “eew Subscriptions” in your WordPress admin dashboard from Plugins ➡️ Add New ➡️ “eew Subscriptions”
- If downloaded from WordPress.org directly, upload the
.zipto your site via WordPress admin dashboard Plugins ➡️ Add New ➡️ Upload Plugin - Activate the newly uploaded plugin!
1 enter your licence key
Pro plugin + license only (Free plugin users skip to 2)
- Go to Settings ➡️ EEW Subscriptions ➡️ Licence
- Paste your key and click Activate
- Confirm the status badge shows Active
2 connect stripe
Pro plugin + license & Free plugin users
- Go to Settings ➡️ EEW Subscriptions
- Enter your Stripe Publishable Key and Secret Key
- Use test keys
(pk_test_... / sk_test_...)until you’re ready to go live - Use live keys
(pk_live_... / sk_live_...)when you are ready to go live
- Use test keys
- Set your currency (e.g. GBP)
- Save settings
3 connect the stripe webhook
Pro plugin + license & Free plugin users
- In your Stripe Dashboard ➡️ Developers (often down the bottom) ➡️ Webhooks, click Add endpoint/destination
- Select ‘Your Account’ (likely already selected) and use the default API version
- Select the following events:
customer.subscription.createdcustomer.subscription.updatedcustomer.subscription.deletedinvoice.createdinvoice.paidinvoice.payment_failedinvoice.overduepayment_intent.succeeded(Pro only)payment_intent.payment_failed(Pro only)- then select Continue ➡️
- Select ‘Webhook endpoint’ and Continue ➡️
- Set the Destination name field value to label this webhook endpoint (something memorable and usually with the site name/connection will usually do)
- Set the Endpoint URL field value to:
https://{{ your site url here }}/wp-json/eew-subscriptions/v1/webhookand then Create Destination (note the https, if you ain’t using https, message me and explain to me why you ain’t and I’ll tell you why you’re wrong 🙂↕️💃). - Copy the Signing Secret (
whsec_...) of the newly created Webhook and paste it into WordPress admin dashboard ➡️Settings ➡️ EEW Subscriptions ➡️ Webhook Secret.
The Signing Secret can be found at Stripe Dashboard ➡️ Developers (often down the bottom) ➡️ Webhooks ➡️ Select the newly created desitination ➡️ Destination details
4 add your products
Pro plugin + license & Free plugin users
- Back in your Stripe Dashboard and go to Product catalogue ➡️ Add product
- Fill in the details:
- Under Pricing, click Add a price and configure:
- Pricing model – select Recurring
- Amount – e.g.
£9.99 - Billing period – Monthly / Yearly / Weekly / Custom
- Currency – must match the currency set in the plugin
- Click Save product
- On the product detail page, copy the Product ID, it starts with
prod_(e.g.prod_ABC123). You’ll need this in the next bit.
Pro only: Repeat for each tier or plan you want to offer. Each plan that customers can subscribe to needs its own Stripe product.
- In your WordPress admin dashboard go to EEW Subscriptions ➡️ Settings ➡️ Products tab
- Click + Add Product
- Fill in the row that appears:
- Product ID – paste the
prod_... IDfrom Stripe - Label – the display name customers will see on the subscription form (e.g. Monthly Hosting – £9.99/mo). This is your own label; it doesn’t need to match the Stripe product name exactly.
- Subscribe Page (optional) – select the WordPress page that contains the
[eew_subscription_form]shortcode or /eew Manage Subscriptions block for this product. If set, this is where the “Subscribe to view” notice will link to subscribe for gated content restricted to this specific product.
- Product ID – paste the
- Repeat for each product
- Click Save Changes
Note: A subscribe page per product is optional, if left blank the plugin falls back to the default subscribe page set under the Pages tab. If you only have one subscription form for all products, setting the default is sufficient.
5 create necessary pages
Pro plugin + license & Free plugin users
- Create a WordPress page for each of the following and add the relevant shortcode
| Page purpose | Shortcode | Block |
|---|---|---|
| Subscription signup | [eew_subscription_form product=”prod_…”] | /eew Subcription Form |
| One-off payment (Pro plugin only) | [eew_payment_form amount=”4900″ currency=”gbp” description=”…”] | /eew Payment Form |
| Manage subscriptions | [eew_manage_subscriptions] | /eew Manage Subscriptions |
- Once all of above are created go to Settings ➡️ EEW Subscriptions ➡️ Pages and assign each created page to its corresponding role (Note a specific page for One-off payments doesn’t need to be assigned like subscription pages do).
- Hit Save Changes.
6 restrict content to subscribers (optional)
Pro plugin + license only (Free plugin users skip to 7)
- For full page/post restriction – on any post or page, find the eew Subscriptions meta box in the editor sidebar via Page/Post tab (not Block tab) on right hand side ➡️ Subscription Restriction, select the required product, and save. Non-subscribers will see a “Subscribe to view” notice instead of the content
- For block specific content restriction place a /eew Subscriber Content block in your page and then place the blocks/content only subcribers of a certain product can see inside of that. Don’t forget to specify which subscriber products a user must be subscribed to in the the Block tab of the editor sidebar under Restriction Settings ➡️ Required Products ➡️ Toggle on/highlight one or multiple subscription products
7 test the flow + go live
Pro plugin + license & Free plugin users
test
- Use a Stripe test card to complete a test subscription or payment
- Verify a WP user account is created for the customer
- Check the Manage Subscriptions page loads correctly when logged in
- Confirm webhook events appear in your Stripe Dashboard
go live
- Replace test Stripe keys with live keys in Settings
- Update the Stripe webhook endpoint to use your live mode webhook secret
(pk_live_... / sk_live_...)
8 block + shortcode references
Block references
All four blocks are found in the block inserter under Widgets ➡️ EEW Subscriptions or can be filtered in all blocks search with /eew. Select a block in the editor to reveal its controls in the right-hand panel. The panel is split across two tabs: Block (settings and content) and Styles (colours, typography, spacing, border).
Subscription Form block
block tab – settings panel
- Product IDs (comma-separated, Pro only): One or more
prod_...IDs from Stripe. Leave blank to display all products configured in plugin settings. - Plan selection heading: Overrides the default “Choose your plan” step heading. Leave blank to use the default.
block tab – success content panel
- Success message: Text shown to the customer after a successful subscription. Leave blank for the built in default.
- Custom link text: Label for an optional link displayed on the success screen alongside the manage button.
- Custom link URL: Destination for the custom link above.
style tab – form colours panel
- Button background: Fill colour for all action buttons within the form.
- Button text: Text colour for all action buttons.
- Heading: Colour applied to step headings within the form.
- Secondary text: Colour applied to helper/supporting text within the form.
style tab – native WordPress panels
- Typography: Font family, size, weight, style, line height.
- Colour: Block background, text, links.
- Spacing: Padding, margin.
- Border: Radius, width, colour, style.
- Alignment: Wide / full width.
Payment Form block (Pro + licensed)
block tab – settings panel
- Amount (smallest unit): Fixed payment amount in pence/cents (e.g.
9900= £99.00). Leave blank to let the customer enter their own amount. - Currency: Three letter ISO code (e.g.
gbp,usd,eur). Leave blank to inherit the currency set in plugin settings. - Description: Short label for the payment, shown on the form and passed to Stripe as the PaymentIntent description.
- Metadata: Optional. Comma-separated key:value pairs forwarded to the Stripe PaymentIntent.
- Amount step heading: Overrides the default “Payment amount” step heading. Leave blank to use the default. Only visible when no fixed amount is set.
block tab – success content panel
- Success message: Text shown after a successful payment. Leave blank for the built-in default.
- Custom link text: Label for an optional link on the success screen.
- Custom link URL: Destination for the custom link above.
style tab – form colours panel
- Button background: Fill colour for all action buttons.
- Button text: Text colour for all action buttons.
- Heading: Colour applied to step headings.
- Secondary text: Colour applied to helper/supporting text.
style tab – native WordPress panels
- Typography: Font family, size, weight, style, line height.
- Colour: Block background, text, links.
- Spacing: Padding, margin.
- Border: Radius, width, colour, style.
- Alignment: Wide / full width.
Manage Subscriptions block
block tab – settings panel
- Subscriptions heading: Overrides the default “Your subscriptions” dashboard heading. Leave blank to use the default.
style tab – form colours panel
- Button background: Fill colour for action buttons (Cancel, Remove card, etc.).
- Button text: Text colour for all action buttons.
- Heading: Colour applied to the dashboard heading.
- Secondary text: Colour applied to subscription and payment method detail text.
style tab – native WordPress panels
- Typography: Font family, size, weight, style, line height.
- Colour: Block background, text, links.
- Spacing: Padding, margin.
- Border: Radius, width, colour, style.
- Alignment: Wide / full width.
Subscriber Content block (pro + licensed)
This block is a container, add any other blocks inside it (paragraphs, images, videos, other shortcodes, etc.) and they will be shown only to qualifying subscribers. Non-subscribers see the “Subscribe to view” notice instead.
block tab – restriction settings panel
- Required Products: Multi-select list populated from your configured Stripe products. Visitors must hold an active subscription to any one of the selected products to see the inner content. If none are selected the gate is inactive.
style tab – native WordPress panels
- Typography: Font family, size, weight, style, line height.
- Colour: Block background, text, links.
- Spacing: Padding, margin.
- Border: Radius, width, colour, style.
- Alignment: Wide / full width.
Shortcode references
The following are examples of common shortcode usages for each plgin feature.
Subscription Form shortcode
minimal:
[eew_subscription_form product="prod_ABC123"]
multi select plans on single form (pro + licensed):
[eew_subscription_form product="prod_ABC123,prod_DEF456,prod_GHI789"]
custom heading + branded success view (pro + licensed):
[eew_subscription_form
product="prod_ABC123,prod_DEF456"
plan_heading="Choose your membership plan"
success_message="You're all set! Your membership is now active."
success_link_text="Visit the Members Area"
success_link_url="https://yoursite.com/members"
]
Payment Form shortcode (pro + licensed)
Note: amount is in the smallest currency unit — pence/cents. 9900 = £99.00.
fixed amount:
[eew_payment_form
amount="9900"
currency="gbp"
description="One-off consultation fee"
]
user set amount (omit amount):
[eew_payment_form
currency="gbp"
description="Donation"
amount_heading="Enter the amount you'd like to contribute"
success_message="Thank you so much for your donation!"
success_link_text="Back to home"
success_link_url="https://yoursite.com"
]
multiple metadata values:
[eew_payment_form
amount="9900"
currency="gbp"
description="Agency Bundle"
metadata="source:share,promo_code:LAUNCH25"
]
Manage subscriptions shortcode
Note: Place this on a dedicated “My Account” or “Manage Subscription” page. Logged-in users will see their subscriptions and saved payment methods. Admins always have full access.
minimal:
[eew_manage_subscriptions]
custom heading:
[eew_manage_subscriptions heading="Your Active Memberships"]
multiple metadata values:
[eew_payment_form
amount="9900"
currency="gbp"
description="Agency Bundle"
metadata="source:share,promo_code:LAUNCH25"
]
Subscriber content shortcode (pro + licensed)
Note: Non-subscribers (or logged-out visitors) see a “Subscribe to view” notice with a link to the subscription page instead of the gated content. Admins always bypass the gate.
inline gating – single product:
[eew_subscriber_content product="prod_ABC123"]
<p>This content is only visible to active members. Thanks for subscribing!</p>
<!-- Any HTML, other shortcodes, or block-rendered content goes here -->
[/eew_subscriber_content]
inline gating – one of multi products (access is subscribed to any):
[eew_subscriber_content product="prod_ABC123,prod_DEF456"]
<h3>Premium Downloads</h3>
<p><a href="/downloads/guide.pdf">Download the full guide →</a></p>
[/eew_subscriber_content]
mixed public + gated content on same page:
<h2>About this course</h2>
<p>This course covers the fundamentals of web development.</p>
[eew_subscriber_content product="prod_ABC123"]
<h2>Module 1 — Getting Started</h2>
<p>Video lesson goes here...</p>
[/eew_subscriber_content]
Leave a Reply