GH GambleHub

פיוס של תשלומי PSP ודיווחים

TL; DR

פיוס הוא התפר האוטומטי היומי של ספר החשבונות והאירועים שלכם (auth/capture/refund/payout) עם דוחות PSP/רוכש/בנק. המפתח להצלחה: מודל נתונים יחיד, מפתחות התאמה דטרמיניסטיים, אידמפוטנטיות קפדנית, סובלנות סכום/FX/זמן, תור DLQ למקרים שנויים במחלוקת וספרי משחק לתיקון אוטומטי. KPI: Recon Mismatch Rate, Aging of Unpressed, Auto-game% lind.

1) מדוע ומה אנו בודקים

מטרות: אישור הכנסות ועמלות, שכפול/איתור הפסד, הסדר נכון לפי ימים ומטבעות, החזר למקור, ציות לביקורת/רגולטור.

אובייקטי פיוס:
  • הפיקדונות: 'auth' לכידת auth like &fost
  • החזרים: מלא/חלקי, סטטוסים וסכומים
  • תשלומים/משיכות: תשלומי שיטה יוצאים
  • עמלות והתאמות: עמלות PSP, תוכניות החלפה, תיקונים
  • צ ”רג” בקס/סכסוכים: מעבר ליוזמה שלך
  • FX/Conversions: תעריפים, התפשטות, תיקון נקודה

2) מקורות נתונים

אירועים פנימיים: אוטובוס אירועים/קפקא, ”תשלומים _ שטוחים”, ”החזר”, ”תשלום”, ”לדג 'ר” שלך.

דוחות PSP (SFTP/API/webhook dump):
  • עסקאות (הצהרות מבצעיות)
  • התנחלויות/חבורות
  • עמלות/הצהרות
  • טעמים/סכסוכים
  • רישומי תשלומים/הטה "א/RTP/SEPA
  • הצהרות בנק: CAMT MT940/CSV/ISO20022, מתיחת אשראי.
💡 אחסון: נחיתה = נרמול = נרמול = התאים. כל הקבצים הנכנסים, עם צ 'קים ואירועים.

3) מקשים תואמים

עץ מפתח עדיפות (יורד בדיוק):

1. provider_txid ↔ provider_txid (זיהוי PSP ייחודי)

2. idempotency_key/ merchant_reference (אם יציב ב-PSP)

3. (סכום, מטבע, timestamp_bucket, לאסט4/bin, auth_code)

4. שכבה מעורפלת: סובלנות על ידי סכום/זמן, ארץ בין/איסר, משפחה במצב

המלצות:
  • שמור גם את התשלום _ id וגם את הספק _ txid.
  • עבור החלקי/החזר, הוסף 'רצף _ index' or 'refund _ line _ id'.
  • תשלום מלא - 'payout _ catch _ id + line_id'.
  • עבור FX - 'exec _ id' (המרה) ומקור הקצב.

4) מודל נתונים (שכבה מנורמלת)

json
{
"source": "INTERNAL    PSP_TX    PSP_SETTLEMENT    BANK",
"provider": "Acquirer_A",
"payment_id": "pay_123",
"provider_txid": "psp_tx_789",
"kind": "AUTH    CAPTURE    REFUND    PAYOUT    FEE    SETTLEMENT    CHARGEBACK",
"sequence": 0,
"amount": 100. 00,
"currency": "EUR",
"fee_amount": 1. 20,
"fx_rate": 1. 0000,
"fx_src": "PSP    ECB    BANK",
"status": "APPROVED    CAPTURED    SUCCESS    FAILED    SETTLED",
"event_ts": "2025-11-03T12:00:00Z",
"settlement_date": "2025-11-05",
"account": "PSP_MERCHANT_CARD_A",
"matching_keys": {
"provider_txid": "psp_tx_789",
"merchant_ref": "mr_456",
"idem_key": "idem_abc"
},
"hash_row": "sha256(...)"
}

5) תהליך פיוס (ETL/תזמור)

1. בלע: אנחנו לוקחים דוחות PSP (SFTP/API), לאמת את התרמית/חתימות, לשמור ל ”גלם”.
2. נרמול: מפים של השדה לפורמט המאוחד (מטבע ISO, עשרוני, אזור זמן UTC).
3. התאמה: אלגוריתם להתאמת עץ המפתח עם סובלנות.
4. Post-game: form diff (אי התאמות) ו-journal instructions עבור ספר החשבונות/תיקונים.
5. פשרה: תפר 'PSP _ Settlement ↔ Bank' (זיכוי לחשבון), פיזור ביום/אצווה.
6. דיווח: לוח מחוונים, התראות; שנוי במחלוקת ב-DLQ לניתוח ידני/שחזור אוטומטי.

Idempotence: עבור כל קובץ/דף - "inbleget _ id'. טעינה מחדש לא משנה את התוצאה.

6) סובלנות וכללים

זמן: ”ny15 min” לעסקאות, ”pan1 יום” להסדר.
כמות: 'על סדר גודל 0. 01 'מטבע בסיס או' לום 10 bps' להבדלי FX/דמי.
FX: אנו מאפשרים אי התאמה עם הבנק אם מקור שער החליפין שונה; Fix _ src.
חלק/מרובה: סכום שורות ההחזר החלקי חייב להיות שווה לשיווי המשקל הפנימי.

7) מיפוי טקסונומי

סוג diffתיאורפעולה
MISSING_INTERNALיש לי PSP, אנחנו לאצור מקרה יתום, בדוק קובצי אינטרנט/מגשים מחדש
MISSING_PSPיש לנו, PSP לאבדוק מצב/חזרה, קשר PSP
AMOUNT_MISMATCHכמויות שונות> סובלנותרישום אוטומטי/יומן, הסלמה לפי הצורך
FEE_MISMATCHעמלות חלוקותקבל PSP כ ”אמיתי” (מדיניות) או דורש תו אשראי
STATUS_DRIFTללכוד איתנו, AUTH עם PSPבדוק קורות רשת/יישוב
שכפולשכפול שורותDedup by 'diver _ txid/idempotency _ keyfost
FX_DRIFTקורסים מסתעפיםקבע מקור רשמי, התאם P&L
REFUND_OVERהחזר> נתפסיחידה דחופה, ניתוח ידני, רישום תיקון הפוך

8) פנקס & חשבונאות

לכידה: 'DR חשבונות מתקבלים/CR הכנסות' DR Cash (לאחר פשרה )/CR חשבונות קבלה &post

אגרה: "DR עמלות/CR מזומן או תשלום &fost

החזר: הפוך פרסומים פרו ראטה חלקי

חשבונות נפרדים ושמורה למחלוקות

FX reval: חידוש יומי של שיווי משקל AR/מטמון ב- "fx _ src _ policyme &pos

9) KPIs ויעדים

התאמה אוטומטית% = קווי התאמה אוטומטית/כל הקווים (95% מטרה)

Recon Mismatch Rate = diff lines/all lines (1-2%)

הזדקנות בלתי מבוקרת: p50/p95 ימים ב ־ DLQ (p95, 3 ימים)

זמן הסדר: פרופורציה של חבורות שנתפרו עם בנק די-דיי (99%)

פי דיוק: אי התאמות דמי ספק (סימון 0. 1% תחלופה)

תקריות שכפול/יתום: מכוון ל ־ 0

10) פרוסות SQL

10. 1 התאמת provider_txid בסיסית

sql
WITH i AS (
SELECT provider, provider_txid, kind, amount, currency, event_ts
FROM internal_norm
),
p AS (
SELECT provider, provider_txid, kind, amount, currency, event_ts
FROM psp_norm
)
SELECT
COALESCE(i. provider_txid, p. provider_txid) AS txid,
COALESCE(i. provider, p. provider) AS provider,
i.kind AS kind_internal, p. kind AS kind_psp,
i.amount AS amount_internal, p. amount AS amount_psp,
i.currency, p. currency,
CASE
WHEN i.provider_txid IS NULL THEN 'MISSING_INTERNAL'
WHEN p. provider_txid IS NULL THEN 'MISSING_PSP'
WHEN ABS(i. amount - p. amount) > 0. 01 THEN 'AMOUNT_MISMATCH'
ELSE 'MATCHED'
END AS recon_status
FROM i
FULL OUTER JOIN p USING (provider, provider_txid);

10. 2 בנק ↔ התיישבותי

sql
SELECT s. settlement_date, s. batch_id, s. currency,
s. amount_settled, b. amount_bank,
(b. amount_bank - s. amount_settled) AS diff
FROM psp_settlements s
LEFT JOIN bank_statements b
ON b. value_date = s. settlement_date
AND b. currency = s. currency
AND ABS(b. amount_bank - s. amount_settled) <= 0. 5;

10. 3 DLQ מזדקן

sql
SELECT diff_type,
COUNT() AS cnt,
PERCENTILE_CONT(0. 5) WITHIN GROUP (ORDER BY AGE(NOW(), created_at)) AS p50_age,
PERCENTILE_CONT(0. 95) WITHIN GROUP (ORDER BY AGE(NOW(), created_at)) AS p95_age
FROM recon_dlq
GROUP BY diff_type
ORDER BY cnt DESC;

11) תכונות על מסילות/מקרים

מפות: הבדלים בין ”auth” ו ”לכידה”, התאמות מאוחר ”יישוב”, החלפה/תשלום מעגל - קווים נפרדים.
A2A/Open בנקאות/RTP: אישורים מיידיים, אבל ”היפוך” אפשרי; לבדוק ”תשלום” ולהחזיר.
ארנקים: לרוב מושלמים "ספק _ txid'," החזר מהיר "; שמור על קווי התשלום.
שוברים: אין החזר סימטרי - שיקוף נכון במדיניות ובדו "חות.
חשיש על שרשרת ↔ provider_txid; אישור N; חשבונאות של עמלות רשת והנחות אפשריות; שער חליפין בזמן ההמרה.

12) חוברות משחק מבצעיות

Surge in MISSING_INTERNAL: לבדוק אובדן של קורות אינטרנט/מגשים מחדש, בליעה חוזרת, לאפשר סקרי API.
AMOUNT_MISMATCH מ-PSP אחד: השוו מודל עיגול/מע "מ/אגרה, בקשו הצהרת תיקון.
ההסדר אינו קשור לבנק: תאריך שווי צ 'ק, עמלות בנק, עיכובים של T + N; הכנס באופן זמני את ”חשבון המתח”.
REFUND_OVER המונית: עצירה מיידית אוטומטית, ביקורת אידמפוטנטיות, תיקון ידני.
FX_DRIFT: תיקון המדיניות של מקור שער החליפין (ECB/PSP/BANK), חישוב מחדש של הבדלי P&L.

13) שליטה ובטיחות

אידמפוטנטיות של בליעה: ”file _ id + checksum” והורדת ההיסטוריה.
גישה (RBAC) ובקרת 4-עין: לתיקונים ידניים/רשומות בכתב עת.
שביל ביקורת: כל התאמות/דיפרסיה/תיקונים ביומן בלתי ניתן לשינוי.
איכות נתונים: תוכניות, שדות חובה, אימות מטבע/קנה מידה.

14) לוח מחוונים והתראות

Widgets: התאמה אוטומטית%, Mismatch Rate, Aging DLQ, Settlement Time, Fe Accuracy, top PSP by diff, diff-type map.

התראות:
  • התאמה אוטומטית% <90% על ידי ספק/יום * P1
  • 'הזדקנות p95> 3 ימים' # P2
  • ”כמות _ ספייק MISMATCH” = P1
  • ”בנק להסדר” לפי כמות/מטבע * P0

15) מקרי מבחן (UAT/Prod)

1. טעינה מחדש של אותו קובץ = 0 תופעות לוואי (idempotency).
2. Reflands חלקי (3 קווים) = התאמה, התאמה לפי רצף.
3. המרת FX: אי התאמת שער החליפין בתוך התאמה נכונה.
4. לשכפל את provider_txid בדו "ח * dedup והתראה.
5. הסקרים הסוגרים את הפער, המעמד מיושר.
6. קבוצת פיצויים עם קו עמלה = = פירוט נכון על הכנסות/פי/נט.

16) טעויות תכופות וכיצד להימנע

השווה בין ”ניסיון” נגד ”לכידה” * שמור על אותה גרנולריות.
ההיעדר של "ספק _ txid' בלוג ה-" active log "מאבד את הדיוק של הגפרור.
התעלמו מאזורי הזמן. תקוזזו בתאריכי הסדר.
אין אי התאמות ”נצחיות” של DLQ/retras.
עריכה ידנית ללא יומן * חוסר עקביות עם ביקורת.
סובלנות מעורפלת = או התאמה מחדש או ”הכל ב-DLQ”.

17) רשימת מימושים

[ ] נורמליזציה אחידה וספריות PSP/שיטה/חשבון
[ ] מיפוי עץ מפתח (txid _ merchant_ref ac.prozy)
[ ] כמות/זמן Tolerances/FX, מדיניות מקור הקורס
[ ] בליעה אידמפוטנטית, DLQ, retrai, התראות
[ ] Settlement↔Bank פיוס, מדיניות חשבון המתח
[ ] Dashboard KPI, דיווח פיננסי/ביקורת
[ ] ספרי משחקים ותיקים של SLA

תקציר

פיוס הוא משמעת הנדסית: נורמליזציה, מפתחות אמינים, סובלנות, התאמות אוטומטיות ותיקונים שקופים. עם קונטוור כזה, אתה לייצב הכנסות ועמלות, למזער ”חורים שחורים”, להאיץ סגירת תקופה ולקבל ביקורת ללא כאב: Auto- להתאים% duction, Mismatch Extening.

Contact

צרו קשר

פנו אלינו בכל שאלה או צורך בתמיכה.אנחנו תמיד כאן כדי לעזור.

Telegram
@Gamble_GC
התחלת אינטגרציה

Email הוא חובה. Telegram או WhatsApp — אופציונליים.

השם שלכם לא חובה
Email לא חובה
נושא לא חובה
הודעה לא חובה
Telegram לא חובה
@
אם תציינו Telegram — נענה גם שם, בנוסף ל-Email.
WhatsApp לא חובה
פורמט: קידומת מדינה ומספר (לדוגמה, +972XXXXXXXXX).

בלחיצה על הכפתור אתם מסכימים לעיבוד הנתונים שלכם.