Развернуть
Платежный сервис отправляет callback-уведомления провайдеру по следующим событиям: активация, отмена и продление подписки. Уведомление приходит на URL, который был указан при получении доступа к подпискам. Формат уведомления различается по типу события и набору передаваемых полей.
Формат запроса
Активация подписки
| Атрибут | Описание |
|---|---|
| operationType | string Тип операции, по которо й отправляется уведомление. Принимает значение ACTIVATE — создание новой подписки |
| smartAppId | long Идентификатор смартапа в платежном сервисе |
| userId | string Идентификатор пользователя, переданный в запросе на создание подписки |
| subscriptionId | long Идентификатор созданной подписки |
| addParameters | string Список дополнительных параметров, которые передавались в запросе на подключение подписки |
| productCode | string Артикул (код продукта подписки) |
| invoiceId | string Идентификатор платежа для оформления подписки |
| invoiceDate | string (или OffsetDateTime – "yyyy-MM-dd'T'HH:mm:ssXXX") Дата создания счета для оформления подписки |
| paymentResult | string Статус оплаты. Для активации придет значение CONFIRMED — оплачен |
| currentPeriod | string Название первого периода подписки: • PROMO — бесплатный период • START — период с пониженной стоимостью • STANDARD — период по умолчанию, действует до конца подписки • GRACE — период повторных попыток списания. В течение периода контент не блокируется • HOLD — период повторных попыток списания. В течение периода контент блокируется |
| endCurrentPeriodDate | string (или OffsetDateTime – "yyyy-MM-dd'T'HH:mm:ssXXX") Дата окончания первого периода |
Пример
{
"smartAppId": 3,
"userId": "a4d32f...",
"subscriptionId": 111111,
"partnerSubscriptionId": null,
"invoiceId": "876...",
"invoiceDate": "2021-09-10T10:20:51+03:00",
"paymentResult": "CONFIRMED",
"addParameters": "{\"scope\": \"\", \"token\": \"nds1D...\", \"user_id\": \"rq5l...\", \"category\": \"PURCHASE\", \"provider\": \"Provider1\", \"contentId\": \"SberdeviceLite\", \"ipAddress\": \"109.25...\", \"contentType\": \"subscription\", \"externalStoreId\": \"SberdeviceLite\"}",
"operationType": "ACTIVATE",
"productCode": "SberdeviceLite",
"currentPeriod": "STANDARD",
"endCurrentPeriodDate": "2021-10-10T10:21:15+03:00"
}
Отмена подписки
| Атрибут | Описание |
|---|---|
| operationType | string Тип операции, по которой отправляется уведомление. Принимает значение CLOSED — отмена подписки по инициативе пользователя |
| smartAppId | long Идентификатор смартапа в платежном сервисе |
| userId | string Идентификатор пользователя, переданный в запросе на создание подписки |
| subscriptionId | long Идентификатор отменяемой подписки |
| addParameters | string Список дополнительных параметров, которые передавались в запросе на подключение подписки |
| productCode | string Артикул (код продукта подписки) |
| invoiceDate | string (или OffsetDateTime – "yyyy-MM-dd'T'HH:mm:ssXXX") Дата отправки уведомления |
| currentPeriod | string Название отмененного периода подписки: • PROMO — бесплатный период • START — период с пониженной стоимостью • STANDARD — период по умолчанию, действует до конца подписки • GRACE — период повторных попыток списания. В течение периода контент не блокируется • HOLD — период повторных попыток списания. В течение периода контент блокируется |
| endCurrentPeriodDate | string (или OffsetDateTime – "yyyy-MM-dd'T'HH:mm:ssXXX") Текущие дата и время отмены подписки |
Успешно е продление подписки
| Атрибут | Описание |
|---|---|
| operationType | string Тип операции, по которой отправляется уведомление. Принимает значение PROLONG — успешное продление подписки |
| smartAppId | long Идентификатор смартапа в платежном сервисе |
| userId | string Идентификатор пользователя, переданный в запросе на создание подписки |
| subscriptionId | long Идентификатор продлеваемой подписки |
| addParameters | string Список дополнительных параметров, которые передавались в запросе на подключение подписки |
| productCode | string Артикул (код продукта подписки) |
| invoiceId | string Идентификатор счета для продления подписки |
| invoiceDate | string (или OffsetDateTime – "yyyy-MM-dd'T'HH:mm:ssXXX") Дата создания счета для продления подписки |
| paymentResult | string Статус оплаты. Для продления передается значение CONFIRMED — оплачен |
| currentPeriod | string Следующий период подписки: • START — период с пониженной стоимостью • STANDARD — период по умолчанию, действует до конца подписки • GRACE — период повторных попыток списания. В течение периода контент не блокируется • HOLD — период повторных попыток списания. В течение периода контент блокируется |
| endCurrentPeriodDate | string (или OffsetDateTime – "yyyy-MM-dd'T'HH:mm:ssXXX") Дата окончания следующего периода |