Skip to content
Bilal Ahmad

Case study · Food ordering · Payments

Domino's Pakistan

Digital wallet, rule-based free delivery and a refactored client API for Domino's Pakistan.

Role
Backend lead at Simplex. I built the wallet and free-delivery features and refactored the client-facing APIs.
Stack
NestJS · Node.js · React · MySQL · GTM
Domino's Pakistan ordering website home page

01Project

What the system is

Domino's Pakistan's online ordering platform. I work on it at Simplex Technology Solutions as backend lead, focused on checkout flexibility and the quality of the APIs its clients depend on.

02Problem

What needed solving

Checkout needed more flexibility: wallet credits as a way to pay, and free delivery decided by time, channel, deals and location instead of a fixed threshold. The client-facing APIs these features depend on also needed restructuring.

03My role

What I was responsible for

  • Built the digital wallet and the rule-based free-delivery checkout features on the backend.
  • Refactored the existing client-facing APIs for structure, validation, documentation, security and performance.

04Engineering

What I built

  1. 01

    Digital wallet

    Customers can hold wallet credits and use them to pay, which makes checkout more flexible.

  2. 02

    Dynamic free delivery

    Free-delivery eligibility is decided by rules on time, channel, active deals and the customer's location instead of a fixed threshold.

  3. 03

    Client API refactor

    Restructured the client-side APIs with stricter validation, documentation, security fixes and better performance.

05Technologies

How the pieces fit

  1. Client

    • React
    • GTM
  2. Services

    • Node.js
    • NestJS
  3. Data

    • MySQL
Simplified view of the technologies involved, grouped by layer. Not a full architecture diagram.

06Complexity

Engineering challenges

  • Free-delivery eligibility combines four inputs, so the rules have to stay predictable when time, channel, deals and location overlap.
  • Wallet credits are a balance customers spend at checkout, where any mistake is visible to them.
  • Refactoring client-facing APIs means tightening structure and validation without breaking the apps that already call them.

07Outcome

What it changed

  • Customers can pay with wallet credits, making checkout more flexible.
  • Free delivery is decided by rules instead of a single threshold.
  • Client APIs with a clearer structure, stricter validation, documentation, and security and performance fixes.

Contact

Have a project, role or engineering problem in mind?

Tell me about the product, the problem or the role, and how I can help.

Based in
Lahore, Pakistan · UTC+5

All fields are required.