Owned ordering
Orders on your domain. Couriers on demand.
This is a working demonstration built on Magic Smoothies's real menu — every item, price and opening hour comes from the same file the website reads. Nothing here has been made up, and nothing here takes money.
What happens when someone orders
- They order on your site. Your menu, your brand, your domain. No app store, no marketplace listing next to a competitor.
- The ticket lands on the board. A tablet by the blender shows new, making and ready. One tap moves a ticket along.
- They pay by card. The customer is handed to the payment provider's own page and comes straight back. No card field is ever drawn by us, so card data never touches this site — which is what keeps the shop on the short PCI self-assessment instead of the long one.
- A courier is called only if it is a delivery. The system asks DoorDash Drive or Uber Direct for a price on that address, the customer sees that price before they commit, and paying for it books the driver. No account is connected yet, so today it says the quote is unavailable rather than showing a guess.
- The customer stays yours. The name, the phone, the e-mail and what they ordered sit in your own store, and the owner page has a button that downloads a day of them as a spreadsheet.
What it costs to run
Published rates, read from each vendor's own pricing page on 5 September 2026. They are list prices for sizing, not a quote.
| What | Published price |
|---|---|
| Card payment | 2.9% + 30¢ per successful domestic-card charge — Stripe Checkout is included at no extra fee Stripe |
| Courier — DoorDash Drive | A published range of $6.99–$10.99 per delivery. No firm price is published; it is quoted per order, by distance. DoorDash |
| Courier — Uber Direct | Published as "as low as $7.99" per delivery, with the rate depending on distance, speed and market. Uber Eats |
| Hosting and the order store | Cloudflare Pages Functions and Workers KV. The free plan covers 100,000 requests a day; the paid plan starts at $5 a month. Cloudflare |
| Order e-mails | Resend: 3,000 a month free (100 a day), then $20 a month for 50,000. Resend |
| Text messages, if they are switched on | $0.0083 per US message plus $1.15 a month for the number. Twilio |
There is no per-order platform fee in this system and no monthly licence. The card fee is the one you pay on any sale, and the courier fee is paid on the orders that actually need a driver.
What the marketplaces publish
For comparison, and for comparison only — these are each company's own list prices, also read on 5 September 2026.
| Channel | Published rate |
|---|---|
| DoorDash Marketplace, delivery | 15% · 25% · 30% by plan DoorDash |
| DoorDash Marketplace, pickup | 6% on every plan DoorDash |
| Uber Eats Marketplace, delivery | 20% · 25% · 30% by plan Uber Eats |
| Uber Eats, pickup | 7% with validated in-store pricing Uber Eats |
| Grubhub packages | from 15% · 20% · 25% marketing fee, each including a 10% delivery fee Grubhub |
What we are deliberately not telling you
- Not what you would save. That needs your order mix, your average ticket and the rate on your own statements. We do not have those three numbers, so there is no savings figure anywhere on this page.
- Not what a delivery will cost. DoorDash and Uber both publish an entry range and quote the real price per order. Grubhub says its packages are negotiable; Uber names cities where its own rate is lower. A list price is not your price.
- Two figures in the August offer are still unsettled. It says Square charges $1.50 to dispatch a courier, and that a customer pays "from $6.99". Our own July research says the $1.50 dispatch fee was removed in February 2025, and both fleets quote the courier price per order. Neither figure is repeated as a fact anywhere in this build — the range in the table above is DoorDash's own published one, cited to their page, and it is a range to check rather than your price.
What this demo does not do yet
Everything below except the first is a switch rather than a rebuild — a key, an account, a setting, not new code. The first one is a decision, and one of its two answers means writing the Square side.
- Which rail the tickets ring on
- The offer of 28 August describes this running on the Square you already have. What is built and running is the own-rail version: our checkout, our order store. The Square version is a slot the code leaves open for it, not a written one — so this is a decision first and a build second, and it is the one that has to come first.
- A payment account
- A Stripe account and two keys, or the Square equivalent. Until a key exists the checkout runs a simulated payment step and says so on every screen.
- A courier account
- DoorDash Drive or Uber Direct. Without one the delivery option still works but says a quote is unavailable — it never shows a guessed fee.
- The sales-tax rate
- Florida charges 6% state plus a county surtax on prepared food, including take-out. The rate that applies to 4285 N Atlantic Ave is yours to confirm with your accountant; the checkout adds nothing for tax until it is set.
- Where it lives
- order.magicsmoothies.com, or a /order path on the site you already have. A subdomain is a DNS record and about a day of propagation.
- Two staff tokens
- One opens the kitchen board, one opens the admin page. Until they are set both are open to anyone with the link, and both pages say so in red.
- Prep time
- The checkout currently allows 15 minutes before the first pickup slot. That is our setting, not yours — tell us the real number.
How the menu stays right
The ordering system does not keep its own copy of the menu. It reads the same file the website reads, at build time, and it refuses to build if a price does not parse. Change a price once and the website, the printed board's data and this checkout all move together.
Where the board is silent, the system says so rather than filling the gap. Extra fresh fruit on a bowl has no published price, so the builder caps fruit at the allowance instead of inventing one. Boba is priced only as an extra, at $3.50, and the board has never said it can be one of the included toppings — so it is charged every time and the sheet says why. Both of those are questions for the shop, not decisions for us.