Оформление подписки

Первая покупка проходит через checkout: платформа создаёт заказ и возвращает ссылку на оплату. После успешного платежа карта сохраняется, и следующие периоды списываются без участия клиента — повторно оформлять ничего не нужно.

Если карта уже сохранена с прошлой покупки, подписку можно создать сразу, без оплаты по ссылке.

Создание checkout подписки

Метод
POST
URL
https://api.gigma.ru/api/counterparty/subscriptions/checkout
Авторизация
App Token + Bearer token
Headers
Token: {application_token}; Authorization: Bearer {counterparty_token}
Успешный ответ
200 / 201 / 202

Передайте ровно одно поле: nomenclature_id или nomenclature_ids.

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

  • nomenclature_id (integer, условно обязательно) — один тариф;
  • nomenclature_ids (integer[], условно обязательно) — от 1 до 20 уникальных ID тарифов;
  • autopay_consent (boolean, обязательно) — должно быть true;
  • payment_method_type (string, опционально) — допустимый тип оплаты.

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

{
    "nomenclature_id": 34780,
    "autopay_consent": true
}

Ответ

Ответ для одного тарифа:

{
    "order_id": 501,
    "nomenclature_id": 34780,
    "amount": "490.00",
    "currency": "RUB",
    "billing_period_months": 1,
    "payment_method_type": "bank_card",
    "payment_link": "https://yoomoney.ru/checkout/..."
}
  • 201 — создан новый checkout;
  • 200 — возвращён уже существующий незавершённый checkout;
  • 202 — результат создания платежа ещё уточняется. Не создавайте параллельный checkout: повторите запрос или получите состояние заказа.

Конфликт с другим незавершённым платежом возвращается как 409. Недоступный тариф, отсутствие платёжного склада или неверные условия — как 422.

Получение подписок клиента

Метод
GET
URL
https://api.gigma.ru/api/counterparty/subscriptions
Авторизация
App Token + Bearer token
Headers
Token: {application_token}; Authorization: Bearer {counterparty_token}
Успешный ответ
200

Ответ

{
    "data": [
        {
            "id": 42,
            "application_id": 17,
            "plan_slug": "nomenclature-34780",
            "nomenclature_id": 34780,
            "billing_period_months": 1,
            "amount": "490.00",
            "currency": "RUB",
            "status": "active",
            "current_period_start": "2026-08-15T10:00:00+00:00",
            "current_period_end": "2026-09-15T10:00:00+00:00",
            "next_charge_at": "2026-09-15T10:00:00+00:00",
            "latest_payment": {
                "status": "succeeded"
            },
            "can_retry_payment": false,
            "retry_payment_reason": "already_paid"
        }
    ]
}

next_charge_at означает «не раньше этого времени»; фактическая попытка выполняется ближайшим запуском планировщика.

Оформление с сохранённой картой

Создание подписки с немедленным списанием

Метод
POST
URL
https://api.gigma.ru/api/counterparty/subscriptions
Авторизация
App Token + Bearer token
Headers
Token: {application_token}; Authorization: Bearer {counterparty_token}
Успешный ответ
201 / 202

Используйте endpoint только когда у клиента уже есть активный saved_payment_method_id текущего Application.

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

  • nomenclature_id (integer, условно обязательно) — ID тарифа;
  • plan_slug (string, условно обязательно) — slug тарифа вместо nomenclature_id;
  • saved_payment_method_id (integer, обязательно) — сохранённый способ оплаты;
  • autopay_consent (boolean, обязательно) — должно быть true.

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

{
    "nomenclature_id": 34780,
    "saved_payment_method_id": 9,
    "autopay_consent": true
}

Ответ

Успешно активированная подписка возвращается как 201; продолжающееся или требующее проверки списание — как 202. Ответ содержит объект data с подпиской. Окончательная ошибка первого списания возвращается как 422.

© 2026 Gigma