Requirements
What must be in place before a course can be sold.
The requirements
| Requirement | Why |
|---|---|
| The POM theme | The whole POM LMS runtime and the permission rules depend on it |
| WooCommerce active | Products, orders and the account area |
| WooCommerce Subscriptions | Only for subscription-based access |
| A working checkout | Access depends on orders reaching a paid status |
| Permission rules defined | If access is rule-based rather than a single product |
Test WooCommerce first
Before involving courses, confirm a plain purchase works end to end:
- a product can be added to the cart and paid for;
- the order reaches a paid status;
- order emails arrive;
- the customer's account shows the order.
If any of that is unreliable, course access will be unreliable in the same way — access is read from the order.
Customer accounts
Access is evaluated for the signed-in student, from the orders belonging to their account.
That has a direct consequence: guest checkout does not grant course access, because there is no account to attach the purchase to.
For a site selling courses, require an account at checkout, or make creating one part of the purchase. It is the single most effective thing you can do to reduce paid-access support requests.
The product
Any published product can grant access. Practical requirements:
- Published and purchasable, with a price.
- Named for the course — a buyer scanning their order history months later should recognize it.
- In stock, if you manage stock.
There is no special product type for courses. A course product is an ordinary product whose purchase a course looks for.
Subscriptions
For plan-based access — while your subscription is active — you need the WooCommerce subscriptions extension.
Without it, subscription rule types are not available and a subscription product behaves like an ordinary purchase.
See Subscriptions and active access.
Permission rules
If access depends on more than one product, on a subscription, on a role or on timing, define the rule in the theme's permission-rule options before configuring the course. The course's rule selector only lists rules that already exist.
The My courses area
The student's course list is an endpoint inside the WooCommerce account, so it requires WooCommerce. Its name, slug and texts are configured under Settings → POM LMS → Account.
Without WooCommerce there is no account area, and students reach their courses from links you provide.
Before selling your first course
- [ ] A plain WooCommerce purchase completes end to end.
- [ ] Accounts are required at checkout, or strongly encouraged.
- [ ] The course product is published, priced and clearly named.
- [ ] The course's access model is decided: paid setting, or a rule.
- [ ] Any rule it needs exists.
- [ ] The no-access message explains what to buy and links to it.
- [ ] Test accounts exist for a buyer and a non-buyer.
- [ ] The My courses endpoint resolves.
Then continue with Connect products to courses.