Регистрация клиента в программе лояльности

Проверка данных клиента

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

🚧

Важно

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

При передаче нескольких идентификаторов в одном запросе, сервер вернет сообщение:

{
  "status": "error",
  "status_code": -1,
  "message": "Provide origin_user_id or user_phone not both"
}

Если запись с идентификатором не найдена, сервер вернет сообщение:

{
  "status": "error",
  "status_code": -4000,
  "message": "User not found"
}

В случае успеха сервер вернет JSON-объект с данными клиента:

{
  "status": "ok",
  "last_name": "Иванов",
  "first_name": "Иван",
  "sex": 1,
  "phone": "734853058432",
  "id": 123456,
  "origin_user_id": "53480256",
  "middle_name": "Иванович",
  "referral_promocode": "Q3957YE",
  "avatar": null,
  "birth_date": 1981-12-31,
  "email": [email protected]
}

В этом случае следует либо отображать в приложении сообщение, о том, что пользователь с таким идентификатором уже зарегистрирован в системе или обновить информацию у найденного клиента с помощью /users/update.

Объединение записей клиентов

При проверке нескольких идентификаторов одного клиента возможны случаи, когда существующие учетные записи будут найдены для нескольких из них (например одна запись содержит телефон указанный клиентом, а вторая - email). В Sailplay API предусмотрен механизм объединения двух клиентских записей в одну. Теги клиентов, бонусные баллы и история покупок при этом также будут объединены.

Подтверждение регистрации по SMS

При регистрации нового клиента по телефону, в случае обнаружения записи с таким же номером, в API предусмотрена возможность отправки SMS сообщения с 4-значным кодом подтверждения. При этом в приложении должно быть предусмотрено поле для ввода кода сотрудником (офлайн, на кассе) или самим клиентом (форма на сайте).

Добавление нового клиента

Если проверка данных клиента прошла успешно (существующих записей обнаружено не было), то приложение должно отправить запрос на создание новой учетной записи.
Регистрация нового клиента осуществляется путем отправки запроса к методу /users/add. Запрос должен содержать авторизационные данные приложения и, как минимум, один идентификатор клиента.