Skip to content
CdekIntegrate
CdekIntegrate
Интеграция заказов СДЭК для MiniShop3 — создание, отслеживание, накладные, вебхуки.
  1. Компоненты
  2. CdekIntegrate
  3. API

API

REST API

Компонент предоставляет REST API через роутер MiniShop3, доступный по базовому маршруту /api/v1/cdekintegrate.

Эндпоинты

POST /webhook

Приём вебхуков от СДЭК. Не требует авторизации.

СДЭК отправляет JSON-уведомления при изменении статуса заказа. Компонент обрабатывает данные, обновляет статус в msOrder.properties и записывает в историю. Если настроен маппинг статусов — обновляет статус заказа MS3.

Тело запроса (отправляется СДЭК):

json
{
  "uuid": "cdek-order-uuid",
  "type": "ORDER_STATUS",
  "attributes": {
    "cdek_number": "1234567890",
    "code": "DELIVERED",
    "city": "Москва",
    "date_time": "2025-01-15T14:30:00+0300"
  }
}

Все остальные эндпоинты требуют авторизации администратора. Они используются Vue-панелью в карточке заказа.

POST /order/{id}/send

Отправить заказ в СДЭК.

ПараметрТипОписание
idintID заказа MS3 (в URL)

Ответ:

json
{
  "success": true,
  "message": "Order sent to CDEK",
  "cdek_uuid": "72753031-...."
}

Информация

Отменённые заказы можно отправить повторно — будет создан новый заказ в СДЭК.

POST /order/{id}/cancel

Отменить заказ в СДЭК.

ПараметрТипОписание
idintID заказа MS3 (в URL)

Ответ:

json
{
  "success": true,
  "message": "Order cancelled in CDEK"
}

GET /order/{id}/status

Получить текущий статус заказа в СДЭК.

ПараметрТипОписание
idintID заказа MS3 (в URL)

Ответ:

json
{
  "success": true,
  "data": {
    "sent": true,
    "cdek_uuid": "72753031-....",
    "cdek_number": "1234567890",
    "status_code": "DELIVERED",
    "status_name": "Вручён",
    "cdek_response": { }
  }
}

Если заказ не был отправлен в СДЭК:

json
{
  "success": true,
  "data": {
    "sent": false
  }
}

GET /order/{id}/invoice

Скачать накладную в формате PDF.

ПараметрТипОписание
idintID заказа MS3 (в URL)

Возвращает ссылку на PDF-файл накладной. При первом запросе документ запрашивается у СДЭК и сохраняется локально.

GET /order/{id}/barcode

Скачать штрихкод в формате PDF.

ПараметрТипОписание
idintID заказа MS3 (в URL)

Возвращает ссылку на PDF-файл штрихкода. При первом запросе документ запрашивается у СДЭК и сохраняется локально.

GET /order/{id}/history

Получить историю статусов заказа.

ПараметрТипОписание
idintID заказа MS3 (в URL)

Ответ:

json
{
  "success": true,
  "data": [
    {
      "order_id": 15,
      "cdek_uuid": "72753031-....",
      "cdek_number": "1234567890",
      "status_code": "DELIVERED",
      "status_name": "Вручён",
      "city": "Краснодар",
      "event_time": "2025-01-15 14:30:00"
    },
    {
      "order_id": 15,
      "cdek_uuid": "72753031-....",
      "cdek_number": "1234567890",
      "status_code": "ACCEPTED_AT_PICK_UP_POINT",
      "status_name": "Принят в пункте выдачи",
      "city": "Краснодар",
      "event_time": "2025-01-14 10:00:00"
    }
  ]
}

Manager API

Запросы из Vue-панели в карточке заказа идут через connector.php с параметром action=MiniShop3\Processors\Api\Index и заголовком HTTP_MODAUTH=MODx.siteId. Это обеспечивает наличие admin-сессии.

Внимание

Не используйте api.php для менеджерских запросов — он работает только в web-контексте и не имеет admin-сессии.