Отправка заказа от покупателя на сайт продавца (вэб-хуки)


Общая информация

Для продавцов появилась возможность получать информацию о заказе на свой сайт.

Для получения вэб-хука на свой сайт, вам потребуется помощь вашего программиста, так как необходимо обеспечить приём данных с вашей стороны.

Когда ссылка для получения данных на вашем сайте будет готова, в "Данных аккаунта" (вкладка "Информация") поставьте галочку "Хочу получать данные о заказах на свой сайт", впишите ссылку и выберите формат.
Настроить в аккаунте

Настроить в аккаунте


Информация для программиста (разработчика)

1. Возможны два формата получения данных:
  • Form URL encoded (application/x-www-form-urlencoded)
  • JSON (application/json)


2. Заполнение поля Доп. параметр для платформы ABCP:
  • Если есть доп. адрес и хотите получать заказы отдельно на него, укажите ID филиала (франчайзи) в данных доп. адреса
  • Если основной аккаунт на ZZap является для ABCP филиалом, укажите ID филиала (франчайзи) в данных аккаунта


Очень важно

Веб-хук отправляется в следующих случаях:
  • оформлен новый заказ без безопасной сделки
  • оформленный новый заказ с подключением безопасной сделки оплачен покупателем и ожидает подтверждения отправки запчасти продавцом
  • заказ отменён покупателем (в этом случае приходит уже приходивший ранее code_order, но статус code_track изменился)

Однако, могут быть ситуации, когда один и тот же заказ с одним и тем же статусом отправляется веб-хуком более одного раза,
например, в случае получения от принимающего сервера ошибки, тайм-аута или в каких-либо ещё случаях, когда мы не уверены, что вэб-хук отправился успешно,
поэтому со стороны приёма данных необходимо реализовать логику проверки уникальности сочетания параметров code_order и code_track

Что придёт

По указанной вами ссылке будет отправляется POST запрос, в котором будут передаваться следующие поля:

ПараметрТипОбязательныйОписание
code_order_groupint32дакод группы заказов от одного покупателя на сайте ZZap,
равный коду первого заказа из группы при оформлении одного или нескольких заказов из корзины
или равный коду одного заказа при оформлении из результатов поиска
create_date_groupdateTimeдадата создания группы заказов от одного покупателя на сайте ZZap (равная дате создания первого заказа)
row_count_group/row_countint32даколичество заказов в группе code_order_group
code_orderint32дакод заказа на сайте ZZap
create_datedateTimeдадата создания заказа на сайте ZZap
client_namestringдаФИО покупателя
client_regionstringдарегион, указанный покупателем
client_phonestringдателефон покупателя
client_emailstringдаe-mail покупателя
partnumberstringданомер запчасти (как у вас в прайс-листе)
class_manstringдапроизводитель (как у вас в прайс-листе)
class_catstringданаименование запчасти (как у вас в прайс-листе)
qty_orderint32дазаказываемое количество позиций
commentstringдакомментарий покупателя к заказу
pricedecimalдацена запчасти (в той валюте, в которой смотрел покупатель)
code_curbyteдазначение, где 1 - рубль, 2 - доллар, 3 - евро, 4 - гривна, 5 - белорусский рубль, 6 - казахстанский тенге - валюта, которую выбрал покупатель для отображения цены
file_namestringданазвание прайса, из которого заказана запчасть (только название файла)
code_doc_bдаint64уникальный код вашего предложения в системе ZZap
client_id_hashstringдахэш от уникального кода покупателя (удобно использовать для группировки полученных данных по покупателю)
descr_deliverystringдасрок поставки этой позиции, который был указан в прайсе/шаблоне на момент оформления заказа
delivery_daysint32дасрок поставки этой позиции в днях
shipmentstringдаусловия и способы доставки этой позиции
logopathstringдалоготип производителя
imagepathstringдаизображение/фото запчасти
qty (устарело! не использовать)stringдакол-во, текст! (как было в прайсе продавца)
applystringдаусловия продажи
client_code_regionint32дакод региона покупателя
seller_namestringданазвание продавца (доп. адреса, если заказали у доп. адреса)
user_keystringда"ключ" покупателя, с помощью которого Вы сможете оставить отзыв по заказу, оформленному на сайте ZZap (метод MakeOrderRating), а также можете посмотреть информацию о покупателе (метод GetUserInfo)
usedboolдатип предложения: False - обычное, True - б/у и уценка
code_templateint32дакод шаблона продавца, по которому был опубликован прайс-лист с заказанной позицией
price_namestringданазвание и размер прайса, из которого заказана запчасть
descr_pricestringдацена текстом с коротким обозначением валюты, в которой смотрел покупатель
price_origdecimalдацена (в той валюте, в которой публиковал продавец)
descr_price_origstringдацена текстом (в той валюте, в которой публиковал продавец)
descr_type_pricestringдатип цены – «Только для юр. лиц и ИП» или «» (пусто)
min_sum_orderdecimalдаминимальная сумма заказа, если указана продавцом
descr_min_sum_orderstringдаминимальная сумма заказа текстом, если указана продавцом
qtyV2int32даколичество, указанное продавцом в прайсе (числом). кроме обычных значений 10, 20, 4, могут быть значения: -1 («На заказ»), -2 («В наличии»), 100012 («>12 шт.»)
descr_qtystringдаколичество, указанное продавцом в прайсе (текстом), соответственно количеству qtyV2 могут быть значения: «10 шт.», «20 шт.», «4 шт.». «На заказ», «В наличии», «>12 шт.»
code_trackint дакод статуса**. Соответствия кодов и статусов заказа в методе GetCodesTrack
create_trackDateTime дадата статуса
class_trackstring дастатус заказа
message_trackstring дакомментарий к статусу заказа
order_paramsstringдадоп. параметр (для платформы ABCP id франчайзи)
price_basedecimalдацена до применения наценки, указанной в шаблоне (в той валюте, в которой публиковал продавец)


Информация будет отправлена в выбранном в настройках аккаунта формате

Пример запроса в формате Form URL Encoded (application/x-www-form-urlencoded)

code_order_group=310830152&create_order_group=31-01-20+19%3a20%3a57&row_count_group=1&code_order=310830152&create_date=31-01-20+19%3a20%3a57&client_name=...

Пример запроса в формате JSON (application/json)

{
"code_order_group": 310830125,
"create_date_group": "2020-01-31T18:50:08.14",
"client_name": "Скворцоффф Борис (Контора ЗЗАП)",
"client_region": "Москва и Московская область",
"client_phone": "8(916)555555",
"client_email": "[email protected]",
"client_id_hash": "668429d097a59cbcb1e5afba96d2c26b",
"client_code_region": 1,
"seller_name": "Test Seller ZZap",
"user_key": "pV9WvqNPhDn1rgHUqlb5fNzyR6wxyzC1LA1k7jniCqE=;pV9WvqNPhDk2g1YpdzaNpcqqG/VYF89NdnsZR5qgX0Y=",
"code_cur": 1,
"comment": "",
"row_count": 1,
"table": [
{
"code_order": 310830125,
"create_date": "2020-01-31T18:50:08.14",
"partnumber": "P049",
"class_man": "HEPU",
"class_cat": "ПОМПА",
"qty_order": 1,
"price": 3014.00,
"file_name": "test_price_qty.xls",
"code_doc_b": 4786771482233096496,
"descr_delivery": "",
"delivery_days": 255,
"shipment": "",
"logopath": "https://koj.blob.core.windows.net/zzap-upload/upload/logos/s168c3d55b90bfe5ac9ea3767c075ab8c.png",
"imagepath": "https://koj.blob.core.windows.net/zzap-upload/upload/catalog/p2739725d8d53bff0ccf0ecbfb9cf920b.jpg",
"apply": "ПРЕДЛОЖЕНИЕ НЕДЕЙСТВИТЕЛЬНО!!! ЭТО ТЕСТ",
"used": false,
"code_template": 270013688,
"price_name": "test_price_qty.xls (0.03мб.)",
"descr_price": " 3 014р.",
"price_orig": 102.00,
"descr_price_orig": " 102.00б.р. ЦБРФ",
"descr_type_price": "Только для юр. лиц и ИП",
"min_sum_order": 0.00,
"descr_min_sum_order": "",
"qtyV2": 1000050,
"descr_qty": ">50 шт.",
"code_track": 111,
"create_track": "2020-07-01",
"class_track": "Заказ в резерве",
"message_track":"Резерв №567438"
"order_params":"1139009"
"price_base": 97.00
}
]
}


Внимание! Примечание к полю price. Это цена, которую видел покупатель, когда оформлял заказ, в той валюте, которую выбрал покупатель для отображения цены.

Важно! В качестве разделителя используется запятая.

!Очень важно! (подтверждение/ответ на заказ)

Вам так же необходимо
реализовать подтверждение получения заказа (что его увидели и начали с ним работать).
Это можно сделать при помощи метода Метод "обновление статуса заказа" (SetOrderStatusV3),
в противном случае ZZap оставляет за собой право отключить у вас этот функционал.



**code_track
15 - Новый заказ (5)
19 - Заказ принят (10)
23 - Заказ в работе (13)
111 - Заказ в резерве (13)
141 - Заказ ожидает предоплаты (13)
107 - Заказ ожидает в пункте выдачи (20)
11 - Заказ выполнен (30)
10 - Заказ отменен покупателем (40)
142 - Заказ отменен продавцом (40)
63 - Ответ на заказ (50)
  Имя Размер
- данные_аккаунта_.png 5,52 KB
- настройка.png 4,12 KB