GH GambleHub

PSP 지불 및 보고서의 조정

TL; DR

조정은 PSP/acquirer/bank 보고서를 통해 원장 및 이벤트 (지정/캡처/환불/지불) 의 일일 자동 스티칭입니다. 성공의 열쇠: 단일 데이터 모델, 결정 론적 매칭 키, 엄격한 dempotency, sum/FX/time tolerances, 논란의 여지가있는 사례에 대한 DLQ 큐 및 자동 교정 플레이 북. KPI: 정찰된 불일치 비율의 정찰기, 조정되지 않은 나이의 노화, 자동 일치 비율인가.

1) 왜 그리고 우리가 확인하는 것

목표: 수익 및 수수료 확인, 중복/손실 탐지, 일 및 통화 별 정확한 결제, 환불 대 소스 제어, 감사/규제 기관 준수.

조정 대상:
  • 예금: '의심 → 캡처 → 정착'
  • 환불: 전체/부분, 상태 및 금액
  • 지불/철회: 발신 방법 지불
  • 수수료 및 조정: PSP 수수료, 교환 체계, 수정
  • 충전/분쟁: 이니셔티브를 넘어서
  • FX/변환: 요금, 스프레드, 고정 지점

2) 데이터 소스

내부 이벤트: 이벤트 버스/카프카, '결제 _ flat', '환불', '지불', 원장.

PSP 보고서 (STP/API/webhook 덤프):
  • 거래 (운영 명세서)
  • 정착/배치
  • 수수료/명세서
  • 충전기/분쟁
  • 지불/OCT/RTP/SEPA 등록
  • 은행 계좌 명세서: CAMT MT940/CS/EX20022, 신용 리프트.
💡 저장: 착륙 → 원시 → 정규화 → 일치합니다. 체크섬 및 버전이 포함 된 모든 들어오는 파일.

3) 일치하는 키

우선 순위 키 트리 (정확도가 내림):

1. (PHP 3 = 3.0.6, PHP 4)

2. demempotency _ key/maler _ reference (PSP에서 안정적인 경우)

3. (금액, 통화, 타임 스탬프 _ 버킷, last4/bin,

4. 퍼지 레이어: 합계/시간, BIN/발행자 국가, 상태 패밀리에 의하여 공차

권장 사항:
  • 'payment _ id' 와 'propessor _ txid' 를 모두 유지하십시오.
  • 부분/환불을 위해 'sequence _ indx' 또는 'refund _ line _ id' 를 추가하십시오.
  • 지불금- 'payout _ batch _ 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. Ingest: PSP 보고서 (STP/API) 를 가져 와서 체계/서명을 검증하고 '원시' 로 저장합니다.
2. 정규화: 필드의 통합 형식 (통화 ISO, 10 진수, UTC 시간대) 에 대한 매핑.
3. 일치: 키 트리와 공차를 일치시키는 알고리즘.
4. 경기 후: 원장/수정에 대한 양식 diff (불일치) 및 저널 항목.
5. 정착: 스티치 'PSP _ SETTLEMENT banK' (계정에 대한 크레딧), 주간/배치별로 산란됩니다.
6. 보고서: 대시 보드, 경고; 수동 파싱/자동 재생을 위해 DLQ에서 논란의 여지가 있습니다.

이데올로기: 각 파일/페이지마다- 'ingest _ id'. 재 장전은 결과를 변경하지 않습니다.

6) 공차 및 규칙

시간: 거래의 경우 '

금액: 'λ0. FX/수수료 차이에 대한 01 '기본 통화 또는' 계정 10 bps '.
FX: 환율의 출처가 다른 경우 은행과 불일치를 허용합니다. 'fx _ src' 를 수정하십시오.
부분/다중: 부분/환불 라인의 합은 내부 잔액과 같아야합니다.

7) Diff 분류법

Diff 타입설명행동
MISSING _ INTERNALPSP는고아 케이스를 만들고 웹 후크/retrays를 확인하십시오
MISSING _ PSP우리는 PSP가 없습니다상태/반복, PSP 연락처 확인
AMOUNT _ MISMATCH금액은 다양합니다> 공차필요에 따라 자동 올바른/로그, 에스컬레이트
FEE _ MISMATCH커미션이 다릅니다PSP를 "참" (정책) 으로 받아들이거나 신용 메모가 필요함
STATUS _ DRIFT우리와 함께하는 자극, PSP를 사용한 자연캡처/정착 웹 후크 확인
DUPLICATE중복선'provider _ txid/idempotency _ key' 에 의한 결제
FX _ DRIFT코스 분기공식 소스 설정, P&L 조정
(PHP 3 = 3.0.6, PHP환불> 캡처긴급 장치, 수동 구문 분석, 역 보정 로그

8) 원장 및 회계

캡처: 'DR 계정 수령 가능/CR 수익' 겠습니다 'DR 현금 (결제시 )/CR 계정 수령'

요금: 'DR 요금/CR 현금 또는 지불'

환불: 리버스 포스팅 프로 라타 부분

충전: 별도의 계정 및 분쟁 예약

FX reval: 'fx _ src _ policy' 에서 AR/캐시 밸런스의 일일 재평가

9) KPI 및 목표

자동 일치% = 자동 일치 라인/모든 라인 (95% 이하 대상)

Recon Mismatch Rate = diff line/all line (할 수 있음 1-2%)

Unconciled의 노화: DLQ에서 p50/p95 일 (p95 소 3 일)

정착 시간: D-day 은행으로 꿰매는 배치 비율 (99% 이상)

수수료 정확도: 공급자 수수료 불일치 ( 매출의 1%)

중복/고아 사건: 0 목표

10) SQL 슬라이스

10. 1 기본 공급자 _ 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) 레일/케이스 기능

지도: '지정' 과 '캡처', 늦은 '결제' 조정, 교환/회로 요금-별도의 회선.
A2A/Open Banking/RTP: 즉각적인 확인이지만 '반전' 이 가능합니다. '지불' 및 반품을 확인하십시오.
지갑: 종종 완벽한 '제공자 _ txid', 빠른 '환불'; 요금 회선을보십시오.
바우처: 대칭 환불 없음-정책 및 보고서에 올바르게 반영됩니다.
암호화: 체인 해시 해시 공급자 _ txid; 확인 N; 네트워크 수수료 및 가능한 리베이트 회계; 환율-전환 시점.

12) 운영 플레이 북

MISSING _ INTERNAL 급증: 웹 후크/리트레이 손실 여부 확인, 섭취 재생, API 폴링 활성화.
하나의 PSP에서 AMOUNT _ MISMATCH: 반올림/VAT/수수료 모델 비교, 수정 명세서 요청.
합의는 은행에 연결되지 않습니다: 확인 가치 날짜, 은행 수수료, T + N 지연; 일시적으로 "서스펜스 계정" 에 넣습니다.
Mass REFUND _ OVER: 즉시 정지 자동 수리, demotency 감사, 수동 수정.
FX _ DRIFT: 환율 소스 (ECB/PSP/BANK) 의 정책을 수정하고 P&L 차이를 다시 계산하십시오.

13) 통제 및 안전

섭취의 이데올로기: '파일 _ id + 체크섬' 및 다운로드 기록.
액세스 (RBAC) 및 4 눈 제어: 수동 수정/저널 항목.
감사 트레일: 변경 불가능한 로그에서 모든 일치/확장/수정.
데이터 품질: 체계, 필수 필드, 통화/규모 검증.

14) 대시 보드 및 경고

위젯: 자동 일치%, 불일치 속도, 노화 DLQ, 정산 타이밍, 수수료 정확도, diff 별 최고 PSP, diff 유형 맵.

경고:
  • 공급자/일 → P1에 의한 '자동 일치% <90%'
  • '노화 p95> 3 일' → P2
  • 'AMOUNT _ MISMATCH 스파이크' → P1
  • 금액/통화 → P0에 의하여 '은행 번호 결제'

15) 테스트 사례 (UAT/Prod)

1. 동일한 파일 → 0 부작용 (demotency) 을 다시로드합니다.
2. 부분 리판 (3 줄) → 양이 일치하며 순서대로 일치합니다.
3. FX 변환: 공차 내 환율 불일치 → 정확한 일치.

4. (PHP 3 = 3.0.6, PHP 4)

5. 누락 된 웹 후크 캡처 → 폴링은 간격을 좁히고 상태는 정렬됩니다.
6. 수수료 회선이있는 결제 배치 → 수익/수수료/인터넷의 정확한 분석.

16) 빈번한 실수와 피하는 방법

'시도' 와 '캡처' 비교 → 동일한 세분성을 유지합니다.
→ 로그에 'provider _ txid' 가 없으면 경기의 정확도가 떨어집니다.

시간대 → 정산 날짜별로 오프셋을 무시하십시오

DLQ/retras → "영원한" 불일치는 없습니다.
감사에 대한 로그 → 불일치없이 수동 편집.
퍼지 공차 → 재 대결 또는 "DLQ의 모든 것".

17) 구현 점검표

  • 통합 정규화 체계 및 PSP/방법/계정 디렉토리
  • 키 트리 매핑 (txid → 가맹점 _ ref → 퍼지)
  • 코스 소스 정책 금액/시간 허용/FX
  • Idempotent 섭취, DLQ, retrai, 경고
  • 은행 화해, 서스펜스 계정 정책
  • 대시 보드 KPI, 재무/감사보고
  • 플레이 북 및 SLA 파싱 디프 케이스

요약

조정은 정규화, 신뢰할 수있는 키, 공차, 자동 일치 및 투명한 수정과 같은 엔지니어링 분야입니다. 이러한 윤곽을 사용하면 수익과 수수료를 안정화하고 "블랙홀" 을 최소화하고 기간 종료를 가속화하며 고통없이 감사를받을 수 있습니다: Auto-match Doctor, Mismatch 겠습니다.

Contact

문의하기

질문이나 지원이 필요하시면 언제든지 연락하십시오.우리는 항상 도울 준비가 되어 있습니다!

Telegram
@Gamble_GC
통합 시작

Email — 필수. Telegram 또는 WhatsApp — 선택 사항.

이름 선택 사항
Email 선택 사항
제목 선택 사항
메시지 선택 사항
Telegram 선택 사항
@
Telegram을 입력하시면 Email과 함께 Telegram에서도 답변드립니다.
WhatsApp 선택 사항
형식: +국가 코드 + 번호 (예: +82XXXXXXXXX).

버튼을 클릭하면 데이터 처리에 동의하는 것으로 간주됩니다.