GH GambleHub

Дашборд Төлөм KPI

TL; DR

Бир дашборд - үч катмар: Huni Health (Attempt → Auth → Capture), Каржылык натыйжалуулук (TtW/TtR, Cost/GGR, FX) жана Инфраструктуранын ишенимдүүлүгү (Webhook/Latency/Settlement). Жашыруун - туура эсептөө базалары, милдеттүү сегментация (country × provider × method × BIN × ticket _ size × risk), босого SLO жана коридорлордон чыкканда даяр плейбуктар.

1) Кимге жана кандай маселелерди жабабыз

CEO/GM (күн сайын, 3-5 мин): "Төлөмдөрдү которуу жана алуу ылдамдыгы нормалдуу? Акчаны кабыл алуунун баасы көзөмөлдөнөбү?"

Head of Payments/Treasury (ар бир саат): "Провайдер/өлкө/ыкма боюнча деградация кайда? Дароо төлөмдөр үчүн ликвиддүүлүк жетиштүүбү?"

Fraud/Risk (күн сайын): "АР антифрод эске алуу менен? Abandon на 3DS и Soft declines?»

Support/Operations (онлайн): "Алып салуу жана кайтаруу боюнча кандай ETA? Вебхактар кайда илинип калды?"

Finance/Recon (D + 1): "Settlement убагында? Комиссиялар жана FX планга туура келет?"

2) Негизги метриктер жана так аныктамалар

2. 1 Төлөм воронкасы

Attempt - демилгеленген төлөмдөр.
Auth Approved - уруксат берилген.
Captured - ийгиликтүү эсептен чыгарылган.

Формулалар (база - эгерде башкача көрсөтүлбөсө, транзакциялардын саны):
  • `AR_gross = Auth_Approved / Auth_Attempted`
  • `AR_net = Captured_Tx / Auth_Attempted`
  • `Capture_Success = Captured_Tx / Capture_Attempted_Tx`
  • `Capture_Latency_p95 = p95(capture_ts - auth_ts)`

2. 2 Корутундулар жана кайтарымдар

Payout Success % = Success_Payouts / Attempted_Payouts

TtW p95 = p95(payout_credited_at - payout_initiated_at)

Refund Rate = Refunded_Tx / Captured_Tx

TtR p95 = p95(refund_credit_at - refund_initiated_at)

Refund Error % = Refund_Failed / Refund_Attempted

Refund_to_Source% - баштапкы ыкмага кайтаруулардын үлүшү

2. 3 Наркы жана FX

Cost/Tx = Fee_fixed + AmountFee_pct + FX_Spread

Cost/GGR = ΣCost / GGR

FX Slippage (bps) = (exec_px − mid_px)/mid_px × 10 000

2. 4 Интеграциялардын ишенимдүүлүгү

Webhook Delivery p95 (сек), Success %

API Latency p95/p99 (auth/capture/refund/payout)

Settlement Timeliness = батчи жарыяланган T + N келип/мезгил ичинде бардык батчи

2. 5 3DS/сүрүлүү (карталар үчүн)

3DS Challenge Share = Challenge / 3DS_Total

Frictionless Share = Frictionless / 3DS_Total

Abandon on 3DS = 3DS_Started − 3DS_Completed

💡 Маанилүү: операциялык AR (антифрод жана колдонуучу абандондон кийин) "чийки" - бул ар кандай максаттар үчүн эки башка метрика.

3) Кесип жана чыпкалар (минималдуу топтому)

Фильтры в шапке: `date range (UTC)`, `country`, `provider`, `method_group`, `BIN`, `device/os`, `ticket_size bucket (≤€50 / €50–200 / >€200)`, `risk_segment`, `kyc_tier`, `new_vs_returning`, `affiliate`.

Графиктердеги/таблицалардагы милдеттүү кесүүлөр:
  • country×provider, BIN×country, method×provider, device/os, ticket_size.

4) негизги экран белгилөө (Layout)

1. Жогорку KPI (кечээ/бүгүн, p7 медианасы салыштыруу):

`AR_net`, `Capture_Success`, `Payout Success%`, `TtW p95`, `TtR p95`, `Cost/GGR`, `Webhook p95`, `Settlement Timeliness`.

2. Funnel (Attempt → Auth → Capture) сегмент тандоо жана ийгиликсиз себептерин көрсөтүү менен (жогорку ISO коддору/рельстерде).

3. Heatmap AR 'country × provider' жана жогорку көлөмү үчүн өзүнчө BIN heatmap.

4. 3DS панели: Challenge/Frictionless/Abandon + bench сызык салыштыруу.

5. Payout & Refund Health: Success%, p95 (TtW/TtR), ошибки, Refund_to_Source %.

6. Cost & FX: Cost/GGR ыкмалары боюнча, FX slippage/fees сайттар боюнча.

7. Интеграциялык ишенимдүүлүк: Webhook delivery p95/Success%, API latency p95/p99, Duplicate rate, Report delivery SLA.

8. Инцидент-панель: активдүү алерттер (караңыз § 8), фейловерлердин статусу жана казыналыктын жазуулары (калдыктар L0, префунд).

5) SLO жана Алерт (коридорлор)

Ориентирлер (портфель/базарлар боюнча калибрделет):
  • 'AR _ gross' 3DS2 карталары: 82-92% (сегмент боюнча); 'AR _ net' ≥ 80%
  • `Capture_Success` ≥ 98. 5% (саат)
  • `Webhook p95` ≤ 3 с, Success ≥ 99. 9%
  • `Payout TtW p95` instant ≤ 120 с; (T + 1) - күнүнө 100% D + 1
  • 'Refund TtR p95' карта ≤ T + 1 б.д.; instant ≤ 60 с
  • `Refund Error %` < 0. 3%
  • `Settlement Timeliness` ≥ 99%
  • 'Cost/GGR' - ыкма боюнча жеке максаттуу коридор
Триггерлер alert:
  • 'AR _ gross ↓> 3 p.p.' 7 күндүк медианага (өлкө боюнча/PSP/BIN) → P1/P0
  • `Capture_Success < 98%` (час) → P1
  • 'Webhook p95> 5 c' же кайталанышы> 0 → P1
  • `Payout TtW p95 > SLO` или Success%<99% → P1
  • `Refund Error% > 0. 3%` или `Double Refund > 0` → P0
  • `Settlement on-time < 99%` → P1
  • 'Cost/GGR' ыкмасы боюнча коридордон чыгуу → P2

Ар бир алерт runbook 'a картасын ачат (аракеттер/эскалация/feylover).

6) Эсептөө формулалары жана базалары (деталдаштыруу)

Бардык үлүштөр - ачык-айкын базасы менен: 'denominator' тултипинде белгилеңиз.
Убакыт - UTC; p-quantiles: PERCENTILE_CONT.

'AR _ clean' = 'Auth _ Approved/( )'

`Net_Conversion` = `Captured_Tx / Auth_Attempted_Tx`

`Refund_to_Source %` = `Refund_to_Original_Method / Total_Refunds`

'Idle Cash%' (казыналык мини-виджетте) = '(Balance − Target_Balance )/Balance'

7) UX үлгүлөрү

Жогоруда KPI плашка, төмөнкү - funnel + heatmaps, төмөнкү - интеграция жана каржы.
Формула/база/өзгөчөлүктөрү бар тултиптер (мисалы, "антифроддон кийин").
Салыштырма сызык: p7 медиа жана "кечээ "/" өткөн дүйшөмбү ".
чыкылдатуу боюнча Drill-down: таблицада BIN → Issuer → ийгиликсиз коддору үчүн heatmap.
RCA үчүн Snapshots: Post-mortem үчүн учурдагы көрүнүшүн "бекитүү" баскычы.

8) Playbook (орнотулган иш-карталар)

Auth drop → smart-routing которуу, BIN 3DS-challenge көтөрүү, retrains чектөө.
Webhook кечигүү → polling, тоңдуруп auto-refand/коркунучтуу auto-төлөмдөр, Идемпотентти күчөтүү.
Payout деградация → фейловер рельс, treasury top-up, VIP артыкчылыктуу.
Settlement кечигүү → StressRes, белги "Suspense", PSP эскалация.
Refund каталар/дубль → refund-freeze, салыштыруу, storno дубль.

(Картада чек тизмеси жана эскалация байланыштары бар.)

9) Маалыматтар модели (минималдуу жетиштүү)


events/payments_flat:
payment_id, user_id, country, provider, method_code, action(deposit/refund/payout),
attempt_ts, auth_status, auth_ts, three_ds(flow, challenge_flag, started_ts, completed_ts),
capture_status, capture_amount, capture_ts, partial_flag,
refund_status, refund_amount, refund_initiated_ts, refund_credit_ts,
payout_status, payout_amount, payout_initiated_ts, payout_credited_ts,
fees_fixed, fees_pct, fx_spread, currency, amount,
risk_segment, kyc_tier, bin, asn, device_os, ticket_bucket

events/webhooks:
provider, event_kind, event_ts, delivered_ts, retries, duplicate_flag, idempotency_key

settlements/reports:
provider, batch_id, settlement_date, amount_settled, currency, fee_amount, status

treasury/pockets (mini-widget):
pocket_id, counterparty, currency, balance, target_balance, low_watermark, updated_at

Индекстер: 'provider', 'method _ code', 'country', 'bin', 'event _ ts'.

10) SQL тилкелери (мисал)

10. 1 Huni жана AR

sql
WITH base AS (
SELECT
DATE_TRUNC('hour', attempt_ts) AS h,
country, provider, method_code,
COUNT() FILTER (WHERE auth_status='ATTEMPTED') AS auth_attempted,
COUNT() FILTER (WHERE auth_status='APPROVED') AS auth_approved,
COUNT() FILTER (WHERE capture_status='CAPTURED') AS captured_tx
FROM payments_flat
WHERE action='deposit'
GROUP BY 1,2,3,4
)
SELECT h, country, provider, method_code,
auth_approved::decimal / NULLIF(auth_attempted,0) AS ar_gross,
captured_tx::decimal / NULLIF(auth_attempted,0)  AS ar_net
FROM base;

10. 2 Webhook SLA

sql
SELECT
DATE_TRUNC('hour', event_ts) AS h, provider,
PERCENTILE_CONT(0. 95) WITHIN GROUP (ORDER BY EXTRACT(EPOCH FROM (delivered_ts - event_ts))) AS wb_p95_sec,
AVG(CASE WHEN retries=0 AND NOT duplicate_flag THEN 1 ELSE 0 END) AS wb_success
FROM webhooks
GROUP BY 1,2;

10. 3 Refund & Payout Health

sql
SELECT
DATE_TRUNC('day', COALESCE(refund_initiated_ts, payout_initiated_ts)) d,
method_code, provider,
COUNT() FILTER (WHERE refund_status='ATTEMPTED') AS refund_attempted,
COUNT() FILTER (WHERE refund_status='SUCCESS')  AS refund_success,
PERCENTILE_CONT(0. 95) WITHIN GROUP (ORDER BY EXTRACT(EPOCH FROM (refund_credit_ts - refund_initiated_ts))) AS ttr_p95_sec,
COUNT() FILTER (WHERE payout_status='ATTEMPTED') AS payout_attempted,
COUNT() FILTER (WHERE payout_status='SUCCESS')  AS payout_success,
PERCENTILE_CONT(0. 95) WITHIN GROUP (ORDER BY EXTRACT(EPOCH FROM (payout_credited_ts - payout_initiated_ts))) AS ttw_p95_sec
FROM payments_flat
GROUP BY 1,2,3;

10. 4 Cost/GGR

sql
SELECT
DATE_TRUNC('day', capture_ts) d,
method_code, provider,
SUM(fees_fixed + amountfees_pct + fx_spread) AS total_cost,
SUM(capture_amount) AS total_captured,
(SUM(fees_fixed + amountfees_pct + fx_spread) / NULLIF(SUM(total_captured),0)) AS cost_to_captured
FROM payments_flat
WHERE capture_status='CAPTURED'
GROUP BY 1,2,3;

11) Кошумча экрандар

BIN Drilldown: AR/decline-codes, 3DS-сүрүлүү, эмитенттер боюнча latency.
Provider Scorecard: SLA-метриктер, окуялар, кредиттер, наркы/GGR.
Treasury Snapshot: L0/L1 калдыктары, prefund, StressRes, TtF толуктоолор.
Recon View: Settlement Timeliness, Aging тигилген батч, Fee accuracy.

12) Маалыматтардын сапаты

Версиялоо менен KPI сөздүгү (формулалар/база/өзгөчөлүктөр).
Бирдиктүү TZ = UTC, p-quantiles - бир гана CONT.
Иш-чаралардын демпотенттиги жана веб-хук дедуп.
Убакыт/сумма/FX боюнча толеранттуулук саясаты (салыштыруу/жашыруун үчүн).
CI Data Tests: бош эмес бөлүштүрүү базасы, убакыт белгилеринин монотондугу, NULL үлүшү.

13) киргизүү: чек-тизмеси

  • Аныкталган KPI/формулалар/базалар жана сөздүк жазылган.
  • Иш-чараларды/реестрлерди ingestion жана нормалдаштыруу орнотулган.
  • Курулган терезелер 'payments _ flat', 'webhooks', 'settlements', 'treasury'.
  • ишке heatmaps, funnel, latency, payout/refund panels.
  • SLO жана Алерт босоголору белгиленген; плейбуктар менен байланышкан.
  • Кирүү ролу: C-деңгээл (read-only summary), Ops/Fraud (drill-down).
  • Provider Scorecard негизинде жума сайын QBR жөнөтүүчүлөр.
  • UAT тесттер топтому: demo-dataset, p-quantiles текшерүү, негиздер, алерттер тууралыгы.

14) Көп каталар

Базаларды аралаштыруу ('attempt' vs 'capture') → жалган корутундулар.
Эч кандай сегментация 'ticket _ size' → AR бурмаланган сүрөт.
Ignor abandon боюнча 3DS → "ашыкча" провайдер менен көйгөй.
Жок webhook duplicates → кош иш-аракет.
Толук эмес витрина боюнча settlement/fees → баа берүү мүмкүн эмес Cost/GGR.
SLO жана Playbooks жок dashboard "иш-аракет жок терезе" айланат.

Резюме

Төлөм KPI Dashboard - бул жөн гана графиктер эмес, операциялык курал. Ал воронканы, акчаны жана инфраструктураны бириктирет, так формулаларга жана сегментацияга таянат, автоматтык сигналдарды берет жана дароо иш-аракеттерди сунуштайт. Натыйжада: жогоруда AR_net, коридорлордо TtW/TtR, Cost/GGR көзөмөлүндө, окуялар тез локализацияланат, ал эми провайдерлер менен диалог сандарга негизделген.

Contact

Биз менен байланышыңыз

Кандай гана суроо же колдоо керек болбосун — бизге кайрылыңыз.Биз дайым жардам берүүгө даярбыз!

Telegram
@Gamble_GC
Интеграцияны баштоо

Email — милдеттүү. Telegram же WhatsApp — каалооңузга жараша.

Атыңыз милдеттүү эмес
Email милдеттүү эмес
Тема милдеттүү эмес
Билдирүү милдеттүү эмес
Telegram милдеттүү эмес
@
Эгер Telegram көрсөтсөңүз — Emailден тышкары ошол жактан да жооп беребиз.
WhatsApp милдеттүү эмес
Формат: өлкөнүн коду жана номер (мисалы, +996XXXXXXXXX).

Түшүрүү баскычын басуу менен сиз маалыматтарыңыздын иштетилишине макул болосуз.