Структура уведомления
На этой странице описана структура уведомления об изменении статуса платежа и тестового уведомления.
Об а они отправляются в формате POST-запроса со следующими атрибутами:
| Атрибут | Тип | Описание | Обязательность | Расположение | Пример |
|---|---|---|---|---|---|
id | String | ID уведомления | Да | body | 12345 |
timestamp | String | Время отправки уведомления | Да | body | 2025-11-18T10:38:58.619Z |
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 | Время изменения статуса платежа. | Да | 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 |
data уведомления о событии подписки
| Атрибут | Тип | Описание | Обязательность | Расположение | Пример заполнения |
|---|---|---|---|---|---|
product_code | string | Код продукта (указывается в консоли при создании продукта), который был оплачен | Да | body.subscription_data | one_more_scan |
event_time | string | Время возникновения соответствующего события. | Да | body.subscription_data | 2025-11-18T10:38:58.619Z |
subscription_event_type | string | Тип события по подписке: | Да | body.subscription_data | ACTIVATED |
status_new | string | Новый статус подписки. Доступные значения: Информация о статусах подписки доступна в диаграмме статусной модели. | Да | body.subscription_data | CLOSED может совпадать со status_old, например, при событии RENEWED, когда статус не меняется |
status_old | string | Старый статус подписки. Список статусов аналогичен status_new. | Нет. Может быть пустым, если это первое событие активации подписки | body.subscription_data | ACTIVE |
period_old | string | Период подписки. Доступные значения: | Нет. Может быть пустым, если это первое событие активации подписки | body.subscription_data | MAIN |
period_new | string | Новый период подписки. Список доступных значений аналогичен представленному в period_old | Да | body.subscription_data | MAIN |
autorenewing | boolean | Статус автопродления подписки: TRUE — автопродление включено, FALSE — автопродление выключено | Да | body.subscription_data | TRUE |
invoice_id | string | Уникальный номер счета на оплату в системе RuStore. | Нет. Может отсутствовать, например, для события CANCEL/RESUME | body.subscription_data | 123 |
order_id | string | Уникальный номер заказа в системе приложения разработчика. Может задаваться при инициации заказа в anyApp, либо присваиваться автоматически платежным провайдером. | Да | body.subscription_data | 123e4567e89b-12d3-a456-4266-55440000 |
purchase_id | string | Уникальный номер покупки | Да | body.subscription_data | 123e4567e89b-12d3-a456-4266-55440000 |
developer_payload | string | Дополнительная информация о заказе, переданная разработчиком при покупке продукта | Нет | body.subscription_data | Any data from developer |
Примеры 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\",\"developer_payload\":\"Any data from developer\"}"
}
payload уведомления для проверки соединения в тестовом или реальном окружении
{
"app_id": 12345,
"notification_type": "TEST_EVENT",
"data": "{\"test\":\"TEST\"}"
}
payload уведомления об изменении статуса подписки
{
"app_id": 12345,
"notification_type": "SUBSCRIPTION_EVENT",
"data": "{\"product_code\":\"one_more_scan\",\"event_time\":\"2025-11-18T10:38:58.619Z\",\"subscription_event_type\":\"ACTIVATED\",\"status_new\":\"ACTIVE\",\"status_old\":\"\",\"period_old\":\"\",\"period_new\":\"MAIN\",\"autorenewing\":true,\"invoice_id\":\"123\",\"order_id\":\"123e4567e89b-12d3-a456-4266-55440000\",\"purchase_id\":\"123e4567e89b-12d3-a456-4266-55440000\",\"developer_payload\":\"Any data from developer\"}"
}