Я ставил модуль доставки DPD. Geo ip автоматически определял город покупателя, по api данные о товаре и городе отправлялись на сервак DPD и модуль выводил срок и стоимость доставки на карточку товара. Никаких готовых решений нет, надо пилить под конкретный случай.