Чтобы делать запросы к API, укажите заголовок X-Api-Key: <Ваш токен>
Алгоритм работы с сервисом
- В стороннем сервисе оплат (LifePay) укажите ссылку обработчика оплат на https://payments.podorojnik.ru/handlers/transaction
- В личном кабинете этого сервиса укажите URL для вебхука, чтобы получать сообщения от этого сервиса. Описание структуры сообщения смотри ниже.
- Задайте настройки сервисов, чтобы мы обнаружили Ваши оплаты и отправили Вам вебхук сообщение
- Перед тем как отправить данные в сторонний сервис оплат (LifePay), зарегистрируйте заказ в этом сервисе POST /api/orders. Вам придет идентификатор, который Вы и отправляете в сторонний сервис.
- Вы можете воспользоваться API, чтобы получить статус оплаты заказов, вручную отменить заказ, пометить оплаченным или возвращенным
Структура сообщений транзакции
Сообщение отправляется в формате application/json
| Ключ | Описание |
|---|---|
| event |
Тип события:
|
| error |
Описание ошибки при event = transaction-operation-fail. Структура:
|
| transaction |
Объект транзакции, полученный при обработке сообщения от стороннего сервиса. Структура:
|
| order |
Объект заказа, который был найден или создан при обработке сообщения от стороннего сервиса
|
| raw | Объект оригинального сообщения от стороннего сервиса |
Структура сообщений чека
Сообщение отправляется в формате application/json
| Ключ | Описание |
|---|---|
| event |
Тип события:
|
| error |
Описание ошибки при event = check-operation-fail. Структура:
|
| operation |
Объект операции, полученный при обработке сообщения от стороннего сервиса. Структура:
|
| check |
Объект чека, который был найден или создан при обработке сообщения от стороннего сервиса
|
| raw | Объект оригинального сообщения от стороннего сервиса |
Подпись вебхука
Если Вы указали в личном кабинете Секретный ключ для вебхука, то при отправке вебхука на ваш URL, он будет подписан
Подпись указана в заголовке Signature: <подпись>
Чтобы проверить подпись, сравните строку с sha256 хэшем из данных POST, кодированных в json. Пример на PHP:
hash_hmac('sha256', json_encode($_POST), '<секретный ключ>')