Метод получения данных подписки по ID платежа

Метод позволяет получить подписку из системы платежного провайдера по invoice_id первого платежа. Получение производится с использованием методов SmartPay API.

Параметры взаимодействия

GET /public/subscriptions/{invoiceId}

Атрибут

Тип

Описание

Обязательность

Расположение

Пример заполнения

Public-Token

string

Токен доступа к Public API Rustore

Да

header

invoiceId

number

Идентификатор покупки

Да

path

Параметры ответа

Атрибут

Тип

Описание

Обязательность

Расположение

Пример заполнения

code

number

Код ответа

Да

body

message

date

Расшифровка кода ответа

Нет

body

errorCode

string

Код ошибки (при наличии)

Нет

body

body{}

object

Данные ответа от SmartPay

Нет

body

body{}

Пример ответа от SmartPay:

{
  "code": 40401, // Код ответа
  "success": false, //  Текстовая расшифровка статуса
  "message": "Неизвестная ошибка", //  Сообщение для вывода пользователю (для ошибочных статусов)
  "body": {
    "serviceName": "Okko", //  Название сервиса
    "subscriptionId": 100500, //  Уникальный идентификатор подписки (id)
    "addParameters": "{\"something\":\"unknown\"}", //  Дополнительные параметры по подписке
    "productType": "string", //  Тип продукта
    "productName": "ОККО Оптимум", //  Название продукта
    "productCode": "string", //  Код продукта
    "recurrent": false, //  Признак рекуррента
    "countOfDay": 100, //  Количество дней
    "periodType": "MINUTE | HOUR | DAY | MONTH", //  Тип периода
    "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": "NEW | ACCEPTED | DEPOSITED | DECLINED | CANCELED | ACTIVATED | CLOSE_PENDING | CLOSED | REPEATING | REFUNDED | ERROR | MIGRATED", //  Статус подписки
    "currentPeriod": "INSTALLMENT", //  Наименование текущего периода. Доступные значения: INSTALLMENT, PROMO, START, STANDARD, GRACE, HOLD
    "debtPaymentPeriod": "string", //  Наименование платежного периода - null если период стандартный
    "description": "Описание", //  Описание продукта подписки
    "tariffId": 100500, //  Уникальный идентификатор тарифа (id)
    "periods": [
      {
        "periodName": "INSTALLMENT", //  Наименование текущего периода. Доступные значения: INSTALLMENT, PROMO, START, STANDARD, GRACE, HOLD
        "periodType": "MINUTE", //  Тип периода. Доступные значения: MINUTE, HOUR, DAY, MONTH, YEAR
        "periodDuration": 0, //  Длительность периода
        "periodPrice": 0, //  Цена в минимальной единице валюты (копейки)
        "nextPeriod": "INSTALLMENT" //  Наименование следующего периода. Доступные значения: INSTALLMENT, PROMO, START, STANDARD, GRACE, HOLD
      }
    ]
  }
}

errorCode:

  • outdated_token — токен недействителен (истек срок действия);

  • owner_blocked — владелец заблокирован и/или отключена монетизация;

  • app_owner_mismatch — приложение недоступно для переданного токена.

Валидация запроса

При получении запроса проверяется токен авторизации, полученный методом получения токена авторизации:

  • владелец и/или приложение не должны быть заблокированы;

  • токен должен быть действительным;

  • в ответе на запрос invoice в application_code должен содержаться код приложения, соответствующий владельцу, получившему токен. 

Was this information helpful?