Commerce and marketplaces

Tech stack for an e-commerce store (2026)

Coffee roaster online store, designed by StackPrism from one sentence: 8 components, a reason for each, and the live checks that watch them.

The stack

  • Next.js
  • Inngest
  • Node.js
  • PostgreSQL
  • Resend
  • Stripe
  • Shippo
  • Sentry
E-commerceSubscriptionsShippingUpdated
The idea someone typed
“An online store for a coffee roaster: product pages, cart and checkout, coffee subscriptions that renew every few weeks, discount codes, stock levels, shipping labels and order emails. We want our own storefront, not a hosted theme.”

Make it yours. Open this stack in the editor to check its health, harden it and hand it to your coding agent. No sign-up, nothing to generate.

Start from this stack
goes down

Select a component to see what it does and what it connects to, or pick one above to see what breaks if it goes down. Pinch or use the buttons to zoom.

Why this stack

The storefront is a Next.js app on Vercel, so product pages, cart and checkout are entirely your own design. Behind it, a Node.js API owns the catalog, stock, discount codes and orders in PostgreSQL, takes payments through Stripe and hears about completed payments from Stripe’s webhooks. Inngest triggers the recurring work, such as renewing coffee subscriptions every few weeks. Once an order is paid, the API buys a shipping label from Shippo and sends the order email through Resend. Sentry reports errors.

Why each piece

All 8 components on the diagram: what each one does, what it talks to, and what stops if it goes down.

  1. Next.js Storefront

    Runs on Vercel

    Public storefront. Calls Node.js API and Sentry (reports).

    Nothing else on the diagram depends on it.

  2. Inngest

    Runs on Vercel

    Recurring jobs. Calls Node.js API (triggers).

    Nothing else on the diagram depends on it.

  3. Node.js API

    Runs on Vercel

    Commerce API. Calls PostgreSQL (reads), Sentry (reports), Stripe (charges), Shippo (labels) and Resend (emails). Called by Next.js Storefront, Inngest (triggers) and Stripe (webhooks).

    If it goes down, 2 of 7 components stop working.

  4. PostgreSQL

    Supabase host. Called by Node.js API (reads).

    If it goes down, 3 of 7 components stop working.

  5. Resend

    In External Services

    Transactional email. Called by Node.js API (emails).

    If it goes down, 1 of 7 components degrades.

  6. Stripe

    In External Services

    Payments. Calls Node.js API (webhooks). Called by Node.js API (charges).

    If it goes down, 1 of 7 components degrades.

  7. Shippo

    In External Services

    Shipping labels. Called by Node.js API (labels).

    If it goes down, 1 of 7 components degrades.

  8. Sentry

    Error tracking. Called by Next.js Storefront (reports) and Node.js API (reports).

    If it goes down, 2 of 7 components degrade.

When this stack fits

  • You want full control over the storefront’s design and the checkout flow.
  • Subscriptions renew on your own schedule, not a fixed monthly plan.
  • You ship physical goods and want a label the moment an order is paid.

When to pick something else

  • You’d rather not build cart, checkout, tax and inventory: a hosted platform such as Shopify gives you all of that.
  • A large catalog needs faceted search: add a search engine, because this stack queries PostgreSQL directly.
  • You sell in many countries: taxes and duties need a service this diagram doesn’t include.

What you need to build this

8 components across 6 areas of the stack.

Build it with your AI agent

Hand the stack to Claude Code, Codex, Cursor or any coding agent as a brief: how it connects, install steps and a build plan.

Frontend1

  • Next.js Storefront

    Public storefront

    npm install next

    Docs

Backend & APIs3

  • Node.js API

    Commerce API

    Docs
  • Inngest

    Recurring jobs

  • Shippo

    Shipping labels

Data1

  • PostgreSQL

    Supabase host

    Docs

Payments1

  • Stripe

    Payments

    npm install stripe

    Docs

Email & messaging1

  • Resend

    Transactional email

Observability1

  • Sentry

    Error tracking

    npm install @sentry/nextjs

    Docs

Install

npm install next stripe @sentry/nextjs

SDKs only. Pick your own database driver or ORM.