Геоблокировки и платежные политики
1) Зачем это нужно
Соответствие лицензиям и санкционным режимам.
Снижение платежных и штрафных рисков (chargeback, scheme penalties).
Операционная предсказуемость: контролируемые коридоры депозитов/выплат.
Честная монетизация: прозрачные правила для пользователей и партнеров.
2) Базовые понятия и уровни контроля
Геоблокировка — запрет/ограничение доступа или платежных операций по географическому признаку.
Платежная политика — набор правил приема/выплат по странам/методам/валютам/лицензиям.
Уровни внедрения
1. DNS/CDN/Edge: блок страны, гео-перенаправление, geo-fencing API.
2. Приложение/Бэкенд: фичефлаги, allow/deny-правила, step-up KYC/SoF.
3. Платежный шлюз/Router: выбор PSP/метода, 3DS-стратегии, лимиты.
4. PSP/Банк: контрактные гео-ограничения, фильтры BIN/issuer country.
5. Антифрод: анти-VPN/прокси, device graph, velocity и поведенческие сигналы.
3) Правовые основания и зоны риска
Лицензионные ограничения по рынкам (разрешенные/запрещенные/серые).
Санкции (OFAC/EU/UK и вторичные): запреты на прием/выплату, ограничения FX и корреспондентов.
Локальные платежные законы: запреты на iGaming-операции для карт/банков/методов.
Защита потребителей: обязательные KYC, лимиты, self-exclusion.
Политики должны иметь версию и окно действия (effective_from/to), журнал изменений и основания (legal basis).
4) Сигналы геолокации и выявление обходов
IP/ASN/GeoIP (страна, регион, риск ASN).
VPN/Proxy/Tor детект: коммерческие списки, latency-паттерны, аномалии TTL.
GPS/Location Services (мобайл).
SIM/MCC/MNC, страна оператора связи.
BIN/IIN карты и issuer country.
Billing country и документы KYC (паспорт/ID).
Адрес/банк получателя выплаты.
Решение — мульти-сигнальный: минимум 2 независимых свидетельства страны, конфликт → step-up KYC/SoF.
5) Матрица политик (пример)
6) Политики приема и выплат
Белые/черные списки методов по ISO-стране, валюте, MCC, провайдеру.
BIN-routing: отклонять/направлять карты по стране эмитента и 3DS-требованиям.
Same-method & return-to-source: возвраты депозитных средств по тому же методу и до суммы нетто-внесения.
Corridor health: мониторинг коридоров выплат (success rate, возвраты, SLA).
FX-правила: валюта приема/выплат, запрет конвертаций от PSP, если требуется.
Лимиты и velocity: caps по странам и экспозициям (день/неделя/месяц).
7) Анти-VPN/анти-прокси стратегия
Списки провайдеров VPN/хостингов (ASN), Tor Exit, прокси-пулы.
Детект несовпадений: IP-страна vs GPS/SIM/BIN/KYC.
Поведенческие признаки: серийные входы с одинаковых подсетей, частая смена IP/доверенных устройств.
Реакции: step-up KYC, временная блокировка платежей, запрет бонусов, ручная проверка выплат.
8) Архитектура данных (минимальная модель)
ref. geo_policies (
policy_id PK, version, iso2, class, legal_basis,
deposit_methods_whitelist, withdraw_methods_whitelist,
kyc_level, sof_required, bonus_mode,
fx_rules, t_plus_withdrawal, enabled, effective_from, effective_to, meta
)
risk. geo_evidence (
user_id, snapshot_at,
ip_country, gps_country, sim_country, bin_country,
billing_country, issuer_country, payout_bank_country,
vpn_flag, proxy_flag, conflict_score
)
payments. routing_rules (
rule_id PK, iso2, bin_country, method, provider,
require_3ds, max_amount_daily, decline_codes_map, priority, enabled
)
payout. corridors (
corridor_id PK, from_iso2, to_iso2, method, provider,
success_rate_7d, return_rate_7d, avg_eta_hours, status, updated_at
)
9) Процессы (ETL/оркестрация)
1. Ежедневный импорт правовых обновлений → обновление `ref.geo_policies` (версионирование).
2. Обогащение событий (login, deposit, withdrawal) гео-свидетельствами → запись в `risk.geo_evidence`.
3. Оценка конфликтов (rule-engine) → step-up/deny.
4. Маршрутизация депозитов по `payments.routing_rules`.
5. Контроль коридоров выплат по `payout.corridors` и авто-switch на backup PSP.
10) SQL-шаблоны
10.1. Конфликт гео-сигналов
sql
SELECT user_id, snapshot_at,
(ip_country <> gps_country)::int
+ (ip_country <> sim_country)::int
+ (ip_country <> bin_country)::int
+ (ip_country <> billing_country)::int
AS conflict_score
FROM risk. geo_evidence
WHERE snapshot_at BETWEEN:from AND:to
AND (vpn_flag OR proxy_flag OR ip_country IS DISTINCT FROM gps_country);
10.2. Применение политики по стране
sql
SELECT p.
FROM ref. geo_policies p
JOIN risk. geo_evidence e USING ()
WHERE e. user_id =:user_id
AND p. iso2 = COALESCE(e. gps_country, e. ip_country)
AND now() BETWEEN p. effective_from AND p. effective_to
AND p. enabled = TRUE
ORDER BY p. version DESC
LIMIT 1;
10.3. Роутинг по BIN/стране/PSP
sql
SELECT provider, require_3ds, priority
FROM payments. routing_rules
WHERE enabled = TRUE
AND (iso2 =:country OR iso2 IS NULL)
AND (bin_country =:bin_country OR bin_country IS NULL)
AND method =:method
ORDER BY priority ASC
LIMIT 1;
10.4. Мониторинг коридоров выплат
sql
SELECT provider, method, to_iso2,
success_rate_7d, return_rate_7d, avg_eta_hours, status
FROM payout. corridors
WHERE updated_at > now() - INTERVAL '1 day'
AND (status <> 'OK' OR success_rate_7d < 0. 95 OR return_rate_7d > 0. 05);
11) Дашборды и KPI
Geo Compliance Heatmap: доля трафика по классам A/B/C/D, блоки и step-up.
VPN/Proxy Incidents: число/доля сессий, средний conflict_score.
Deposit Routing: авторизационный rate по PSP/стране/BIN, доля принудительного 3DS.
Payout Corridors Health: успех/возвраты/ETA, переключения на backup.
Loss & Liability: chargeback ratio и scheme penalties по гео/методам.
Policy Coverage: % сессий с актуальной политикой (версия), лаг обновлений.
12) Алерты и пороги
Sanctions/Legal Update: новая страна в списке — автопереключение классов, freeze.
VPN Surge: доля VPN-сессий > X% в стране/канале.
Routing Degradation: падение AR у выбранного PSP > Y bps за 1 час.
Payout Corridor Down: success_rate < порога или SLA breach.
Policy Drift: события в стране без активной политики/просроченная версия.
Same-method Violation: попытка кросс-методного возврата без оснований.
13) UX и коммуникации
Четкие тексты отказов с кодами причин и ссылкой на правила.
Страница «Доступность услуг» (whitelist/blacklist стран и методов).
Мягкая эскалация: предложение пройти KYC/SoF вместо мгновенного бана при конфликте сигналов.
Локализация предупреждений и альтернативные методы оплаты.
14) Best practices (коротко)
1. Двух- и более-факторная геодетерминация: IP + GPS/SIM/BIN.
2. Версионирование и юридическая трассировка (legal basis, owner, change log).
3. Роутинг на уровне BIN/issuer country + принудительный 3DS в риск-гео.
4. Same-method и возврат на источник как дефолт; исключения — по заявке с аудитом.
5. Fail-safe дизайн: при недоступности сигнала — безопасный режим (step-up/deny).
6. Разделение слоев: policy engine ≠ antifraud ≠ payment router, но общие справочники.
7. Регулярные tabletop-учения: санкционный апдейт, падение коридора выплат, массовый VPN-штурм.
15) Чек-лист внедрения
- Справочник `geo_policies` с версиями и legal basis.
- Интеграция GeoIP, VPN/Proxy, BIN-lookup, GPS/SIM.
- Правила роутинга `payments.routing_rules` и backup-PSP.
- Мониторинг payout-коридоров и авто-switch.
- Страница публичной политики доступности/методов.
- Логи step-up/deny и причина решений (explainability).
- Процедуры срочного «freeze» по санкциям/регуляторике.
Резюме
Геоблокировки и платежные политики — это не «бан по IP», а целостная система: правовые основания, многофакторная геодетерминация, умный роутинг, строгие правила возврата на источник и постоянный мониторинг коридоров выплат. С версионированными политиками, прозрачными данными и автоматическими алертами вы снижаете регуляторные и платежные риски, сохраняя предсказуемость монетизации.