CMCarl MannSolutions Architect
Engagement · 02

E-commerce, tailored.

Storefronts, subscriptions, and migrations -- without losing orders along the way.

Custom Node storefronts -- Next.js or Remix on the frontend, a schema you own on the backend, Stripe and the rest of the gateway zoo at the payment edge. Carts, checkout flows, recurring billing, fulfilment pipelines, tax and shipping -- the parts that decide whether an order completes or quietly fails.

6-12wk typicalNext.js+ Stripe + Postgres0orders lost in flight
What you get

The cart, end to end.

Most storefronts break in the boring parts: a tax calculation that silently fails at checkout, a fulfilment feed that drops an SKU, an authorize-and-capture window that times out at 23:59. The interesting work is making the boring parts boring.

01

Storefronts that convert

Bespoke themes and headless frontends -- not a "drag the cart block in" job. Speed budgets enforced, accessibility checked, the funnel measured before and after.

02

Subscriptions that survive

Recurring billing, dunning, gift codes, plan changes mid-cycle, failed-card recovery. The boring middle of the funnel, written carefully -- because that's where the revenue lives.

03

Migrations without panic

Shopify to a Node storefront, Magento to anything sane, classic ASP carts to a modern checkout. URLs preserved, SEO carried over, order history intact. The cutover happens on a Sunday night, not a Monday morning.

Engagement model

Cutover,
not catastrophe.

A storefront engagement is rarely greenfield. The model below assumes there's already a business at the other end of those orders.

  1. 01

    Audit + scope

    Inventory of the current store -- product model, payment surfaces, fulfilment chain, tax setup. Output is a written audit and a fixed scope, usually inside two weeks.

  2. 02

    Parallel build

    New storefront built alongside the live store, populated with real product data on a staging mirror. The old system keeps taking orders while the new one is hardened.

  3. 03

    Sunday cutover

    Migration runs on the quietest hour of the week. URLs redirected, payment processors swapped, order history backfilled. Monday morning, the staff sees the new admin -- not a fire.

  4. 04

    First 30 days, watched

    Daily check-ins for the first week, weekly for the next three. Conversion, error rates, and refund volume tracked against the baseline so any regression shows up in days, not quarters.

Scope notes

A good fit, and a not-quite-fit.

Good fit

A real store with real orders.

  • An existing store on Shopify, Woo, Magento, or something bespoke -- and a reason it's outgrown the platform.
  • Subscription, B2B, or wholesale flows that the off-the-shelf plugins handle poorly.
  • A migration where the URLs, the SEO, and the order history have to come along.
  • A small team who can answer questions about edge-case SKUs -- because the edge cases are where the work lives.

Less of a fit

Brochureware with a "buy" button.

  • Six products and a stock template -- you don't need a custom engagement; you need an afternoon with Squarespace.
  • Marketplaces with their own platform constraints (Amazon, eBay, Etsy) -- happy to recommend specialists.
  • Crypto-only checkout flows, NFT drops, and ticketing speculation -- not the practice's wheelhouse.
  • "It just needs a quick fix before Black Friday." Reach out anyway, but with eyes open about what fits in a week.

A storefront that
takes orders quietly.

If you can describe the cart-abandonment number you'd like to stop seeing, that's a brief -- send it.

Start a Project Booking Q3 2026
© 2026 Carl Mann · All rights reserved · Made by hand on the open web~ delegate the technical ~Set in Instrument Serif, Manrope & JetBrains Mono