Есть 2 задачи:

1. Задача: синхронизировать товары и остатки товаров на сайте и в CRM. Для этого в товарном каталоге CRM создаем для товара кастомное поле "Количество". В Woocommerce управление остатками выключено.

Необходимо:

- Написать функцию в WP, которая, запускаясь один раз в сутки, будет проверять наличие новых товаров в БД сайта и передавать новые товары (с полями, которые там необходимы, включая первую добавленную категорию и изображение) в CRM через входящий вебхук*. Если товар в магазине в статусе "В наличии", в поле количество CRM передаем "1", если товар в магазин добавлен в статусе "Предзаказ" или "Нет в наличии", в поле количество CRM передаем "0". После обновления создается задача в CRM создается задача "Сверить остатки добавленных товаров" в CRM ответственному сотруднику со списком добавленных товаров.

- Написать веб-хук (робот в CRM типа "вебхук") в CRM, который будет уменьшать количество проданных товаров в базе CRM при переходе сделки в стадию "Завершена". Если после уменьшения количества товаров, остаток "0", меняем статус товара с "В наличии" на "Предзаказ".

- Написать веб-хук (робот в CRM типа "вебхук") в CRM, который при изменении (ручном изменении путём редактирования товара или автоматическом изменении с помощью вебхука) поля количества товара изменял его статус следующим образом: количество <: статус="" "Предзаказ";="" количество="">= 1: статус "в наличии".

- Написать исходящий вебхук, который при изменении поля статуса товара обновит статус этого товара на сайте (на стороне Wp может быть реализовано через функцию или используя API плагина WP All Export Pro (на сайте версия nulled, документация по доступным интеграциям здесь  https://zapier.com/apps/wp-all-export-pro/integrations)

* при обновлении товары сравниваем по идентификатору магазина (соответствующее поле есть в базе CRM) 

2. Передача данных о заказе передается в CRM с помощью плагина интеграции на входящий вебхук (код плагина во вложении)

Необходимо доработать плагин следующим образом: 

- Передавать товары в заказе не в формате "Товар - сумма", а "Товар -цена за единицу - количество - сумма - скидка (при ее наличии)"

- При передаче данных о покупателе в CRM создается только контакт, необходимо дополнительно создавать для контакта реквизит "Адрес доставки" из полей заказа

- Переработать в плагине сопоставление товаров (сейчас товары сопоставляются по названию, необходимо сопоставлять по полю "ID на сайте"

Статья по веб-хукам Битрикс-24:  https://dev.1c-bitrix.ru/community/blogs/marketplace_apps24/easy-integration-with-bitrix24-or-magic-vibhuti.php 

5 лет назад
marketlab_by
44 года
6 лет в сервисе
Был
2 года назад

Заявки фрилансеров

Валерий
 
39 лет
19 лет в сервисе
Был
2 дня назад
170 отзывов
5 лет назад
Даниил
 
24 года
5 лет в сервисе
Был
5 лет назад
5 лет назад
Дмитрий
 
41 год
7 лет в сервисе
Был
2 месяца назад
39 отзывов
5 лет назад