Field note

Building a Square-native ordering stack for small restaurants

6 min readSPAO Systems
#restaurants#square#case-study

A restaurant owner's website isn't a brochure. It's the menu, the hours, the specials, the catering inquiry pipeline, and — when it's working — the channel where the highest-margin orders come in. Direct orders the kitchen pulls off the same Square dashboard the in-store orders land in, with no marketplace taking a cut on the way through.

Most independent restaurants don't run that channel today, because the two options they're usually shown both have a problem.

A templated site builder gets you a menu and a checkout, but the catering flow is missing, mobile-wallet payments aren't wired in, and the brand consistency goes wherever the template happened to take it. A custom build runs around twenty thousand dollars and three months of an agency's calendar — which is hard to justify against a single conversion channel that nobody's proven out yet for that specific restaurant.

So we built a third option, and used our own kitchen as the reference.

Nova Kitchen — the reference build

Nova Kitchen is the studio's live demo of what we call the Connected-Restaurant tier — a custom restaurant site the owner runs end-to-end, connected to the Square account the restaurant already pays for.

The menu is the restaurant's Square Catalog, rendered live. When the operator edits a price in Square or 86's an item, the site reflects the change within seconds. There is no separate menu admin to maintain.

Customer payment flows through Square Web Payments. The card form sits alongside Apple Pay, Google Pay, and Cash App Pay — whichever ones the visitor's device supports. The same merchant rate the restaurant already pays in-store applies to every direct order. No marketplace commission. No third-party hold on funds. The money lands in the Square dashboard, on the same payout schedule.

Catering runs on its own track. A separate menu of group platters with serves-N counts, a single cart that mode-switches with an explicit operator-style confirmation before flipping from individual to group ordering, a 48-hour minimum lead time, a $75 floor, and tip + delivery encoded as Square service charges so the dashboard total matches the customer's receipt to the cent.

Loyalty is automatic. Every order earns one point per dollar; one hundred points redeem five dollars at checkout. The customer keeps their account. The restaurant keeps the relationship. The loyalty signal compounds locally instead of leaking to a third party.

Why we picked Square as the source of truth

Picking a single payment-and-catalog platform to integrate against — instead of trying to be neutral across all of them — is the call that lets a small team ship a stack that's actually opinionated, actually fast, and actually consistent.

Square is the call we made for restaurants. The reasoning is mechanical, not preferential:

  • The restaurant probably already runs Square for in-store payments. That means there's an existing menu (the Catalog), an existing loyalty program (Square Loyalty), an existing payment processor with the merchant rate already negotiated. The site doesn't introduce a second system the operator has to keep in sync.
  • Square's developer surface — the Catalog API, the Orders API, the Web Payments SDK, the Loyalty API — gives us the primitives a connected ordering site needs, in one platform, with one set of credentials, with one set of webhooks.
  • The Web Payments SDK natively supports Apple Pay and Google Pay alongside the card form, which materially shifts mobile checkout conversion versus card-only forms.

That trade — depth over neutrality — is the same trade you'll see throughout the studio's other verticals: we pick a sharp instrument and build with it, rather than blunting the work by trying to be everything at once.

What's connected — said up front

Nova Kitchen's case study spells this out the way every system in the studio spells it out: in and out of scope, on the record, before the conversation starts.

Connected:

  • Menu pulls live from the Square Catalog. Edit a price in Square, the site reflects it in seconds.
  • Orders land in the same Square dashboard the in-store orders land in. Customer info, dietary notes, and totals attached.
  • Loyalty points credit automatically against the restaurant's existing Square Loyalty program.
  • 86'ing an item in Square stops the site from accepting orders for it. No stale availability.

Not connected (and worth saying explicitly):

  • Ingredient-level Square Inventory decrement on each order. Most prepared-food restaurants don't track inventory at the ingredient level on Square; if yours does, that's a separate scope.
  • Custom kitchen ticket printers and KDS hardware. Those are Square POS configuration, not website work — the restaurant inherits whatever printer or KDS setup it already has.
  • Third-party integrations beyond Square. The Connected-Restaurant tier is intentionally a single-platform integration.

The current demo runs on a Square sandbox. A real restaurant connects its own production Square credentials at provisioning.

Owner Lens — proof, not pitch

The hardest thing about selling a "connected" anything is that you can't see what's connected from the outside. The diner journey hides the plumbing on purpose. So a prospect has to take the studio's word that the menu is wired to the Catalog, that the loyalty points are real Square Loyalty entries, that the order really did land in the same dashboard the in-store orders land in.

We didn't want them to have to take our word. So Nova Kitchen ships an Owner Lens toggle — a pill in the bottom-right that flips on a set of inline annotations: this menu item comes from Catalog SKU X, this loyalty preview reads from program Y, this checkout button calls Web Payments SDK at this surface. It's the same dish, two views: diner-facing pristine, prospect-facing transparent.

Owner Lens is the demo equivalent of opening the kitchen to a customer who asked about how the dish gets made. The answer is the same in both views; only one of them shows it.

What this means for an operator considering it

If you run an independent restaurant and you're sitting with a templated site you already half-regret, or a marketplace channel that's eating fifteen to thirty percent of every order it routes you, here's the honest version of what the Connected-Restaurant tier does and doesn't change for you.

What it changes:

  • You get a direct ordering channel where the customer is yours. Not the marketplace's. Yours.
  • Mobile wallet checkout means returning customers pay in two taps. That conversion difference is real and well-documented at the platform level.
  • Catering becomes a structured conversion path with a confirmed lead time and minimum, instead of an email back-and-forth that drops on the floor.
  • Loyalty compounds against Square instead of leaking to whichever third-party rewards platform you'd otherwise wire up.
  • You get a hosted system you access through a login — we design, build, host, and run it for you, so you never maintain anything and it never goes stale. Your menu lives in your own Square account, and your content and data export anytime. Your data is always yours; we keep the system running and improving.

What it doesn't change:

  • Square is still Square. Your merchant rate, your payout schedule, your in-store hardware, your existing dispute process — all unchanged.
  • The kitchen workflow on the line doesn't move. Tickets print where they printed before. KDS hardware behaves the way you set it up.
  • You're still the operator. You decide what to publish, what to charge, what counts as a feature day. The site reflects your decisions; it doesn't replace them.

The first paying client becomes the second logo on the case studies page. Nova Kitchen is the proof-of-system. The next restaurant is the proof-of-pattern.

If you want to see the system run, the Nova Kitchen case study has the full architecture write-up, the Owner Lens walkthrough, and a live sandbox you can place a real order against — it'll appear in our Square dashboard within seconds and a receipt will land in your inbox a moment later.

If you want to talk about whether this fits your restaurant, the Connected-Restaurant offer page is the place to start, and an intake call is on the book page.

Written by SPAO Systems

Field notes from SPAO Systems — building solo, in public.

Book intake →

Building a Square-native ordering stack for small restaurants · SPAO Systems · SPAO Systems