← Phase 1 Overview / Transport & Deals
✈️
Module 6 — Phase 1 MVP

Transport & Deals

Recherche de vols, hébergements, taux de change temps réel et alertes prix pour les meilleures opportunités depuis votre position.

Backlog

User Stories

US6.1
En tant qu'utilisateur, je peux rechercher des vols (origine, destination, date, nb passagers)
must 8 pts
US6.2
En tant qu'utilisateur, je vois les résultats vols triés par prix + durée + escales
must 5 pts
US6.3
En tant qu'utilisateur, je peux cliquer sur un vol et être redirigé vers la page de réservation (deep link)
must 3 pts
US6.4
En tant qu'utilisateur, je vois les prochains vols depuis mon aéroport le plus proche
should 5 pts
US6.5
En tant qu'utilisateur, je peux créer une alerte prix pour une route (seuil en €)
should 5 pts
US6.6
En tant qu'utilisateur, je reçois une notification quand le prix passe sous mon seuil
should 4 pts
US6.7
En tant qu'utilisateur, je peux rechercher des hébergements (ville, dates, nb personnes)
must 8 pts
US6.8
En tant qu'utilisateur, je vois les hébergements avec photo, prix/nuit, note et lien réservation
must 4 pts
US6.9
En tant qu'utilisateur, je peux voir les taux de change en temps réel et convertir rapidement
must 3 pts
US6.10
En tant qu'utilisateur, le copilote peut proposer des vols dans ses recommandations
must 4 pts
REST API /transport

Endpoints API

GET /transport/flights/search ?from=CDG&to=JFK&date=2025-06-01&adults=1 🔒 auth
GET /transport/flights/nearby ?lat=&lng= — vols depuis aéroport proche 🔒 auth
GET /transport/flights/cheapest ?from=CDG&months=3 — meilleurs prix sur 3 mois 🔒 auth
POST /transport/price-alerts Créer une alerte prix (body: from, to, threshold_usd) 🔒 auth
GET /transport/price-alerts Mes alertes actives 🔒 auth
DELETE /transport/price-alerts/:id Supprimer une alerte 🔒 auth
GET /transport/hotels/search ?city=&checkin=&checkout=&adults= (Booking.com) 🔒 auth
GET /transport/hotels/:id Détail d'un hébergement public
GET /transport/exchange-rates ?base=EUR¤cies=USD,MAD,JPY public
GET /transport/exchange-rates/convert ?amount=100&from=EUR&to=USD public
Business Logic

Intégrations & Règles Métier

✈️
Amadeus Flight Offers Search API
Recherche de vols multi-cabine. Cache Redis 10 min par recherche (clé = from+to+date+adults). Transformation en format NOMIIQ unifié avant envoi au client.
🏨
Booking.com API (Affiliate)
Hébergements via programme affilié Booking. Commission 25-35%. Deep link vers la page de réservation avec tracking NOMIIQ.
💱
Open Exchange Rates API
Taux mis à jour toutes les heures (plan libre). Cachs Redis 1h. Conversion instantanée côté client (pas d'appel API pour convertir).
🔔
Alertes prix — Cron toutes 6h
Worker BullMQ vérifie les prix actuels pour toutes les routes surveillées. Si prix_actuel ≤ seuil_user → notification FCM + email + marquage last_notified.
📍
Aéroport le plus proche
Lookup dans table airports (IATA, lat/lng) avec PostGIS ST_Distance. Top 3 aéroports dans un rayon de 200km de la position user.
🚫
Pas de paiement direct Phase 1
NOMIIQ redirige vers les partenaires via deep links. Pas de checkout intégré. Les revenus sont des commissions affiliées.
Critères d'acceptation
Résultats de recherche vols affichés en < 3s (avec cache : < 0.5s)
Taux de change affichés avec horodatage de la dernière mise à jour
Alerte prix : notification envoyée dans l'heure suivant la détection
Redirection partenaire : deep link fonctionne sur iOS et Android
Hébergements affichés avec photo + prix dès < 2s