← Phase 5 / NOMIIQ Pay
💳 Module 28

NOMIIQ Pay

Portefeuille multi-devises in-app avec conversion instantanée au taux interbank (Wise API), carte virtuelle Visa NOMIIQ (Stripe Issuing), cashback 1% sur hôtels & vols réservés via NOMIIQ, transferts P2P et conformité EMD2. Voyager sans friction financière.

Stripe IssuingWise APIApple PayGoogle PayEMD2KYC
14
User Stories
4 sem.
S40–S41
9+
Devises supportées
PCI DSS
Niveau 1
User Stories — M28

📋 14 User Stories — NOMIIQ Pay

US28.1 En tant qu'utilisateur, j'accède à un wallet multi-devises (EUR, USD, GBP, JPY, CHF, AUD, CAD, THB, BTC optionnel)
US28.2 En tant qu'utilisateur, je convertis instantanément mes devises au taux interbank (Wise API — < 0.5% spread)
US28.3 En tant qu'utilisateur, je paye sans contact via Apple Pay ou Google Pay wrappés sur mon wallet NOMIIQ
US28.4 En tant qu'utilisateur, je reçois 1% de cashback sur tout hôtel ou vol réservé via NOMIIQ Pay
US28.5 En tant qu'utilisateur, je dispose d'une carte virtuelle Visa NOMIIQ (émise via Stripe Issuing)
US28.6 En tant qu'utilisateur, je complète le KYC simplifié (selfie + pièce d'identité via Stripe Identity, < 2 min)
US28.7 En tant qu'utilisateur, je transfère de l'argent P2P à un autre utilisateur NOMIIQ (split note de frais)
US28.8 En tant que marchand partenaire, j'accepte les paiements NOMIIQ via QR code in-app
US28.9 En tant qu'utilisateur, je consulte mon historique de transactions filtrable par devise/catégorie/date
US28.10 En tant qu'utilisateur, j'exporte mon historique en CSV ou PDF pour ma comptabilité
US28.11 En tant qu'utilisateur, je bénéficie de la protection acheteur (chargeback facilité en < 48h)
US28.12 En tant que système, je respecte la directive EMD2 (Electronic Money Directive 2, licence PI)
US28.13 En tant que système, je dépose les fonds clients dans un compte ségrégué (protection EMD2)
US28.14 En tant qu'utilisateur, je reçois des notifications en temps réel pour chaque transaction (push + in-app)
Architecture

🏦 Infrastructure NOMIIQ Pay

💳 Flux de Paiement

KYC Onboarding Stripe Identity → selfie + ID → niveau 1 (< 500€/j) ou 2 (< 5000€/j)
Wallet Funding Virement SEPA ou carte bancaire → compte ségrégué EMD2
Conversion Wise API taux interbank → conversion atomique (ACID)
Card Issuance Stripe Issuing → carte virtuelle Visa instantanée
P2P Transfer Ledger interne → débit/crédit wallets NOMIIQ (instantané)
Cashback Engine Cron job quotidien → calcul cashback 1% + créditage wallet

🔒 Conformité & Sécurité

PCI DSS L1 Tokenisation Stripe — aucun PAN stocké côté NOMIIQ
EMD2 / PI Licence Paiement Institution UE — fonds ségrégués
AML / KYC Stripe Identity + détection transactions suspectes
Fraud Detection Stripe Radar règles custom — score fraude temps réel
3D Secure 2.0 Authentification forte pour tous paiements > 30€
Audit Trail Chaque transaction loggée, immuable (PostgreSQL append-only)
📜 Partenariat Wise for Business
Taux préférentiels négociés pour volumes NOMIIQ > €100k/mois. Spread < 0.3% vs 0.5% standard.
Stack Technique

🛠️ Technologies M28

💳 Paiements Core

Stripe Issuing
Émission carte virtuelle Visa NOMIIQ (instant)
Stripe Identity
KYC selfie + ID — conformité AML/KYC < 2min
Stripe Billing
Gestion abonnements + invoicing B2B
Stripe Radar
Détection fraude ML — règles custom NOMIIQ
Stripe Webhooks
Events temps réel → mise à jour wallet instantanée

🌍 Multi-Devises

Wise API
Taux interbank temps réel + transferts internationaux
Open Exchange Rates
Fallback taux de change + affichage wallet
SEPA Direct Debit
Alimentation wallet Europe (Stripe integration)
Apple Pay (PassKit)
Tokenisation NFC iPhone wallet NOMIIQ
Google Pay API
Tokenisation NFC Android wallet NOMIIQ

🔐 Conformité

PCI DSS Level 1
Certification paiements — audit annuel QSA
EMD2 Licence PI
Electronic Money Directive — fonds ségrégués
PostgreSQL (append-only)
Ledger immuable — audit trail transactions
Vault (HashiCorp)
Chiffrement données sensibles wallet
Datadog APM
Monitoring < 200ms P99 transactions critiques
Schémas Base de Données

🗄️ Nouvelles Tables M28

🗄️ wallets
id UUID PRIMARY KEY
user_id UUID → users UNIQUE
balances JSONB — {EUR: 150.00, USD: 43.20, ...}
default_currency CHAR(3) DEFAULT EUR
kyc_level ENUM(none, basic, verified) DEFAULT none
kyc_verified_at TIMESTAMPTZ
stripe_customer_id TEXT
stripe_card_id TEXT — virtual card ID
is_frozen BOOLEAN DEFAULT false
created_at TIMESTAMPTZ
🗄️ wallet_transactions
id UUID PRIMARY KEY (append-only)
wallet_id UUID → wallets
type ENUM(credit, debit, conversion, cashback, p2p_in, p2p_out)
amount DECIMAL(15,4) NOT NULL
currency CHAR(3)
amount_eur DECIMAL(15,4) — normalized
counterparty_id UUID → users (P2P)
stripe_payment_intent TEXT
description TEXT
metadata JSONB
created_at TIMESTAMPTZ NOT NULL
API REST — M28

🔌 Endpoints NOMIIQ Pay

GET /api/v1/wallet Soldes wallet multi-devises de l'utilisateur 🔒
POST /api/v1/wallet/fund Alimenter le wallet (SEPA/carte) 🔒
POST /api/v1/wallet/convert Convertir devises (body: from, to, amount) 🔒
GET /api/v1/wallet/rate Taux de change interbank temps réel (Wise) 🔒
POST /api/v1/wallet/transfer Transfert P2P (body: recipient_id, amount, currency) 🔒
GET /api/v1/wallet/transactions Historique transactions paginé + filtres 🔒
GET /api/v1/wallet/transactions/:id Détail transaction 🔒
GET /api/v1/wallet/export Export CSV/PDF historique (query: format, from, to) 🔒
POST /api/v1/wallet/kyc/start Initier KYC (Stripe Identity session) 🔒
GET /api/v1/wallet/kyc/status Statut vérification KYC 🔒
GET /api/v1/wallet/card Informations carte virtuelle Visa 🔒
POST /api/v1/wallet/card/freeze Geler/dégeler la carte virtuelle 🔒
Critères d'acceptation

✅ Definition of Done — M28

KYC opérationnel via Stripe Identity : completion < 2 min, taux de succès ≥ 92%
Carte virtuelle Visa émise via Stripe Issuing, utilisable Apple Pay et Google Pay
Conversion devises < 0.5% spread vs taux interbank Wise — vérifiée sur 10 paires
Transfert P2P temps réel : crédit/débit wallet instantané, notification push < 3s
Conformité PCI DSS L1 : aucun PAN stocké côté NOMIIQ, tokenisation Stripe uniquement
Fonds ségrégués EMD2 : compte séparé vérifié par auditeur externe
Cashback 1% calculé et crédité sous 24h pour toute réservation éligible
P99 transactions wallet < 200ms — mesuré sur 7 jours consécutifs de charge nominale
KPIs M28

🎯 Objectifs de Succès

500k+
Utilisateurs NOMIIQ Pay actifs
< 200ms
P99 transactions wallet
< 2min
KYC completion time moyen
< 0.1%
Taux fraude transactions
€2M+
Volume GMV / mois à 12 mois
1%
Cashback distribué fidélise +25% rétention
4.5★
Note feature Pay in-app
99.99%
Uptime service paiement (SLO)