How to Create a Real-Time Delivery Application

There are several types of delivery application:

Developing any on-demand delivery solution comes with challenges, with external dependencies on server APIs and client operating systems. Regardless of how your delivery application works under the covers, the end user experience (& satisfaction) will depend on providing real-time updates on vehicle location, delivery time, and delivery status.

The Common Pieces of Any Delivery Application

Whether your application is delivering packages, food, or taxi services, you will have a standard set of components:

Delivery Application Generic Architecture

Determining Vehicle Location

Any delivery tracking solution must determine the vehicle location, and the rate at which you can update the location will affect the end-user experience. How you determine location depends on your delivery use case:

In general, powered devices that have your delivery application running in the foreground will be able to retrieve location updates the fastest.

Determining Vehicle Estimated Time of Arrival

The vehicle's estimated time of arrival (ETA) is non-trivial to calculate and will depend on prevailing traffic conditions, time of day, weather, etc. Many routing providers provide API mapping that calculates the ETA between your vehicle’s current location and its destination; this could be invoked intermittently during location updates in real-time to provide the end user with a clearer picture of when the vehicle will arrive.

PubNub can add Real-Time Communication to your Delivery app

Tutorial - Delivery Application - Architecture

A significant part of your solution will rely on real-time data exchanged between clients and vehicles; this is where PubNub can help. Creating a communication solution that can scale to any number of vehicles and clients, all exchanging data is non-trivial. PubNub has a proven track record with many delivery business models.

PubNub’s APIs and infrastructure allow you to provide real-time updates on vehicle location, driver performance, and customer satisfaction, enhancing the user experience and enabling a more efficient operation.

Once you have collected your real-time vehicle data and published it to PubNub, PubNub will deliver that data to all interested parties. Take the vehicle location example; publishing the vehicle lat/long to PubNub can show the vehicle’s location on both the package recipient’s smartphone and the administrator’s dashboard back at HQ. You could also use PubNub functions to process messages in-flight, for example, to calculate vehicle ETA.

The driver can also communicate with the user through PubNub, i.e., “Please leave my package with a neighbor” or “Order tracking update: I just updated your food order status.”

Delivery solutions that provide proof of delivery are complex, and one thing they all have in common is real-time connectivity. The feedback we consistently receive from our delivery business customers is that PubNub improves their end-user experience by enabling them to provide more real-time updates.

PubNub Tutorial and Demo

Check out the PubNub delivery tutorial and demo that illustrates the minimum viable product (MVP) of a generic tracking system for a fictitious delivery company that provides courier delivery. The tutorial is aimed at startups or small businesses that provide eCommerce solutions such as on-demand delivery apps or manage delivery operations.

Build a Real-Time Delivery solution using PubNub