UpMyB

Restaurant table and order assistant

Takes bookings and orders on WhatsApp and brings regulars back. For: Restaurants, cafes, cloud kitchens.

The problem

Bookings come by phone and are written on paper, WhatsApp orders get lost between messages, and regulars are never nudged to return.

How it works

Built from: whatsapp, gmaps, razorpay, gsheets, claude.

flowchart LR
  C(["Your customer"]) <-->|"asks, pays, gets updates"| APP["Your app<br/>Customer app: menu, order, track, reorder"]
  APP --> L{{"Your logic<br/>the rules that are yours"}}
  subgraph EX["Apps that already exist: APIs and MCP servers"]
    A0["WhatsApp<br/>Bookings, orders and offers"]
    A1["Google Maps<br/>Location, distance and delivery area"]
    A2["Razorpay<br/>Advance payment and bill links"]
    A3["Google Sheets<br/>Menu, bookings and orders"]
    A4["Claude (AI)<br/>Understands 'table for 4 at 8' and order messages"]
  end
  L --> A0
  L --> A1
  L --> A2
  L --> A3
  L --> A4
  L --> DB[("What it keeps<br/>Customers and visit history, Menu and availability, Bookings and orders")]
  L --> OWN["Admin dashboard<br/>Kitchen and floor view: bookings and live orders"]
  classDef yours fill:#1691D6,stroke:#0a5f95,color:#fff
  classDef ext fill:#E6F3FB,stroke:#1691D6,color:#12112E
  class APP,L,DB,OWN yours
  class A0,A1,A2,A3,A4 ext

The logic

  1. When customer asks for a table: Check capacity for that time and confirm or offer alternatives
  2. When large group or peak time: Ask for a small advance to hold the table
  3. When order message arrives: Convert it to items, confirm the total and send a pay link
  4. When order ready: Notify the customer with the pickup or delivery time
  5. When 30 days since last visit: Send a personal "we miss you" offer
flowchart LR
  subgraph R0["Rule 1"]
    direction TB
    W0{{"When: Customer asks for a table"}} --> T0["Then: Check capacity for that time and confirm or offer alternatives"]
  end
  subgraph R1["Rule 2"]
    direction TB
    W1{{"When: Large group or peak time"}} --> T1["Then: Ask for a small advance to hold the table"]
  end
  subgraph R2["Rule 3"]
    direction TB
    W2{{"When: Order message arrives"}} --> T2["Then: Convert it to items, confirm the total and send a pay link"]
  end
  subgraph R3["Rule 4"]
    direction TB
    W3{{"When: Order ready"}} --> T3["Then: Notify the customer with the pickup or delivery time"]
  end
  subgraph R4["Rule 5"]
    direction TB
    W4{{"When: 30 days since last visit"}} --> T4["Then: Send a personal 'we miss you' offer"]
  end
  S(["Start"]) --> R0 --> R1 --> R2 --> R3 --> R4 --> E(["Done and logged"])
  classDef when fill:#E6F3FB,stroke:#1691D6,color:#12112E
  classDef then fill:#1691D6,stroke:#0a5f95,color:#fff
  classDef end1 fill:#12112E,stroke:#12112E,color:#fff
  class W0,W1,W2,W3,W4 when
  class T0,T1,T2,T3,T4 then
  class S,E end1

What can be developed

The money (illustrative example)

The customer pays ₹2999 per outlet, per month. API and hosting costs: WhatsApp conversations ₹550, AI ordering ₹450, Maps ₹100, Hosting ₹150, together ₹1250. Net profit ₹1749.

sankey-beta
Customer pays,WhatsApp conversations,550
Customer pays,AI ordering,450
Customer pays,Maps,100
Customer pays,Hosting,150
Customer pays,Net profit,1749

Watch out for

Build this for me