Overview
Product
Duhqa is a B2B on-demand logistics platform that connects small retailers with manufacturers and suppliers operating in Nairobi, Kenya. It consists of a customer ordering mobile app, rider mobile app, and warehouse admin web app. The platform is designed to coordinate ordering, fulfillment, and last-mile delivery.
Role
Solo UX/UI designer working with the development team.
Duration
The project took 11 months.
Challenge
Problem
Nairobi is the biggest economic center in East Africa, growing rapidly but facing issues with road infrastructure. At the time of the project, many parts of the city had roads in poor condition or no roads at all. Local grocery shopping was usually done in small local shops that had major challenges in getting supplies. Duhqa wanted to solve this by having its own warehouse in the city and providing a delivery service through an on-demand delivery platform similar to Wolt, but for B2B customers focusing on small retailers. They used an off-the-shelf Warehouse Management System (WMS) that did not fully work for their needs, and they did not yet have a solution for a customer ordering app.

Constrains
With underdeveloped road infrastructure came challenges such as not having a detailed map of the city, unnamed streets, and missing address data. Main issue we had as Europeans is lack of local context. Another constrain was that this was a small startup with limited budget so we decided early on to use an off-the-shelf design system in order to cut development and design time.
How to make a delivery app for a city with inadequate maps?
How to design for a market without knowing local context?
How to deal with a large scope with limited budget?
Approach
Research
To understand the local context, my project manager and I spent seven days conducting field research in Nairobi. We shadowed warehouse administrators and workers, joined delivery drivers on their routes, interviewed customers, and conducted a competitive analysis. Our biggest question was how drivers were successfully making deliveries despite incomplete maps and missing addresses. Observing the process firsthand revealed the workarounds they relied on and helped us understand the real constraints. With a limited budget, the research also allowed us to prioritize the problems with the greatest impact.

Key insights
Field research showed that many assumptions we had did not hold in real conditions. There were many specific local contexts and needs to be covered:
Shop owners used delivery moments for upselling, sometimes buying items directly from the delivery vehicle that were not originally ordered.
Upsell requests often came from non-users, making it difficult for drivers to keep track of the sails. This made impossible to track most of the upsales in the warehouse dashboard.
Customers typically ordered the same products on a regular basis.
Failed delivery rate was high, around 30%. We noticed that drivers who frequently called and texted customers to confirm delivery locations and time had significantly lower failed deliveries. Although company tried to incentivize all drivers to do this, it was impossible to keep track of driver-customer communication.
Drivers solved unknown addresses and rode conditions by communicating with customers prior to the delivery attempt. Customers usually described their locations by giving turn directions from known toponyms.

Design Decision
Since 95% of the population in Kenya uses Android phones, we decided to build native Android apps for riders and customers, while the admin dashboard was developed as a web application.
We also designed the product around the local context we uncovered during field research. Where possible, we aligned familiar interactions with services like Uber, Wolt, and DoorDash, while adapting or creating new solutions to address challenges unique to the Kenyan market. In order to speed up the design and development process it was decided to use Material Design System.
Solution
Customer app
The customer app included the core functionality expected from any ordering platform: users could search for products, browse categories, add items to the shopping cart, and place orders. Based on our research, we introduced two features tailored to local needs.
Descriptive delivery locations:
Besides entering an address and GPS location, users could add a written description of how to find their destination. This simple addition reduced the need to repeatedly explain directions to driver on calls.
Quick reordering:
We found that customers regularly reordered the same products, often with small changes. To support this, we allowed them to copy item lists from any previous order directly into the shopping cart, where they could adjust quantities or add and remove products. They could also mark past orders as favorites, making frequently purchased lists easier to access and reducing repetitive work.
Rider app
Upselling & instant orders:
We introduced a system where drivers carried additional high-demand products for upselling and could add them directly to an existing customer order during delivery. If a non-user wanted to purchase items from the upsell selection, drivers could quickly create a customer profile and place a new order on the spot. This increased revenue opportunities and expanded the user base while everything was tracked by the admin dashboard.
Delivery communication & rescheduling:
Another key focus was standardizing rider–customer communication. Since clear communication was essential for successful deliveries, riders were required to contact the customer at least once via SMS or call before marking an order as failed. The app tracked whether contact had been made and supported structured follow-up actions, including rescheduling deliveries for the next day based on agreement with the customer. To reduce cognitive load, these “post-call” and rescheduling workflows were designed as guided steps within the app, ensuring riders could complete them consistently and efficiently.
Admin Dashboard
The admin dashboard is the most complex part of the platform, serving as the operational hub for the entire business. It includes management of customers, riders, manufacturers, retail shops, inventory, sales, and user roles.
Administrators have a live operational overview with real-time order tracking, customer complaints, revenue, delivery success rates, and other key business metrics. The dashboard also provides tools to coordinate day-to-day operations and quickly respond to issues across the delivery network.
In addition, a dedicated analytics section allows administrators to explore historical data and identify trends. These insights support better operational decisions, such as optimizing inventory, improving delivery performance, and understanding customer purchasing behavior.
Marketing Website
I designed and developed a marketing website primarily targeting retail customers to support marketing campaigns and attract new users. The website was built in Webflow, allowing the administration team to easily manage and update its content without developer involvement.

Impact
Results
Designed a complete B2B logistics platform, including customer, rider, and admin applications.
Adapted common delivery app patterns to the unique operational challenges of Nairobi.
Reduced repetitive customer actions through quick reordering and favorite order lists.
Enabled riders to generate additional revenue through tracked upselling and on-the-spot customer registration.
Standardized rider–customer communication and delivery rescheduling workflows.
Provided administrators real-time operational visibility and historical analytics to support data-driven decision making.
Lessons learned
Field research was critical in uncovering constraints that would not be visible in desk research or assumptions.
Flexibility in the system (drivers, orders, delivery instructions) was more valuable than strict structure.
In emerging markets, logistics UX is heavily shaped by human coordination rather than purely digital workflows.









