S
docs.syncra.money
API ReferenceMerchant API

Прием платежей (PayIn)

Интеграция приема P2P-платежей с помощью Syncra Merchant API V2

Прием платежей (PayIn)

Функционал входящих платежей (PayIn) позволяет мерчантам автоматизировать процесс приема средств от физических лиц через систему быстрых платежей (СБП), банковские карты (Card2Card) и другие методы онлайн-оплаты.


Процесс оплаты (PayIn Flow)

Классический сценарий проведения платежа состоит из следующих шагов:

Загрузка диаграммы...
  1. Создание транзакции: Мерчант отправляет POST-запрос на /deals/payin, указывая сумму, валюту и свои URL-адреса для перенаправления.
  2. Получение URL оплаты: API возвращает уникальную ссылку на платежную страницу payment_page_url.
  3. Перевод средств: Клиент переходит по ссылке, видит реквизиты P2P-трейдера (например, номер карты Сбербанка) и совершает обычный перевод в мобильном приложении своего банка.
  4. Уведомление: После подтверждения получения трейдером и проверки системой, шлюз отправляет серверный Webhook Callback мерчанту, а клиента перенаправляет на Success URL.

Эндпоинт создания PayIn запроса

POST /api/v1/p2p/merchant/deals/payin

Параметры запроса (JSON Body)

ПолеТипОбяз.Описание
amountint64ДаСумма платежа в минимальных единицах валюты (копейках для RUB). Например, 150000 = 1500.00 RUB.
currencystringДаISO 4217 код валюты платежа. Определяется конфигурацией тенанта (например, "RUB", "KZT").
idempotency_keystringДаУникальный идентификатор запроса на стороне мерчанта. Используется для предотвращения дублирования платежей.
client_idstringНетУникальный ID плательщика в вашей системе (казино, ЛК).
payment_methodstringНетЖелаемый метод оплаты: sbp, card, sberpay, tpay и др. Если не указан, клиент выбирает на форме.
callback_urlstringНетURL вашего обработчика вебхуков для этой транзакции.
success_urlstringНетURL для перенаправления клиента в случае успешной оплаты.
failed_urlstringНетURL для перенаправления клиента в случае ошибки или отмены оплаты.

Пример запроса

{
  "amount": 250050,
  "currency": "RUB",
  "idempotency_key": "order_uuid_abc123456",
  "client_id": "player_user_9921",
  "payment_method": "sbp",
  "callback_url": "https://merchant.example/callbacks/syncra",
  "success_url": "https://merchant.example/payment/success",
  "failed_url": "https://merchant.example/payment/failed"
}

Пример ответа (200 OK)

{
  "data": {
    "id": "7ac148fe-19a3-45bb-b992-019fac55b721",
    "status": "PENDING",
    "amount": 250050,
    "currency": "RUB",
    "payment_page_url": "https://checkout.syncra.money/pay/7ac148fe-19a3-45bb-b992-019fac55b721",
    "created_at": "2026-07-12T17:20:00Z"
  }
}

Статусы PayIn транзакции

Каждая транзакция в системе проходит через определенные состояния. Ниже приведены все 12 числовых статусов V1 и их соответствующие строковые аналоги в V2:

Код V1Название V1Финальный?Статус V2Описание состояния
1WaitingPaymentНетPENDINGТранзакция создана, ожидает оплаты клиентом.
2ConfirmedByPayerНетCUSTOMER_CONFIRMEDКлиент нажал кнопку «Я оплатил», ожидает проверки трейдером.
11PaidДаPAIDСредства успешно зачислены, сделка закрыта.
12CancelledДаCANCELLEDПлатеж отменен мерчантом или клиентом вручную.
13TimeoutДаEXPIREDИстекло время, отведенное на оплату (таймаут).
14OverPaidДаOVERPAIDКлиент перевел сумму, превышающую указанную в счете.
15PartiallyPaidДаUNDERPAIDКлиент перевел сумму меньше указанной в счете.
16ReturnedДаREFUNDEDСредства были возвращены клиенту в полном объеме.
21DisputНетDISPUTEDВозник спор по платежу (клиент заявляет об оплате, трейдер отрицает).
31WaitingPaymentChannelНетAWAITING_METHODОжидание выбора клиентом платежного метода и генерации реквизитов.
32RollingBackНетREFUNDINGЗапущен процесс возврата средств клиенту.
1000UnknownНетUNKNOWNНепредвиденное состояние ошибки в системе.

Поддерживаемые методы оплаты

Доступные методы оплаты определяются конфигурацией вашего тенанта (таблица p2p_payment_methods). При создании платежа укажите slug метода в параметре payment_method. Актуальный список можно получить через GET /banks.

Типичные значения:

  • sbp — Система быстрых платежей (перевод по номеру телефона).
  • card — Перевод по номеру банковской карты.
  • sberpay — Быстрая оплата через Сбербанк.
  • tpay — Быстрая оплата через Т-Банк.

Список методов может расширяться администратором в реальном времени без перезапуска сервисов. Если payment_method не указан, клиент сам выбирает метод на платёжной форме.


Пример на curl

curl -X POST https://api.syncra.money/api/v1/p2p/merchant/deals/payin \
  -H "X-Merchant-Token: your_token_here" \
  -H "X-Timestamp: 1783856120" \
  -H "X-Signature: t=1783856120,v1=9e87d0c3c8801d0a5198d023b6b19a16f2c8d2037920ab3e09819cd8e412cfab" \
  -H "Content-Type: application/json" \
  -d '{
    "amount": 100000,
    "currency": "RUB",
    "idempotency_key": "my_unique_p2p_key_001"
  }'

On this page