Création complète de tous les modèles de données : ✅ Déjà existants : - modele-global.md : USERS, CONTENTS, SUBSCRIPTIONS, LISTENING_HISTORY - modele-moderation.md : REPORTS, SANCTIONS, APPEALS, STRIKES, BADGES 🆕 Nouveaux diagrammes : - modele-recommandation.md : USER_INTERESTS, INTEREST_CATEGORIES Jauges 0-100%, évolution temps réel, pas de dégradation temporelle - modele-publicites.md : AD_CAMPAIGNS, AD_METRICS, AD_IMPRESSIONS Ciblage géo/horaire/intérêts, budget prépayé, validation 24-48h - modele-premium.md : PREMIUM_SUBSCRIPTIONS, ACTIVE_STREAMS, OFFLINE_DOWNLOADS Multi-devices (1 stream actif), offline 30j, sans essai gratuit - modele-monetisation.md : CREATOR_MONETIZATION, CREATOR_REVENUES, PAYOUTS KYC obligatoire, revenus pub (3€/1000) + premium (70/30), seuil 50€ - modele-audio-guides.md : AUDIO_GUIDES, GUIDE_SEQUENCES, USER_GUIDE_PROGRESS Multi-séquences GPS, 4 modes (piéton/voiture/vélo/transport), 2-50 séquences - modele-radio-live.md : LIVE_STREAMS, LIVE_RECORDINGS, LIVE_LISTENERS Buffer 15s, max 8h, enregistrement auto, notification abonnés Avantages architecture : ✅ Séparation entités globales (1 source vérité) ✅ Diagrammes focalisés par domaine métier ✅ Maintenance simplifiée (pas de duplication) ✅ Cohérence avec règles métier validées 8 modèles de données complets couvrant 100% du projet MVP.
2.9 KiB
2.9 KiB
Modèle de données - Monétisation créateurs
📖 Voir Règles métier - Section 18 : Monétisation | Entités globales
Diagramme
erDiagram
CREATOR_MONETIZATION }o--|| USERS : "créateur monétisé"
CREATOR_REVENUES ||--o{ REVENUE_TRANSACTIONS : "transactions"
CREATOR_REVENUES }o--|| USERS : "revenus"
PAYOUTS }o--|| USERS : "versement"
PAYOUTS ||--o{ REVENUE_TRANSACTIONS : "inclut"
CREATOR_MONETIZATION {
uuid id PK
uuid creator_id FK UK
string status
string kyc_status
string mangopay_user_id
string mangopay_wallet_id
string iban
string siret
timestamp kyc_validated_at
timestamp activated_at
timestamp suspended_at
timestamp created_at
}
CREATOR_REVENUES {
uuid id PK
uuid creator_id FK
int month_year
decimal ad_revenue_euros
decimal premium_revenue_euros
decimal total_revenue_euros
decimal balance_euros
string status
timestamp computed_at
}
REVENUE_TRANSACTIONS {
uuid id PK
uuid creator_id FK
uuid revenue_month_id FK
string transaction_type
decimal amount_euros
jsonb metadata
timestamp created_at
}
PAYOUTS {
uuid id PK
uuid creator_id FK
decimal amount_euros
decimal fees_euros
decimal net_amount_euros
string status
string mangopay_payout_id
timestamp requested_at
timestamp completed_at
timestamp failed_at
}
Légende
Entités monétisation :
- CREATOR_MONETIZATION : Statut monétisation créateur - Status :
pending_kyc,active,suspended,disabled- KYC obligatoire : SIRET, RIB pro, CNI/Passeport, Kbis <3 mois si société - Critères activation : Compte ≥3 mois, ≥500 abonnés, ≥10K écoutes complètes, 0 strike actif, ≥5 contenus 90j - Vérification via Mangopay KYC (24-72h) - CREATOR_REVENUES : Revenus mensuels par créateur - Ad_revenue : 3€/1000 écoutes complètes utilisateurs gratuits (CPM) - Premium_revenue : 70% abonnement prorata temps écoute (4.99€ × 0.70 × ratio_ecoute) - Status :
pending,computed,paid,suspended- Calcul fin de mois, paiement le 15 du mois suivant - REVENUE_TRANSACTIONS : Détail transactions - Type :
ad_listen,premium_listen,adjustment,refund- Metadata : content_id, user_id, listen_duration, etc. - Traçabilité complète pour audit - PAYOUTS : Versements SEPA - Seuil : 50€ minimum, sinon report mois suivant - Fees : 1.8% + 0.18€ (Mangopay SEPA) - Status :
pending,processing,completed,failed- Retry auto 3 fois si échec, puis suspension monétisation - Inactivité ≥18 mois : versement forcé + préavis emails 12m, 18m, 18m+30j