GH GambleHub

Powtórzenia i wycofanie płatności

Powtórzenia i wycofanie płatności

1) Dlaczego potrzebne są powtórki

Konwersja: awarie miękkie (timeouts, błędy 3DS, awarie sieci) są często odzyskiwane przy powtarzaniu: + 2-7 pp do Auth Rate.
Solidność: lokalne awarie PSP/ACS/banku są wygładzane przez przekaźniki z alternatywnymi trasami.
Doświadczenie gracza: prawidłowo zbudowane repliki ukrywają „hałas” infrastruktury bez podwójnych opłat.


2) Podstawowe zasady

1. Idempotencja na poziomie „intencji płatności” (PI): jedna operacja = jeden 'idempotence _ key'; jakiekolwiek odwołanie się nie zmienia stanu monetarnego.

2. Separacja błędów:
  • Twardy spadek (np. „Nie przestrzegać” surowej polityki emitenta, „niewystarczające fundusze”) → zwykle nie przekwalifikować od razu.
  • Miękki spadek/techniczny (timeout, „Emitent niedostępny”, „Spróbuj ponownie”) → dozwolony przekład.
  • 3. Backoff + próba limitu: wykładniczo zwiększyć opóźnienie, dodać jitter i nie przekroczyć limitów (zwykle 2-3 próby).
  • 4. Routing wiązki: przekaźnik jest nie tylko „powtórzeniem tego samego PSP”, ale także zmianą trybu/metody PSP/MID/3DS.
  • 5. Obserwowalność: każdy hop jest rejestrowany w Dzienniku Trasy (PSP, powód, opóźnienie, tryb 3DS, opłata, wynik).

3) Klasyfikacja błędów w przypadku decyzji o wycofaniu się

KlasaPrzykładyZalecenie
Sieć/technikatimeout, 5xx, „Emitent/ACS niedostępny”, opóźnienie haka internetowegoPrzekaźnik z backoff; można ją zmienić PSP/MID/3DS
Miękki spadek„Karta odbioru (miękka)”, „Nie honoruj” (część przypadków), „Przetwarzanie błędu”Przekaźnik 1-2 razy, prawdopodobnie ze zmianą 3DS/route
Twardy spadek (końcowy)„Niewystarczające środki”, „Nieprawidłowa karta”, „Expired Card”, „Restricted Card”, „Not honor” (бесткий)Retrayim (lub sugeruje alternatywną metodę)
3DS-mistakes„Uwierzytelnienie niedostępne”, timeout ACS, „Soft decline” мосла frictionlessPrzekwalifikowanie z wyzwaniem lub metodą alternatywną (otwarta bankowość)
Ryzyko/zgodnośćsankcje/PEP, blok RG, limity prędkościNie retrayim; logika biznesowa niepowodzenia
💡 Uwaga: dokładna matryca zależy od obwodów/PSP. Sklep whitelist/czarna lista kody powodowe w konfig orkiestry.

4) Strategie backoff (praktyka)

4. 1 Wykładnicze backoff z jitter (zalecane)

Бава: 'delay _ n = min (base 2 ^ n, max_delay)'

Jitter: 'delay = rand (0, delay_n)' - redukuje stampedes, gdy wiele żądań jest powtarzanych jednocześnie.
Typowe parametry to 'base = 200-500 ms', 'max _ delay = 5-10 s', 'n ≤ 2 -3'.

4. 2 Liniowe cofnięcie

Proste, ale gorsze z „niepokojów” w sieci. Gorzej niż wykładniczy + jitter.

4. 3 Polityka Timeout

Czas klienta (Twój) ≤ PSP SLA (na przykład 3-5 s), w przeciwnym razie zwiększa się ryzyko duplikatów/zamrożeń.
Oddzielnie ustawić czas oczekiwania na hak/potwierdzenie: jeśli potwierdzenie nie przyjdzie → kompensacja (księga/PSP).


5) Idempotencja i ochrona przed bierze

Intent płatności (PI) przechowuje status, kwotę, metodę, 'idempotence _ key', historię trasy.
Każdy hop i retry używać tego samego klucza.
Transakcje kompensacyjne: gdy nie są synchronizowane (zatwierdzać w PSP, a masz czas) - "reconcile-pull' + korekta rejestru.
Wyłączenie ponownej autoryzacji przy ponownym dostarczaniu haka: sprawdź 'transaction _ id'/' PSP reference' pod kątem wyjątkowości.


6) 3DS/SCA i powtórzenia

Miękki spadek po frictionless → retray z wyzwaniem.
ACS timeout/niedostępne → wykładnicze backoff, następnie alternatywny kanał (open banking/APM) lub inny PSP.
Przy masowej degradacji ACS - wyłącznik, wzrost „szybkość wyzwań”, terminy kwot.


7) Reps for APM/open banking

Otwarta bankowość/szyny błyskawiczne (SEPA Instant/FPS/Pix/UPI):
  • Retreaty są ograniczone: sprawdź idempotencję po stronie dostawcy i statusy w opóźnionych webhook 'ax.
  • Z nieokreślonym statusem - sondaż z backoff i ścisłe pojednania.
  • Bony/gotówka: Przekaźniki nie mają zastosowania do „transakcji online”, ale obowiązuje kontrola terminowa i „odświeżanie statusu”.

8) Wypłaty: powtórki i kolejki

Awaria techniczna banku/PSP → kolejki wypłat z odpływem backoff.
KYT/prędkość nie działa → nie retrayem, przenieść do ręcznego sprawdzenia.
Priorytet kolejki: VIP/małe kwoty/wiek aplikacji; SLA i terminów automatycznej eskalacji.
Alternatywne szyny (RTP/FPS/SEPA Instant/Pix) w drugim wycofanym kroku.


9) Wyłącznik i retrai

Lokalne (na PSP/MID/BIN): gdy błędy się skurczą, → zatrzymać przekaźniki na tej trasie, przejść do alternatywnej.
Globalny (na metodę/region): degradacja systemowa → wyłączyć metodę, oferujemy APM/otwartą bankowość.
W połowie otwarte: część ruchu powrotnego (1-5%), aby sprawdzić odzyskanie przed pełnym powrotem.


10) Pseudokoda strategii retray

python def pay_with_retries(pi):
ensure_idempotency(pi.key)
if not compliance_pass(pi): return REJECT

routes = rank_candidates(pi) # по вероятности approve, fee, health attempts = 0 for route in routes:
policy3ds = select_3ds(pi, route)
res = call_psp(route, pi, policy3ds, pi.key, timeout=3.0)
log_attempt(pi, route, res)

if res.approved: return APPROVED

if is_soft_decline(res) or is_transient_error(res):
while attempts < MAX_ATTEMPTS and not breaker_open(route):
delay = backoff_with_jitter(base=0.3, attempt=attempts, cap=8.0)
sleep(delay)
policy3ds = maybe_toggle_3ds(policy3ds, res)
res = call_psp(route, pi, policy3ds, pi.key, timeout=3.0)
log_attempt(pi, route, res)
attempts += 1 if res.approved: return APPROVED if is_hard_decline(res): break перейти к следующему маршруту (PSP-B/APM/open banking)
return DECLINED

11) KPI i cele

Przyrostowe aprobaty z Retries: + 2-7 pp do podstawowej konwersji.
Avg Retry Attempts per Approved Tx: 1. 2–1. 5 (przechowywać poniżej 1. 7).
Retry Success Rate (soft/tech): ≥ 25-40%.
Duplikat Rate: 0 z prawidłową idempotencją.
P95 Opóźnienie (w tym przekaźniki): <7 s do czasu odpowiedzi końcowej.
Wypłata SLA (udział natychmiastowy): ≥ 70% łatwych kontroli, opóźniony <próg docelowy.


12) Playbooks incydentu

A. Masowe terminy dotyczące PSP-A

1. Otwarty lokalny wyłącznik dla PSP-A.
2. Ponowny przydział retras do PSP-B/APM.
3. Wykładnicze backoff z jitter, limit 2-3 próby.
4. Kanaryjski w połowie otwarte po 10-15 minut.

B. Degradacja ACS/3DS

1. Wykrywanie przez wzrost „miękki spadek”, terminy.
2. Zwiększenie poziomu wyzwań; część ruchu → otwarta bankowość.
3. Zarezerwuj ciężkie kontrole, włącz limity prędkości.

C. Opóźnienia wypłat

1. Przeniesienie do kolejki, ustalanie priorytetów dla VIP/małych kwot.
2. Przejście na alternatywne szyny (RTP/FPS/SEPA Instant/Pix).
3. Komunikacja z graczami + automatyczna eskalacja.


13) Obserwowalność i dane

Dziennik trasy: PSP/MID, BIN/emitent, powód, opóźnienie, 3DS-режим, powtórny łańcuch prób, итоz, opłata.
Deski rozdzielcze: Auth Rate (według banku), Retry Success, Avg Attempts, Decrease Mix, p95 latency, Payout kolejki głębokości.
Alerty: kolce według kodów rozumowania, wzrost prób/opóźnień, przepełnienie kolejek wyjściowych.


14) Listy kontrolne wdrażania

Architektura/Dane

  • Intent płatniczy + 'idempotency _ key' на вса chmiel.
  • Matryca konfiguracji kodu powody: retryyyable vs non-retryyyable.
  • Podpisane haki internetowe, deduplication by PSP reference.

Backoff/zasady

  • Wykładnicze backoff z jitter; limit prób i czasu okiennego.
  • Inteligentne ponowne badanie: zmiana 3DS/MID/PSP/method; wyróżnienie dla vs APM/otwartych kart bankowych.
  • Wyłączniki (lokalne/globalne), półotwarte.

Księga/uzgodnienia

  • Kompensowanie transakcji statusami „zawieszonymi”.
  • Uzgodnienie T + 0/T + 1: Księga rozliczeniowa banku PSP,
  • Zasady Timeout i SLA dotyczące potwierdzenia/haka internetowego.

Operacje/zgodność

  • RG/sankcje/PEP/wiek - przed przekwalifikowaniem.
  • KYT/velocity на payouts; zasady ręcznego przeglądu.
  • Książki startowe i RACI dotyczące incydentów/eskalacji.

15) Ekonomia i ryzyko

Rozważyć efektywną szybkość biorąc pod uwagę 3DS-phia, FX, wartość obciążenia zwrotnego, retray-overhead.
Twardy limit przekłada się na segmenty wysokiego ryzyka, aby nie pokrywać ekspozycji na obciążenie zwrotne i rezerw.


16) Sedno sprawy

Powtórzenia działają, gdy są kontrolowane: idempotencja, jasna macierz kodów rozumu, wykładnicze backoff z jitter, próba ograniczenia, i pakiet z routingu (zmiana PSP/3DS/method). Dodaj wyłącznik, kolejki wypłat i silne pojednania - i konsekwentnie podnosić konwersję bez tworzenia bierze i dziury gotówkowe.

Contact

Skontaktuj się z nami

Napisz do nas w każdej sprawie — pytania, wsparcie, konsultacje.Zawsze jesteśmy gotowi pomóc!

Rozpocznij integrację

Email jest wymagany. Telegram lub WhatsApp są opcjonalne.

Twoje imię opcjonalne
Email opcjonalne
Temat opcjonalne
Wiadomość opcjonalne
Telegram opcjonalne
@
Jeśli podasz Telegram — odpowiemy także tam, oprócz emaila.
WhatsApp opcjonalne
Format: kod kraju i numer (np. +48XXXXXXXXX).

Klikając przycisk, wyrażasz zgodę na przetwarzanie swoich danych.