Задача и границы решения

Стоимость доставки зависит не только от города. Вес, размеры, состав заказа и выбранный пункт выдачи могут менять доступные варианты.

Как подойти к задаче

Возьмите один воспроизводимый заказ и проверьте исходные характеристики товаров. Сопоставьте запрос к перевозчику с ожидаемой упаковкой. Уточните, как сайт показывает таймаут, недоступный регион и отсутствие подходящего тарифа.

Что проверить на практике

Проверьте смену адреса после выбора тарифа, тяжёлый товар и смешанную корзину. Если расчёт не получен, интерфейс должен честно сообщать об этом, а не незаметно превращать доставку в бесплатную.

Какой ошибки избежать

Не записывайте временную ошибку сервиса как постоянный тариф. Отдельно храните результат расчёта и статус его актуальности. Критерий приёмки — согласованная сумма в корзине, заказе и данных отгрузки.

Пример для проверки на вашем проекте

В корзину добавлен товар без веса, и перевозчик получает нулевую массу отправления. Сам запрос выполняется успешно, но тариф не соответствует посылке. В этом случае настройка таймаутов не поможет. Сначала проверяют обязательные характеристики и правила упаковки. Для товара с отсутствующими параметрами нужен согласованный сценарий: ручной расчёт или запрет автоматического обещания стоимости.

Путь покупателя целиком

Работу начинаем с конкретного сценария: найти товар, выбрать вариант, положить в корзину и оформить заказ. Проверяем не только отдельный экран, но и передачу цены, количества, доставки и контактных данных между этапами. Согласуем гостевую покупку, авторизацию и особенности юридических лиц, если они входят в задачу.

Приёмка на понятных примерах

Готовим контрольную корзину и проверяем итоговую сумму, статус и состав заказа. Платёжные проверки выполняются в тестовом режиме доступного провайдера. Мобильная версия проходит тот же путь. Исключения вроде отсутствующего товара или недоступного тарифа должны приводить к ясному сообщению и возможности продолжить покупку.

Документация и полезные ссылки