Интеграция розничных магазинов


Для использования сервиса PayLate в розничных магазинах, необходимо провести интеграцию с Вашим кассовым решением.

Процесс покупки:

1. После выбора товара, кассир магазина пробивает предварительный чек, указав номер телефона клиента;
2. Клиент получает смс со ссылкой для прохождение регистрации в сервисе PayLate;
3. После прохождения регистрации клиент возвращается на кассу магазина и называет код для получения заказа;
4. Кассир находит предварительный чек, указывает код названный клиентом, подтверждает заказ, пробивает фискальный чек и отдает заказ клиенту.


Тестовые данные

Для тестирования интеграции сервисом paylate используйте следующие тестовые данные:
client_id – 1702082013
login – test
password – test
После проведения тестирования Вам будут выданы данные на рабочем сервере.

Формирование токена (PHP)

$login = "test"; // Логин Вашей организации в системе paylate
$password = "test"; // Пароль Вашей организации в системе paylate
$order_id = "235"; // Идентификатор заказа в вашей системе
$token = md5($login . md5($password) . $order_id); // Сформированный токен


Создание заказа и отправка смс со ссылкой на регистрацию

Данные должны быть переданы POST-запросом в формате JSON с заголовком content-type application/json

# Параметр Описание
1 URL метода https://paylate.ru/API/create_order
2 token Токен, формируется как: md5(логин + md5(пароль) + номер_заказа)
3 order_id идентификатор заказа в Вашей БД
4 goods Массив товаров может содержать один или несколько товаров.
Товар определяется следующей структурой:
{
  "Name" : " Телевизор Samsung", // Наименование товара
  "Amount" : "120000.00", // Цена товара (за единицу)
  "Count" : "1" // Количество товаров
}
5 phone 10 цифр номера телефона клиента
6 amount Итоговая сумма товаров в чеке
7 initial_fee Сумма первого взноса принимаемая в кассу магазина (необязательный параметр)
8 client_id Идентификатор магазина в сервисе PayLate

Пример запроса

{
"token": "",
"order_id": "PRSL-1288",
"goods": [
    {
     "name": "Товар1",
     "count": 1,
     "amount": 30000.96
    },
    {
     "name": "Товар2",
     "count": 1,
     "amount": 5200
     }
  ],
"phone": "9001231212",
"amount": 35200.96,
"initial_fee": 500.00,
"client_id": "1524072013"
}


Ответ

{"result":1, "message":""}   //Заказ создан
{"result":0, "message":"текст ошибки"}   //Ошибка

Проверка суммы заказа и первого взноса

Данный метод вызывается перед подтверждением заказа, в случае если магазин работает с первоначальным взносом оплачиваемым в кассу магазина.
В случае если магазин работает без первого взноса, реализация данного метода не требуется.


# Параметр Описание
1 URL метода https://paylate.ru/API/check_amount
2 token Токен, формируется как: md5(логин + md5(пароль) + номер_заказа)
3 order_id идентификатор заказа в Вашей БД
4 client_id Идентификатор магазина в сервисе PayLate

Пример запроса

{
"token":"",
"order_id": "PRSL-1288",
"client_id":"1524072013"
}


Ответ

//Успешный запрос, возвращается сумма заказа и сумма первого взноса
{
"result": 1,
"message": "",
"response": {
  "amount_credit": "7217.0000",
  "initial_fee": "1000.0000"
  }
}

{"result":0, "message":"текст ошибки"}  //Ошибка

Проверка актуальности заказа и подтверждение

# Параметр Описание
1 URL метода https://paylate.ru/API/approve_order
2 token Токен, формируется как: md5(логин + md5(пароль) + номер_заказа)
3 client_id Идентификатор магазина в сервисе PayLate
4 order_id идентификатор заказа в Вашей БД
5 code Код для получения заказа названный клиентом
6 amount Итоговая сумма товаров в чеке
7 initial_fee Сумма первого взноса принимаемая в кассу магазина (необязательный параметр)
8 is_check При is_check = true производится проверка актуальности заказа, при отсутствии is_check, либо is_check = false - заказ подтверждается

Пример запроса

{
"token": "",
"client_id": "1524072013",
"order_id": "PRSL-1288",
"amount": 35200.96,
"initial_fee": 500.00,
"code": 12345,
"is_check": true
}


Ответ

{"result":1, "message":""}   //Заказ подтвержден
{"result":0, "message":"текст ошибки"}   //Ошибка

Аннулирование заказа

Перед закртием кассовой смены должны быть аннулированы все отложенные за день чеки.
Отменить заказ возможно до отправки запроса на подтверждение с is_check = true


# Параметр Описание
1 URL метода https://paylate.ru/API/refuse_order
2 token Токен, формируется как: md5(логин + md5(пароль) + номер_заказа)
3 client_id Идентификатор магазина в сервисе PayLate
4 order_id идентификатор заказа в Вашей БД
6 amount Итоговая сумма товаров в чеке

Пример запроса

{
"token": "",
"client_id": "1524072013",
"order_id": "PRSL-1288",
"amount": 35200.96
}


Ответ

{"result":1, "message":""}   //Заказ аннулирован
{"result":0, "message":"текст ошибки"}   //Ошибка


ул. Лавочкина, 2а, офис 210
г. Химки, Московская область, Россия, 141407
Тел.: 8 (495) 248-01-41