MCP-серверыMCP-серверыYooKassa APIФинансовая аналитика

ЮKassa через API и MCP: 34 метода, один конверт отказа и ключ идемпотентности не на всех POST

Разбираем API ЮKassa изнутри: платежи, возвраты, чеки, выплаты и сделки чужого магазина — не биллинг самой Миры, — где спецификация расходится с интуицией про Idempotence-Key, почему создание платежа не считается расходом и как всё это доступно через MCP-сервер Mira без единой строки кода.

3 сентября 2026 г.3 мин чтения

Обзор

Важная оговорка сразу: это не про то, как Mira принимает вашу оплату подписки — свой биллинг у неё есть и живёт отдельно. Это про ВАШ магазин: если вы принимаете платежи через ЮKassa, у вас есть личный кабинет со своей парой shop_id и secret_key, и именно этими ключами агент читает и меняет данные ВАШЕЙ кассы — платежи, возвраты, чеки, выплаты, сделки.

Mira подключает этот API целиком — 34 действия в десяти разделах — и отдаёт его в Claude через MCP. Ниже — что там есть на самом деле и что расходится с интуицией.

Что доступно

Раздел Действий Что даёт
Платежи 5 создание, список, информация, подтверждение, отмена
Возвраты 3 создание, список, информация
Чеки (54-ФЗ) 3 создание, список, информация
Выплаты 4 создание, список, поиск, информация
Сделки 3 распределение платежей между магазином и продавцами (для платформ)
Персональные данные 2 данные получателя выплаты — самозанятые, физлица
Счета 2 страница оплаты со своей ссылкой
Способы оплаты 2 сохранённый способ для рекуррентных списаний
Вебхуки 3 подписка на уведомления о событиях
Кассовые ссылки 5 офлайн-точки: активация, смена точки, деактивация, реактивация
Справочники 2 список банков СБП, настройки магазина

Идемпотентность — не на всех POST

Правило «на каждый создающий запрос — заголовок Idempotence-Key (UUID), чтобы повтор после сетевого сбоя не создал платёж дважды» звучит абсолютным. Спецификация говорит иначе: у деактивации и реактивации кассовой ссылки — тоже POST, но заголовок не заявлен вовсе. Отправить его туда, где поставщик не ждёт, не смертельно, но и не гарантированно безопасно — мы сверили это по каждому пути спецификации, а не по общему правилу «раз POST — значит нужен», и таблица вызовов несёт это знание полем идемпотентно, а не единым флагом на весь HTTP-метод.

Создание платежа не тратит деньги

Барьер записи в Mira делит пишущие действия на «просто меняет» и «ещё и тратит деньги». Возврат и выплата — очевидный расход: деньги уходят со счёта магазина. А вот создание платежа, хоть и стоит под тем же барьером как видимое снаружи действие (счёт, выставленный живому покупателю), деньгами магазина не считается — они, наоборот, ПРИХОДЯТ. Подтверждение платежа (capture) — по той же логике: оно завершает списание с покупателя в пользу магазина. А вот отмена платежа деньги ОСТАНАВЛИВАЕТ, а не тратит — снимает удержание с карты, не потратив ничего.

Один конверт отказа на весь API

В отличие от площадок с семью формами ошибки по разделам (например, у Авито), ЮKassa отвечает одной формой всегда:

{"type": "error", "code": "invalid_request",
 "description": "Invalid amount value", "parameter": "amount"}

Разбор — одна функция, а не таблица форм: description — человеческий текст, code и parameter уточняют его, и оба необязательны.

Постраничный обход одним действием

Списки платежей, возвратов, чеков, сделок и выплат ходят курсором (cursor/next_cursor), лимит — 100 записей за страницу. Инструмент добавляет составное действие list_all, которое пролистывает курсор само, до разумного потолка страниц — агенту нужна сводка за период, а не выгрузка истории магазина целиком за один вызов.

Живая проверка

Ключей для боевой пары shop_id/secret_key нет — раздел появится, когда владелец магазина их даст. Разбор запроса, подстановка пути, барьер записи и заголовки проверены против собственного HTTP-сервера в тестах (перехват на транспорте — тот же приём, что у Авито и Ozon Performance), а не против api.yookassa.ru.

Новости в Telegram

Подпишитесь на каналы — новые статьи и обзоры каждый день.

Источники

Ещё по теме «MCP-серверы»

MCP-серверы

1С через OData: как достать данные учётной базы без единой строки кода на встроенном языке

Разбираем стандартный OData-интерфейс 1С:Предприятие: чем он отличается от API конкретного сервиса, как узнать, что вообще опубликовано на конкретной базе, как проводить и отменять проведение документов и как всё это работает через MCP-сервер Mira без единой строки кода на встроенном языке.

3 сентября 2026 г.
MCP-серверы

CloudPayments через API и MCP: 32 метода, конверт отказа, который не отличает 400 от отклонённой карты, и Public ID, который просят дважды

Разбираем API CloudPayments изнутри: платежи, выплаты, подписки и счета чужого магазина — не биллинг самой Миры, — почему списание по сохранённому токену считается расходом, а обычная оплата картой нет, зачем платёжной ссылке СБП собственный Public ID в теле запроса поверх Basic Auth, и как всё это доступно через MCP-сервер Mira без единой строки кода.

3 сентября 2026 г.
MCP-серверы

Финтабло через API и MCP: 112 методов финучёта, семь путей без объявленных параметров и почему тут нет отчётов

Разбираем API Финтабло изнутри: 112 методов финансового учёта — ДДС, счета, контрагенты, сделки, зарплата, имущество, ОПиУ, — где спецификация поставщика сама не дописывает параметры пути, почему у четырёх PUT-запросов id дублируется в теле и куда делись отчёты. Всё доступно через MCP-сервер Mira без единой строки кода.

3 сентября 2026 г.