Получение данных подписки [DEPRECATED]
Поддержка BillingClient SDK прекращается 1 августа 2026 года. После 1 августа 2026 года платежи перестанут обрабатываться для всех покупок, включая подписки.
До этого времени BillingClient SDK продолжает свою работу, но устранение неисправностей, влияющих на работу платежей, может занимать больше времени. Новая функциональность добавляться не будет.
Рекомендуем использовать Pay SDK в проектах.
Для перехода на Pay SDK воспользуйтесь инструкцией по миграции.
Метод позволяет получить информацию о подписке по токену подписки.
Если не знаете с чего начать, прочтите инструкцию в сценариях использования.
Параметры взаимодействия
Для реальных подписок:
Метод устарел и не рекомендуется к использованию.
https://public-api.rustore.ru/public/subscription/{subscriptionToken}
Для тестовых подписок используйте отдельный метод:
https://public-api.rustore.ru/public/sandbox/subscription/{subscriptionToken}
Для работы с тестовыми платежами и подписками вам понадобится новый ключ, при создании которого нужно указать методы для тестирования.
| Атрибут | Тип | Описание | Обязательность | Расположение | Пример |
|---|---|---|---|---|---|
Public-Token | string | Jwe-токен авторизации в Public API Rustore. Как получить токен авторизации. | Да | header | N/A |
subscriptionToken | string | Как получить токен подписки, см. документацию по SDK платежей. | Да | path | 111.123 |
Параметры ответа
| Атрибут | Тип | Описание | Обязательность | Расположение | Пример |
|---|---|---|---|---|---|
code | string | Код ответа. | Да | body | • ОК;• ERROR;• BAD_REQUEST;• NOT_FOUND. |
message | string | Расшифровка кода ответа. | Нет | body | Jwe token is expired |
body{} | object | Тело ответа | Нет | body | N/A |
timestamp | string | Время ответа. | Да | body | 2023-08-02T10:11:04.655684723+03:00 |
body{}
| Атрибут | Тип | Описание | Обязательность | Расположение | Пример |
|---|---|---|---|---|---|
code | number | Код ответа. | Да | body | 0 |
success | boolean | Флаг успешности ответа. | Да | body | true |
message | string | Расшифровка кода ответа. | Нет | body | Неизвестная ошибка |
body{} | object | Тело сообщения. | Нет | body | N/A |
body.body{}
| Атрибут | Тип | Описание | Пример |
|---|---|---|---|
serviceName | string | Название сервиса. | Okko |
subscriptionId | number | Уникальный идентификатор подписки. | 12345 |
addParameters | string | Дополнительные параметры по подписке. | Something about subscription |
productType | string | Тип продукта. | SUBSCRIPTION |
productName | string | Название продукта. | Okko опт имум |
productCode | string | Код продукта. | monthly_sub |
recurrent | boolean | Признак автопродления. | true |
countOfDay | number | Количество дней. | 10 |
periodType | string | Тип периода. | Доступные значения: • DAY;• MONTH;• YEAR. |
periodDuration | number | Длительность периода. | 10 |
nextPaymentDate | string | Дата следующего платежа. | 2021-03-23 |
price | number | Цена в минимальных единицах валюты (копейки). | 9999 |
currency | string | Валюта. | RUB |
imageUrl | string | Ссылка на картинку продукта. | N/A |
state | string | Статус подписки. | Активные статусы • ACTIVATED — подписка активна. Промежуточные статусы • ACCEPTED — ожидает оплаты; • DEPOSITED — платеж проведен, подписка ожидает активации; • CLOSE_PENDING — подписка в процессе закрытия; • REPEATING — подписка на стадии продления, производится попытка списания денег для продления. Финальные статусы • DECLINED — подписка закрыта, все попытки очередных платежей по подписке завершились неуспешно, GRACE и HOLD периоды и количество попыток продления закончились; • CANCELED — пользователь не оплатил подписку; • CLOSED — подписка закрыта; пользователь отключил автопродление подписки, истек оплаченный период, провайдер подтвердил закрытие подписки; • REFUNDED — инициирован возврат средств пользователю. |
currentPeriod | string | Наименование текущего периода. | Доступные значения: • PROMO — бесплатный период; • START — стартовый период со сниженной ценой; • STANDARD — стандартный период; • GRACE — грейс-период, пользователь не оплатил подписку, попытки списания продолжаются, доступ к контенту сохраняется; • HOLD — холд-период, пользователь не оплатил подписку, попытки списания продолжаются, доступ к контенту должен быть прекращен. |
debtPaymentPeriod | string | Наименование платежного периода. | Null, если период стандартный. |
description | string | Опи сание продукта подписки. | Описание |
tariffId | number | Уникальный идентификатор тарифа. | 12345 |
periods [] | array[object] | Информация о текущем периоде. | См. описание ниже. |
body.body.periods []
| Атрибут | Тип | Описание | Пример |
|---|---|---|---|
periodName | string | Наименование текущего периода. | Доступные значения: • PROMO;• START;• STANDARD;• GRACE;• HOLD. |
periodType | string | Тип периода. | Доступные значения: • DAY;• MONTH;• YEAR. |
periodDuration | number | Длительность периода. | 10 |
periodPrice | number | Цена в минимальных единицах валюты (копейки). | 10000 |
nextPeriod | string | Наименование следующего периода. | Доступные значения: • PROMO;• START;• STANDARD;• GRACE;• HOLD. |
Пример ответа
"code":"200",
"message":"something",
"timestamp":"2023-08-02T10:11:04.655684723+03:00",
"body":
{
"code": 40401,
"success": false,
"message": "Неизвестная ошибка",
"body": {
"serviceName": "Okko",
"subscriptionId": 100500,
"addParameters": "something",
"productType": "string",
"productName": "ОККО Оптимум",
"productCode": "string",
"recurrent": true,
"countOfDay": 100,
"periodType": "DAY",
"periodDuration": 30,
"nextPaymentDate": "2021-03-23",
"price": 999,
"currency": "RUB",
"imageUrl": "https://static-eu.insales.ru/images/products/1/7435/306650379/thumb_1586524817849_15832463664565053990106868.jpg",
"state": "ACTIVATED",
"currentPeriod": "STANDARD",
"debtPaymentPeriod": "string",
"description": "Описание",
"tariffId": 100500,
"periods": [
{
"periodName": "STANDARD",
"periodType": "DAY",
"periodDuration": 10,
"periodPrice": 10000,
"nextPeriod": "STANDARD"
}
]
}
}
Пример ответа с ошибкой
{
"code": "ERROR",
"message": "Jwe token is expired",
"body": null,
"timestamp": "2024-01-21T13:51:59.654427798+03:00"
}
Валидация запроса
При получении запроса проверяется токен авторизации, полученный методом получения токена авторизации:
- владелец и/или приложение не должны быть заблокированы;
- токен должен быть действительным;
- код приложения
application_codeсоответствует владельцу, получившему токен авторизации.