Selling Templates
Products, versions, and offers
The three-layer listing model, the four billing models, and the activation checklist.
Three layers
Product → versions → offers
Billing models
Free, one-time, recurring, usage
Live when
The activation checklist passes
Listings have three layers, and keeping them straight makes everything else obvious:
| Layer | What it is | Changes over time? |
|---|---|---|
| Product | The listing: name, slug, category, descriptions, preview image, visibility (public, unlisted, or private). | Yes — it's your marketing surface. |
| Version | A semantic release of the underlying artifact, with release notes and install notes. | Append-only — new releases, never edits. |
| Offer | The commercial terms attached to a version: billing model plus one or more prices. | Drafted, then activated. |
Billing models
- Free — price must be zero. Free products build storefront reputation and funnel buyers to your paid work.
- One-time — pay once, own the version. The natural fit for templates.
- Recurring — a subscription, for products that deliver ongoing value (kept-current template lines, services).
- Usage — metered billing with included units and an overage rate; requires at least one active meter before the offer can go live. Built for appliances and integrations more than templates.
Prices are set per currency, so one offer can carry a USD and a EUR price side by side.
Note
Free trials on paid offers aren't available yet — offers currently activate with trials set to zero. It's on the marketplace billing roadmap.
The activation checklist
An offer flips from draft to live only when everything lines up, and the platform checks rather than trusts:
- The product version is published (not draft).
- Your seller profile is Active.
- The offer has at least one active price (zero for free, positive for paid).
- Usage offers have an active meter.
Each failed check tells you exactly which requirement is unmet — fix it and activate again.
Capability review: 2026-09-14. For exact current technical availability, use the generated API Map and first-class module inventory.
Did this page answer your question?Tell us what’s missing