Сверка платежей (reconciliation) — это сопоставление ваших заказов и транзакций с данными платёжных провайдеров и банковских расчётов. Цель — подтвердить, что каждый платёж учтён, суммы совпадают, комиссии корректны, а возвраты и сторно отражены верно. Без системной сверки легко терять деньги из‑за задержек статусов, дублирования запросов, частичных захватов или ошибок при отменах.
Ключевые задачи, которые решает сверка платежей API:
Если вы используете несколько банков и агрегаторов, потребность в едином reconciliation увеличивается кратно. Подробнее о стратегиях выбора стека — в обзоре Банки vs агрегаторы.
Мы нормализуем события и статусы из разных источников, синхронизируем их в реальном времени и предоставляем единый слой данных для продукта, аналитики и финансов.
Основа процесса:
Инициация. Вы создаёте платёж (order + payment) через единый протокол. См. Базовая интеграция.
События. Провайдеры отправляют нам события: авторизация, 3‑D Secure, списание, отмена, возврат. Мы приводим их к общей схеме.
Обновления статусов. Ваше приложение получает изменения через вебхуки и/или периодическую сверку по API.
Ежедневная отчётность. Ночная (или инкрементальная) сверка закрывает «хвосты»: поздние списания, частичные возвраты, пересчёт комиссий.
Финальный расчёт. Отражаем итоги по выплатам и комиссиям в отчётах для бухучёта и DWH.
Для проверки логики до выхода в прод используйте Песочницу.
Таблица ниже иллюстрирует, как мы сопоставляем статусы разных эквайеров. На стороне API вы работаете с нормализованными значениями, что критично для сверки и отчётности.
| Нормализованный статус | Сбербанк | YooMoney | T‑Bank | Belarusbank | Описание |
|---|---|---|---|---|---|
| pending | CREATED | pending | NEW | pending | Платёж создан, ожидает следующего шага |
| authorized | APPROVED | waiting_for_capture | AUTHORIZED | authorized | Сумма заблокирована на карте (hold) |
| captured | DEPOSITED | succeeded | CONFIRMED | captured | Списание завершено, деньги на пути к зачислению |
| failed | DECLINED | canceled | CANCELED | failed | Отказ, списания нет |
| canceled | CANCELED | canceled | CANCELED | canceled | Отменено до списания |
| refunded_partial | REFUNDED (partial) | refunded (partial) | PARTIAL_REFUND | refunded_partial | Частичный возврат |
| refunded_full | REFUNDED (full) | refunded (full) | REFUNDED | refunded_full | Полный возврат |
| reversed | REVERSED | — | REVERSED | reversed | Сторнирование/разворот операции |
| chargeback | CHARGEBACK | dispute_opened | CHARGEBACK | chargeback | Чарджбэк (претензия банка) |
Примечание: конкретные коды могут отличаться в зависимости от версии API конкретного провайдера. Подробности см. карточки интеграций: Сбербанк эквайринг, YooMoney, T‑Bank, Belarusbank.
Мы поддерживаем несколько способов доставки обновлений для стабильной сверки:
Вебхуки (рекомендуется). События: payment.created, payment.authorized, payment.captured, payment.failed, refund.succeeded, payout.settled, chargeback.opened. Для защиты от дублей используйте идемпотентность — см. паттерн Webhooks и idempotency.
Polling по окну времени. Инкрементальные выборки по updated_at с «водяным знаком» (watermark) для бэкапов и перезапусков.
Ежедневные отчёты (выгрузки платежей). Автоматически формируем пакетные выгрузки за сутки/неделю/месяц и доставляем в S3/SFTP или отдаём по API.
Рекомендации по расписанию:
Система формирует набор стандартных отчётов, чтобы упростить закрытие периода и внутренний аудит:
Формула для финансового учёта (упрощённо):
Gross Payments − Refunds − Chargebacks − Fees = Net Settlements.
Особенности отражения операций:
API Платежи Онлайн поддерживает настраиваемые выгрузки платежей в нужных форматах и каналах доставки.
| Формат | Доставка | Типичные сценарии |
|---|---|---|
| CSV, XLSX | UI, SFTP, S3 | Финансовая отчётность, обмен с бухучётом |
| JSON Lines | API, S3 | Инкрементальные загрузки в DWH/ETL |
| Parquet | S3 | Аналитика больших объёмов в ClickHouse/BigQuery |
| Google Sheets | API | Операционный мониторинг для нефинансовых команд |
Рекомендуемые поля для аналитики и сверки:
Если вы строите мобильную воронку оплаты, обратите внимание на SDK для мобильных приложений.
Чтобы управлять выручкой, важны корректные метрики конверсии и прозрачные дашборды оплаты. Мы считаем и визуализируем:
Пример воронки: initiated → 3DS (optional) → authorized → captured → settled → refunded. Для мобильных и подписочных сценариев дополнительно учитываются ретраи и автообновление карт.
Рекуррентные платежи. Анализируем первую оплату vs последующие, показатель dunning success (возврат задолженности), churn по картам. Подробности реализации — в разделе Рекуррентные подписки.
Возвраты и сторно. Считаем N‑day refund rate, долю частичных возвратов, эффект на Net Settlements. Настройки потоков — в Refunds & Reversals.
Фрод и чарджбэки. Отслеживаем chargeback ratio, win rate по представлениям (representments), скоринговые триггеры. Алерты и расследования — см. Ошибки и мониторинг.
YooMoney. Частая схема: waiting_for_capture → succeeded или canceled. При частичном захвате отражаем captured_amount < authorized_amount. Интеграция: YooMoney API.
Сбербанк эквайринг. Типично двухфазное списание: APPROVED (hold) → DEPOSITED (capture). Возвраты могут приезжать позже отчёта дня — включайте ночную досверку. Интеграция: Сбербанк Acquiring API.
T‑Bank. Поддерживает динамический 3‑DS и детальные decline codes. Совмещайте авторизационную конверсию и риск‑метрики для оптимального роутинга. Интеграция: T‑Bank API.
Belarusbank. Простая линейка статусов, возможны задержки по settlement. Рекомендуем включать polling на уровне часа. Интеграция: Belarusbank API.
Подключите базовую интеграцию и создайте тестовые платежи — см. Основы интеграции и Песочницу.
Включите вебхуки и идемпотентность, настройте ретраи доставки — см. Webhooks & Idempotency.
Настройте выгрузки платежей по расписанию: ежедневные CSV для бухгалтерии и JSONL для DWH.
Соберите дашборды оплаты: конверсия, 3‑DS, отказные коды, комиссии, возвраты.
Добавьте мониторинг ошибок и деградаций — см. Ошибки и мониторинг.
Типовые цели SLA для сверки: 99.9% доставка вебхуков, <15 минут RTO инкрементальной сверки, закрытие дня до 06:00 локального времени.
Сверка платежей API — это не только контроль сумм и статусов, но и фундамент для прозрачной отчётности эквайринг, эффективного роутинга и роста конверсии. Единые статусы, гибкие выгрузки платежей и понятные дашборды оплаты позволяют принять верные решения быстро и подтверждать их цифрами.
Готовы выстроить надёжный reconciliation и аналитику? Начните с основ интеграции и тестов в песочнице, или свяжитесь с нами через поддержку, чтобы получить демо и рекомендации по настройке.