API интернет‑эквайринга: интеграция, webhooks, примеры

Получить CloudPayments бесплатно

API интернет‑эквайринга: интеграция, webhooks, примеры

API интернет‑эквайринга — это способ подключить платежи на сайт, в мобильное приложение или ERP через програмный интерфейс. Ниже разбираем архитектуру, webhooks, безопасность, типовые запросы и сравниваем возможности популярных банков.

Table of contents

Что такое API интернет‑эквайринга и когда он нужен

API интернет‑эквайринга — это REST/JSON или gRPC интерфейс платежного шлюза, который позволяет принимать платежи банковскими картами, через СБП, Apple/Google Pay, создавать возвраты, управлять подписками, оформлять фискальные чеки и получать уведомления о статусах. Подробнее о базовых понятиях — в материалах: что такое интернет‑эквайринг и как работает интернет‑эквайринг.

Когда уместно выбирать API:

Если задача проще (быстрый старт без разработки), можно начать с платежных ссылок и позже перейти на API.

Поток платежа через API: от заказа до чека

Типовой сценарий:

  1. Клиент создает заказ на сайте. Вы генерируете order_id на своей стороне.
  2. Backend вызывает endpoint «создать платеж» и получает payment_id + ссылку/параметры для оплаты (HPP, виджет или S2S).
  3. Клиент подтверждает оплату (3‑DS/МирAccept/SBP). Платежный шлюз меняет статус.
  4. Ваш сервер принимает webhook со статусом (authorized, confirmed/paid, canceled, failed).
  5. Вы отгружаете товар/услугу и отправляете данные в ККТ. Про фискализацию — в разделе онлайн‑касса и фискализация.
  6. При необходимости делаете capture/void, возвраты или списания по подписке.

Основные методы API и объекты

Ниже — агрегированная картина типичных ресурсов. Точные названия/параметры смотрите в документации вашего банка/провайдера.

Объект/метод Назначение Когда использовать
POST /payments Создание платежа (amount, currency, description, customer, return_url) Старт оплаты с сайта/приложения
GET /payments/{id} Чтение статуса Сверка статусов, fallback к вебхукам
POST /payments/{id}/capture Подтверждение авторизации Отложенная оплата после проверки наличия товара
POST /payments/{id}/cancel Отмена авторизации Если товар недоступен
POST /refunds Возврат (полный/частичный) Возвраты, частичные возвраты и частичные списания — см. возвраты и списания
POST /customers Создание клиента Для токенизации и подписок
POST /tokens Токенизация карты/кошелька One‑click, рекуррентные списания
POST /subscriptions Создание подписки Регулярные платежи, см. отключение подписок и спорные списания
POST /webhooks/test Проверка приема уведомлений Настройка подписок на события
POST /receipts Отправка данных в ККТ Фискализация, онлайн‑чеки

Поддержка СБП/QR (создание invoice/QR‑ссылки) часто вынесена в отдельный раздел API. Детали — в материале Эквайринг СБП.

Быстрый план интеграции

Чтобы интернет эквайринг установить на сайт и запустить прием платежей через API, придерживайтесь следующего порядка:

  1. Выберите банк/провайдера и тариф. Сравните условия: тарифы и комиссии, сравнение тарифов банков, рейтинг провайдеров.
  2. Пройдите подключение интернет‑эквайринга: анкета, KYC, договор, доступы к sandbox.
  3. Получите ключи (public/secret), настройте IP‑списки, подписи (HMAC/JWT), OAuth2 (если требуется). Подробнее — правила и требования.
  4. Реализуйте создание платежа и прием webhooks. Сохраняйте idempotency‑key на каждый бизнес‑заказ.
  5. Подключите фискализацию и протестируйте связку ККТ: онлайн‑касса и фискализация, связка ККТ/АТОЛ/Эвотор.
  6. Покройте тестами happy‑path и негативные сценарии: тестовый стенд и песочница, инструкция и примеры.
  7. Настройте мониторинг: повторная доставка webhooks, алерты по доле отказов, таймаутам, 3‑DS.

Webhooks: статусы, подписи и ретраи

Уведомления от эквайера — ключ к надежной пост‑обработке.

Пример верификации подписи (псевдокод):

computed = HMAC_SHA256(secret, body + "|" + timestamp)
if header_signature != computed or isExpired(timestamp): reject

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

Создание платежа (generic пример):

curl -X POST https://api.provider.example/v1/payments \
  -H 'Authorization: Bearer <secret>' \
  -H 'Idempotency-Key: 5f2c-...-a1' \
  -H 'Content-Type: application/json' \
  -d '{
    "amount": {"value": 1990.00, "currency": "RUB"},
    "description": "Заказ #A1025",
    "customer": {"email": "user@example.com"},
    "confirmation": {"type": "redirect", "return_url": "https://shop.example/success"},
    "metadata": {"order_id": "A1025"}
  }'

Ответ (сокращенно):

{
  "id": "pay_123",
  "status": "pending",
  "confirmation": {"type": "redirect", "url": "https://pay.example/confirm/abc"}
}

Частичный возврат:

curl -X POST https://api.provider.example/v1/refunds \
  -H 'Authorization: Bearer <secret>' \
  -H 'Content-Type: application/json' \
  -d '{
    "payment_id": "pay_123",
    "amount": {"value": 500.00, "currency": "RUB"},
    "reason": "Частичный возврат по позиции 2"
  }'

Важно: реальные параметры (например, поля для 3‑DS 2.2, device fingerprint, challenge) зависят от провайдера.

Т‑Банк и Альфа‑Банк: особенности API

Запросы вроде «т банк api интернет эквайринг», «тбанк интернет эквайринг документация» и «альфа банк интернет эквайринг api» ведут к официальным порталам разработчиков. Ниже — обобщенная витрина возможностей, сверяйте актуальность в первоисточниках и на наших страницах про банки.

Критерий Т‑Банк (Tinkoff) Альфа‑Банк
Типы интеграции HPP/виджет, server‑to‑server HPP/виджет, server‑to‑server
Webhooks Да (подпись HMAC/JWT) Да (подпись/сертификаты)
Подписки/токены Часто поддерживаются Часто поддерживаются
СБП/QR Поддержка по отдельному API/методам Поддержка по отдельному API/методам
Тестовый стенд Sandbox, тест‑карты Sandbox, тест‑карты
Фискализация Интеграция через API/партнеров Интеграция через API/партнеров
SDK/пример Java/Kotlin/JS/PHP примеры Java/.NET/JS/PHP примеры

Подробности и актуальные условия смотрите на наших страницах: Т‑Банк: интернет‑эквайринг и Альфа‑Банк: интернет‑эквайринг. Для выбора по стоимости и возможностям — сравнение тарифов банков.

CMS/1C/мобильные приложения

API‑интеграция не исключает готовые модули и плагины — часто это самый быстрый способ вывести MVP, а затем доработать под себя.

Также проверьте доступность личного кабинета мерчанта: отчеты, реестр операций, экспорт — личный кабинет эквайринга.

Лучшие практики и частые ошибки

Тестирование, запуск и контроль

Если только начинаете, пройдите гайд: подключение интернет‑эквайринга. Для ИП/ООО/самозанятых есть отдельные рекомендации: эквайринг для ИП, для ООО, для самозанятых.

Вывод и следующий шаг

API интернет‑эквайринга дает полный контроль над платежами: кастомный checkout, подписки, автоматические возвраты и глубинную аналитику. Выберите банк/провайдера, разверните песочницу, реализуйте создание платежей и прием webhooks, подключите фискализацию и выведите решение в прод. Готовы к старту? Перейдите к шагам из раздела подключение интернет‑эквайринга и сопоставьте условия по тарифам и комиссиям. Мы поможем выбрать провайдера и спланировать интеграцию под вашу архитектуру.

Получить CloudPayments бесплатно