Full-stack restaurant ordering platform for a Pakistan-based client, featuring a cross-platform React Native mobile app, real-time order tracking via push notifications, Stripe payments, and a gamified daily streak rewards system with QR code-based in-store meal redemption.
Role
TSO — The Smash Oven — is a new restaurant in Pakistan with a clear growth objective: move beyond walk-in customers and build a meaningful online ordering channel from scratch. The client had the physical operation underway but no digital presence, no ordering infrastructure, and no customer engagement mechanism beyond word of mouth. The brief was to build the full stack: a customer-facing mobile app for iOS and Android, a web-based admin dashboard for the restaurant team, and a backend API to tie everything together.
The platform needed to support delivery and pickup ordering, secure card payments, real-time order status updates, and a loyalty mechanic that rewarded returning customers. The client wanted something that would differentiate TSO in a competitive local market: a daily streak rewards system that gave customers a reason to open the app every day, backed by a QR code-based meal claiming workflow for in-store redemption.
Cenciss handled every layer of the engagement independently: product planning, UI/UX design, mobile development, backend architecture, admin dashboard, third-party integrations, QA, deployment, and post-launch staff training. The client had no prior technical product experience. Every architectural and feature decision was made by Cenciss.
Building across three platforms simultaneously — a React Native mobile app, a React.js web admin dashboard, and a Node.js/Express.js backend API — required a disciplined architecture from the start. Data models, API contracts, and business logic had to be designed once and serve all three surfaces correctly, with no behavioral inconsistency between what the customer saw in the app, what the kitchen saw in the dashboard, and what the backend enforced at the database level.
Real-time order management was a core product requirement. Once a customer placed an order, they expected to know exactly where it stood: pending, confirmed, preparing, ready, out for delivery, or delivered. Each status transition had to trigger a push notification to the customer's device through Expo Push Notification Service, with reliable delivery across iOS and Android. Any gap in notification handling would directly erode customer trust and generate support volume the restaurant was not equipped to absorb at launch.
The gamification system was the most novel technical challenge on the platform. The daily streak rewards system required accurate check-in cooldown logic, streak expiration handling, and level progression thresholds. Translating a won reward into a scannable QR code the customer could present in-store added a second layer: the claiming endpoint had to verify authenticity, prevent replay use, and update the reward record on the first scan. The system had to feel seamless to the customer while leaving no room for exploitation or double-claiming on the backend.
Guest checkout was a deliberate business decision to reduce ordering friction. Users who did not want to create an account still needed to place orders, pay by card via Stripe, and access their order history. Managing order tracking for unauthenticated sessions without creating persistent backend records required a client-side approach using local storage, while still connecting guest payments to server-side Stripe payment intents correctly.
Stripe payment integration covered both authenticated and guest order flows, requiring payment intent creation on order placement, status tracking through confirmation, and correct handling of payment failures and retries. A failed payment that resulted in a charged customer without a confirmed order would create an operational and trust problem the restaurant could not afford at launch.
The mobile application was built in React Native with Expo for cross-platform deployment on iOS and Android from a single codebase. Redux Toolkit managed state across cart, orders, menu, authentication, reviews, and the streak system. The UI was built with React Native Paper components and a custom theme with dark mode support, delivering a consistent branded experience across devices. Expo Camera handled QR code scanning for in-store meal redemption, and Expo Notifications managed push notification registration, channel configuration, and deep linking for order status updates.
The backend was built on Node.js and Express.js with MongoDB and Mongoose, structured around a RESTful API serving all three platforms. JWT authentication secured customer and admin routes independently. Mongoose models covered Users, Admins, MenuItems, Orders, Payments, Reviews, StreakOffers, and WonMeals, with relationships designed to support the streak and reward lifecycle end to end. Stripe payment intents were created server-side at order placement, with status tracking through confirmation and failure handling for both authenticated and guest flows. Cloudinary managed all menu item image uploads with optimization on ingest.
The streak rewards system was implemented as a dedicated backend service. Daily check-in endpoints enforced cooldown windows and expiration logic, level progression was calculated from cumulative check-in history, and QR code generation for claimed meals was handled server-side with single-use redemption enforced at the claiming endpoint. The admin dashboard surfaced streak participation data alongside standard operational metrics.
The React.js admin dashboard was built with Tailwind CSS, delivering a responsive web interface for restaurant staff covering order management, menu CRUD, user management, review moderation, payment tracking, and revenue analytics. Protected routes enforced admin authentication throughout. Real-time statistics and data visualization gave the operations team the insight to manage daily service without developer involvement.
Push notifications were routed through Expo Push Notification Service, triggered automatically by order status transitions in the backend. Deep linking enabled notification taps to route customers directly to the relevant order screen, reducing friction for any customer checking a live status update.
TSO launched with a complete digital ordering infrastructure covering the full customer journey: browse the menu, add to cart, check out as a guest or registered user, pay by card, track the order in real time through push notifications, and claim loyalty rewards with a QR code in-store. The restaurant went from no online presence to a fully operational online ordering channel at launch.
The gamified daily streak rewards system gave TSO a customer retention mechanic that few restaurants at this scale deploy. Regular check-ins created a habitual engagement loop with the app, and the QR code meal claiming workflow gave the restaurant a low-cost loyalty mechanic with no manual verification overhead for staff and no opportunity for double-redemption.
Real-time push notifications for every order status transition reduced customer uncertainty and inbound support from the start. Customers knew where their order was without calling the restaurant, and the kitchen team had a single dashboard to manage incoming orders, update statuses, and track daily activity without paper-based workflows.
The admin dashboard gave the client visibility into revenue, order volume, customer behavior, and payment activity through one operational interface. The platform delivered a scalable, production-ready restaurant ordering solution — from product concept through deployment — built and shipped by one individual without a technical brief beyond the goal itself.
Tech Stack
Interested in a project like this?
Let's discuss your goals and map out the right solution.
Get in touchProject Details
Custom ecommerce platform built from scratch for a USA-based wholesale clothing brand. First online presence, global inventory booking, and a 15% increase in sales.
Full-stack hiring marketplace built for a Canadian client, featuring mandatory video resumes that let employers assess candidate personality and communication skills before the first interview.
Full redesign and rebuild for a Canadian accounting firm specializing in trucking taxation. New online forms, custom admin panel, persuasive copy, and a 30% increase in website traffic.