Contact
Home / Our Work / Restaurant Call Centre and Order Management Platform
Case study · Food service

Restaurant Call Centre and Order Management Platform

A shared call floor taking orders for more than sixty restaurant brands, routing each one to an outlet that can actually deliver, and settling the money to whichever franchise company owns that kitchen.

Food serviceCall centreLive system

Overview

One number to call, a hundred companies to pay

Div Systems built the operating platform for a national restaurant order and delivery operation, covering the inbound call, the order, the push to the outlet's own till, the rider, and the payout to whichever company actually owns that outlet.

A restaurant brand advertises a single number. Behind it sit hundreds of outlets, and behind those outlets sit dozens of separate legal companies, each with its own GST registration, FSSAI licence, bank account and invoice. So a call has to be routed to the right kitchen, and the money from that same call has to be routed to the right company. Those are two different problems, and both are answered from one order record.

The platform holds more than sixty brands, over six hundred outlets, a menu of more than a hundred thousand priced items, and a call log running past 2.8 million records. A caller reaches an agent who already knows which brand rang, which outlets are open, what each one charges, and how far each one delivers.

Modules
Module launcher showing the sixteen areas of the platform, including restaurant, outlet, delivery area, category, item, customer, order, call, agent, coupon, discount, reservation, credit, area and user
Sixteen modules, from the brand record down to the individual menu item and the individual call.

The business need

Why a shared call floor is harder than it looks

Taking a food order over the phone is simple once. Taking it for sixty brands at once is not. The agent who picks up has seconds to work out which brand the customer thinks they have called, which of that brand's outlets serves the address being read out, whether that outlet is open right now, what its menu costs today, and what it charges for delivery to that particular sub-area.

Get any of that wrong and the order goes to a kitchen that cannot deliver it. The customer waits, the outlet refuses, and the brand carries the complaint.

Money is the second half of the problem. The operator collects from the customer but does not own the food. Each outlet belongs to a franchisee, often a different company from the outlet next to it. Payment has to be split, a commission taken, tax applied, and the remainder paid out to a named bank account with a reference the franchisee can reconcile. Do that by hand across hundreds of outlets, every day, and the reconciliation becomes the business.

There is a regulatory weight to it as well. Because the operator takes the payment for restaurant service supplied through its own platform, it is not a messenger. Under section 9(5) of the CGST Act it is treated as the supplier, which changes who issues the invoice, who pays the tax and which returns get filed.

The platform had to hold all of that in one place:

  • A brand's advertised number answered by a shared pool of agents, with the greeting, menu and pricing switching to match whichever brand rang.
  • A spoken address resolved to a serviceable sub-area, then to an outlet whose delivery area covers it.
  • Opening hours, mid-day breaks and holidays held per outlet, so an agent is never offered a kitchen that is shut.
  • Menus, prices and tax lines maintained per outlet rather than per brand, because franchisees do not price alike.
  • Orders pushed into whichever till system that outlet already runs, instead of asking the kitchen to watch a second screen.
  • A rider booked and tracked without the agent leaving the order.
  • Commission, GST, tax deducted at source and tax collected at source calculated on the order itself, then paid out to the correct legal entity with a bank reference and an invoice.
  • Every call and every status change kept, so a disputed order can be reconstructed.
Dashboard
Administrator dashboard showing income and order counts, online and active agent counts, total calls split into feedback calls and other calls, and new customers for the selected period
The day in four blocks: what was sold, who is on the floor, what rang, and who is new.

The system

Built around the call, not the cart

Most ordering software starts with a basket. This one starts with a ringing phone, because that is where the operator's cost sits and where its service either works or fails.

A call arrives on a number that belongs to a brand. The platform records it before anyone speaks: where it came from, which number it reached, which agent took it, how long it lasted, which outlet it concerned, and how it ended. The agent then works forward from the caller's address rather than from a menu, because the address decides which menu they are even allowed to see.

Whether the order then arrives at the kitchen on a till, an SMS or an email depends on what that outlet already runs. The platform adapts to the outlet rather than the other way round, which is what made it possible to add outlets in the hundreds without a rollout project for each one.

Everything after the order, the rider, the payment, the commission, the tax and the payout, hangs off the same record. Nothing is re-keyed, so nothing drifts.

What it does

Capabilities

Brand-aware answering

Each brand holds its own call centre number, greeting line and help number, so a pooled agent opens the call already speaking for the right brand.

Address resolution

A master of city, main area and sub area, nearly forty thousand entries deep, turns what a caller says into a value the system can route on.

Outlet matching

Delivery areas are held per outlet, with latitude, longitude and a delivery radius, so the order lands on a kitchen that can actually reach the door.

Per-outlet menus

Categories, items, types and starting prices are maintained per outlet rather than per brand, which is how franchisee pricing stays honest.

Opening hours and breaks

Day-by-day service windows, operational breaks and holiday flags decide whether an outlet is offered at all, and are recorded against the call if it was shut.

Till integration

Orders push into the point of sale each outlet already uses, with tax lines mapped to the till's own tax identifiers so the two sides reconcile.

Rider booking

A courier is requested from the order screen, with the rate fetched before commitment, the tracking link stored, and cancellation available if the kitchen rejects.

Order lifecycle

In cart, punched, accepted, kitchen, dispatched, delivered, rejected. Each transition is stamped, which is what makes kitchen and delivery times measurable.

Coupons

Coupon pools are uploaded in bulk with validity windows and totals, and applied against the order before tax is recalculated.

Commission and tax

Commission, its GST, payment gateway charges, tax deducted at source and tax collected at source are held as fields on the order, configured per outlet.

Settlement

Payouts are raised against the outlet's own bank account and franchise company, carry a bank reference, and are matched back to the order numbers they cover.

Invoicing

Invoices are issued per outlet against the franchise company that owns it, numbered, dated and retrievable as a document.

Complaints

Tickets are pulled in from the service desk with their reference, subject and state, and replied to without leaving the platform.

Customer history

Callers become records, so a repeat caller is recognised and an order can be placed against a known address rather than a dictated one.

Scoped access

Nine roles from floor agent to franchise owner, each bound to the brands or outlets that role is entitled to see and nothing beyond them.

Inside the system

Module walkthrough

Nine screens, in the order an order passes through them. Every value that could identify a brand, an outlet, a franchisee, an agent or a customer has been masked.

01

Turning an address into a destination

A caller does not give an address the way a database wants it. They give a landmark, a colony name and a spelling nobody agrees on. The area master absorbs that: city, main area and sub area, held as separate values and loaded in bulk, so the same place written five ways resolves to one record.

That resolved sub area is what the rest of the system routes on. It selects the delivery area, the delivery area selects the outlet, and the outlet selects the menu and the delivery charge. Every downstream decision rests on getting this one right, which is why it is maintained as a master rather than typed each time.

Area master
Area master list showing city, main area and sub area columns with a bulk upload action and a record count approaching forty thousand entries
City, main area and sub area kept as one master, loaded in bulk rather than typed per call.
Call log
Call list showing the originating number, the number dialled, the agent who took the call, the reason the call was made, the outlet it concerned and the call direction
Every call is a row, tied to the number it reached, the agent who answered and the outlet it concerned.

02

The call is a record, not an event

The number a customer dials identifies the brand, so the call log carries both ends: where it came from and which brand line it reached. Against that sits the agent who took it, the outlet it concerned, and why it was made.

That last field is the one that earns its keep. A call is marked as an enquiry, a franchise enquiry, a feedback call, an unconnected attempt or a call that ended in the automated menu. Those categories are what let the operator separate calls that produce revenue from calls that only produce cost, per brand, rather than arguing about it at the end of the month.

03

What actually happened on the call

Open a call and the detail is there: when it came in, how long it lasted, which agent was connected, whether it was transferred, how it ended, and a reference to the recording.

Two flags matter more than they look. One records whether the outlet was working when the call arrived, the other whether it was a holiday. A missed order on a day the kitchen was shut is a different failure from a missed order on a day it was open, and without those flags the two are indistinguishable a week later. A blacklist flag sits alongside them for callers the floor has reason to stop serving.

Call record
Call detail form showing call date, duration, connected agent, transfer status, call reason, recording reference, outlet, the reason the call ended and flags for whether the outlet was working or on holiday
Duration, transfer state, how the call ended, and whether the kitchen was open when it rang.
Orders
Order list showing order number, date and time, customer, order total, current order state, assigned rider and a tracking link, filterable by customer, number and state
One queue across every brand, filtered by state, with the rider and tracking link on the row.

04

One queue, every brand

The order list is the floor's working view. Orders sit in it from the moment an agent starts building one, which is why unfinished orders are visible as in-cart rather than hidden. A supervisor can see what is stalling before a customer calls to ask.

Each row carries the state, the total, and once a courier is assigned, the rider and a tracking link. A caller chasing an order is answered from this screen without a call to the kitchen or the courier.

05

Open, closed, or on a break

An outlet is not a single pair of times. It has a service window per day, often two, plus operational breaks that close it mid-shift. All of that is held against the outlet and read at the moment an agent needs to know whether to offer it.

The tax lines live here too, and they are held per outlet rather than per brand. Each line carries the rate and, where the outlet runs a till that expects it, the till's own identifier for that tax. Without that mapping the order pushes but the totals disagree, and somebody has to reconcile two systems by hand.

Outlet hours
Outlet configuration showing service windows for each day of the week, an operational break table, and per-outlet tax lines with rate and a matching point of sale tax identifier
Per-day service windows, mid-shift breaks, and tax lines mapped to the outlet's own till.
Order totals
Order totals panel showing grand total before and after discount, payment reference, transfer reference, bank reference, payment gateway charges and their tax, commission and its tax, tax deducted at source, tax collected at source and refund fields, above a timestamped order status history
Commission, gateway charges, TDS and TCS on the order itself, above the stamped state history.

06

The money, on the order

This is the screen that decides whether the month closes cleanly. Grand total before and after discount, the payment reference, the gateway charge and its tax, the commission and its tax, tax deducted at source, tax collected at source, the transfer reference and the bank reference all sit on the order. Refunds, full or partial, are raised here too and written back against the same record.

Underneath runs the state history, and it is the most useful thing on the page. In cart at 1.09, punched at 1.11, accepted at 1.11, in the kitchen at 1.11, dispatched at 1.23, delivered at 1.32. Twenty-three minutes, broken into the parts somebody is accountable for. When a brand asks why an order was late, this is the answer, and it is the same record the payout was calculated from.

07

Paying the right company

An outlet is a kitchen. A franchise company is who gets paid. On this platform one brand's outlets are run by many different companies, and the screenshot shows seven of them across ten consecutive invoices for a single brand.

So settlement works in two layers. Payouts record the settlement date, the bank reference and the amount, matched to the order numbers they cover, which is what lets a franchisee tie a credit in their statement to the orders that produced it. Invoices then run per outlet against the owning company, numbered and dated, with the document retrievable. One brand, one customer-facing number, and a payment run that respects the fact that the money belongs to different businesses.

Settlement
Settlement view showing payouts by outlet with settlement date, bank reference, amount and the order numbers covered, above an invoice table listing franchise company, outlet, invoice number, date, amount and a link to the invoice document
Payouts matched to the orders they cover, and invoices raised against the company that owns the outlet.
Outlet master
Outlet master form showing location details with latitude, longitude and delivery radius, contact details, a regulatory compliance panel holding the food safety licence number, and a finance panel holding franchise company name, tax registrations and bank details, all values masked
Location, radius, food safety licence, tax registrations and bank details on one outlet record.

08

The outlet record carries the paperwork

Location, coordinates and delivery radius sit at the top, because they decide routing. Below them the record holds what the outlet is, legally: the food safety licence number, the franchise company that owns it, its tax registrations and the bank account its money goes to.

Keeping those on the outlet rather than in a folder is what makes the rest possible. A platform listing food sellers has to be able to show each seller's food safety licence, and a platform paying franchisees has to know which registration and which account belongs to which kitchen. Both come from this one record.

09

Where the time actually goes

Analytics reads the timestamps rather than asking anyone. Average kitchen time, average delivery time and average punch-to-delivery time are computed per brand and per outlet for the period selected, alongside how many outlets are online and how many have taken themselves offline.

The call split sits next to it, separating order calls from feedback calls and everything else, and orders are shown placed against delivered and rejected. Payment mode and order source are broken out too, so an operator can see how much volume arrives by phone against the brand's own site, app or an aggregator. It is the difference between knowing that service was slow and knowing which of the three legs it was slow in.

Analytics
Outlet analytics showing counts of online and offline stores, average kitchen time, average delivery time and average punch to delivery time, with call counts split by reason and orders split into placed, delivered and rejected
Kitchen time, delivery time and punch-to-delivery time, computed per brand and per outlet.

End to end

From ring to payout

Step 01AnswerThe dialled number identifies the brand. The call is logged before anyone speaks.
Step 02LocateThe address resolves to a sub area, then a delivery area, then an outlet that is open right now.
Step 03BuildThe order is taken against that outlet's own menu, prices, coupons and delivery charge rules.
Step 04PunchThe order is pushed to the till the outlet already runs, or raised by message where there is none.
Step 05AcceptThe outlet accepts or rejects. Acceptance moves the order into the kitchen and starts the clock.
Step 06DispatchA rider is booked, the rate confirmed before commitment, and a tracking link stored on the order.
Step 07SettleDelivery is recorded, commission and tax are applied, and the payout is raised against the owning company.

Scale and control

What the platform holds

1Number a customer needs,
whichever outlet cooks
600+Outlets, each with its own
menu, hours and tax lines
2.8mCall records, each tied to
an outlet and an outcome
9Roles, so a franchisee sees
their outlets and no others

Who sees what

Access runs from administrator, team manager and floor manager on the operator's side, through brand administrator and franchise administrator, down to outlet administrator and outlet order taker on the client side, with agent and customer at the edges.

The distinction that matters commercially is between brand and franchise. A brand owner wants to see every outlet carrying their name. A franchisee wants to see the four they paid for, and should see nothing else. Users are bound to brands or to named outlets, so both are served from the same data without either being shown the other's numbers.

What can be reconstructed

A disputed order is rebuilt from the record rather than from memory. The call that produced it, the agent who took it, the outlet it went to, whether that outlet was open, each state change with its time, the rider, the amount charged, the tax applied, the payout reference and any refund.

That same trail is what the operator's own reporting runs on. Item, order, order status, call, customer, reservation, delivery area and user reports are produced from it, along with agent activity covering logins, logouts and breaks.

What changed

Outcomes

Adding an outlet stopped being a project

A new outlet is a record with hours, a delivery area, a menu, a tax profile and a bank account. It joins an existing brand's number the same day rather than needing its own rollout.

The kitchen keeps its own screen

Because orders push into whichever till an outlet already runs, franchisees were not asked to change systems or watch a second terminal to trade.

Lateness became attributable

Punch to delivery is split into acceptance, kitchen and rider. An argument about whose fault a late order was is now a query rather than a conversation.

Reconciliation moved onto the order

Commission, gateway charges and tax are computed where the order lives, so the payment run reads from the same figures the invoice does.

Franchisees can check the money

A payout carries a bank reference and the order numbers it covers, which is what lets a franchisee match a credit in their statement without asking anyone.

Cost per brand became visible

Calls are categorised by why they were made, so calls that produce orders can be separated from calls that only produce cost, brand by brand.

Questions

What operators ask before they build this

If we take the order and the payment, who pays the GST on the food?

You do. Notification 17/2021-Central Tax (Rate) of 18 November 2021 brought restaurant service into section 9(5) of the CGST Act with effect from 1 January 2022, which makes the electronic commerce operator liable to pay the tax as though it were the supplier. Restaurant service outside specified premises stays at 5 per cent without input tax credit, and the liability is discharged in cash. One clarification worth holding on to: Circular 240/34/2024-GST of 31 December 2024 confirms you do not have to reverse input tax credit on your own inputs because of this, you simply cannot set that credit against the section 9(5) liability. The exception is food from restaurants inside specified premises, broadly hotels whose rooms were supplied above Rs 7,500 per unit per day in the preceding year, or which opted in. There the outlet remains the supplier.

Do we still collect TCS on those orders?

No, and this is the point most platforms get wrong. The Explanation to section 52(1) defines the net value of taxable supplies as excluding services notified under section 9(5), and Circular 167/23/2021-GST of 17 December 2021 states that operators no longer collect tax at source or file GSTR-8 for restaurant service on which they pay under section 9(5). TCS still applies to anything you facilitate that is not a section 9(5) supply, at 0.5 per cent in total since Notification 15/2024-Central Tax of 10 July 2024 reduced it from 1 per cent.

What income tax do we have to deduct from an outlet's money?

Tax at 0.1 per cent of the gross order value credited or paid to the outlet. Note that the provision has moved. The Income-tax Act 2025 came into force on 1 April 2026 and replaced section 194-O of the 1961 Act; the obligation now sits at section 393(1), Table serial number 8(v). The threshold is nil, with one exemption at section 393(4), Table serial number 11: no deduction where the outlet is an individual or Hindu undivided family, gross sales through you in the tax year do not exceed Rs 5,00,000, and PAN or Aadhaar has been furnished.

Do we need a licence to run the call centre itself?

No. The Department of Telecommunications order of 23 June 2021 revised the Other Service Provider guidelines and removed registration entirely, stating that no registration is required for OSP centres in India. Bank guarantees went with it. What did survive are record-keeping conditions: call data records, usage detail records and system logs retained for one year, held in India, produced to the authorities on request, with tamper-proof logging for remote agents and time stamps synchronised to Indian Standard Time. Separately, nothing in Indian law requires or forbids recording your own inbound calls, though a recording of a named customer is personal data and is governed as such.

What does food safety regulation require of a platform like this?

Two things. The platform needs its own food safety licence, since e-commerce is a central licence category with no capacity or turnover limit. And under the FSSAI advisory of 3 December 2024 no e-commerce food business operator may list a seller without displaying that seller's valid licence or registration, which is why the licence number is held on the outlet record rather than in a file somewhere. The same advisory covers delivery personnel hygiene training and requires on-platform claims to match the physical label. Its widely quoted requirement that products carry 30 per cent or at least 45 days of remaining shelf life at delivery is aimed at packaged products, and it is an advisory rather than a regulation.

When do the new data protection obligations actually start?

13 May 2027 for the substantive ones, which is later than most people assume. The commencement notification and the Digital Personal Data Protection Rules were both published on 13 November 2025, and they put the operative provisions, notice, consent, security safeguards, breach intimation, retention and grievance redressal, eighteen months out. Until that date the Information Technology Act and the 2011 rules on sensitive personal data still govern. One point worth knowing if you hold a large customer base: the three-year erasure clock in the Third Schedule applies only to e-commerce entities with at least two crore registered users, so it does not reach a platform of this size.

Are there consumer protection rules that apply on top of all this?

Yes. The Consumer Protection (E-Commerce) Rules 2020 cover all goods and services bought or sold over an electronic network, food ordering included. They require a nodal person of contact resident in India, display of the entity's legal name, address and customer care details, and a grievance mechanism that acknowledges a complaint within 48 hours and resolves it within one month. Worth planning for: amendment rules notified on 9 September 2026 come into force on 1 January 2027 and add labelling of sponsored listings, a rule that any advertised price reduction must be measured against the lowest price of the preceding 30 days, the seller's name on the invoice in the same font size as the platform's, and an annual dark-patterns self-audit with the certificate displayed.

Your trusted technology partner

Running orders for somebody else's kitchens?

If your operation takes orders on behalf of outlets you do not own, collects the money and then has to pay it back out correctly, we have built that. Send us the part that is costing you the most time and we will come back with what it would take to fix it, in writing, at no charge.

Start your project