Регистрация маркировки
IMSHOP Retail Protocol (IRP) является объектом интеллектуальной собственности ООО «АЙ ЭМ СОЛЮШНЗ» (IMSHOP) и защищён как объект авторского права. Свидетельство о депонировании произведения № 023-014461 от 16 января 2023 г. подтверждает исключительные права ООО «АЙ ЭМ СОЛЮШНЗ» на данные технологии.
IMSHOP Retail Protocol создан по заказу ООО «АЙ ЭМ СОЛЮШНЗ». Использование IMSHOP Retail Protocol допустимо только при взаимодействии с ООО "АЙ ЭМ СОЛЮШНЗ" и наличии действующего лицензионного договора. Более подробно можно ознакомиться здесь.
Перед подключением необходимо предать вашему продакт менеджеру в IMSHOP следующие URL
URL для отправки запроса на регистрацию маркировки
URL для запроса статусов сканирования
От продакт менеджера в IMSHOP необходимо получить:
URL и ключ для отправки обновлений статусов сканирования в IMSHOP
Отправка запроса на сканирование
Для каждого сканирования, IMSHOP будет отправлять в виде POST запроса код и данные формы, и дать в ответ статус.
Запрос
При запросе сервер принимает штрихкод и данные формы:
barcode
- закодированный текст или base64 строка для бинарных данныхuserId
- идентификатор пользователя из ответа ендпоинта получения профиля пользователяtimestamp
- время / таймштамп сканированияdata
- дополнительные опциональные поля формы. список данных для запроса при сканировании товара необходимо передать вашему продакт менеджеру (опционально)
Пример
Ответ
В ответ сервер должен отправить сообщение об успешной/неуспешной валидации штрихкода:
success
-true
/false
флаг успехаid
- идентификатор сканирования. может совпадать с кодом, если они уникальныalertTitle
- заголовок всплывающего окна, которое будет показано после сканирования (опционально)alertMessage
- текст всплывающего окна, которое будет показано после сканирования (опционально)statusMessage
- будет показано в истории сканирования, напротив записи. например: "Начисление бонусов по данному коду невозможно" (опционально)status
- код статуса. возможные значения:processing
- в обработкеapproved
- начисленоdenied
- отказано
HTTP статус - 200
Пример
Запрос статусов сканирования
Запрос
При переходе на экран истории сканирований, IMSHOP будет делать POST запрос с информацией о пользователе, и ожидать в ответ полную историю сканирований.
userId
- идентификатор пользователя
Пример
Ответ
В ответ ожидается структура данных в следующем формате
scans
- список сканированийid
- идентификатор сканирования (может совпадать с code, если коды уникальны)timestamp
- таймштампcode
- кодstatus
- статус (processing
/approved
/denied
)statusMessage
- текстовое описание (опционально)
Пример
Асинхронное обновление статусов
Если на вашей стороне произошло обновление статуса сканирования (например начисление бонусов было одобрено), но необходимо сделать POST запрос на URL выданный продакт менеджеров в следующем формате
id
- идентификатор сканирования (может совпадать с code, если коды уникальны)userId
- идентификатор пользователяtimestamp
- таймштампcode
- кодstatus
- статус (processing
/approved
/denied
)statusMessage
- текстовое описание (опционально)
Пример запроса
Ответ
Возможные HTTP статусы
204
- успех400
- некорректный формат запроса401
/403
- ошибка авторизации. уточните ключ и URL у продакт менеджера IMSHOP404
- не найдено сканирование или не найден пользователь
Last updated