Marketplaces

Seller and listing architecture

We earn commissions when you shop through the links below.

In the Marketplace Starter a seller is a user, and a listing stores priceCents plus a category.

1 min read

The Marketplace Starter does not have a separate seller profile model. Listing.sellerId points at User. The user has an email, a name, and a password hash. Public seller pages are that user plus their published listings.

A listing has a unique slug, title, summary, priceCents, category, and status. New listings default to "published". Price is cents, so the checkout line item can use unit_amount without converting a float. The full columns are in the marketplace schema.

Search and category pages should read listings, not orders. An order is a buyer email, a listing id, and a status that starts at "pending". It is not a cart and it does not split a payout.

Creating the Checkout session for that amount is Stripe payments for marketplaces. The product walkthrough is building a marketplace with Next.js.

Product updates for developers shipping with Designyff kits.

Guides: Next.js, Stripe, and SaaS starter kits Professional website design for small businesses

Purchased source may be used in personal, commercial, and client projects. Do not redistribute or resell the original source. Terms of Service Privacy Policy

Designyff © 2026 | Starter kits for developers