Магазин ВКонтакте

Синхронизация заказов

В новой версии модуля появилась возможность импортировать заказа из ВКонтакте на сайте. Помимо ручного импорта также реализована подписка на события ВКонтакте, а именно - добавление заказа, изменение заказа. В результате на сайте почти моментально создается заказ дублирующий заказа ВКонтакте. Изменение заказа со стороны ВКонтакте или сайта, повлечет обновление данных на второй стороне.

Существуют ограничения

  1. Для добавления заказа на сайт, в вк в заказ должны быть добавлены товары, которые были загружены в сообщество модулем ранее.
  2. Изменение состава заказа на стороне сайта не повлечет за собой изменение состава заказа на стороне ВКонтакте.

Настройка соответствий

В первую очередь необходимо в настройках модуля указать соответствия для создаваемого заказа

  • Тип плательщика
  • Способ доставка
  • Способ оплаты
  • Свойства с ФИО, адресом, номером заказа в вк и тд
  • Статусы заказов

Для этого переходим в настройки модуля, выбираем нужный сайт и выбираем из списка доступные варианты. Если нужного варианта нет - его необходимо добавить отдельно и вернуться к настройке после. Администрирование / VK / Магазин ВКонтакте / Настройки модуля

2021-12-26_14-32.png

Настройка синхронизации

Для того чтобы можно было импортировать заказы, необходимо добавить хотя бы одну синхронизацию. Для этого переходим на страницу со списком синхронизаций и нажимаем кнопку добавить

Администрирование / VK / Магазин ВКонтакте / Синхронизация заказов

2021-12-26_14-37.png

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

2021-12-26_14-47.png

После применения базовых настроек будут выведены дополнительные поля:

  • Для автоматического создания/обновления заказа на сайте при добавлении/изменении заказа в ВКонтакте
  • Для импорта товаров заказа и возможности запускать ручной импорт (Для этого нужен ключ сообщества)

Ограничение импорта заказов

С версии 2.16.0 добавлена возможность ограничивать импорт заказов:

  • импортировать заказы созданные после определенной даты
  • импортировать только последние N заказов

Для задания ограничений необходимо в настройках синхронизации заказов заполнить соответствующие поля

2022-09-08_12-43.png

Добавление прослушивания событий

Для того чтобы начать прослушиваться события связанные с заказом в ВКонтакте, необходимо в настройках группы/сообщества добавить Callback API сервер, то есть ссылку на сайт, на который нужно отправлять уведомления.

Для этого копируем ссылку из уведомления на странице добавления синхронизации.

2021-12-26_14-57.png

Далее в новой вкладке открываем настройки сообщества и добавляем Callback API сервер, в соответствующем поле Адрес указываем скопированную ссылку.

2021-12-26_15-03.png

На вкладке Типы событий отмечаем галочками нужные события - Добавление заказа и Изменении заказа

2021-12-26_15-16.png

Затем указываем произвольный секретный ключ, который также указываем на странице редактирования синхронизации. Копируем строку, которую должен вернуть сервер и указываем на странице редактирования синхронизации.

2021-12-26_15-09.png

2021-12-26_15-12.png

Далее нажимаем кнопку применить, чтобы сохранились указанные значений. Возвращаемся на страницу добавления Callback API сервера в ВКонтакте и нажимаем кнопку Подтвердить. В результате проверки напротив адреса появится зеленая галочка

2021-12-26_15-14.png

Получение ключа сообщества

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

Для этого на соответствующей странице настроек ВКонтакте нажимаем кнопку создать ключ и выбираем доступ права доступа - Разрешить приложению доступ к товарам и заказам сообщества.

2021-12-26_15-23.png

2021-12-26_15-23_1.png

Копируем его и вставляем в соответствующее поле настроек синхронизации. Затем нажимаем кнопку сохранить.

2021-12-26_15-24.png

2021-12-26_15-25.png

После этого все заказы должны начать создаваться/обновляться автоматически по событиям из ВКонтакте. А также можно вручную запустить импорт заказов на соответствующей странице

Как сопоставляются товары

При получении данных о заказе от ВК, на стороне сайта происходит создание заказа и добавление таких же товаров на сайте, которые были добавлены в заказ на стороне ВК.

Поэтому при экспорте товаров в отдельную таблицу записываются соответствия товаров в ВК и на сайте.

При импорте заказа, по идентификатору товара (из заказа в ВК) происходит поиск записей в истории выгруженных товаров.

Если данные есть, то по ним происходит поиск товара на сайте. Найденный товар добавляется в заказ на сайте.

Иначе выводится ошибка или записывает сообщение об ошибке в лог