GH GambleHub

Operations and Compliance → Verification of Source of Funds

Verify funding source (SoF/SoW)

1) What SoF and SoW are and why it's needed

SoF (Source of Funds) - documentary evidence of where the money came from for the game/deposit/output.
SoW (Source of Wealth) - an explanation of how the player's general condition was formed (assets/liabilities/income).

Objectives: compliance with the requirements of licenses and payment partners, reducing the risks of laundering and fraud, protecting vulnerable players (RG) and building an evidence base.

2) SoF/SoW principles

1. Risk-Based Approach: Depth of verification depends on geo/payment method/amounts/patterns.
2. Proportionality: we request only the required set of documents.
3. Evidence-by-Design: Each solution is accompanied by artifacts and tracing.
4. Timeliness & Fairness: transparent deadlines (ETA), understandable requirements for documents, respectful tone.
5. Privacy-first: minimization of personal data, encryption, limited access and retention.

3) When to request SoF/SoW (triggers)

Financial thresholds: single withdrawal of ≥ X, total deposits/turnover for N days ≥ Y.
Risk patterns: velocity/structuring, multiple payment instruments, cash-like methods.
In-game behavior: high turnover on low income, "cashing in" (minimum risk/minimum time).
Profile events: VIP/raising limits, changing payment details, high-risk geo/POP/address media.
Payment incidents: chargeback/returns/discrepancies of the owner of the funds.

4) What is accepted as evidence (examples)

Income:
  • Salary: employer's certificate/statement for 3-6 months/tax form.
  • Self-employment/business: tax returns, contracts, bank statements on the business account.
  • Investments: brokerage statements, dividends, coupons.
  • Sale of assets: sales contract + receipt to the account.
  • Inheritance/gift: notarial documents + bank confirmation.
  • Crypto income: exchange/custodian reports, tx history, fiat cash out.

Requirements for documents: readability, completeness of details, date not older than N months, coincidence of full name/address, corresponding amounts with movement on the platform.

5) SoF/SoW policy (framework)

yaml policy_id: SOF-POL-001 scope: players rba:
low:  {geo: "trusted", methods: ["bank_transfer"], monthly_turnover_max: 1000}
medium:{geo: "mixed",  methods: ["cards","wallet"], monthly_turnover_max: 10000}
high: {geo: "high_risk" OR pep==true OR crypto_usage==true}
triggers:
- single_payout >= 3000
- rolling_deposits_30d >= 5000
- payout_destination_change == true
- aml_flags in {velocity, structuring, srcdst_mismatch}
required_evidence:
low:  [salary_stub OR bank_statement]
medium: [bank_statement_3m, employer_letter OR tax_return]
high:  [tax_return, bank_statement_6m, source_of_wealth_summary]
decisions:
approve:  sof_consistent==true request:  need_additional_docs==true decline:  inconsistencies OR unverifiable_sources review_sla_days: 180 owner: mlro

6) Controls-as-Code (fragments)

Gate to output by threshold and risk:
yaml control_id: SOF-PAYOUT-GATE scope: payouts trigger:
expr: (payout_amount >= sof_threshold[country]) OR risk_band>=high actions:
- block: payout
- request: "sof_package"
- notify: aml_ops evidence:
fields: [player_id, payout_amount, risk_band, country, thresholds_version]
Source-to-source depozit↔vyvod mismatch:
yaml control_id: SOF-SRC-TO-SRC scope: payouts trigger:
expr: payout_destination!= last_successful_deposit_source actions:
- limit: payout "require_same_source"
- request: "proof_of_ownership_for_destination"
exceptions:
- condition: method_type=="bank_transfer" AND policy. allow_bank_payouts==true
Cryptocurrency → fiat:
yaml control_id: SOF-CRYPTO-CASHOUT scope: payouts trigger:
expr: crypto_usage==true AND fiat_payout>=crypto_threshold actions:
- request: ["exchange_account_statement","tx_history","proof_of_fiat_offramp"]
- flag: aml_review
Aggregated risk rate:
yaml control_id: SOF-RISK-SCORE inputs: [velocity, structuring, srcdst_mismatch, sanctions, pep, adverse_media]
score:
expr: 0. 25velocity + 0. 2structuring + 0. 2srcdst + 0. 2pep + 0. 1adverse + 0. 05geo thresholds:
- high:  score>=0. 8 -> KYC3_EDD + full_SoW
- medium: score>=0. 5 -> targeted_SoF
- low:  auto_clear

7) Process (SOP) - Case Lifecycle

SOP: SoF Request

1. Autogate control → creating a case with reasons and a list of required documents.
2. Sending a letter to the player/in the chat: a list of documents, format, deadline, ETA response.
3. Reminders: T + 48h, T + 96h; if there is no answer - output restriction.

SOP: Document Analysis

1. Match name/address/IBAN and amounts to profile/transactions.
2. Check the time frame (period coverage), regularity of receipts, inconsistencies.
3. If necessary, request additional evidence/clarification.
4. Decide 'approve/ request_more/decline', document justification.

SOP: Solution and Communications

1. For'approve '- remove the lock, fix the link to evidence, audit log.
2. For 'decline' - fix cause/references, notify AML/Compliance, consider SAR/STR.
3. Update the risk profile and timeline of the case, close the case with the final status.

SOP: Re-checks

By event (new thresholds/change of details/VIP/PEP) or by SLA (for example, once every 12 months for high-risk).

8) Data integration

KYC/KYB: verification levels and matching details of the owner of the funds.
Payments: deposit/withdrawal histories, cards/IBAN/wallets, chargeback.
AML: velocity/structuring/sanctions/PEP/address media.
Case-tool: statuses, deadlines, communications, SLA and SAR/STR export.
DWH/BI: SoF cases, consistency control, reporting.

9) Privacy, security, retention

Minimization: request only relevant pages/fields.
RBAC/ABAC: only AML/Compliance has access to documents; watermarks/time references.
Encryption: at rest/in transit; keys - HSM/Vault.
Retention: retention by jurisdiction (usually ≥ 5 years after the last operation) and removal policy.
Audit - Each read/decision is logged.

10) Quality and Metrics (KPI/OKR)

Operating:
  • SoF Case Time-to-Triage (P95), Decision TAT (median), Hold Duration.
  • Completion Rate (share of cases with a full package), Re-request Rate.
Quality/Risk:
  • Approval/Decline/Escalation Share, SAR/STR on SoF (for confirmed cases).
  • Mismatch Rate, False Negative/Positive proxy.
Player experience:
  • SoF Drop-off, CSAT on communications, complaints about timing/clarity of requirements.
Effect:
  • Chargeback/Fraud Loss ↓, MTTR payouts after SoF ↓, Evidence Completeness ≥ 98%.

11) Templates (fragments)

Case Card (YAML):
yaml case_id: SOF-2025-1042 player_id: P-887231 risk_band: high reason: ["payout>=3000","srcdst_mismatch"]
requested_docs: ["bank_statement_6m","tax_return","employment_letter"]
deadline: "2025-11-08T23:59:00Z"
status: awaiting_docs  # triage    awaiting_docs    review    approved    declined    sar_submitted analyst: aml. ops@domain notes: []
evidence_uri: s3://sof-evidence/P-887231/2025-11/
Validator checklist (Markdown):

- Name/address/details match?
- Does the statement period cover turnover?
- Is the regularity of income confirmed?
- Do sums and frequencies correspond to dep/conclusions?
- No obvious edits/anomalies?
- Result: approve/ request_more/decline (justification)
Communication to the player (short template):

Subject: Additional confirmation of the source of funds
Hello, <Name>! For a secure withdrawal, we need documents:
Bank statement for the last 3-6 months (PDF/scan)
Income confirmation (certificate/tax form)
Please upload files by <date>. Funds are reserved, the status of payments will be updated immediately after verification. If you have any questions, please reply to this email.

12) Special cases

Cryptocurrency: demand exchange/custodian reports, match on-chain and off-ramp, avoid self-reported screens from wallets without backing up.
Cash/cash: allowed only if there are legitimate documents (sale, gift, inheritance) and bank crediting.
Gifts/third parties: confirmation of the source from the sender + the right to dispose; increased risk.
PEP/RCA: always EDD and extended monitoring.

13) Anti-patterns

Universal "thick" package for all cases without RBA → high drop-off.
Locks "without time" and without clear communication.
Accept screenshots instead of originals/verifiable PDFs/statements.
Lack of docking with payments (source-to-source) and AML signals.
Two versions of the truth: decisions in the mail, data in DWH - without a common SSOT.
There is no re-evaluation of cases, thresholds are not revised.

14) 30/60/90 - implementation plan

30 days (foundation):
  • Approve SOF-POL-001 (triggers, thresholds, RBA), include'SOF-PAYOUT-GATE 'and'SOF-SRC-TO-SRC'.
  • Connect case management, letter templates and checklists, evidence storage.
  • Set up SoF Overview dashboards (volume/statuses/ETA).
60 days (scaling):
  • Add 'SOF-CRYPTO-CASHOUT' and aggregator 'SOF-RISK-SCORE', country-overrides.
  • Integrate KYC/KYB/Payments (owner-match, IBAN/card/wallet) and autopause payments.
  • Introduce quality sampling/audit cases, retro by FPs.
90 days (fixation):
  • Achieve Evidence ≥ 98%, reduce Decision TAT and Hold Duration to target,
  • Link KPI SoF with OKR AML/Payments/Support, conduct internal audit of the design and effectiveness of controls.
  • Prepare external/regulatory reports and periodic threshold review methodology.

15) FAQ

Q: When is SoF enough without SoW?
A: For one-time or moderate thresholds. SoW needs VIP/PEP/high-risk, with prolonged high turnover or obvious profile inconsistencies.

Q: Can I pay to another account?
A: Only with confirmed ownership and additional checks; preferably source-to-source.

Q: What to do if the amounts do not match?
A: Request extended statements/clarifications, in case of critical discrepancies - decline and consider SAR/STR.

Q: How to reduce the burden on the player?
A: Clear requirements, example of acceptable documents, secure upload, partial autocomplete and reasonable timeframe.

Contact

Get in Touch

Reach out with any questions or support needs.We are always ready to help!

Telegram
@Gamble_GC
Start Integration

Email is required. Telegram or WhatsApp — optional.

Your Name optional
Email optional
Subject optional
Message optional
Telegram optional
@
If you include Telegram — we will reply there as well, in addition to Email.
WhatsApp optional
Format: +country code and number (e.g., +380XXXXXXXXX).

By clicking this button, you agree to data processing.