dntrade
No security coverage
This module integrates with the Dntrade CRM to create orders automatically. It retrieves product UUIDs from the Dntrade API on-the-fly and stores them locally to optimize future requests. The module also captures customer data from checkout fields, including courier delivery details if using specific integrations, and sends this information along with order details to Dntrade.
Dntrade integration module for Drupal 10+
for GET/POST interaction with entry points of the CRM.
Features
- Создаёт заказ в crm Dntrade путём получения uuid товара отдельным запросом к API DNTrade ("на лету").
Записывает этот uuid товара в поле field_dntrade_code для уменьшения кол-ва будущих http-запросов.
Сделано так п.ч. программно создать заказ в DNTrade нельзя, если не знаешь UUID товара. - drush-скрипты:
- drush scr GET-orders-statuslist.php
- drush scr GET-partners-list.php
- drush scr GET-stores-ids.php
- drush scr POST-create-order.php
- drush scr POST-products-list.php > prods_list.txt
- Геттер полей формы чекаута касательно перс. данных контрагента:
города, улицы, дома/квартиры (если стоит commerce_novaposhta, + есть кастом-поля Вулиця / field_street, Будинок/ field_house, Квартира / field_appartment для курьерской доставки, см. эти поля в коде).
Т.е. передаёт в DNTrade данные о контрагенте от модуля Новой почты и полей курьера.
Post-Installation
- В админке на стр. admin/dntrade/settings вводим:
- Базовый url API. Обычно https://api.dntrade.com.ua/
- Токен авторизации – Ваш API key.
Как получить: кнопка "Authorize" справа вверху на https://api.dntrade.com.ua/docs/
- Создаём 2 обязат. поля в бандле вариаций типа "Текст простой":
- "Код DNTrade" / field_dntrade_code 55 символов < uuid товара гетится на основе этого DNTrade` code.
- "dntrade prod uuid" / field_dntrade_prod_uuid 36 символов
Для синхронизации. Отключено в УОФ (управление отображением формы).
- В order`е на /admin/commerce/config/order-types/default/edit/fields создаём:
- поле "DNTrade order uuid" / field_dntrade_order_uuid типа "Текст простой" 36 символов
- поле "uuid товара не найден на DNTrade" / field_no_uuid / Boolean < для админки заказа на случай, еслди товар с таким code не создан.
В него OrderPlaceSubscriber пишет uuid заказа для возможной синхронизации.
- Если нужно поле комментариев, в order добавляем поле field_order_notes.
- В коде меняем под себя константы:
- $dntrade_store_uuid
- channel
Канал сначала должен быть создан в админке/ЛК DNTrade
Additional Requirements
Нет