В главное меню

Отключение подписки


Введение

Данный сервис позволяет отключить подписку и регулярные платежи по ней, без возможности возобновления. В параметре передается идентификатор подписки.

Статусы подписок, над которыми возможна данная операция:

  • active
  • suspended
  • repeatedPay

Входные параметры

Заголовок запроса

POST
Endpoint: https://sandbox.pay.mts.ru/private/v1/subscriptions/disable/{subscriptionId} HTTP/1.1
Content-Type: application/json
<Основные параметры>

Основные параметры

Поле

Тип

Обяз.

Описание

Request-IdguidдаИдентификатор конкретного запроса

Requestor-Name

string

нет

Наименование сервиса.

  • Для веба - домен, на котором запущен виджет.
  • Для SDK - идентификатор приложения.
  • Для API - имя вызывающей системы.
Requestor-Typestringнет

Тип витрины.

  • API
  • Web Widget
  • Web Page
  • SDK Apple
  • SDK Android
Requestor-VersionstringнетВерсия виджета/sdk

Параметр запроса

Поле

Тип

Обязат.

Описание

Request-Id

guid

да

Идентификатор конкретного запроса, генерируется на стороне вызывающей системы

subscriptionId

guid

да

Идентификатор подписки, уникальное текстовое значение

Выходные параметры

Заголовок ответа

Content-Type: application/json; charset=utf-8
http-code: 200
http-status: OK

Тело ответа

Поле

Тип

Описание

status

string[32]

Статус подписки

Пример

Заголовок запроса

POST https://sandbox.pay.mts.ru/private/v1/subscriptions/disable/051f7a94-bfc0-432f-ae06-fd31c3ee50f8 HTTP/1.1
Host:
Content-Type: application/json
Request-Id: 8df44628-5fe8-40b8-8a2d-e214209a5cae

Заголовок ответа

Content-Type: application/json; charset=utf-8
http-code: 200
http-status: OK

Тело ответа

{
  "status": "disabled"
}

Возможные коды ошибок

code

message

userMessage

00299998

Validation error

Не пройдена валидация данных

00299999

An unexpected error has occurred

Непредвиденная ошибка

01000001

Invalid certificate

Сертификат не прошел проверку

01000002

Inactive merchant

Мерчант не активный

03000002

Subscription {0} not belong to merchant {1}

В процессе проведения операции произошла ошибка. Обратитесь в службу поддержки

03000007

Subscription {0} not found

В процессе проведения операции произошла ошибка. Обратитесь в службу поддержки

03000008

Invalid operation for current subscription status: Current status: {0}

В процессе проведения операции произошла ошибка. Попробуйте позже

Обработка исключительных ситуаций

Если после выполнения запроса, не был получен ожидаемый ответ: "status": "disabled", есть два варианта действий:

  1. Выполнить запрос по поиску подписок, с указанием id подписки. Получив ответ, необходимо проверить статус подписки:
    1. если статус disabled, значит предыдущий запрос отработал корректно, дополнительных действий в интеграции – не требуется. Можно на своей стороне отключать подписку;
    2. если получен статус отличный от disabled:
      1. active, suspended, repeatedPay – необходимо повторить попытку отключения;
      2. creating – нарушение процесса, отменить такую подписку невозможно;
      3. paymentProcess – необходимо повторить попытку отключения позже, когда статус сменится на другой.

      2. Выполнить повторно операцию по отключению:

    1. будет получен ответ: "status": "disabled", значит в предыдущем запросе операция не была выполнена. Но теперь подписка отключена в платежном шлюзе;
    2. получен код ошибки, соответствующий ситуации (список кодов и описание выше).