Physical Products & Shipping
Create products and variants, manage inventory, set up shipping rates, and fulfil orders.
Beyond courses, you can sell physical products (books, materials, merch). Visitors check out through a cart, separately from courses.
Creating a product
Shop → Products → New product.
- Main image and gallery: the product page shows all of them
- Description: a full rich-text editor
- Product type and tags: for categorising; the storefront can show a single type
- Slug: the product page URL — stick to letters and numbers
Products start as drafts — publish before they appear on the storefront.
Variants
When the same product comes in different sizes or colours, use variants — up to three option sets (e.g. Size / Colour / Material).
Each combination has its own:
| Field | Notes |
|---|---|
| Price | For this specific combination |
| Compare-at price | Shown struck through, for a discount effect |
| SKU / barcode | Your own reference |
| Inventory quantity | |
| Weight | Used for shipping calculations |
| Image | Swaps the photo when that variant is selected |
Inventory
- Track inventory: turn it off to ignore quantities (good for pre-orders or unlimited items)
- When sold out: either stop sales, or keep accepting orders (backorders)
Sold-out products show a restock notification form on the storefront. Visitors leave an email, and you'll find them under Shop → Restock list.
Shipping rates
Shop → Shipping. Each shipping method has its own:
- Name (shown at checkout)
- Rate
- Free-shipping threshold: orders above this amount ship free
Two product-level switches also affect checkout:
- Requires shipping: turn it off for virtual goods — checkout won't ask for an address or charge shipping
- Home delivery only: for bulky items; hides pickup-point options at checkout
Orders and fulfilment
Shop → Product orders. Every order carries two independent statuses:
| Status | Values |
|---|---|
| Payment | Pending / Paid / Refunded |
| Fulfilment | Unfulfilled / Partial / Fulfilled / Completed |
They're separate for a practical reason: cash on delivery is "shipped but not paid", a pre-order is "paid but not shipped" — one status can't express both.
Enter a tracking number when you ship, and the customer is emailed automatically.
FAQ
I published a product but can't see it on the storefront. Check that the status is Active rather than Draft or Archived, and that the publish toggle is on — those are two separate fields.
Can someone buy a course and a physical product together? The cart is for physical products; courses use their own checkout. They're separate flows.
If I change a price, do existing orders change? No. An order records the price at the time it was placed.
Can I oversell my stock? Not if "when sold out" is set to stop sales. The option to keep accepting orders is there deliberately, for pre-orders.