CDEK Business Guide инструкции по доставке, Авито и СДЭК
Рекомендуем Cdek-Logistika Дополнительные материалы по СДЭК, доставке и логистике
Открыть →
Авито для RFBS2026
avito-cdek

Использование API СДЭК для автоматического создания накладных

ТЕХНО

Если вы продавец с 100+ товарами на Авито, ручное создание накладных для каждого заказа — непозволительная роскошь. Через API СДЭК можно автоматически генерировать накладные в момент оформления заказа на Авито. В этом материале — готовый алгоритм: от получения ключей до боевого запуска.

Получение доступа к API
Заключите договор со СДЭК, войдите в ЛК и создайте ключи client_id/client_secret в разделе Интеграция.
Настройка OAuth 2.0 и кэширование
Получите токен по grant_type=client_credentials. Кэшируйте его на 3600 секунд, чтобы избежать ошибки 429.
Создание заказа через POST /v2/orders
Отправьте JSON c данными получателя, товарами и тарифом. В ответ получите номер накладной (uuid).

Сравнение

КритерийПо теме страницыСоздание накладных вручную через ЛК
Скорость создания накладнойАвтоматически (менее 1 сек)2-5 минут
Человеческие ошибкиОтсутствуютВозможны (опечатки, неверный тариф)
Интеграция с АвитоПолная (заказ → накладная)Нет (нужно вводить вручную)
Затраты времени на 100 заказов5 минут3-4 часа

Как это работает

1
Получите ключи API

В ЛК СДЭК перейдите в «Интеграция», создайте приложение, скопируйте client_id и client_secret.

2
Получите access_token

Отправьте POST на /v2/oauth/token?grant_type=client_credentials&client_id=...&client_secret=... Сохраните токен сроком на 1 час.

3
Создайте скрипт для вызова API

Напишите на Python: используйте requests.post('https://api.edu.cdek.ru/v2/orders', json=data, headers={'Authorization': 'Bearer '+token}).

4
Запустите тест на sandbox

Проверьте создание накладной на тестовом сервере. Если вернулся uuid — всё работает. Повторите для 10 заказов.

Подробно

Структура запроса для создания накладной

Пример тела запроса: {"number": "AVITO123", "tariff_code": 136, "recipient": {"name": "Иван", "phones": [{"number": "+79001234567"}], "address": {"city": "Москва", "street": "Тверская", "house": "1"}}, "packages": [{"weight": 1000, "length": 20, "width": 15, "height": 10}]}. Обязательные поля: номер заказа (можно свой), тариф, адрес, вес в граммах.

Обработка ошибок и тестирование

На этапе тестирования используйте sandbox api.edu.cdek.ru. Типичные ошибки: неверный формат телефона, номера заказа уже существует (используйте уникальные), превышение лимита веса для тарифа. После исправления ошибок повторите запрос. В production установите лимит запросов — не более 10 в секунду на один токен.

Словарь терминов

OAuth 2.0 client_credentialsПротокол авторизации для серверных приложений. Позволяет получить токен по паре ключей.
SandboxТестовая среда API СДЭК (api.edu.cdek.ru) для отладки без списания реальных средств.
UUID накладнойУникальный идентификатор созданной накладной в формате xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx.

Отзывы

Павел
Разработчик на PHP
★★★★★

Интегрировал API СДЭК с Авито: при каждом новом заказе автоматом создаётся накладная. Кэш токена сохраняю в файл, обновляю раз в 50 минут. Ни одной ошибки 429.

Игорь
Владелец интернет-магазина на Авито
★★★★★

Раньше уходило часа два на создание накладных. Теперь скрипт делает это за секунду. Экономия времени — колоссальная.

Частые вопросы

Можно ли использовать API СДЭК без договора?

Нет, для доступа к API требуется заключить договор со СДЭК. Только после этого выдаются ключи.

Как часто нужно обновлять токен?

Токен действует 3600 секунд (1 час). Его нужно перевыпускать по истечении или кэшировать и обновлять по таймеру.

Что делать, если в ответе ошибка 429?

Превышен лимит запросов. Кэшируйте токен и результаты расчётов, добавляйте задержку между запросами (минимум 100 мс).

Р
Cdek-Logistika
Редакция портала · проверка фактов
Материал подготовлен в формате справочного разбора для информационного портала.

Попробуйте создать первую накладную через API — скачайте готовый скрипт на Python!

Cdek-Logistika·ОГРН: 317527500128941·ИНН: 525110282730·Россия, Тюменская область, Тюмень, Дзержинского, 15, 1 офис·Email: cdeklogistika@cdek.ru