Patient Registration: approve patients before they order.
Patients upload a recommendation and a driver license. You review and approve. Restricted products stay locked until the record is approved and still current.
$49a year, one store
Files kept out of the Media LibraryClassic checkout and checkout blockPurchase check ships switched off

The form your patients fill in. Screenshot from our test store.
The facts
- What it is
- A WooCommerce plugin that collects a patient record and two files, lets your staff review it, and keeps flagged products locked until the record is approved.
- The form
- Name, email, date of birth, phone, recommendation number and date, driver license number and date, a recommendation file and a driver license file. Shortcode
[mmj_patient_form]or the page /patient-registration/. - Files
- JPG, PNG, WEBP or PDF, up to the size you set (5 MB by default). Stored in a database table with no public file URL.
- Statuses
- Pending, approved, rejected, needs an update and expired. Approved is your own review decision.
- Purchase check
- A flagged product can be ordered only when the record is approved, the recommendation date is today or later, and the date of birth meets the age you set.
- Which products
- Whole categories, or individual products you mark. Products that are not flagged sell as usual, to guests too.
- Price
- $49 per year for one store. Renews yearly; cancel any time from your account. Updates and support included while active. The plugin keeps working if you stop renewing; it just stops getting updates. Made by MMJ eCommerce, a QWEBMASTER product.
- Not
- An ID reader or a registry check. You read the files. The plugin does not decide what the law allows.
Is it right for your store?
For stores where a person reviews every patient.
A good fit if
- Some of your products need a medical recommendation on file before you sell them.
- You want patients to upload documents once, not email them in.
- You want those files kept private, not in a public media folder.
- You want the store to stop orders when a recommendation runs out.
Not the right tool if
- You need documents verified automatically. The plugin does not read the image or check a state registry.
- You want guests to buy restricted products. A flagged product needs a customer account.
How it works
From upload to approved in five steps.

- Choose what needs a record.Set the categories, or mark individual products.
- Add the form.Put
[mmj_patient_form]on a page, or send people to /patient-registration/. - Patients submit.They fill in the record and upload the recommendation and the driver license.
- You review.Open the files, check the dates, and approve, reject or ask for an update.
- Switch on the purchase check.From then on, flagged products need an approved, current record.
A new recommendation file puts the record back to pending, so you see it again. Changing a date does not.

Every record in one list, filtered by status.
What you get
Records in one place, checked at checkout.
Collect records now and switch on the purchase check when your staff is ready.
- One form, two filesThe record and both documents in a single submission.
- Private filesStored in the database, not the Media Library. A patient can download their own file while logged in. A reviewer opens it from the record. Nobody else gets a link.
- Clear review statusesPending, approved, rejected, needs an update and expired.
- Expiry checked on every orderAn out-of-date recommendation blocks the flagged product, even on an approved record.
- Minimum ageThe date of birth must meet the age you set before a flagged product can be ordered.
- Classic and block checkoutThe same checks on both, so nobody gets around them by switching checkout.
Straight answers
What it does not do.
We would rather you know before you buy.
Requirements
- WordPress
- 6.0 or later, tested to 7.0
- WooCommerce
- 7.0 or later, tested to 10.5
- PHP
- 7.4 or later
- Version
- 1.0.0
- It does not read the documents. You open the files and type the dates. The plugin stores them and compares the dates you entered.
- It does not check a state registry. Approved means your staff approved it.
- It does not decide what the law allows. It applies the rules you configure.
- A driver license date blocks only if you choose. It is stored and shown, and stops an order only when you switch that on and the date has passed.
Does this read an ID or check a state registry?
No. You read the files. The plugin stores them and compares the dates you typed.
Where are the files stored?
In a database table, not the Media Library. A customer can download their own file while logged in. A reviewer can open it from the record. Nobody else gets a URL.
Which file types can patients upload?
JPG, PNG, WEBP or PDF, up to the size you set. The default limit is 5 MB.
Can guests still buy from my store?
Yes, for products that are not flagged. A flagged product needs an account with an approved record.
What happens when a recommendation runs out?
With the purchase check on, flagged products stop being orderable for that patient until the record has a current date again. A new recommendation file sends the record back to pending for review.
Does the license have to be active?
No. The license only offers updates. Records and checkout work the same without one.
More plugins
Works well with.

Card Payments
Take card orders online and charge them on your own terminal.
See Card Payments
Age Gate
Ask a yes or no question or a date of birth before visitors see the store.
See Age Gate
Shipping Limits
Limit where each product can ship by state, ZIP or city.
See Shipping Limits
Add Patient Registration to your store today.
$49 a year for one store. Install it, set your rules, switch it on when you are ready. Cancel any time.
