Skip to main content

Product types

Every product has a type, chosen when you create it. The type decides what the editor asks for, whether stock is tracked, and how the buyer experiences checkout and delivery. Ten types cover the catalog:

TypeWhat it's forStock tracked?After purchase
PhysicalGoods you ship — mugs, prints, apparelYesShipping + fulfillment
DigitalFiles buyers download — PDFs, presets, audioNoInstant download access
CourseStructured lessons with progress trackingNoAccess to the linked curriculum
EventA dated happening with attendeesOptional (seats)Ticket / confirmation
BundleSeveral products sold as one packageFollows contentsEach item delivers its own way
MembershipRecurring access to content or perksNoOngoing access while active
Subscription boxRecurring physical shipmentsYesRepeat fulfillment per cycle
ServiceWork you do — design, consulting, editingNoYou deliver manually
BookingA reservable time slot — sessions, classesSlotsCalendar booking confirmed
TipA pay-what-you-want thank-youNoNothing to deliver

Type labels

Buyers see a label chip on product cards ("Course", "Digital"). You can swap the default for a preset label or your own custom text per product — useful when "Service" should read "1:1 Session" on your storefront. Custom labels can't contain commas (they'd break storefront filtering).

Choosing the right type

  • Selling a workshop people attend at a set time? Booking (recurring availability) or Event (one date).
  • A video course? Course, so buyers get lesson progress and certificates — a Digital product would just hand over files.
  • Monthly pottery club with perks? Membership for access, Subscription box if a package ships every month.
  • The type is picked at creation and shapes the product's whole behavior — when in doubt, create a quick draft and see what the editor asks for.

What happens — and what doesn't

  • Type-specific sections appear in the editor only for the relevant type: shipping fields for physical, files for digital, curriculum linking for courses, slots for bookings.
  • Courses must link a curriculum before publishing. Drafts save fine without one.
  • Recurring types (membership, subscription box) bill on a cycle through your payment gateway; the billing filter on the Products page separates one-time from recurring at a glance.
Can I change a product's type after creating it?

The type is fixed at creation because it shapes pricing, delivery, and editor fields. To move a product to another type, duplicate its content into a new product of the right type.

What's the difference between a course and a digital product?

A digital product delivers files. A course delivers a curriculum — lessons in order, progress tracking, optional quizzes and certificates. If it's teaching material, use a course.

How do bundles handle delivery?

Each product inside the bundle delivers its own way: files unlock, physical items enter fulfillment, courses grant access. The buyer pays once.

What this screen looks like in every state

StateWhen you'll see itWhat you see, and what to do
LoadingThe screen is fetching your dataA skeleton in the shape of the finished page. It should be brief — if it persists, the load has failed rather than stalled.
ErrorThe data couldn't be loadedA message with a retry. Retry first: most of these are a dropped request, not a broken store. If it repeats, the outage is upstream and reloading won't help.
No accessYour role doesn't include this screenA permission notice instead of the page. An owner or admin can grant access under Settings → Team.

When something goes wrong

These are the messages this screen can show you, and what each one means.

If you seeWhat to do
All selected products are already hidden from storefrontRetry the action. If it keeps happening, contact support with what you were doing.
All selected products are already visible on storefrontRetry the action. If it keeps happening, contact support with what you were doing.
Couldn't load the rest of your inventory.Retry the action. If it keeps happening, contact support with what you were doing.
Couldn't save the new orderThe change didn't save. Retry — if it keeps failing, the request isn't reaching the server.
Couldn’t save the new orderThe change didn't save. Retry — if it keeps failing, the request isn't reaching the server.
Enter a valid non-negative numberDo what the message asks, then try again — it names exactly what's missing.
Enter a valid non-zero quantityDo what the message asks, then try again — it names exactly what's missing.
Enter a valid quantityDo what the message asks, then try again — it names exactly what's missing.
Failed to archive … product{count, plural, one {} other …}The change didn't save. Retry — if it keeps failing, the request isn't reaching the server.
Failed to create collectionThe change didn't save. Retry — if it keeps failing, the request isn't reaching the server.
Failed to create productThe change didn't save. Retry — if it keeps failing, the request isn't reaching the server.
Failed to delete productThe change didn't save. Retry — if it keeps failing, the request isn't reaching the server.
Failed to delete … product{count, plural, one {} other …}The change didn't save. Retry — if it keeps failing, the request isn't reaching the server.
Failed to duplicate productThat value is already used. Pick a different one.
Failed to publish … product{count, plural, one {} other …}The change didn't save. Retry — if it keeps failing, the request isn't reaching the server.
Failed to update statusThe change didn't save. Retry — if it keeps failing, the request isn't reaching the server.
Failed to update stockThe change didn't save. Retry — if it keeps failing, the request isn't reaching the server.
Failed to update … product{count, plural, one {} other …}The change didn't save. Retry — if it keeps failing, the request isn't reaching the server.
Invalid valueThe value isn't in the expected format. Check it against the field's rules above.
No draft products selected to publishRetry the action. If it keeps happening, contact support with what you were doing.
No items selectedRetry the action. If it keeps happening, contact support with what you were doing.
No products importedRetry the action. If it keeps happening, contact support with what you were doing.
No products to archiveRetry the action. If it keeps happening, contact support with what you were doing.
No valid rows found. CSV needs columns: sku/product_name and quantity.The value isn't in the expected format. Check it against the field's rules above.

Every field on this screen

Every control here, read straight from the live app.

FieldTypeWhat it acceptsWhat it does
NameText
SlugText

2 fields, read from the live app. Which ones you see depends on the product type and your plan.