Описать проблему ↗

Интеграции

СДЭК не рассчитывает доставку на сайте

На сайте не рассчитывается доставка СДЭК. Проверим адрес и параметры отправления, прежде чем считать причиной отказ службы доставки.

Редакция «починимсайт» · Обновлено · 3 мин. чтения

Что происходит и с чего начать

Расчёт зависит не только от города получателя. Нужны подходящие данные отправителя, тариф и параметры посылки: состав, вес, размеры — в зависимости от интеграции. Если модуль передал неполные значения, сервис может не вернуть стоимость. Важно отличить такой отказ от отсутствия связи или недоступности тарифа для конкретного направления. Выберите одну корзину и полный тестовый адрес. Постоянная смена товара, города и способа доставки одновременно мешает понять, какое условие вызывает ошибку.

Что можно проверить самостоятельно

  1. Попробуйте корзину с одним товаром и полностью заполненным адресом. Выберите город и пункт выдачи предусмотренным способом, а не только впишите похожее название вручную.
  2. Сравните вес и размеры проблемного товара с рабочим примером. Уточните единицы измерения в настройках магазина и модуля, не меняя их сразу для всего каталога.
  3. Зафиксируйте время расчёта, направление, способ доставки и видимое сообщение. Сообщите, возникает ли ошибка только для конкретного тарифа или при любой попытке расчёта.

Как понять результаты проверки

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

Что проверяет разработчик

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

  1. Проверьте окружение и актуальность учётных данных интеграции. Успешный расчёт в кабинете не подтверждает работоспособность API-доступа сайта.
  2. Сверьте города отправления и получения, вес, размеры и тариф. Пустые или неверно преобразованные единицы измерения могут менять результат.
  3. Сравните ответ для одного обычного товара и проблемного заказа. Различайте недоступность тарифа для маршрута и сетевой отказ.

На что обратить внимание

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

Как исправляют причину

Исправьте преобразование адреса и параметров груза по ответу API. Установите разумное время ожидания и понятное сообщение при отказе. Не заменяйте ошибку нулевой стоимостью доставки без согласованного правила магазина.

Как убедиться, что проблема решена

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

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