Changelog

What we shipped, when.

Real dates, not roadmap promises. We ship every day during V1 — this page is the receipt.

  • Every CSV export now shows times in Dubai time (for example 2026-10-26 00:30:00) instead of UTC. The time columns are renamed to say so, such as created_at_dubai, and a timezone column is added. Update any saved Excel template that uses the old column names
  • New exports under Settings → Data export: stock movements (item, type, quantity before / change / after, cost, reference, who) and audit history (owners and head-office managers). Orders and stock movements can be narrowed to one outlet
  • New report: Reports → Sales by till. For each till and outlet it shows the sales, voids, discounts, the cash / card / other split, takings, refunds, VAT and net, plus the first and last sale. Pick a date range or a single outlet, switch on Day for a table per day, and download it for Excel. Each day adds up to that day’s Z-Report. Owners, managers and bookkeepers can open it; a branch manager sees only their own branch
  • Kitchen tickets can now print a second language under each item name — off by default; turn it on in Settings → Branding and enter each item's translated name to use it. Customer receipts are unaffected
  • Kitchen tickets now print the note typed on an item (for example "no onions"). When you resume a held order and add items, you can type a kitchen note on the new items too
  • Remote approvals: whoever raised a request can no longer approve it — another manager or the owner must. If a cashier switched in on a manager's till raised it, that manager can still approve
  • Delivery-app promos: on Talabat/Deliveroo/Noon/Keeta/Careem orders you can now record a platform-funded promo without a PIN. It does not change what the customer pays, the bill total or VAT — it only shows on the Z-report per channel
  • Manager discount limits now apply: if your outlet has a discount limit for managers, discounts above it need a second manager's or the owner's PIN. Owners set the limit under Team → Roles → Manual discounts
  • Only a manager or the owner can now put a sale on a customer's credit account ("Credit / On Account"). Cashiers see the Credit tile greyed out with "Managers only". This follows whoever is using the till: if a cashier has switched in on a manager's login, Credit stays unavailable until a manager switches back in. Taking a payment against a customer's account, credit limits and account approval are unchanged
  • Paying an order from Recent orders (for example an order sent to the kitchen first) now offers Credit / On Account to managers. It uses the customer already linked to the order, with the same credit-limit checks as the main till; if no customer is linked yet, link one to the order first
hotfix
  • When an item is switched off at a branch, the "failed to record" review now says the item is switched off and points the manager to that item in Branch pricing, instead of "the item or one of its sizes". A size switched off on its own is still named as that size
hotfix
  • When the till cannot record a sale because an item or one of its sizes is switched off (at this branch, on this sales channel or on this brand), or a size is no longer available, the "failed to record" review now names the item and says what a manager should check, instead of a generic "an item may be sold out" note
  • The review now says to fix that first and then retry the sale, because re-ringing it before the fix would be refused the same way
hotfix
  • Tills on smaller or scaled screens now keep the side-by-side menu and cart instead of dropping the cart underneath the menu with a "View cart" bar. Supported down to a 580px effective width — a 1024x768 panel now works at up to 175% display scaling, where before it needed 146% or less
  • Menu tiles are smaller and denser on those narrower tills, so more of the menu fits on one screen: a typical scaled 1024x768 till goes from 4 visible items to 6, or 9 in fullscreen. Tills at 900px and wider are unchanged
  • The till header, search bar and category strip are more compact on narrower screens, which frees up roughly another row of menu tiles
  • The Recent orders / assistant panel now spans the full width under the menu and cart on medium screens, instead of squeezing into the menu column
  • The hardware check page now shows your till's effective screen size and tells you which layout it is in — quote it if the till ever looks wrong
V1.5
  • Kitchen tickets can now print automatically the moment an order is sent or paid, with a loud on-screen alert and one-tap retry if a printer is offline (opt in per outlet in Settings — off by default)
  • A second till open for a whole shift now picks up a price, availability or menu change from another till within about a minute, instead of only on reload
  • The till now recovers on its own from a rare, brief connection blip instead of showing a "something went wrong" screen — your cart is kept
  • The "offline" indicator is easier to spot, and you now get a clear "back online — synced" confirmation once queued sales catch up
  • Cancelled delivery-platform orders now leave a clear marker on the kitchen screen instead of silently disappearing, and stuck delivery-platform orders show up on the Exceptions report for the owner to review
  • Delivery-platform (Talabat, etc.) prices now warn you when the item's base price has changed since you last set them, with the exact difference shown and a one-tap fix
  • Fixed a bug where the dashboard could show more "today's revenue" than was actually collected on a partially-paid order — it now always matches the Z-report exactly
  • Every report (Z-report, daily summary, daily P&L, item sales, menu engineering) now has a free line-by-line CSV export button
  • Refunds and voids now show a clear on-screen confirmation of what happened, plus a full history (who approved it, when, why) on the order
  • Two new exports added: recipes, and orders broken down by individual item sold
  • Price, availability and category changes on menu items are now recorded in the audit trail
  • Delivery Apps page reorganised: the working "manual channel orders" setup now leads the page, with the not-yet-live automatic-connection section tucked into a "coming soon" section
  • Managers can now see which delivery apps are on and their commission % on the Delivery Apps page (owners still make the changes) — it no longer just disappears for them
  • New: "Today's channel totals" from the till header (⋯ menu) — see today's Talabat/Deliveroo/etc order counts without a trip to the Z-report (totals in AED are for owners/managers; everyone sees the counts)
  • Delivery Apps and Channel pricing pages now link to each other, plus a new setup step for turning on delivery apps
  • New: a Featured-items curation tool (Menu → ★ Featured) — mark/unmark items for the till's Top Sellers page and drag them into the order you want, with an optional "top movers" suggestion
  • The till's payment screen and modifier picker are now available in Arabic (switch language from the nav) — more of the till follows in a later update
  • New: "Till not working?" from the till header (⋯ menu) — a one-tap self-check of your connection, printer/helper status, and a link to full system status
  • Arabic receipts now print with real joined (cursive) letter shapes in far more cases than before, instead of every letter standing alone
V1.5
  • Till redesign: photo tiles for menu items, one-tap add for your best sellers, and a denser layout that fits more of the menu on screen at once
  • New Top Sellers view on the till so cashiers can jump straight to what's moving
  • Menu editor: safer category deletion (warns before removing items out from under you), plus drag-to-reorder and rename for categories
  • Modifier buttons on the till are bigger and easier to tap accurately during a rush
  • Owners can now set the photo shown on the till and the customer QR menu straight from the item editor — no separate upload step
V1.5
  • Aggregator orders (Talabat, Deliveroo, Noon, Careem, Keeta) now flow straight into the till and kitchen automatically instead of manual re-entry
  • Multi-brand menus — run more than one brand (for example a delivery-only virtual brand) from the same kitchen and till
  • Automatic aggregator price markup (30% by default, adjustable per platform) so delivery-platform commissions don't quietly eat into your margin
  • Fast Cash — an exact cash payment now closes the sale in two taps
  • AED note buttons and a bigger change-due display on the payment screen
  • Manual discounts at the till now require a manager PIN
  • Multiple printers now back each other up automatically if one goes offline, a No-Sale button to open the drawer without a sale, and a new Bookkeeper staff role
V1.5
  • Visual refresh across the owner dashboard — warmer look, consistent layout and navigation on every page
  • Faster page loads and faster menu loading throughout
  • Bring-your-own AI — connect your own Claude, OpenAI or Gemini key — plus a proper recipe costing engine (batch prep, yield %, margins, allergens)
  • Dozens of small till and sign-in fixes: camera barcode scanner, refund handling, waitlist screen, login reliability
V1.5
  • Fixes from an independent QA pass: sales charts, supplier archive view, kitchen display screen, and team permission screens
V1.5
  • Owner navigation reorganised — 45 scattered tabs grouped into 7 clear sections, plus a guided tour on first login
  • Retail add-ons: multibuy promotions ("3 for 20"), open-price/misc items, an on-screen quantity keypad, park & recall for busy queues, mixed VAT per item, and a scan-first till layout for grocery and retail outlets
  • Barcode and shelf-label printing
  • A live reliability scoreboard on the till so you can see uptime at a glance
  • Cash-up totals, loyalty points and store-credit balances hardened against edge cases that could over- or under-count
  • Closed a leftover testing shortcut that could have let someone skip sign-in in production
V1.5
  • Dine-in table service: floor plan, table picker, move a tab between tables, kitchen ticket printing
  • Customer database with order history, tags, tiers and favourites
  • Loyalty points, tiers, store credit and gift cards
  • Promotions engine (happy hour, % off, fixed AED off, buy-one-get-one) with a live cart preview
  • Inventory analytics: dead stock, slow movers, margin warnings, and a stock burn-rate forecast
  • Arabic language support across all three apps
  • UAE FTA e-invoicing, ahead of the July 2026 mandate
  • Aggregator and payment-terminal integrations, accounting sync (Xero / Zoho Books / QuickBooks), and marketing campaigns (email / SMS / WhatsApp)
  • Fixed a data-loss bug where the offline queue could silently drop a sale the server had rejected
  • Every sale, payment and stock update now happens as one all-or-nothing step, so a mid-sale glitch can no longer leave stock or takings out of sync
V1.5
  • Barcode scanner at the till — point a camera or handheld scanner at a barcode to add it to the cart
  • AI cost tracking — see what your AI features are costing and set a spending cap
V1
  • /trust page — concrete security & reliability practices, not vague promises
  • Production security headers across both apps (HSTS + X-Frame-Options + X-Content-Type-Options + Referrer-Policy + Permissions-Policy)
  • Onboarding header: replaced no-op Skip link with real Clerk sign-out + Need-help mailto
  • FAQPage + BreadcrumbList structured data on /pricing for Google rich snippets
  • Organization JSON-LD on customer landing for parity with owner
  • Apple touch icons on both apps (dynamic 180×180 PNG) for proper iOS home-screen install
  • CI workflow staged for typecheck + smoke tests on every push
  • Smoke test expanded from 30 to 50 probes (covers all SEO + security surfaces)
  • Custom 404 middleware fix — anonymous visitors now reach our branded 404 once Clerk goes prod
V1
  • Landing feature grid expanded to 9 cards — surfaces split bill, offline queue, loyalty stamps that were silent before
  • Trust signals row on landing: ROAST · Cha Cha Chai · Zad + 5 hard proof points
  • Customer landing "Why Bina is different" expanded from 3 to 6 cards (loyalty, tips, café-branded)
  • OG / Twitter share-card metadata so WhatsApp / LinkedIn shares render proper preview cards
  • Dynamic OG image (1200×630) via edge runtime — hero image now in social previews
  • SEO baseline: robots.txt + sitemap.xml + favicon (were 307-redirecting; search engines couldn't crawl us)
  • PWA manifests on both apps — installable to home screen on iOS / Android
  • JSON-LD structured data on owner landing (SoftwareApplication + Organization + WebSite)
  • Branded 404 pages on both apps instead of bare Next.js default
  • `pnpm deploy:{owner,customer,both}` helper script (until Vercel auto-deploy is reconnected)
  • README rewrite — was on "Pre-build — spec phase" despite full V1 shipping
V1
  • BrandingSection UI for per-tenant loyalty configuration (threshold + reward label)
  • Loyalty stamp card live on customer order-tracking page
  • Bulk menu operations (activate / feature / price-set / price-adjust / delete) with checkbox UI
  • Offline-first POS — IndexedDB queue + idempotency replay when internet drops
  • Right-sized SLO budgets to realistic customer-wait reality (p95 5s on order create)
  • In-process LRU cache + inflight-promise dedup → menu p95 from 7574ms to 284ms (27× speedup)
  • Cache tenant+outlet resolution on the public-order write path
  • Split bill — multi-method payments on the same order
  • Full-page screenshots + competitive matrix doc (17 vendors)
  • POS pain-points doc — 20 global complaints + Bina's defense for each
  • PostHogProvider Suspense fix on both apps — full SSR, no CSR bailout
  • Customer landing real content + clear how-it-works + 5-language ordering

Coming next

V1.5 — in flight

No fixed dates because we don't ship on a calendar — we ship when it's ready. But this is what's in active development.

  • Hardware
    ESC/POS receipt printing via WebUSB
  • Operations
    Tip pooling distribution rules
  • Channels
    Talabat / Deliveroo / Noon aggregator inbox
  • Marketing
    Built-in email + SMS campaigns
  • AI
    Voice input on POS (Whisper)
  • Billing
    Subscription billing UI (after Stripe Connect KYC)
  • Compliance
    ZATCA e-invoicing extension for Saudi rollout
  • Mobile
    Native iOS + Android wrappers (already PWA-installable today)

Need one of these sooner for your café? hello@bina.work — a real human responds.