Asking for the customer's address before the customer actually try to make an order should be the ideal process since some shops/restaurants have a limited delivery radius. This wouldn't waste customers' time since they would know beforehand that their address is not inside the delivery area.
Also, for this to work, the map integrated should be Google Maps since it's the most precise one. In Perú, the maps integrated with TakeApp is almost useless and very inaccurate.