depositdirect.net

DepositDirect

Une plateforme numérique de garantie de dépôt locatif. Les locataires reçoivent un certificat au lieu d’immobiliser des milliers d’euros sur un compte bancaire. Vérification d’identité, paiements Stripe, génération de PDF et plus de 25 langues, propulsés par des microservices événementiels.

Retour aux références

8

Microservices

2

Applications frontend

25+

Langues

8+

Services Docker

Aperçu du projet

Le point de départ

European apartment building — the housing market DepositDirect serves

DepositDirect est venu nous voir avec une idée simple mais efficace : pourquoi immobiliser des milliers d’euros sur un compte bancaire lorsqu’une garantie remplit le même objectif ? L’entreprise avait besoin d’une plateforme numérisant l’ensemble du processus — du calcul à l’attestation finale, en passant par la vérification d’identité et de solvabilité.

La complexité se cachait derrière cette idée simple : des exigences réglementaires à chaque étape, l’intégration Schufa, des paiements sécurisés et des certificats PDF juridiquement conformes dans plus de 25 langues. Le tout devait être aussi simple pour l’utilisateur final qu’une commande en ligne.

01

Défi

Les dépôts locatifs traditionnels immobilisent des milliers d’euros sur des comptes bancaires pendant des années. DepositDirect avait besoin d’une plateforme remplaçant les avoirs bancaires immobilisés par des certificats de garantie numériques, tout en gérant la vérification d’identité, les contrôles de solvabilité, les paiements et les certificats PDF juridiquement conformes dans plus de 25 langues.

02

Approche

Nous avons conçu une architecture de microservices événementielle avec 8 services Go communiquant via ConnectRPC et NATS. Un frontend Nuxt 3 accompagne le client du calcul du dépôt à la création du certificat, en passant par la vérification d’identité. Stripe gère tous les paiements, Supabase prend en charge l’authentification.

03

Résultat

Une plateforme prête pour la production avec 8 microservices, une intégration Stripe, des vérifications de solvabilité Schufa et une création automatisée de certificats PDF. Deux applications frontend servent les locataires et les administrateurs dans plus de 25 langues pour les marchés européens.

Plateforme

Deux applications, un backend

La plateforme se compose de deux applications interconnectées, propulsées par le même backend de microservices Go. Chaque application s’adresse à un groupe d’utilisateurs différent avec des fonctionnalités sur mesure.

01

Application client

L’application destinée aux locataires, où les utilisateurs calculent le coût de leur garantie de dépôt, passent la vérification d’identité, effectuent les paiements Stripe et reçoivent leur certificat de garantie numérique. Prend en charge plus de 25 langues avec une localisation complète.

  • Calculateur de dépôt
  • Vérification d’identité
  • Paiements Stripe
  • Certificats PDF
  • Plus de 25 langues
  • Gestion des contrats
02

Tableau de bord d’administration

Tableau de bord de gestion interne pour l’équipe DepositDirect permettant de gérer les contrats, d’examiner les vérifications d’identité, de traiter les demandes de support et de surveiller les revenus sur l’ensemble des marchés.

  • Gestion des contrats
  • Vérification d’identité
  • Support client
  • Analyses de revenus
  • Gestion des utilisateurs
  • Journaux d’audit

Identité de marque

Branding & Design System

Pour DepositDirect, nous avons développé une identité de marque qui transmet confiance, simplicité et fiabilité financière. Des tons ambrés chaleureux signalent la proximité tout en conservant le sérieux qu’exige un produit financier.

Logo & logotype

Le logo DepositDirect est un logotype moderne aux formes de lettres claires et géométriques. Sa typographie distinctive communique stabilité et confiance, tandis que la couleur d’accent ambrée transmet chaleur et accessibilité. Il fonctionne sur des arrière-plans clairs comme foncés.

DepositDirect logo on dark background
DepositDirect logo on light background

Design System

Le Design System repose sur des tons ambrés chaleureux comme couleur d’accent principale, complétés par des blancs épurés et des gris neutres pour les arrière-plans. Les composants shadcn assurent une interface cohérente et accessible. La palette de couleurs inspire la confiance financière tout en restant conviviale et moderne.

DepositDirect Logo

Dark Mode

DepositDirect Logo

Light Mode

Primary

#316C97

#F4FBFF
#BDE1FB
#87C4EF
#5DA4D7
#316C97
#0A3752

Headline

Aa

PT Serif · Bold · 700

Buttons

Secondary

#D85C2B

#FFEBE3
#FBCFBD
#F79872
#D85C2B
#BA491D
#7D2705

Body

Aa

Mona Sans · Regular · 400

Line Weights

1px · Accent

2px · Divider

4px · Section

Icons

Shield
Document
Money
Key
Check
Building

Dark

#0A3752

Components

Kaution suchen...
Gesichert Ausstehend Entwurf

Kautionszertifikat #4821

100%

modernice a transformé notre vision de dépôts simplifiés en une plateforme robuste et évolutive. L’architecture Event Sourcing nous offre une traçabilité complète, essentielle dans le secteur financier.

DepositDirect

DepositDirect

Direction

Architecture technique

Microservices & Event Sourcing

Le backend repose sur 8 microservices Go avec le framework d’Event Sourcing modernice/goes. Les événements de domaine constituent la source unique de vérité, stockés dans MongoDB, communiqués via ConnectRPC (gRPC+HTTP) et distribués par le bus d’événements NATS.

API Gateway
Contract
Billing
Notification
PDF
Auth
Schufa
CLI

Décisions d’architecture

01

Le backend se compose de 8 microservices spécialisés : passerelle API, gestion des contrats, facturation, notifications, génération de PDF, authentification, vérifications de solvabilité Schufa et un outil CLI. Chaque service possède son propre contexte borné avec un Event Store dédié.

02

Les événements de domaine constituent la source unique de vérité : chaque modification de contrat, chaque événement de paiement et chaque résultat de vérification est persisté sous forme d’événement immuable dans MongoDB et distribué via NATS à tous les services concernés. Cela fournit des pistes d’audit complètes, indispensables à la conformité financière.

03

La communication inter-services s’effectue via ConnectRPC, qui génère des endpoints gRPC et HTTP/JSON à partir d’une seule définition Protocol Buffers. Cela permet une communication typée entre les services tout en facilitant l’intégration du frontend.

1

Frontend

2 applications Nuxt 3

Nuxt 3Vue 3Tailwind CSSshadcnPiniaStripe.js

Application client et tableau de bord d’administration avec Nuxt 3, Tailwind CSS et shadcn. Pinia pour la gestion d’état, Stripe.js pour les flux de paiement, plus de 25 langues via Nuxt i18n.

2

Passerelle API

Go + ConnectRPC

GoConnectRPCSupabase AuthJWT

Service API central pour l’authentification, le routage des requêtes et la communication avec le frontend via des endpoints ConnectRPC avec prise en charge de gRPC et HTTP/JSON.

3

Microservices

8 contextes bornés

ConnectRPCMongoDBNATSgoesEvent Sourcing

Services event-sourced pour les contrats, la facturation, les notifications et la génération de PDF. MongoDB comme Event Store, NATS pour la distribution des événements.

4

Infrastructure

Docker Swarm + GCP

Docker SwarmTraefikDopplerGoogle Cloud

Orchestration de conteneurs avec Docker Swarm. Traefik pour le routage et TLS, Doppler pour les secrets, Google Cloud pour l’hébergement.

Stack technique

  • Nuxt 3 + Vue 3
  • Go 1.23
  • ConnectRPC (gRPC+HTTP)
  • MongoDB (Event Store)
  • NATS (Event Bus)
  • Tailwind CSS + shadcn
  • Pinia (State)
  • Stripe.js (Payments)
  • Supabase (Auth)
  • Docker Swarm
  • Traefik
  • Google Cloud + Doppler

Fonctionnalités de la plateforme

Fonctionnalités clés du système

01

Garantie de dépôt locatif

Certificats numériques de garantie de dépôt remplaçant les avoirs bancaires traditionnellement immobilisés. Les locataires préservent leur liquidité, les propriétaires obtiennent la même sécurité.

02

Vérification d’identité

Flux intégré de vérification d’identité afin de garantir la conformité réglementaire. Téléversement de documents, validation et approbation avec une piste d’audit complète.

03

Traitement des paiements

Intégration Stripe pour les paiements récurrents et ponctuels avec traitement des webhooks, facturation automatisée et suivi du statut des paiements.

04

Certificats PDF

Création automatisée de certificats de garantie de dépôt juridiquement conformes sous forme de documents PDF, prêts pour les propriétaires et les gestionnaires immobiliers.

05

Vérifications de solvabilité

Intégration Schufa pour des évaluations automatisées de solvabilité durant le processus de demande, permettant une évaluation immédiate des risques et une prise de décision rapide.

06

Notifications

Workflows d’e-mails automatisés pour les confirmations de contrat, les rappels de paiement, l’envoi de certificats et les mises à jour de statut tout au long du cycle de vie client.

07

Tableau de bord d’administration

Interface d’administration centrale pour la gestion des contrats, l’examen des vérifications d’identité, le support client et le suivi du chiffre d’affaires avec accès basé sur les rôles.

08

Calculateur de dépôt

Calculateur interactif permettant aux locataires de visualiser immédiatement le coût d’une garantie de dépôt par rapport à un dépôt bancaire traditionnel, avec une tarification transparente.

Livrables

  • 2 applications frontend Nuxt 3 (application client, tableau de bord d’administration)
  • 8 microservices Go avec Event Sourcing (modernice/goes)
  • Communication ConnectRPC (gRPC+HTTP)
  • Intégration des paiements Stripe avec paiements récurrents
  • Intégration de l’authentification Supabase
  • Intégration des vérifications de solvabilité Schufa
  • Création automatisée de certificats PDF
  • Plus de 25 langues avec localisation complète
  • Bus d’événements NATS pour la communication asynchrone
  • Infrastructure Docker Swarm avec Traefik
  • Déploiement Google Cloud avec secrets Doppler
  • Intégration ImmoScout pour les données immobilières

Aperçus du projet

Détails techniques et décisions clés derrière le projet DepositDirect

Les produits financiers exigent une traçabilité complète. L’Event Sourcing enregistre chaque changement d’état comme un événement immuable, offrant ainsi des pistes d’audit intégrées, un support pour la conformité réglementaire et la possibilité de reconstruire tout statut de contrat à n’importe quel moment.

ConnectRPC génère, à partir d’une seule définition Protocol Buffers, des endpoints gRPC et HTTP/JSON. Les services communiquent donc en interne via gRPC efficace, tandis que le frontend peut utiliser des requêtes HTTP standard, sans passerelle REST distincte.

Le microservice Schufa dédié traite les demandes de vérification de solvabilité de manière asynchrone. Lorsqu’un locataire demande une garantie de dépôt, le service interroge Schufa, traite la réponse et émet des événements de domaine qui déclenchent le workflow d’approbation ou de refus.

Supabase fournit un service d’authentification géré avec prise en charge intégrée des e-mails/mots de passe, des connexions sociales et des jetons JWT. Cela a considérablement réduit le temps de développement des flux d’authentification tout en offrant une sécurité de niveau entreprise prête à l’emploi.

Un microservice PDF dédié génère des certificats de garantie juridiquement conformes. Les modèles sont remplis avec les données contractuelles et préparés aussi bien pour la distribution numérique que pour l’impression physique.

Le frontend utilise Nuxt i18n avec un routage basé sur les locales et une détection automatique de la langue du navigateur. Les fichiers de traduction sont maintenus pour plus de 25 langues, et la création de certificats prend également en charge une sortie multilingue pour les marchés internationaux.

Prends contact avec nous

Tu construis un produit digital avec paiements, vérification d'identité ou beaucoup de langues ? Alors nous connaissons les pièges. Parlons de ton projet avant qu'ils ne te coûtent du temps.