Автоматизация тарификации СДЭК для оптовых заказов с весовыми градациями
B2B
Продавцы с оптовыми заказами на Авито часто сталкиваются с разными весами отправлений. Автоматизация тарификации через API СДЭК позволяет мгновенно рассчитать стоимость для каждой весовой категории без ошибок. В статье — пошаговая настройка и пример PHP-кода.
POST /v2/calculator/tariff — расчёт по тарифу и весу
Кэширование токенов
Токен OAuth действует 1 час. Кэшируйте, чтобы избежать 429 Too Many Requests
Весовые градации
От 0-1 кг, 1-5 кг, 5-10 кг, 10-20 кг, от 20 кг — настройка в личном кабинете
Сравнение
Критерий
По теме страницы
Ручной расчёт доставки для каждого заказа
Способ расчёта
Автоматизация через API
Ручной расчёт
Скорость
Мгновенно
От 5 минут на заказ
Ошибки
Минимум (автоматические формулы)
Риск арифметических ошибок
Подходит для
500+ товаров с разными весами
До 50 заказов в день
Как это работает
1
Получите API-ключи
В личном кабинете lk.cdek.ru → Интеграция → Создать ключи client_id и client_secret
2
Настройте весовые градации
В разделе «Тарифы и зоны» создайте правила для каждого диапазона веса
3
Реализуйте расчёт
Используйте API calc, передавая вес и код тарифа. Добавьте кэширование токена (Redis или файл)
4
Протестируйте в sandbox
Отправьте тестовые запросы на api.edu.cdek.ru, проверьте ответы для разных весов
Подробно
Настройка весовых градаций в личном кабинете СДЭК
В личном кабинете lk.cdek.ru в разделе «Тарифы и зоны» создайте правила, привязывающие тариф к весу отправления. Например: для коробки до 5 кг — тариф «Экономичная посылка», от 5 до 20 кг — «Интернет-магазин», свыше 20 кг — «Земля». Ограничений по весу при B2B-договоре нет — в отличие от стандартной Авито Доставки (25 кг). Сохраните шаблон и присвойте ему ID для использования в API.
Реализация расчёта через API с примером на PHP
При вызове API POST /v2/calculator/tariff передайте параметр «tariff_code» и вес в килограммах. Пример на PHP с использованием cURL:
$weight = 12.5;
$response = $client->post('/v2/calculator/tariff', [
'json' => [
'tariff_code' => 137, // код тарифа для веса 5-20 кг
'from_location' => ['code' => 44], // Москва
'to_location' => ['code' => 137], // Екатеринбург
'packages' => [['weight' => $weight, 'length' => 40, 'width' => 30, 'height' => 20]]
]
]);
Важно: кэшируйте токен авторизации и ответы расчёта, чтобы не превысить лимит запросов.
Словарь терминов
API—Интерфейс для программного обмена данными между сервером СДЭК и вашим приложением
OAuth 2.0—Протокол авторизации, используемый для получения токена доступа к API
Sandbox—Тестовая среда API для отладки без реальных заказов
Отзывы
Алексей П.
Продавец на Авито, 300+ товаров
★★★★★
Настроил автоматизацию по вашему гайду. Теперь при изменении веса в объявлении цена доставки пересчитывается за секунду. Раньше тратил по часу в день на расчёты.
Елена М.
Владелец интернет-магазина
★★★★★
Использовала пример PHP-кода — заработало с первого раза. Важно было добавить кэширование, так как сначала получала 429. Теперь всё стабильно.
Частые вопросы
Какие тарифы поддерживают весовые градации?
Тарифы «Экономичная посылка», «Интернет-магазин», «Земля» — они учитывают вес. Для негабарита есть отдельные тарифы.
Что делать при ошибке 429?
Проверьте кэширование токена — он действует 1 час. Также кэшируйте результаты расчёта на 5-10 минут для одинаковых параметров.
Можно ли использовать весовые градации при обычном договоре?
Да, но без B2B-скидки цены будут выше. Рекомендуем корпоративный договор со скидкой до 40%.
Р
Cdek-Logistika
Редакция портала · проверка фактов
Материал подготовлен в формате справочного разбора для информационного портала.
Настройте автоматический расчёт доставки для ваших товаров на Авито уже сегодня