Получение заказов с сайта на Wordpress (Woocommerce). REST API Woocommerce

02.06.20

Интеграция - Сайты и интернет-магазины

Обработка для УТ 10.3 Получение заказов с сайта. Не является конечным решением. Движок сайта Wordpress с плагином Woocommerce. Использование REST API Woocommerce. Товары с характеристиками, на сайте вариативный товар.

Скачать исходный код

Наименование Файл Версия Размер
Получение заказов с сайта на Wordpress (Woocommerce). REST API Woocommerce.:
.epf 15,23Kb
7
.epf 15,23Kb 7 Скачать

Обработку предоставляю как собственные наработки. Обработка предназначена для разработчиков. Конфигурация УТ 10.3 (10.3.57.1)

КАК БЫЛО РАНЬШЕ:

Сайт сделал сам. При создании сайта была задача выгрузки товаров на сайт и загрузки заказов с сайта в 1С. Для решения этих задач использовал плагин "WP All Import/Export", платные версии, так как в бесплатной версии можно было выгружать только простой товар, то есть без характеристик, а у нас товары с характеристиками. Товар очки - сонцезащитные, медицинские. Характеристики идут по цветам.

Была создана обработка для 1С, которая выгружает товары в Excel с нужными полями, затем из Excel идет загрузка на сайт. Заказы, сделанные на сайте, экспортировались в Excel, а затем уже другой обработкой загружались в ЗаказПокупателя в базу 1С.

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

В данный момент реализована загрузка заказов. Сейчас реализую обновление товаров - почти готово, далее загрузка товаров из 1С на сайт.

У меня нет опыта программирования в 1С, я только начинаю изучаю программный язык 1С.

Обработка делает GET запрос к сайту, используя REST API Woocommerce.

REST API Woocommerce - позволяет читать и записывать различные части данных WooCommerce, такие как заказы, продукты, купоны, клиенты и зоны доставки. В ответ от сайта приходит JSON.

В интерфейсе обработки пользователю надо только указать номер заказа. Будет создан GET-запрос к сайту, конечный URL выглядит так "https://ВашСайт/wp-json/wc/v3/orders/<ID-заказа>", далее будет обработан JSON-ответ и создан ЗаказПокупателя с товарами и комментарием с номером заказа на сайте.

Для корректной работы потребуется настроить аутентификацию на стороне сайта. Для понимания аутентификации можно почитать здесь https://wp-kama.ru/handbook/rest/basic/authentication. Аутентификацию можно включить в настройках REST Woocommerce, но мне не удалось ее применить.

Аутентификация настраивается с помощью установки плагина Advanced Access Manager (ААМ). Большое спасибо автору этой статьи //infostart.ru/public/1133794/  - авторизация настраивается как там описано. Главное надо получить токен для пользователя и указать его в коде обработки в переменную Токен.

Без авторизации в ответе от сайта будет приходить ошибка 401 - Ошибка доступа.

Товар на сайт был загружен из Excel, наименование товара на сайте формируется из сложения полей Артикул + ЗначениеХарактеристики. Также я выгрузил код товара из 1С в дополнительные атрибуты товара, что облегчило в дальнейшем поиск товара в базе 1С

 

В функции создания заказ жестко прописано название атрибута характеристики на сайте "tsvet", а так же при поиске соответствующей характеристики указана строка "Цвет: ", так как во всех характеристиках в базе 1С присутствует этот текст, а на сайт выгружен без него.

 

В обработке реализовано получение товара с сайта и заполнение табличной части обработки. После заполнения табличной части заполняется колонка остатки из базы 1С. В дальнейшем можно будет добавить колонку с ценой. А также реализовать отправку этих данных на сайт для обновления цены и остатков на сайте.

При получении товаров с сайта необходимо учесть один момент - это страницы пагинации и ограничение на получение товаров в Woocommerce. За один запрос можно получить только 100 товаров и товары всегда получаются с первой страницы. Если необходимо получить товары после первой сотни тогда необходимо изменить переменную СтраницыПагинации. 

СтраницыПагинации = 1;      // страница с которой начинаем получать товар

Версия WordPress 5.4

Версия PHP    7.2.7
MySQL 8.0.19

1C 8.3.16.1063.

WordPress WooCommerce RestAPI Интеграция сайтом REST API обмен

См. также

API-интеграция 1С с маркетплейсами ОЗОН, WildBerries, Я.Маркет, СберМегаМаркет, Стройландия, Леруа Мерлен, Hoff, AliExpress для УТ11, КА2, ERP2, УНФ, БП3, Розница, УТ10, УПП1.3

Сайты и интернет-магазины Платформа 1С v8.3 1С:Комплексная автоматизация 1.х 1С:Управление торговлей 10 1С:Розница 2 1С:Управление производственным предприятием 1С:Управление нашей фирмой 1.6 1С:ERP Управление предприятием 2 1С:Бухгалтерия 3.0 1С:Управление торговлей 11 1С:Комплексная автоматизация 2.х 1С:Управление нашей фирмой 3.0 1С:Розница 3.0 Беларусь Россия Управленческий учет Платные (руб)

Модуль для интеграции с маркетплейсами ОЗОН, WildBerries, Я.Маркет, СберМегаМаркет, Стройландия, Леруа Мерлен, Hoff, AliExpress. При помощи расширения поддерживаются следующие методы: обмен остатками товаров, обмен ценами, обработка заказов, печать стикеров, загрузка отчетов комиссионеров по API (в том числе Я.Маркет). Подходит для конфигураций Беларуси. Поддержка искусственного интелекта GigaChat

59990 руб.

05.09.2023    8449    125    74    

82

Интеграция Альфа Авто 5 / Альфа Авто 6 и AUTOCRM / Инфотек

Сайты и интернет-магазины WEB-интеграция Платформа 1С v8.3 Конфигурации 1cv8 1С:Управление торговлей 11 Автомобили, автосервисы Россия Управленческий учет Платные (руб)

Интеграционный модуль обмена между конфигурацией Альфа Авто 5 и Альфа Авто 6 и порталом AUTOCRM. Данный модуль универсален. Позволяет работать с несколькими обменами AUTOCRM разных брендов в одной информационной базе в ручном и автоматическом режиме.

36000 руб.

03.08.2020    15953    13    18    

13

Оплата покупок "Долями" в 1С:Розница 2.3 (для работы с сервисом dolyame.ru)

Сайты и интернет-магазины Платформа 1С v8.3 1С:Розница 2 Розничная и сетевая торговля (FMCG) Россия Платные (руб)

Готовое интеграционное решение для оплаты покупок Долями в 1C:Розница 2.3. Реализовано в виде расширения. Интеграция сервиса dolyame.ru для приема платежей в рассрочку.

18000 руб.

19.12.2023    1604    14    3    

11

Обмен данными с сайтом. БП 3.0

Оптовая торговля Розничная торговля Сайты и интернет-магазины Платформа 1С v8.3 Бухгалтерский учет 1С:Бухгалтерия 3.0 Россия Бухгалтерский учет Платные (руб)

Обмен данными с сайтом на платформе 1С:Битрикс (и подобными) для 1С: Бухгалтерия предприятия 3.0.

12000 руб.

18.03.2019    31554    112    100    

64

Универсальный парсер интернет-магазинов

Оптовая торговля Розничная торговля Сайты и интернет-магазины Платформа 1С v8.3 Управляемые формы 1С:ERP Управление предприятием 2 1С:Управление торговлей 11 1С:Комплексная автоматизация 2.х Россия Управленческий учет Платные (руб)

С того времени, как я начал парсить сайты, прошло много лет. За это время я спарсил более 100 сайтов и записал эти товары в 1С. В итоге на свет появился универсальный парсер, который поможет Вам спарсить интернет-магазин и при этом не написать ни строчки кода.

9600 руб.

19.10.2018    52247    220    101    

112

Sync1C: Синхронизация 1С и OpenCart

Оптовая торговля Розничная торговля Сайты и интернет-магазины Платформа 1С v8.3 Оперативный учет 1С:Управление торговлей 10 1С:Управление нашей фирмой 1.6 1С:Управление торговлей 11 Управленческий учет Платные (руб)

Внешняя обработка для обмена данными с интернет-магазином OpenCart. Позволяет быстро наполнить магазин товарами, затем обновлять цены и добавлять новые товары. Далее можно средствами OpenCart настраивать и дополнять карточки товаров как надо для магазина, при этом связь товаров с 1С не теряется.

3840 руб.

30.03.2018    43786    81    137    

85
Комментарии
Подписаться на ответы Инфостарт бот Сортировка: Древо развёрнутое
Свернуть все
1. osivv 265 12.09.20 10:46 Сейчас в теме
Браво, работает с вариативностью! Мне, честно говоря было лениво разбираться.

При получении товаров с сайта необходимо учесть один момент - это страницы пагинации и ограничение на получение товаров в Woocommerce....

Зачем получать? На мой взгляд управление должно быть из 1С, и она должна "рулить". Загружать с сайта нужно только в одном случае, когда 1С пустая.
Если управлять остатками, то тоже из 1С.
Хотя ваше решение, вам виднее.
2. otcheskiy 13 15.09.20 19:55 Сейчас в теме
(1)Идея такая: получаем товары с сайта, сагружаем в табличную часть и сопоставляем с товарами из 1С.
А затем обновляем эти товары по остаткам и ценам
3. mrGREYka 6 09.11.20 12:26 Сейчас в теме
Добрый день! А такую схему не рассматривали?

Товары и остатки синхронизировать плагином openXML, он вроде бесплатный.

При создании заказа в wp отправлять post запрос в 1С на создание заказа.
4. user697795_oblomov_vasiliy 10.02.21 22:07 Сейчас в теме
Интересная обработка
Оставьте свое сообщение