Структура уведомления
На этой странице описана структура уведомления об изменении статуса платежа и тестового уведомления.
Об а они отправляются в формате POST-запроса со следующими атрибутами:
| Атрибут | Тип | Описание | Обязательность | Расположение | Пример | 
|---|---|---|---|---|---|
| id | String | ID уведомления | Да | body | 12345 | 
| timestamp | String | Время отправки уведомления | Да | body | 2022-07-08T13:24:41.8328711+03:00 | 
| payload | String | Строка данных в Base64, зашифрованная с помощью алгоритма AES-256 | Да | body | N/A | 
HTTP-заголовок запроса
| Заголовок | Значение | Обязательность | 
|---|---|---|
| Content-Type | application/json | Да | 
payload
| Атрибут | Тип | Описание | Обязательность | Расположение | Пример | 
|---|---|---|---|---|---|
| notification_type | String | 
 | Да | body | INVOICE_STATUS | 
| app_id | Number | ID приложения, в котором совершена покупка | Да | body | 12345 | 
| data | String | Блок данных, структура которого зависит от  | Да | body | N/A | 
data уведомления об изменении статуса тестового или реального платежа
| Атрибут | Тип | Описание | Обязательность | Расположение | Пример | 
|---|---|---|---|---|---|
| product_code | String | Код оплаченного продукта, указывается в RuStore Консоль при создании продукта | Да | payload.data | test_test | 
| change_status_time | String | Время изменения статуса платежа или время отправки первого уведомления. Если уведомление доставляется с первой попытки, change_status_timeсоответствуетtimestamp | Да | payload.data | 1970-01-01T00:00:00Z | 
| status_new | String | Новый статус платежа. Доступные значения: 
 | Да | payload.data | paid | 
| status_old | String | Предыдущий статус платежа. Доступные значения: 
 | Да | payload.data | executed | 
| purchase_token | String | Токен покупки. Вы можете использовать его для получения информации о платеже через RuStore API | Да | payload.data | 111.123 | 
| invoice_id | String | Уникальный номер счёта на оплату в RuStore | Да | payload.data | 123 | 
| order_id | String | Уникальный номер заказа в системе приложения разработчика. Может указываться при инициации заказа в приложении, либо присваиваться автоматически платёжным провайдером | Да | payload.data | 123e4567e89b-12d3-a456-4266-55440000 | 
| purchase_id | String | Уникальный идентификатор покупки | Да | payload.data | 123e4567e89b-12d3-a456-4266-55440000 | 
| developer_payload | String | Дополнительная информация о заказе, переданная разработчиком при покупке продукта. Возвращается для платежей, совершенных через Pay SDK | Нет | payload.data | Any data from developer | 
data уведомления для проверки соединения в тестовом или реальном окружении
| Атрибут | Тип | Описание | Расположение | Пример | 
|---|---|---|---|---|
| test | String | Тестовая строка | payload.data | TEST | 
Примеры payload
payload уведомления об изменении статуса тестового или реального платежа
{
  "app_id": 12345,
  "notification_type": "INVOICE_STATUS",
  "data": "{\"change_status_time\":\"1970-01-01T00:00:00Z\",\"product_code\":\"test_test\",\"status_new\":\"paid\",\"status_old\":\"executed\",\"purchase_token\":\"111.123\",\"invoice_id\":\"123\",\"order_id\":\"123e4567e89b-12d3-a456-4266-55440000\",\"purchase_id\":\"123e4567e89b-12d3-a456-4266-55440000\"}"
}
payload уведомления для проверки соединения в тестовом или реальном окружении
{
  "app_id": 12345,
  "notification_type": "TEST_EVENT",
  "data": "{\"test\":\"TEST\"}"
}