Food with friends. Easy. Simple.

In 2014, TinyOwl — then one of India's biggest food ordering apps — and I banded together to tackle one of the tougher issues they had been facing for some months, being how to handle group orders.

It turned out that a relatively large part of TinyOwl's customer base was actually using the app to order food not just for themselves, or maybe their partner, but was making orders for whole groups of friends at once.

The process to order for a larger group was an arduous one, though. It required one person to open the app on their phone, find a restaurant that everyone liked, pass the phone around the room and then pay for the entire sum at once.

Constructing a flow

In order to properly tackle this problem, I sat down with TinyOwl's Head of Product and respective engineering teams in order to construct a flow that would simplify the entire process, taking away much of the headaches incurred during the existing flow.

During this process, we were able to identify which screens we needed to design for, which existing parts of the app we could leverage both in terms of design as well as engineering effort, and envision what the process would look like for the end user.

Framing the picture

After an intense, collaborative effort to construct a workflow that was both fast and required a minimal number of steps, we were able to move on quickly to the wireframing phase of the design project. The key screens were visualized as simple, grayscale wireframes to give the engineers and other relevant stakeholders an idea of what the final layout and supporting backend would need to look like.

As it turns out, there were quite a few parts of the app that could be repurposed to incorporate this new functionality.

The new flow for group orders allowed the user to either select a previously used group as a base to start from, or create a new group. Members could then be added to the group either by sending them a text message with an embedded deeplink, or sending around a 6-digit sharing code, which would bundle the orders automatically on the backend.

Users were not only able to place orders at the same restaurant and have them bundled, but also order from any other restaurant within a specific radius, and the driver would then pick up the orders from all the restaurants involved, and drop off all the orders at once. This way, nobody would have to wait for their food to arrive while others already start eating.

And lastly, to remove the pains of arguing with friends over any outstanding payments, we incorporated the option to let each participant pay their own part. The options were to either let the organizer pay the entire sum on his own, or to bill each participant separately.