PayKeeper: Списать заблокированные деньги

Сценарий из mcp-everything. Актуально на 2026-10-24.

Двухстадийная оплата: деньги заблокированы на карте, списываются после сборки заказа.

  1. Чтобы списать всю сумму сразу, не дожидаясь автосписания: POST /change/payment/capture/ с id платежа и token.
  2. Чтобы списать только часть (часть товара закончилась), используй POST /change/payment/reverse/ с нужной суммой — частичное списание выбирается автоматически по состоянию платежа.
  3. Если банк ответил status = queued, запрос лишь принят — проверь итог через несколько минут: GET /info/payments/byid/.
curl -X POST "$PK/change/payment/capture/" -u "$AUTH" -d id=<id платежа> -d token=$TOKEN

Базовые URL

Авторизация

Тип: Basic Auth

Каждый запрос отправляется с заголовком Authorization: Basic — логин и пароль от личного кабинета PayKeeper в base64. Запросы на чтение выполняются GET, изменения — POST с заголовком Content-Type: application/x-www-form-urlencoded. Каждый POST-запрос дополнительно должен содержать параметр token — токен безопасности, полученный методом /info/settings/token/.

Методы сценария

GET /info/payments/byid/ — Платёж по идентификатору

Параметр Где Тип Обяз. Описание
id query string да Идентификатор платежа в PayKeeper
advanced query string нет true — вернуть дополнительные опции платежа

POST /change/payment/reverse/ — Возврат платежа

Полный возврат, отмена авторизации, частичный возврат или частичное списание — выбирается автоматически по состоянию платежа. Доступно пользователям с включённой функцией возврата.

Параметр Где Тип Обяз. Описание
id body string да Идентификатор платежа в PayKeeper
amount body string да Возвращаемая сумма, разделитель точка
partial body string да Частичный возврат: только true или false
refund_cart body string нет JSON-строка товаров к возврату (для чека 54-ФЗ)
token body string да Токен безопасности

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

{
    "result" : "success"
}

POST /change/payment/capture/ — Списание по авторизации

Списывает средства по ранее авторизованному платежу, не дожидаясь автосписания. Для частичного списания используют /change/payment/reverse/.

Параметр Где Тип Обяз. Описание
id body string да Номер платежа к списанию
token body string да Токен безопасности

Нюансы

Другие сценарии


Если этого недостаточно — официальная документация: https://docs.paykeeper.ru/dokumentatsiya-json-api/ Вся интеграция одним документом: https://mcp-everything.ru/integrations/paykeeper.md