Рекуррентные платежи

Внимание! Метод недоступен по умолчанию и предоставляется по запросу в support@capusta.space
Метод /recurrent-debit позволяет производить списания по токену подписки с учётом бизнес-логики вашего проекта. Он нужен в тех случаях, когда периодичность переводов невозможно предопределить (например, с этой целью вы привязываете карту в сервисе такси и после поездки сервис может списать с вас стоимость оказанных услуг).
POST /recurrent-debit
{
    "projectCode": "myproject",
    "subscriberId": 10,
    "subscriptionToken": "123124512849815812-128184724812",
    "description": "test",
    "amount": {
        "amount": 1000,
        "currency": "RUB"
    }
}
Необходимые для проведения таких платежей параметры subscriberId и subscriptionToken возвращаются в уведомлении о первом платеже с подпиской (callback) или после проведения установочного платежа. Методы не работают по умолчанию и предоставляются по запросу в службу поддержки.

Пример уведомления о подписке:
{
    "transactionId": "09af4329-cd4d",
    "callbackId": 1884,
    "amount": {
        "amount": 100000,
        "currency": "RUB"
    },
    "status": "SUCCESS",
    "subscriberId": 566,
    "subscriptionToken": "28873055-b565-4f4c-89ec-8c91fc63507f",
    "billId": "dc50ee84-b64e"
}
  • billId - идентификатор оплаченного счета

  • transactionId - идентификатор транзакции оплаты счета

  • subscriberId - необходимый идентификатор подписки для метода /recurrent-debit

  • subscriptionToken - токен подписки для списания

Установочный платёж

Внимание! Метод недоступен по умолчанию и предоставляется по запросу в support@capusta.space
Метод /setting-payment позволяет произвести установочный платеж (списание и возврат 1 руб). Он нужен в тех случаях, когда списание суммы с банковской карты не требуется, но предполагается в будущем (например, после завершения бесплатного периода пользования).
POST /setting-payment
{
  "projectId": 1,
  "projectCode": "kotiki",
  "description": "test"
}
Параметры projectCode и projectId являются взаимозаменяемыми.
Параметр description является опциональным. В случае его указания, созданный счет на рубль будет иметь указанное описание.

Пример ответа:
"amount": {
        "amount": 100,
        "commission": 0,
        "currency": "RUB"
    },
    "created_at": "2021-09-22T13:50:16.119Z",
    "description": "test",
    "id": "some_string",
    "projectId": 1,
    "status": "CREATED",
    "payUrl": "https://get.capusta.space/bill/uuid",
    "subscription": {
      "id": 233,
      "per": null,
      "oneTimePayment": false
    }
}
Создаётся счет на 1 рубль с подпиской, в ответе данного метода возвращается ссылка на оплату данного счета (payUrl), на которую следует переадресовать плательщика.

После проведение платежа на callback url придет сообщение вида:
{
    "transactionId": "09af4329-cd4d",
    "callbackId": 1884,
    "amount": {
        "amount": 100000,
        "currency": "RUB"
    },
    "status": "SUCCESS",
    "subscriberId": 566,
    "subscriptionToken":"28873055-b565-4f4c-89ec-8c91fc63507f",
    "billId": "dc50ee84-b64e"
}
где subscriptionToken - токен созданной подписки для списания по карте, с которой проводилась оплата.