Hero Health's membership feature lets your practice offer recurring membership schemes to patients. For example, a private GP subscription or a named list service. When connected to Stripe, Hero handles recurring billing automatically: Stripe collects payment on a monthly or annual cycle, and Hero keeps the patient's membership policy active for as long as the subscription runs.
This article walks through three things:
Creating a membership scheme in Hero
Linking that scheme to a Stripe Recurring Product so billing can be automated
Creating a membership policy for a patient
A membership scheme is the template that defines what the membership covers, how much it costs, and how long it runs. You can have multiple schemes — for example, a standard annual plan and a monthly rolling plan at different price points.
Linking a scheme to a Stripe product is what enables automatic billing. Once linked, when you create a membership policy for a patient, Hero creates a Stripe subscription against that product and Stripe handles all recurring invoicing from that point on.
Before linking in Hero, make sure your Stripe dashboard has:
A Product created for this membership
A Recurring Price attached to that product: either monthly or annual, matching the scheme length
Hero reads available prices from Stripe and filters for recurring ones only. A one-time price will not appear in the selector.
Open the scheme in Apps → Stripe → Schemes and click Create Scheme.
In the Stripe Product field, search for your product by name and select it.
Click Save.
Hero stores the Stripe product ID against the scheme. From this point, any new policies created for this scheme will use this product's pricing.
Important: A scheme's Stripe product link can only be set or changed when there are no active policies against it. If you need to change the product on a live scheme, you will need to cancel existing policies first. Contact Hero support if you need help with this.
When creating a policy, the admin selects the specific Stripe price (e.g. £120/year) from the product's available recurring prices. This means you can have multiple price points on a single Stripe product — for example, a standard rate and a discounted rate — and choose the right one per patient at the point of policy creation. Stripe coupons can also be applied at this stage for further ad-hoc discounts.
A membership policy is the individual record that ties a Stripe customer (the payer), one or more Hero patients (the members), and a scheme together. Creating a policy kicks off the Stripe subscription.
Go to Settings → Memberships → Stripe App or go to Patient dashboard → Stripe (via the sidebar) then click Create membership policy. This opens a four-step form.
Select the policy holder (Stripe customer)
Search for an existing Stripe customer by name or email. If the patient does not yet have a Stripe customer record, use the Create new Stripe customer option to create one inline — you will need their name, email address, and optionally a phone number.
Note: The Stripe customer is the billing entity; the person whose card is charged and who receives invoices. This may be a parent or guardian rather than the patient themselves. You will link the actual Hero patient(s) in Step 3.
Set policy details
Configure the scheme, billing start date, and any discounts:
Scheme — Search for the Stripe recurring product linked to your scheme. Selecting it populates the price and sets the membership scheme automatically.
Bill starting — The date from which Stripe will begin billing. This is also when the first invoice is generated. The period between now and this date is free of charge — Hero does not prorate the gap.
Add patients to the policy
Search for the Hero patient(s) who will be covered by this membership. Patients are looked up from Hero's patient records and can be sourced from the EMIS or from Hero's own records. You can add multiple patients to a single policy, for example, all members of a family.
Adding patients is optional at this stage. If you submit without any patients, Hero will display a warning but allow you to proceed. Patients can be added later via the policy table in Stripe App settings.
Choose a payment collection method
Select how Stripe should collect payment:
Option | Description |
|---|---|
Request payment | Stripe emails an invoice to the customer when billing starts. You set the number of days until payment is due (default: 30 days). Stripe will send automatic reminder emails if the invoice is unpaid — reminder frequency is configured in your Stripe dashboard under Settings → Billing → Automatic collection. |
Pay now | Stripe charges a saved card or payment source on the customer's record immediately when billing starts. Select the specific payment method from the dropdown — the customer's default is pre-selected. |
Important: The collection method is set on the Stripe subscription at creation and cannot be changed afterwards without cancelling and recreating the subscription.
Submit and confirm
Click Create policy. Hero will:
Save the membership policy record in Hero.
Create a Stripe subscription for the customer against the selected product and price.
Activate the policy once the subscription is confirmed. the policy start date and end date are taken directly from Stripe.
The new policy will appear under Apps → Stripe → Policies, where you can view its status, subscription details, and attached patient records.
For Stripe-invoiced memberships, renewals are handled entirely by Stripe. At the end of each billing period, Stripe generates a new invoice and, depending on the collection method, either charges the customer automatically or sends them an invoice to pay. Hero receives a webhook from Stripe and updates the policy's expiry date accordingly.
You do not need to manually renew Stripe-billed policies. If a renewal fails (e.g. card declined), Stripe will retry according to your Smart Retries settings and Hero will mark the policy as cancelled if the subscription lapses.
To cancel a policy, cancel the subscription in Stripe. Hero will receive and automatically set the cancellation date on the policy. The patient's booking access for member-only appointment types will end accordingly.