Игрок видит «деposit», за кулисами — routing по 5–15 PSP, retry, antifraud, FX и reconciliation. Orchestration — ключ к approval rate.

Deposit flow
- Create intent → route PSP by geo/method
- Webhook idempotency
- Credit wallet only after confirmed settlement
Withdrawal
- KYC tier limits
- Manual review queue for high risk
- Same PSP rail when possible (closed loop)
Cascading
Primary acquirer fail → secondary. Metrics per route.

Чеклист
- Reconciliation daily
- Dispute playbook
- Sandbox per PSP
Метрики PSP
- Approval rate по методу и стране
- Time to credit wallet
- Chargeback rate и cost per successful deposit
Reconciliation ежедневно
Сверка PSP settlement file с internal ledger и wallet credits. Расхождение >0.01% — stop auto-withdraw и расследование. Без ежедневной сверки fraud и баги routing копятся месяцами.
Deposit journey по шагам
1) Player выбирает метод → create payment intent с amount, currency, player tier. 2) Router выбирает PSP по geo, method, historical approval. 3) Redirect/iframe hosted page PSP. 4) Webhook с idempotency key → verify signature → credit wallet только после settled.
Withdraw mirror: hold balance → KYC/tier check → antifraud score → manual queue if needed → PSP payout → confirm webhook → finalize ledger. Любой timeout — state machine в pending, не double credit.
FX и лимиты
Multi-currency wallet хранит amount в minor units integer; FX rate snapshot на момент deposit для reporting. Лимиты tier применяются до create intent — иначе PSP примет платёж, а wallet откажет в credit.
Если approval rate падает
- Разбейте метрики по geo, method, PSP route
- Проверьте idempotency webhooks — нет ли double credit
- Daily reconciliation PSP vs ledger
- Sandbox каждого PSP перед включением в cascade