Как привязать акцию к местоположению покупателя?

Для конкретного города нельзя. Вопрос был про Москву. Это я и имел ввиду.

Для других городов надо дорабатывать, как писали выше

Вот слепил модуль, спасибо @albinoz. Устанавливаете как обычно, название модуля “Условие город для промо.”. city_promo.zip (5,7 КБ)
Поле установки активируйте. Перевод для переменной руками менять не надо. Все автоматом сделается. После запуска модуля в условиях промо акции появится новый пункт:

11 лайков