GH GambleHub

პროვაიდერების დონის კასკადი

1) რა არის კასკადი და რატომ არის ის iGaming

Stunding (provider cascading) - დინამიური არჩევანი ან/და თანმიმდევრული გადართვა რამდენიმე PSP/Exvairer- ს შორის, გადახდის იგივე მცდელობისთვის ან ზოგადად ტრეფიკის განაწილებისთვის. მიზნები:
  • AR/DR: „კაპრიზული“ ემიტენტების გვერდის ავლით, საუკეთესო PSP- ის არჩევა კონკრეტული BIN/geo/მეთოდისთვის.
  • ღირებულება: IC + +/markup კალათის ნაწილებზე ქვემოთ, ფიქსი-ფიის შემცირება მიკრო-ტიკეტზე.
  • სტაბილურობა: failover ინციდენტების დროს, 3DS დეგრადაცია, გადახდის დერეფნების ვარდნა.
  • შესაბამისობა: გეოპოლიტიკური, სანქციების, ადგილობრივი აკრძალვების და ლიცენზიების დაცვა.

2) კასკადის ნიმუშები

1. თანმიმდევრული (sequential)

PSP _ A (soft-decline/ტექნიკური უკმარისობა) - PSP _ B - PSP _ C.
გამოიყენება Retray- ის „ვიწრო ფანჯარა“, რათა არ შეიქმნას დუბლი/სახსრების მრავალჯერადი გორაკის რისკი.

2. პარალელური (split-traffic/multi-arm)

ნაკადის განაწილება (%/წესები) რამდენიმე PSP- ს შორის საწვავის ბაზრობისთვის, წესების მომზადება და კორელირებული უარის თქმის შემცირება.

3. Sticky BIN / Sticky GEO

„საუკეთესო“ PSP- ის დამახსოვრება კონკრეტული BIN ბენდის/ემიტენტის/გეოსთვის (გადაწყვეტილებების ქეში TTL- ით).

4. Method-aware / Feature-aware

სხვადასხვა მიმწოდებლები ბარათებისთვის, A2A, საფულეებისთვის, ადგილობრივი მეთოდებისთვის; 3DS-rails, DCC/FX ქცევის სპეციფიკის აღრიცხვა, ტოკენიზაცია.

5. Limit-aware / SLA-aware

პროვაიდერების, რეზერვების, SLA ინციდენტების, cut-off და საკვების შეფერხებების ლიმიტების აღრიცხვა.

3) გადამწყვეტი ძრავა: შეყვანის სიგნალები

ბარათის ნიშნები: BIN/IIN, ბრენდი, debit/credit, კომერციული/პრემია, issuer- ის ქვეყანა.
გეო და შესაბამისობა: მოთამაშის ქვეყანა (IP/GPS/SIM/KYC), სანქციები, ლიცენზიები.
გარიგება: თანხა (მცირე ერთეულები), ვალუტა, არხი (ვებ/app), რისკი.
პროვაიდერების ისტორია: AR/DR BIN/geo/მეთოდით ბოლო 15-60 წუთის განმავლობაში, სოლო-decline- ის წილი, 3DS-pass-rate.
ღირებულება: IC + +/barkup/fix, FX Spred, rolling reserve%.
შეზღუდვები: provider-limit, maintenance/ინციდენტები, დღის კოლოფი.

გასასვლელი: მარშრუტების პრიორიტეტული სია '[(PSP, MID, require _ 3DS, retry _ window _ ms, max _ attempts)] ".

4) Retrai, idempotence და უსაფრთხოება

Idempotence-key მცდელობისთვის (user _ id + order _ id + nonce), რომელიც საერთოა კასკადში ყველა პროვაიდერისთვის.
Retray მხოლოდ soft-decline (ქსელის/3DS/timeout/insufficient funds), არასდროს „მკაცრი“ კოდებით (stolen, do not honor ხელახლა და ა.შ.).
Anti duling: სტატუსი 'AUTHORIZED '/' CAPTURED' ხურავს კასკადს; გაუქმებულია ყველა სხვა ფილიალი.
ფანჯრები: 1-ლი რეაგირება - 2-5 წამი, მთლიანი ბიუჯეტი 15-30 წამი UX- ის გათვალისწინებით.
3DS პოლიტიკა: შესაძლებელია შეტევა მეორე/მესამე ფილიალზე, თუ პირველი დაეცა 3DS- ის გარეშე.

5) 3DS, liability shift и AR

'frictionless '/' challenge' არჩევანი დამოკიდებულია რისკზე და PSP მხარდაჭერაზე (delegated auth, TRA, whitelisting).
„მკაცრი“ გეო/ემიტენტებში - იძულებითი 3DS კალათის ნაწილებზე.
თვალყურის დევნება პროვაიდერებს შორის: სადაც ის უფრო ხშირად მიიღწევა, იქ სარისკო BIN გადაიტანეთ.

6) ღირებულება: IC++, blended, fix-fia და FX

თითოეული PSP- სთვის განიხილეთ effective take-rate = interachecheme + scheme + barkup + fixed + FX-slippage.

კასკადში გამოიყენეთ ფასების ფუნქცია მარშრუტის მორიელში:
  • `Score = w1AR_live + w2(−Cost_bps) + w3(SLA_health) + w4(FX_quality) +...`
  • Micro-ticket: ფაქსი-ფიის წონა უფრო მაღალია და სასურველია პროვაიდერები დაბალი fix.
  • ცალკე გაითვალისწინეთ სარეზერვო% და funding T + N - გავლენას ახდენს ქეში.

7) ინციდენტები, cut-off და მარშრუტიზაცია

ჯანმრთელობის ფიდი: PSP/დერეფნების სტატუსები (auth API, 3DS ACS, payout სარკინიგზო).
Auto-failover: მყისიერი reroute, როდესაც AR/Health ეცემა ზღურბლს.
Cut-off-aware: სანამ settlement დაიხურება, თავიდან აიცილეთ PSP- ზე PSP- ით არასასიამოვნო T + N- ით.
Throttling: იმისათვის, რომ არ „დაწვათ“ პროვაიდერის ლიმიტი, გაატარეთ ტრაფიკი.

8) მონაცემთა მინიმალური მოდელი

sql
-- Providers and MIDs
CREATE TABLE ref. providers (
provider TEXT PRIMARY KEY, model TEXT, pricing_model TEXT, fx_policy TEXT, reserve_pct NUMERIC, meta JSONB
);
CREATE TABLE ref. mids (
mid TEXT PRIMARY KEY, provider TEXT REFERENCES ref. providers, country TEXT, method TEXT, descriptor TEXT, meta JSONB
);

-- Cascade Rules/Profiles
CREATE TABLE ref. cascade_profiles (
profile_id BIGSERIAL PRIMARY KEY, name TEXT, version TEXT, enabled BOOLEAN, meta JSONB
);
CREATE TABLE ref. cascade_rules (
rule_id BIGSERIAL PRIMARY KEY, profile_id BIGINT REFERENCES ref. cascade_profiles,
geo TEXT, bin_from TEXT, bin_to TEXT, method TEXT,
provider TEXT, mid TEXT, require_3ds BOOLEAN, priority INT,
retry_on_soft JSONB, max_attempts INT, ttl_seconds INT, enabled BOOLEAN, meta JSONB
);

-- Online Provider Performance Metrics (Sliding Window)
CREATE TABLE live. provider_stats_15m (
provider TEXT, method TEXT, geo TEXT, bin6 TEXT,
approvals INT, declines INT, soft_declines INT, three_ds_pass INT,
avg_latency_ms INT, updated_at TIMESTAMP
);

-- Transactions with idempotency and selected route
CREATE TABLE payments. auth_attempts (
attempt_id BIGSERIAL PRIMARY KEY, idempotency_key TEXT, step INT,
provider TEXT, mid TEXT, require_3ds BOOLEAN, status TEXT, decline_code TEXT,
amount_minor BIGINT, currency TEXT, bin TEXT, geo TEXT,
started_at TIMESTAMP, finished_at TIMESTAMP, meta JSONB
);

9) ანალიზის SQL შაბლონები

9. 1. პროვაიდერების ონლაინ რეიტინგი (AR და რბილი დისკი)

sql
SELECT provider, method, geo,
SUM(approvals) AS appr,
SUM(declines) AS decl,
ROUND(100. 0 SUM(approvals) / NULLIF(SUM(approvals+declines),0), 2) AS ar_pct,
ROUND(100. 0 SUM(soft_declines) / NULLIF(SUM(declines),0), 2) AS soft_share_pct
FROM live. provider_stats_15m
WHERE updated_at > now() - INTERVAL '20 minutes'
GROUP BY 1,2,3
ORDER BY ar_pct DESC, soft_share_pct DESC;

9. 2. კასკადის ეფექტი შეკვეთებზე

sql
WITH s AS (
SELECT idempotency_key,
MAX(step) AS steps,
BOOL_OR(status='APPROVED') AS approved
FROM payments. auth_attempts
WHERE started_at BETWEEN:from AND:to
GROUP BY 1
)
SELECT steps,
COUNT() AS orders,
100. 0 SUM(approved::int) / NULLIF(COUNT(),0) AS conv_pct
FROM s
GROUP BY 1
ORDER BY 1;

9. 3. Sticky BIN: საუკეთესო BIN6 პროვაიდერი

sql
SELECT bin6,
provider,
ROUND(100. 0 SUM(approved)::NUMERIC / NULLIF(COUNT(),0), 2) AS ar_pct
FROM (
SELECT LEFT(bin,6) AS bin6, provider, (status='APPROVED') AS approved
FROM payments. auth_attempts
WHERE started_at BETWEEN:from AND:to
) t
GROUP BY 1,2
QUALIFY ROW_NUMBER() OVER (PARTITION BY bin6 ORDER BY ar_pct DESC) = 1;

9. 4. პროვაიდერის ღირებულება

sql
SELECT provider,
SUM(amount_reporting) AS volume_rep,
SUM(interchange_amt + scheme_amt + markup_amt + auth_amt + refund_amt + cb_amt + gateway_amt + fx_spread_amt) AS fees_rep,
100. 0 SUM(interchange_amt + scheme_amt + markup_amt + auth_amt + refund_amt + cb_amt + gateway_amt + fx_spread_amt)
/ NULLIF(SUM(amount_reporting),0) AS take_rate_pct
FROM finance. settlement_fees
JOIN dw. transactions_flat USING (provider)
WHERE period_start_at >=:from AND period_end_at <:to
GROUP BY 1
ORDER BY take_rate_pct;

10) KPI და დაშბორდი

AR/DR პროვაიდერების და BIN/geo/მეთოდით (ონლაინ ფანჯრები 15/60 წუთი და დღე-დღე).
Step-conversion: დამტკიცების წილი 1-ლი, მე -2, მე -3 ფილიალზე.
Take-Rate% და FX-slippage პროვაიდერზე/MID.
3DS pass-rate და წილი liability shift.
Health/SLA: latence, timeouts, error rate, ინციდენტები.
Reserve & Funding: reserve% და T + N hit-rate პროვაიდერებისთვის.

11) ალერტები და ბარიერები

Routing Degradation: AR- ის ვარდნა არჩეულ პროვაიდერზე> Y bps 10-30 წუთში.
Soft-decline surge: soft-decline- ის წილის ზრდა საშუალებას მისცემს კასკადის დამატებით ფილიალს.
3DS Anomaly: შემცირება 3DS pass-rate> X% კონკრეტული ემიტენტის/BIN კლასტერისთვის.
Take-Rate Spike: ზრდა all-in ღირებულება> bps ბარიერი.
Health Down: SLA breach (latency/error) — авто-failover.
Policy Drift: მცდელობები კასკადის პროფილის გარეშე - P1.

12) AB ტესტები და წესების სწავლება

Multi-arm bandit ან ფიქსირებული split-traffic ახალი მარშრუტებისთვის.
Explore/Exploit: შეინარჩუნეთ ტრაფიკის ნაწილი sticky BIN „ტრენინგზე“.
შეფასების ჰორიზონტი: ონლაინ (15/60 წუთი) ინციდენტებისთვის და კვირა/თვე - ღირებულებისთვის.
Guardrails: მინიმალური AR/max take-rate ექსპერიმენტის შესაჩერებლად.

13) შესაბამისობა და „ექსტრემალური“ შემთხვევები

პატივს სცემენ სანქციებს/ლიცენზიებს/გეობლოკებს: ზოგიერთ პროვაიდერს არ შეუძლია მოემსახუროს ცალკეულ ქვეყნებს/მეთოდებს.
Same-method/Return-to-source: კასკადი არ უნდა დაარღვიოს დაბრუნების პოლიტიკა.
Tokenization/PCI: ერთიანი ნიშნის სქემა PSP (ქსელის ტოკენსი/vault) შორის.
Chargebacks: გაითვალისწინეთ რომელი ფილიალი გაიარა capture - დავებისთვის.

14) საუკეთესო პრემიები (მოკლედ)

1. გადატვირთეთ მხოლოდ რბილი-decline, ერთიანი idempotence _ key.
2. შეინარჩუნეთ ცოცხალი ტელემეტრია AR/3DS/soft-decline და health პროვაიდერები.
3. ააშენეთ მარშრუტის ფასების ფუნქცია (AR vs Cost vs SLA vs FX).
4. გამოიყენეთ sticky BIN და AB ტესტები; გააფორმეთ კასკადის პროფილები.
5. იყავით cut-off-aware: დღის ბოლოს არ მიიღოთ partial-capture.
6. გქონდეთ playbooks failover: შემცირება PSP/ACS/გადახდის დერეფანი.
7. გაიზიარეთ მონაცემები და პასუხისმგებლობა: ვინ ფლობს PAN- ს, ვინ აწარმოებს დავებს.
8. ჩაატარეთ პროვაიდერები პროვაიდერებზე: გამოშვებები და ჩამოწერები.

15) განხორციელების სია

  • პროვაიდერების რუკა/MID, პრაიმერი (IC + +/blended), FX პოლიტიკა, რეზერვები, T + N.
  • Rules ძრავა: პროფილები, წესები, რბილი კოდები, 3DS პოლიტიკა, შეზღუდვები.
  • მარშრუტიზატორი: idempotence, retrai, taimauty, sticky BIN ქეში.
  • ტელემეტრია: ცოცხალი მეტრიკა AR/DR/3DS/latency/health; ალერტა.
  • ინციდენტის მენეჯმენტი და ფლეიბუკები.
  • ETL fees/FX/reserve; take-rate და step-conversion ფანჯრები.
  • AB ტესტების პროცედურები და guardrails.
  • დოკუმენტაცია: შესაბამისობის შეზღუდვები, same-method- ის ანაზღაურება, პასუხისმგებლობა.

რეზიუმე

პროვაიდერების დონეზე კასკადი არ არის „სხვა PSP- ს მოსინჯვა“, არამედ დისციპლინა: ცოცხალი მეტრიკა, ჭკვიანი rules ძრავა, მკაცრი idempotence, სწორი 3DS ტაქტიკა, ღირებულების აღრიცხვა/FX/რეზერვები და მზა failover სცენარები. ასეთი არქიტექტურა ზრდის AR- ს, ამცირებს all-in take-rate- ს და ხდის გადახდის წრეს წინააღმდეგობას წარუმატებლობებისა და მარეგულირებელი შეზღუდვების მიმართ.

Contact

დაგვიკავშირდით

დაგვიკავშირდით ნებისმიერი კითხვის ან მხარდაჭერისთვის.ჩვენ ყოველთვის მზად ვართ დაგეხმაროთ!

ინტეგრაციის დაწყება

Email — სავალდებულოა. Telegram ან WhatsApp — სურვილისამებრ.

თქვენი სახელი არასავალდებულო
Email არასავალდებულო
თემა არასავალდებულო
შეტყობინება არასავალდებულო
Telegram არასავალდებულო
@
თუ მიუთითებთ Telegram-ს — ვუპასუხებთ იქაც, დამატებით Email-ზე.
WhatsApp არასავალდებულო
ფორმატი: ქვეყნის კოდი და ნომერი (მაგალითად, +995XXXXXXXXX).

ღილაკზე დაჭერით თქვენ ეთანხმებით თქვენი მონაცემების დამუშავებას.