1490
17.53
21.29
за сайт
- Проверено Modstore
- Бесплатные будущие обновления
- Работа на тестовом и публичном домене
- 12 месяцев тех. поддержки
Компонент для отправки заказов в СДЭК.
ВНИМАНИЕ!!! Системные требования и инструкции по настройке на MODX 3 смотрите в документации.
Документация актуальна для вервии 3.0.0-beta и выше
ВНИМАНИЕ!!! С версии < 2.0.0 НЕЛЬЗЯ. Удалите пакет полностью и установите новую версию.
Требования:
Зависимости:
Возможности:
Быстрый старт
После установки компонента в зависимости от того как вы отправляете заказы нужно заполнить системную настройку
* `cdekintegrate_shipment_point` — если отвозите заказы на ПВЗ (код имеет формат MSK2279 и узнать его можно на сайте widget.cdek.ru/)
* `cdekintegrate_from_location` — если вызываете курьера. Адрес должен быть в формате Регион, Город, Улица, Дом.
Время отправки заказа из админки может достигать 30 секунд, не стоит паниковать и думать, что админка зависла.
Если требуется автоматическая отправка заказов, то в системной настройке `cdekintegrate_create_statuses` через запятую
укажите ID статусов заказа при которых заказ будет отправлен в СДЭК.
Если требуется автоматическое удаление заказов в СДЭК при отмене на сайте
(будет работать только для новых заказов не попавших в обработку СДЭК),
то в системной настройке `cdekintegrate_cancel_status` укажите ID статуса отменённого заказа.
Для автоматического создания и автоматической отмены заказов добавьте в планировщик заданий сервера следующую команду
*/5 * * * * {path/to/php} {path/to/site-root}core/components/cdekintegrate/cron/run.php
{path/to/php} — путь к php на вашем хостинге
{path/to/site-root} — полный путь до корня вашего сайта
При необходимости можете изменить папку для сохранения накладных `cdekintegrate_invoice_path`.
Если на вашем сайте доступна оплата наличными и необходимо, чтобы покупатель оплачивал заказ при получении,
то в системной настройке `cdekintegrate_cash_payment_ids` через запятую укажите ID способов оплаты наличными.
А так же в системной настройке `ms_cdek2_nds_percent` укажите размер НДС, если есть.
ВНИМАНИЕ!!! Системные требования и инструкции по настройке на MODX 3 смотрите в документации.
Документация актуальна для вервии 3.0.0-beta и выше
ВНИМАНИЕ!!! С версии < 2.0.0 НЕЛЬЗЯ. Удалите пакет полностью и установите новую версию.
Требования:
- Версия PHP >=7.4
- Версия modx >=2.6 && < 3.0
- Версия miniShop2 >=3.0.7
Зависимости:
- ms_CDEK2 >= 2.8.2
Возможности:
- Отправка заказов в СДЭК
- Скачивание накладных
Быстрый старт
После установки компонента в зависимости от того как вы отправляете заказы нужно заполнить системную настройку
* `cdekintegrate_shipment_point` — если отвозите заказы на ПВЗ (код имеет формат MSK2279 и узнать его можно на сайте widget.cdek.ru/)
* `cdekintegrate_from_location` — если вызываете курьера. Адрес должен быть в формате Регион, Город, Улица, Дом.
Время отправки заказа из админки может достигать 30 секунд, не стоит паниковать и думать, что админка зависла.
Если требуется автоматическая отправка заказов, то в системной настройке `cdekintegrate_create_statuses` через запятую
укажите ID статусов заказа при которых заказ будет отправлен в СДЭК.
Если требуется автоматическое удаление заказов в СДЭК при отмене на сайте
(будет работать только для новых заказов не попавших в обработку СДЭК),
то в системной настройке `cdekintegrate_cancel_status` укажите ID статуса отменённого заказа.
Для автоматического создания и автоматической отмены заказов добавьте в планировщик заданий сервера следующую команду
*/5 * * * * {path/to/php} {path/to/site-root}core/components/cdekintegrate/cron/run.php
{path/to/php} — путь к php на вашем хостинге
{path/to/site-root} — полный путь до корня вашего сайта
При необходимости можете изменить папку для сохранения накладных `cdekintegrate_invoice_path`.
Если на вашем сайте доступна оплата наличными и необходимо, чтобы покупатель оплачивал заказ при получении,
то в системной настройке `cdekintegrate_cash_payment_ids` через запятую укажите ID способов оплаты наличными.
А так же в системной настройке `ms_cdek2_nds_percent` укажите размер НДС, если есть.
2.1.2-pl
- FIX: действия карточки заказа выполняются в контексте mgr после проверки сессии; исправлен отказ доступа для менеджеров без sudo.
- UI: уменьшена высота окна заказа, содержимое вкладки CDEK прокручивается.
- UI: убран дублирующий пункт выдачи на вкладке заказа; адрес сохранён на вкладке CDEK.
- REQUIRE: для корректной отмены доставки и вызова курьера необходим ms_CDEK2 2.10.2+.
- TEST: добавлены проверки интерфейса и состава transport, дефолтов настроек и секретов.
2.1.1-pl
- FIX: подтверждённая отмена REMOVED очищает активный UUID доставки, сохраняя номер и историю заказа; поля адреса и свойства заказа синхронизируются.
- SECURITY: webhook получает номер и актуальный статус через авторизованный API СДЭК и сверяет UUID с сохранённой доставкой, включая историю отменённого заказа.
- SECURITY: общий guard проверяет сессию менеджера и права miniShop2 до запуска процессоров, в том числе через стандартный connector.
- FIX: задания очереди подтверждаются только после успешного выполнения; исключения и ошибки сохраняют задания для следующего запуска.
- FIX: сохранены задания finalizeOrder и все действия карточки версии 2.1.0. Устранены коллизии ключей очереди и параллельные запуски cron на одном сервере.
- TEST: добавлены регрессионные проверки webhook, очереди и прав доступа.
- BUILD: из transport исключены резервные копии, инструменты разработки и тесты стенда.
2.1.0-pl
- FEATURE: календарь исключений склада на dashboard: диапазоны дат и массовые действия; таблица календаря используется при расчёте даты забора.
- FIX: установщик регистрирует событие забора и создаёт таблицу заявок при первой установке.
- FEATURE: на вкладке CDEK отображаются статусы, номера и дата обновления доставки;
данные сохраняются в
properties.cdekDelivery. - FEATURE: добавлены рабочий календарь склада и настройка интервала забора курьером;
дату можно переопределить карточкой заказа или событием
cdekOnBeforeIntakeCreate. - FEATURE: отмена и повторный вызов заявки на забор выполняются асинхронно без ожидания в AJAX; для курьера доступна отдельная кнопка проверки заявки.
- FEATURE: накладная и штрих-код формируются асинхронно: запрос возвращает
pending, а PDF доступен после статусаREADY. - FEATURE: добавлено событие
cdekOnBeforeIntakeCreateдля изменения или отмены payload заявки на забор. - FIX: данные заявок сохраняются в
properties.cdekIntakeс номером, статусом и датой; существующийcdekOrderUuidсохраняется для совместимости. - FIX: webhook сохраняет статусы доставки даже без сопоставления (
mapping). - FIX: очередь cron нужна для автоматического завершения регистрации доставки и создания заявки на забор после перехода операции из pending.
- FIX: повторная отправка заказа в СДЭК на тестовом контуре больше не падает на guard
«заказ не найден»: принимаются оба кода СДЭК —
v2_entity_not_found(prod) иv2_entity_not_found_im_number(edu). - FIX: отмена заказа больше не возвращает ложное «СДЭК не подтвердил приём запроса отмены», когда асинхронный DELETE ответил без отдельной DELETE-записи; повторная отмена уже удалённого заказа идемпотентна.
- FIX: отмена заявки на забор, уже отклонённой СДЭК (асинхронная валидация: тариф, день недели), считается отменой, а не ошибкой.
2.0.6-pl
- FEATURE: на вкладке CDEK добавлены действия отправки заказа, вызова/проверки/отмены заявки на забор, отмены заказа, скачивания накладной и штрих-кода.
- FEATURE: действия вкладки переведены на manager-процессоры MODX 2; проверка заявки
выполняется отдельным запросом без ожидания
sleep()в AJAX. - ADD: в карточку заказа miniShop2 добавлена отдельная вкладка CDEK: действия отправки и накладной перенесены туда же, CDEK-поля доставки вынесены из общей вкладки заказа.
- FEATURE: добавлены тонкие обёртки CDEK Intake API для создания, получения статуса и отмены заявки на забор курьером.
- FEATURE: добавлена xPDO-модель
cdekIntakeи схема таблицыcdekintegrate_intakesдля хранения текущей заявки, параметров вызова и последнего ответа СДЭК. - FEATURE: добавлены системные настройки режима забора курьером, рабочего графика склада, cut-off, лага в рабочих днях, дефолтного окна, комментария и прозвона.
- FEATURE: добавлен расчёт дефолтной даты забора по рабочему календарю склада, лагу и cut-off без хардкода выходных.
- FEATURE: после успешного создания заказа СДЭК и успешной проверки статуса заявка на
забор курьером создаётся автоматически только в режиме
delivery_with_intake. - FEATURE: перед автосозданием заявки вызывается событие
cdekOnBeforeIntakeCreate, позволяющее изменить payload или отменить создание без ошибки заказа. - FIX: результат создания, отмены или пропуска заявки сохраняется в
msOrder.properties(cdekIntake) и используется для идемпотентности повторных вызовов. - FIX: исправлено сохранение результата проверки webhook в кеш MODX 2. Значение
передаётся в
xPDOCacheManager::set()через переменную, как требует его сигнатура со вторым параметром по ссылке; регистрация больше не завершается ошибкойCannot pass parameter 2 by referenceпосле успешного ответа СДЭК.
2.0.5-pl
- FIX: API-клиент заказов и webhook теперь расширяет клиент ms_CDEK2 и использует его единые HTTP-транспорт, OAuth и кеш токена; дублирующие реализации удалены.
- FIX: ORDER_STATUS обрабатывается напрямую из
attributeswebhook, без обязательного обратного запроса заказа в СДЭК; старый формат уведомления поддерживается fallback-запросом. - FIX: статус заказа меняется штатным
miniShop2::changeOrderStatus(), поэтому выполняются журналирование, события и уведомления miniShop2. - FIX: обработчик webhook возвращает JSON и ошибочный HTTP-код при сбое, чтобы СДЭК мог повторить доставку уведомления.
- FIX: регистрация webhook фактически перепроверяется раз в сутки, а сохранённый флаг больше не скрывает удалённую или неуспешную подписку.
- BUILD: ключ шифрования transport-пакета удалён из исходников и читается из
переменной окружения
MODSTORE_API_KEY. - BUILD: отключена заведомо невозможная автоустановка ещё не опубликованного зашифрованного transport; проверка на dev выполняется до публикации исходниками, затем опубликованный архив устанавливается штатно.
- BUILD: сборщик больше не выдаёт предупреждение при отсутствии необязательной xPDO-схемы компонента.
2.0.4-pl
- Логирование переведено на mxLogger (единственный приёмник). Класс Helpers\Logger больше не пишет в файлы (services/custom/logs/*) — делегирует записи сервису mxLogger, а если он не установлен, один раз предупреждает в журнале MODX и молчит.
- Новые гейты: cdekintegrate_debug (вкл/выкл, включено из коробки) + новая настройка cdekintegrate_log_level (минимальный уровень debug|info|warning|error, по умолчанию error). Консистентно с mxlogger.min_level. Раньше cdekintegrate_debug по умолчанию был выключен.
- Тэги: базовые cdekintegrate + delivery, этапные api / webhook / http / queue / order. Воронка process_uid обработки вебхука = «cdekintegratewebhook»+md5(uuid).
- Ранее негейтнутые вызовы $modx->log (ошибки конфигурации API, токена, регистрации вебхука) переведены в логгер с уровнем error/нужным тэгом.
- Конструктор Logger получил $modx; сигнатура write(array $params) сохранена, добавлены ключи level и tags (поддерживается также ключ message наряду с msg).
2.0.3-pl
- Добавил передачу комментария из адреса заказа (msOrderAddress.comment) в поле
commentзапроса на создание заказа в СДЭК. Длина обрезается до 255 символов согласно лимиту API. При пустом комментарии поле в запрос не добавляется.
2.0.2-pl
- Добавлена синхронизация статусов заказов через webhook СДЭК
- Добавлены системные настройки для webhook:
- cdekintegrate_webhook_url - URL обработчика webhook
- cdekintegrate_webhook_registered - флаг регистрации webhook
- cdekintegrate_status_mapping - сопоставление статусов СДЭК и miniShop2
- Добавлена автоматическая регистрация webhook при инициализации компонента
- Добавлен обработчик webhook для получения уведомлений от СДЭК
- Добавлены методы API для работы с webhook в СДЭК
- По умолчанию настроено сопоставление статусов: REMOVED → 4 (отменён), CREATED → 3 (создан)
2.0.1-pl
- Добавил возможность указать название компании отправителя и продавца в системных настройках.
2.0.0-pl
- Исправил путь к сервису в файле запускаемом по cron.
2.0.0-rc
- Добавил подключение JS на фронте.
2.0.0-beta1
- Добавил возможность отправки заказов, которые были созданы до обновления ms_CDEK2 до версии 2.8.2
2.0.0-beta
- Update API v2.0
1.1.10-beta
- Add system setting cdekintegrate_recipient_cost
1.1.9-beta
- Add vendor directory in package
1.1.8-beta
- Add delivery_recipient_cost to order
1.1.7-beta
- Add package_size setting
1.1.6-beta
- Prevent creating order if it already exists
1.1.5-beta
- Fix inner_cdek_id saving
1.1.4-beta
- Fix weight sending in order create method
1.1.3-beta
- Fill PVZ code if set
1.1.2-beta
- Index does not required for PVZ search
1.1.1-beta
- Direct downloading if file exists
1.1.0-beta
- Set API v2.0
1.0.3-beta
- Fix production request credentials
1.0.2-beta
- Fix request URLs
1.0.1-beta
- Add encryption
1.0.0-beta
- First release




Последние обсуждения в сообществе MODX.pro