Точка Банк API: Вернуть оплату по платёжной ссылке

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

Возврат может быть полным или частичным, но доступен только для операции в статусе APPROVED. Результат запроса содержит Data.isRefund, сумму и идентификатор операции возврата.

  1. Получи токен с разрешениями ReadAcquiringData и MakeAcquiringOperation.
  2. Возьми operationId из вебхука acquiringInternetPayment или найди операцию через GET /uapi/acquiring/v1.0/payments с customerCode и датами периода.
  3. Запроси GET /uapi/acquiring/v1.0/payments/{operationId} и убедись, что статус операции — APPROVED.
  4. Выполни возврат: POST /uapi/acquiring/v1.0/payments/{operationId}/refund с суммой не больше суммы оплаты.
curl -L 'https://enter.tochka.com/uapi/acquiring/v1.0/payments/48232c9a-ce82-1593-3cb6-5c85a1ffef8f/refund' \
  -H 'Content-Type: application/json' \
  -H 'Accept: application/json' \
  -H 'Authorization: Bearer <token>' \
  -d '{
    "Data": {
      "amount": "1234.00"
    }
  }'

Базовые URL

Авторизация

Тип: Bearer-токен

Для интеграции одной компании создай JWT-ключ в интернет-банке: «Сервисы» → «Интеграции и API» → «Создать JWT-ключ». Выбери срок и разрешения, сохрани токен и client_id, затем передавай Authorization: Bearer <jwt_token>. У JWT нет refresh-токена; после истечения срока ключ перевыпускается вручную.

Для сервиса, который работает от имени других компаний, используется OAuth 2.0: зарегистрируй приложение, получи служебный токен по client_credentials, создай consent, отправь клиента на подтверждение, обменяй code на access_token и refresh_token. code живёт 5 минут, access_token — 24 часа, refresh_token — 30 дней; при запросе данных конкретной компании дополнительно передавай её идентификатор в заголовке customerCode.

В песочнице используй Authorization: Bearer sandbox.jwt.token; отдельные ключи и доступы для неё не нужны.

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

GET /uapi/acquiring/v1.0/payments/{operationId} — Get Payment Operation Info

Возвращает статус, сумму, способ оплаты и данные покупателя по одной операции. Требуется разрешение ReadAcquiringData.

Документация: https://developers.tochka.com/docs/tochka-api/api/get-payment-operation-info-acquiring-v-1-0-payments-operation-id-get

Параметр Где Тип Обяз. Описание
operationId path string да Идентификатор платежа

GET /uapi/acquiring/v1.0/payments — Get Payment Operation List

Возвращает операции по платёжным ссылкам и их статусы. Требуется разрешение ReadAcquiringData; даты периода лучше передавать, чтобы не запрашивать всю историю.

Документация: https://developers.tochka.com/docs/tochka-api/api/get-payment-operation-list-acquiring-v-1-0-payments-get

Параметр Где Тип Обяз. Описание
customerCode query string да Уникальный код клиента
fromDate query string нет Начало периода создания операций
toDate query string нет Конец периода создания операций
page query integer нет Номер страницы, по умолчанию 1
perPage query integer нет Количество записей на странице, по умолчанию 1000
status query string нет Статус операции

POST /uapi/acquiring/v1.0/payments/{operationId}/refund — Refund Payment Operation

Оформляет полный или частичный возврат по платежу в статусе APPROVED. Требуется разрешение MakeAcquiringOperation.

Документация: https://developers.tochka.com/docs/tochka-api/api/refund-payment-operation-acquiring-v-1-0-payments-operation-id-refund-post

Параметр Где Тип Обяз. Описание
operationId path string да Идентификатор платежа
Data.amount body number да Сумма возврата: больше 0 и не больше суммы оплаты

Нюансы

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


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