Пересылка данных на внешние сайты (скрипты)

Уровень сложности освоения: Специалист

LandingWiz поддерживает функции пересылки данных (Вебхуки) методом POST запросов на внешний адрес (скрипт на вашем сервере) для последующей обработки.

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

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

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

Технические особенности
1 Для формирования и проверки подписи запроса используется общепризнанный алгоритм MD5.

2 В отличие от API команд, которые требуется инициировать, описанные ниже уведомления на внешний скрипт
автоматически пересылаются сразу же после выбранного действия, а именно:
- оформление заказа клиентом;
- перевод заказа в оплаченный статус;
- добавление или редактирование товара;
- регистрация нового партнера или изменение регистрационной информации партнером.

action - тип уведомления имеет следующие варианты:
order_newинформация о только что оформленном заказе
order_paidинформация об оплаченном заказе
order_removeудаление заказа администратором
item_addинформация о добавлении товара
item_editинформация о редактировании товара
item_removeинформация об удалении товара
recurring_item_newинформация об удалении товара
recurring_item_renewинформация об удалении товара
aff_registerрегистрация нового партнера
aff_updateизменение регистрационной информации партнером
aff_removeудаление аккаунта партнера
aff_commrequestзапрос выплаты вознаграждения партнером

Пример информации по пересылке пар логин-пароль для выбранных товаров:
accessdata=010:user@yahoo.com:u295kx2nad:30;011:jugejki5:u9r0epapxm:60;
разделитель «:» между логином и паролем.
разделитель «;» между разными товарами.
формат: «itemid:login:password:period;».

в приведенном примере пересылается следующая информация:
Для товара «010» - логин «user@yahoo.com», пароль «u295kx2nad», период действия 30 суток.
Для товара «011» - логин «jugejki5», пароль «u9r0epapxm», период действия 60 суток.

Если информация о периоде не передается (пусто), значит у данного товара нет временных ограничений.

Для проверки подлинности, склейте в своей программе следующие переменные:
$action.$user.$key.$INFO
$action - Тип запроса (order_new,order_paid, и т. д.)
$user - Ваш аккаунт в сервисе LandingWiz
$key - Ваш «Ключ для подписи»
$INFO - Данные в зависимости от типа уведомления.
В уведомлениях order_new/order_paid/order_remove используйте номер заказа (переменная $orderid).
В уведомлениях item_add/item_edit/item_remove используется идентификатор товара ($itemid)


Пример:
Строка хеширования для оплаченного заказа:
$action.$user.$key.$orderid

Строка хеширования для предварительного заказа:
$action.$user.$key.$orderid

Готовая строка на Perl для проверки подлинности данных:
my $INFO=$orderid;
my $controlhash=md5_hex($action.$user.$key.$INFO);





Перечень маркеров автозамены:
%EMAIL%Email покупателя
%ORDERID%Номер заказа
%TOTALCOST%Сумма заказа
%CURRENCY%Валюта заказа
%ORDERDATE%Дата оплаты
%REFID%RefID партнера
%TOTALDISCOUNTVALUE%Общая сумма скидки
%CUSTOMERIP%IP покупателя
%CHANNEL%Канал продаж
%PAYBY%Метод оплаты
%ITEMS%Заказанные товары в формате «id товара-количество-стоимость на момент оформления;»
%NAME%Имя покупателя
%COUNTRY%Страна
%AREA%Область
%CITY%Город
%ZIP%Почтовый индекс
%ADDRESS%Адрес доставки
%PHONE%Телефон
%COURIER%Почтовый курьер
%WEIGHT%Вес
%SHCOST%Стоимость доставки
%USERDATA1% ... %USERDATA7%Дополнительные поля с информацией клиента (поля создаются в разделе «Настройки» - «Страница заказа»

После получения данных и проверки MD5 подписи ваш скрипт ОБЯЗАН передать ответ сервера «HTTP 200 OK».