quietmason
STOREFRONT · case notes

A store that had to be cheap to run

Short answer: A product business needed an English storefront for overseas buyers, and the constraint that shaped everything was running cost: no monthly platform fee, no per-app charges, no dependency on a service that can reprice or disappear. The result is a static storefront with the catalog in data files, deployed to an edge host, with the order form posting to an endpoint the client owns. Handover covered the build and the data format.

Checked on 2026-10-20

A product business needed an English storefront for overseas buyers. The requirement that shaped everything else was cost: no monthly platform subscription, no per-app fees, and no dependency on a service that could change its pricing or disappear.

Constraints

What shaped the work?

One constraint shaped everything else: running cost. No monthly platform fee, no per-app charges, and no dependency on a service that could reprice or vanish. That is why the build is static pages plus a data file.

  • One data file had to be the source of truth for the catalog — pricing and copy edited in one place.
  • Orders had to reach a human immediately, on a channel that already existed: email.
  • Everything that previously ranked had to keep working through the move: URL map, redirects, structured data.
  • Pages had to be fast on a phone on a slow connection, because most traffic was mobile.
Stack

What does it run on?

Static generation · PHP for forms and order capture · structured data

Platform dependencynone
In productionstill maintained
Statuslive, maintained by us
Deliveredsource, run sheet, credentials
Verifycode walk-through on a call
Build

What did we actually build?

The storefront is static pages plus a data file, deployed to an edge host, with the order form posting to an endpoint the client owns. What follows is the build, the constraint that shaped it, and what it does not do.

  • Catalog and product pages generated from a single data file, so a price change is one line, not thirty pages.
  • Order capture posts to a server-rendered endpoint and sends a structured notification email — no third-party checkout fee.
  • Static output on cheap hosting, with PHP only where a form needs a server.
  • Redirect map built from the old site's URL inventory before launch, not after the traffic graph fell over.
  • Structured data and Core Web Vitals checked page by page before launch.
Decisions

The choices that mattered

One data file

Content in one place beats a database when the catalog is small and hand-curated.

Email as the order channel

Fewer moving parts than a webhook chain, and it works on any device.

Static plus a little PHP

Fast and cheap to host, and it does not need a platform to stay alive.

Design for the phone

Desktop-only pages were the original problem: the numbers were there but nobody could read them on a phone.

Left open

What we would do next

  • Order status page for buyers, generated from the same order records.
  • Automated sitemap and schema checks in the release routine.
Honesty note

What is not on this page

No client name, no screenshots of their data and no metrics: those are theirs. What is here is the engineering, which is the part a buyer can evaluate. On a call we will walk through the code.