GH GambleHub

Net Deposits : calcul et contrôle

1) Qu'est-ce que Net Deposits et pourquoi ils sont nécessaires

Net Deposits (ND) est un investissement net de l'utilisateur pour la période suivant la comptabilisation de tous les flux de trésorerie « inversés ». La métrique est critique pour :
  • économie unitaire (corrélation entre ND et LTV, ARPPU, NGR),
  • jeu responsable (limites, autocontrôle, source de fonds),
  • risques et complications (AML/sanctions, anomalies),
  • opérations (priorité des paiements et bonus anti-abus).

Idée de base

Le joueur a introduit X (deposits), a sorti Y (withdrawals). Tout ce qui reste dans l'écosystème comme « l'argent vraiment versé » du joueur est Net Deposits, ajusté pour les retours, les chargbecks, les annulations et d'autres opérations techniques.

2) Formules et limites comptables

2. 1. Formule de base (niveau produit)


ND = Deposits
− Withdrawals − (successful, paid)
− Refunded Deposits
+ Chargeback Debits
− Chargeback Credits
± Reversal Adjustments
Explications :
  • Deposits - seulement ceux qui ont réussi (captured/settled). Autorisation sans capture ultérieure - ne comptez pas.
  • Withdrawals - nous ne prenons en compte que ceux payés (paid/settled). Les demandes rejetées/annulées par ND ne réduisent pas.
  • Remboursements - Remboursements de dépôt à la même source (same-method).
  • Chargeback Debits/Credits est l'effet net des disputes (débits/remboursements).
  • Les adaptations Reversal sont des corrections techniques (par exemple, un retour à partir d'un portefeuille « erroné », en double).

2. 2. Extension de la comptabilité

Bonus et Free Bets : ne sont pas inclus dans les dépôts ; ce sont des prêts nationaux. Cependant, les scénarios abuse (dépôt pour un bonus → cache-out instantané) doivent réduire ND via des Withdrawals rapides et/ou via des corrections antifraud.
Frais PSP : par défaut, ne sont pas déduits de ND (ND est une métrique « centrée sur les joueurs »). Les commissions sont à P & L.
Transfert interne/Cross-Wallet (Sport → Casino) : ND ne change pas (c'est un mouvement à l'intérieur de l'équilibre).
Cancel Withdrawal : l'annulation ne réduit pas ND (après tout, le retrait n'a pas eu lieu).
Promotional Cashout/Manual Credit : les prêts monétaires de l'opérateur n'augmentent pas ND.
Tokens/crypto : compter par équivalent fiat à l'instant settle (voir multivalence).
Partial/Split Payments : ND augmente d'un montant qui est vraiment settled.

2. 3. Limites de la période

Options de « tranche » ND :
  • Activity-based (par 'settled _ at' transaction). Recommandé pour les états financiers.
  • Request-based (par 'created _ at '/' requested _ at') : est bon pour l'analyse rapide des produits, mais pas pour le rapprochement.

3) Multivalence et évaluation des cours

Toutes les opérations sont mappées dans le rapport de currency (par exemple EUR) au taux de change au moment settle.
Фиксируйте: `amount_original`, `currency_original`, `fx_rate_at_settle`, `amount_reporting`.
Pour les crypto : utilisez le prix moyen pondéré (VWAP) sur la source sélectionnée sur 'settled _ at'.
Ne surestimez pas les MN historiques lorsque vous changez de cours : gardez le FX réel au moment de l'événement.

4) Niveaux de rôle ND

ND_user - investissements nets d'un joueur particulier.
ND_segment - par pays, canaux, fournisseurs de paiement, affiliations.
ND_cohort - par date d'inscription/premier dépôt.
ND_platform est le ND total de la plate-forme pour la période.

5) Politiques et exclusions

5. 1. Règle same-method et retour à la source

Si le dépôt A est passé par la méthode M, il est préférable que le remboursement des fonds de dépôt soit effectué par M jusqu'au montant net du dépôt. Cela réduit les risques d'AML et de paiements croisés controversés.

5. 2. Ajustements internes

Tout ajustement manuel doit comporter un reason_code, une piste d'audit et une référence à l'opération primaire.
Les ajustements ne doivent pas masquer le loss-chasing/abuse.

5. 3. Cycles de bonus

Marquez « bonus-driven ND » (le dépôt qui a activé le bonus) avec le drapeau. Construisez des rapports ND avec/sans dépôts bonus liés.

6) Modèle d'événement et schéma de données

6. 1. Événements clés

`DEPOSIT_AUTHORIZED`, `DEPOSIT_CAPTURED`, `DEPOSIT_REFUNDED`

`WITHDRAWAL_REQUESTED`, `WITHDRAWAL_PAID`, `WITHDRAWAL_REJECTED`, `WITHDRAWAL_CANCELED`

`CHARGEBACK_DEBITED`, `CHARGEBACK_CREDITED`

`ADJUSTMENT_APPLIED` (тип: REVERSAL, TECH_FIX, FRAUD_CORRECTION и т. п.)

Tous les événements sont idempotentes ('idempotency _ key', 'event _ id'). Prenez en charge la livraison exactly-once dans DWH via la déduplication par 'event _ id'.

6. 2. Mini-schéma (simplifié)


payments. transactions (
id, user_id, provider, method, type, status,
amount_original, currency_original,
amount_reporting, reporting_currency, fx_rate_at_settle,
requested_at, settled_at, related_tx_id, reason_code, meta
)

types: DEPOSIT    WITHDRAWAL    REFUND    CHARGEBACK_DEBIT    CHARGEBACK_CREDIT    ADJUSTMENT status: PENDING    AUTHORIZED    CAPTURED    PAID    REJECTED    CANCELED    REFUNDED    SETTLED

Les totaux de ND sont considérés comme des agrégations de « type » et de « état » avec des filtres « seulement settled/paid/captured, le cas échéant ».

7) Contrôle de la qualité des données et rapprochement

7. 1. Rapprochement avec PSP/Acquirer

Rapprochement quotidien des rapports PSP (settlement files) avec votre 'transactions'.
Correspondances par 'provider _ ref', montants, dates settle, devises et fee (pour P&L).
Les incohérences → les tiquets dans Ops : « capture de mission », « double refund », « late presentment ».

7. 2. Antidumping et idempotence

Contrôle : unicité par '(fournisseur, provider_tx_id, type, settle_date)'.
Audit séparé du journal par opération manuelle ('AJUSTMENT _ APPLIED').

7. 3. Intégrité des règles commerciales

La sortie 'PAID' sans historique de dépôt dans la méthode sélectionnée est l'indicateur rouge.
"DÉPÔT _ CAPTURED' →" WITHDRAWAL _ PAID "pour la même somme est un drapeau gris (bonus-abuse).

8) Rapports et dashboards

8. 1. KPI de base

« ND _ total » pour la période ; « ND _ per _ user », « ND _ median » ;

Décomposition de la ND par pays, méthode, PSP, affiliation ;

'ND _ 7/30/90 'par cohortes d'enregistrement ;

Cash Conversion Lag : médiane de 'DEPOSIT _ CAPTURED' à 'WITHDRAWAL _ PAID'.

8. 2. Segments de risque

Les joueurs avec « ND≈0 » et le chiffre d'affaires élevé sont des candidats pour vérifier la source des fonds.
L'inversion rapide (deposit→withdrawal) <N heures est le déclencheur de l'enquête.

8. 3. Plans d'analyse

Produit (sport/casino/live) : où ND est le plus « sain ».
Méthodes de paiement : échecs ND dans le trafic frod sur une méthode spécifique.
Campagnes/bonus : ND-uplift et l'effet de post-remplacement.

9) Politiques antifrod et jeu responsable

Limites de dépôt (daily/weekly/monthly) - dans les rapports ND par une mesure de conformité distincte.
Règles Velocity : n dépôts> X en Y minutes + cache rapide = bloc/contrôle manuel.
Sanctions/PEP/SoF : la croissance de ND est supérieure au seuil → la source obligatoire des fonds.
Mullocalisations : Comparer un pays géo/méthode/banque à un pays KYC.
Self-exclusion : ND après l'exclusion doit être strictement 0 ; toute tentative est un alert.

10) Processus et SLO

SLO de calcul du dashboard ND : T + 1, prêt jusqu'à 09:00 TZ local de la zone de déclaration.

Incidents : faire tomber la priorité P1 si :
  • les fichiers settlement PSP manqués,
  • les doublons conduisent à un segment ND incorrect,
  • écarts massifs de FX.
  • DRP : Recasing ND via re-ingest événements sur une période avec un ordre déterministe.

11) Exemples SQL (modèles)

💡 Ci-dessous sont des exemples simplifiés pour la vitrine 'dw. transactions_flat' avec des champs normalisés.

11. 1. Calcul de ND par utilisateur et jour

sql
WITH base AS (
SELECT user_id,
DATE(settled_at) AS d,
SUM(CASE WHEN type='DEPOSIT'     AND status IN ('CAPTURED','SETTLED') THEN amount_reporting ELSE 0 END) AS dep,
SUM(CASE WHEN type='WITHDRAWAL'   AND status='PAID'           THEN amount_reporting ELSE 0 END) AS wd,
SUM(CASE WHEN type='REFUND'     AND status='SETTLED'         THEN amount_reporting ELSE 0 END) AS ref_dep,
SUM(CASE WHEN type='CHARGEBACK_DEBIT'  AND status='SETTLED'        THEN amount_reporting ELSE 0 END) AS cb_deb,
SUM(CASE WHEN type='CHARGEBACK_CREDIT' AND status='SETTLED'        THEN amount_reporting ELSE 0 END) AS cb_cr
FROM dw. transactions_flat
WHERE settled_at >=:from AND settled_at <:to
GROUP BY 1,2
)
SELECT user_id, d,
dep - wd - ref_dep + cb_deb - cb_cr AS nd
FROM base;

11. 2. Indicateur de retournement rapide (abyse)

sql
SELECT t_dep. user_id, t_dep. id AS dep_id, t_wd. id AS wd_id,
EXTRACT(EPOCH FROM (t_wd. settled_at - t_dep. settled_at))/3600 AS hours_between,
t_dep. amount_reporting, t_wd. amount_reporting
FROM dw. transactions_flat t_dep
JOIN dw. transactions_flat t_wd
ON t_dep. user_id = t_wd. user_id
AND t_wd. type='WITHDRAWAL' AND t_wd. status='PAID'
AND t_wd. amount_reporting BETWEEN t_dep. amount_reporting0. 9 AND t_dep. amount_reporting1. 1
WHERE t_dep. type='DEPOSIT' AND t_dep. status IN ('CAPTURED','SETTLED')
AND t_wd. settled_at - t_dep. settled_at <= INTERVAL '24 hours';

11. 3. Segmentation par méthode/PSP

sql
SELECT method, provider,
SUM(CASE WHEN type='DEPOSIT'  AND status IN ('CAPTURED','SETTLED') THEN amount_reporting ELSE 0 END) AS dep,
SUM(CASE WHEN type='WITHDRAWAL' AND status='PAID'          THEN amount_reporting ELSE 0 END) AS wd,
SUM(CASE WHEN type='REFUND'   AND status='SETTLED'         THEN amount_reporting ELSE 0 END) AS ref_dep,
SUM(CASE WHEN type='CHARGEBACK_DEBIT' AND status='SETTLED'     THEN amount_reporting ELSE 0 END) AS cb_deb,
SUM(CASE WHEN type='CHARGEBACK_CREDIT' AND status='SETTLED'     THEN amount_reporting ELSE 0 END) AS cb_cr,
SUM(CASE WHEN type='DEPOSIT'  AND status IN ('CAPTURED','SETTLED') THEN amount_reporting ELSE 0 END)
- SUM(CASE WHEN type='WITHDRAWAL' AND status='PAID'          THEN amount_reporting ELSE 0 END)
- SUM(CASE WHEN type='REFUND'   AND status='SETTLED'         THEN amount_reporting ELSE 0 END)
+ SUM(CASE WHEN type='CHARGEBACK_DEBIT' AND status='SETTLED'     THEN amount_reporting ELSE 0 END)
- SUM(CASE WHEN type='CHARGEBACK_CREDIT' AND status='SETTLED'     THEN amount_reporting ELSE 0 END) AS nd
FROM dw. transactions_flat
WHERE settled_at BETWEEN:from AND:to
GROUP BY 1,2
ORDER BY nd DESC;

12) Alertes et déclencheurs (opération)

Spike ND↓ sur la méthode : chute ND> 30 % d/d - vérifier les incidents PSP et les blocages.
Spike ND↑ par segment : croissance ND> 50 % w/w - une nouvelle aff est probable. - la source ou le schéma a été contourné.
ND≈0 en régime élevé, un contrôle KYC/SoF forcé.
La part anormale de Refund/Chargeback dans ND est un audit de la chaîne « depozit→igra→vyvod ».

13) Meilleures pratiques (en bref)

1. Compter ND selon les dates settle et fixer FX au moment settle.
2. Séparer fortement le transfert interne de l'argent du joueur.
3. Toutes les modifications manuelles sont avec le reason_code et l'audit.
4. Règles antifrod sur les inversions rapides et les méthodes croisées.
5. Deux rapports : le T opérationnel + 1 et la clôture financière (mois/trimestre).
6. Inversion de la logique : ND v1/v2 avec migration des vitrines historiques.

14) Questions fréquentes

Q : Est-ce que les conclusions annulées sont prises en compte ?
R : Non. Seul 'WITHDRAWAL _ PAID'réduit ND.

Q : Qu'en est-il du dépôt qui a été autorisé mais qui n'a pas été saisi ?
R : Ne pas inclure dans ND. Ce ne sont pas des recettes réelles.

Q : Comment refléter le chargeback après une conclusion déjà faite ?
A : 'CHARGEBACK _ DEBIT' ajoutera la contribution négative du joueur (en fait, la plate-forme perd), ND augmentera par débit, mais le rapport financier final devrait également montrer la perte/consommation sur les chargbacks.

Q : Dois-je déduire les commissions PSP de la ND ?
R : Non, ND est une métrique centrée sur les joueurs. Les commissions sont à P & L.

15) Chèque de mise en œuvre

  • Pneumatique événement avec idempotence et garantie de livraison
  • Vitrine 'transactions _ flat' avec types/statuts unifiés
  • FX-normalisation sur settle, stockage des originaux
  • Règles de mapping des statuts PSP → vos statuts
  • Rapprochement quotidien avec PSP et alerte sur delta
  • Dashboards ND (commun, par méthode, par segment, par cohorte)
  • Politiques de jeu responsable et déclencheurs SoF basés sur ND
  • Documentation de la formule ND v1 et plan d'évolution v2

Résumé

Net Deposits est la métrique centrale de l'argent « réel » du joueur dans le système. Une ND correcte nécessite des règles strictes de reconnaissance (settle-date), une multivalence soignée, une idempotence d'événement, un rapprochement régulier avec la PSP et des déclencheurs antifrod intégrés. Formez un répertoire unique des statuts et une typologie des opérations - et ND deviendra un pilier solide pour la finance et la monétisation responsable.

Contact

Prendre contact

Contactez-nous pour toute question ou demande d’assistance.Nous sommes toujours prêts à vous aider !

Commencer l’intégration

L’Email est obligatoire. Telegram ou WhatsApp — optionnels.

Votre nom optionnel
Email optionnel
Objet optionnel
Message optionnel
Telegram optionnel
@
Si vous indiquez Telegram — nous vous répondrons aussi là-bas.
WhatsApp optionnel
Format : +code pays et numéro (ex. +33XXXXXXXXX).

En cliquant sur ce bouton, vous acceptez le traitement de vos données.