If you're interested in integrating with Onfleet's API, or just want to play around, I wrote a pretty comprehensive wrapper (there are a few things missing, but it's already running in production code). Hope it's helpful! Contributions welcome. :)
I used this product while it was called Trak. I would highly recommend it to anyone looking to build a service with a delivery component. Their mobile apps work pretty well and drivers need little to no training to use them. The dashboard is very useful when you're at low volumes, and they have a nice API for automating things when the time comes.
My only complaint is a driver cannot be "active" on more than one order at once. That is, if a driver is making a delivery to two people from one origin (like a restaurant), only the first customer will receive the tracking link and live updates. The second customer will receive it after the first delivery is complete, but in a densely populated area, there is little value to knowing where your order is when it is already almost to you.
That's a pretty small complaint that they'll probably address in the future if it is worthwhile, so I wouldn't let that deter you if you're using a crappy homegrown management system and want something better.
David, here, CTO & Co-founder at Onfleet. We're quite busy on a number of improvements touching on some of your points.
We released dynamic filtering based on delay time recently which is our first foray into exception-driven dispatching for large volume customers. There's a lot more to come here!
While we think of tasks as the smallest atomic unit of work for a driver -- and so we like to imagine that at most one can be active for a given driver at once -- we're rolling out dependencies soon and will be exposing configurable notifications that support these cases.
Additionally, the concept you mention around exposing ETAs for future but inactive tasks is in the pipeline. The biggest challenges here are around privacy for the driver and other customers and we'll be sure to put a lot of consideration into balancing visibility and privacy.
Often, in the on-demand space, it's common to see companies which expose the driver's location to a customer as they make deliveries to other customers. We do want to allow this feature but it's essential for us that alternatives which better protect customer information are available.
Hey, flatjaf. We don't offer first-party delivery but we do allow you to delegate work to "executor" organizations through our connections feature. For example, Meadow uses this feature to assign tasks to their partner dispensaries. Likewise, this can be used to work seamlessly with third-party executors like couriers.
The Postmates API is certainly an option for businesses.
Often, however, it's quite expensive. Our customers save a significant amount of money by executing deliveries first-party or by delegating to a partner organization.
Additionally, we strive to give businesses complete control of their branding and of the recipient experience even while delegating tasks to another organization. For example, we offer a quite customizable recipient tracking page and SMS and voice proxying to hide customer and driver phone numbers. There are more details about these features on the features page (https://onfleet.com/features) and sprinkled through our API docs but feel free to reach out if you have any questions: http://docs.onfleet.com/
I wasn't able to tell from the website but I'm assuming it uses a phone that your delivery person has for GPS tracking, signature capture,... and feeds the info realtime to a website that operators can watch.
This is something we will eventually support, absolutely, but our first release won't include this as a configurable option. That being said, we plan on making travel restrictions a first-class setting soon after launch. Feel free to email me directly if you wanna chat some more :)
https://github.com/lionheart/python-onfleet