Le projet vise à créer une application permettant aux utilisateurs de générer automatiquement des adresses et des numéros de téléphone en fonction des pays choisis, facilitant ainsi les achats en ligne. Si l'utilisateur ne possède pas de système de paiement disponible sur Amazon ou eBay, l'application lui permet d'envoyer des liens d'articles ou de produits. Une fois que l'utilisateur a confirmé l'achat, l'application doit procéder à l'achat automatique en utilisant les API des services de commerce électronique. L'administrateur doit pouvoir effectuer le paiement des produits. L'application doit également fournir des fonctionnalités de gestion des comptes et garantir la sécurité des informations.
- Génération d'adresses et de numéros de téléphone : Les utilisateurs peuvent générer automatiquement des adresses et des numéros de téléphone en fonction des pays choisis.
- Soumission de liens : Les utilisateurs peuvent envoyer des liens d'articles ou de produits depuis des sites tels qu'Amazon et eBay.
- Confirmation d'achat : Les utilisateurs peuvent confirmer l'achat après avoir examiné les détails de la commande.
- Achat automatique : L'application doit intégrer les API d'Amazon et eBay pour effectuer automatiquement l'achat une fois la confirmation reçue.
- Gestion des paiements : L'administrateur doit pouvoir procéder au paiement des produits.
- Gestion des comptes : Les utilisateurs doivent pouvoir créer un compte, se connecter, et gérer leurs informations personnelles.
L'application doit avoir une interface utilisateur conviviale avec les fonctionnalités suivantes :
- Génération d'adresses et de numéros de téléphone.
- Formulaire de soumission de liens.
- Page de confirmation d'achat.
- Gestion des comptes.
- Les utilisateurs doivent pouvoir créer un compte et se connecter.
- Les utilisateurs doivent pouvoir générer des adresses et des numéros de téléphone en fonction des pays choisis.
- Les utilisateurs doivent pouvoir soumettre des liens et confirmer les achats.
- Les utilisateurs doivent pouvoir consulter l'historique de leurs achats.
- L'administrateur doit pouvoir se connecter à un tableau de bord sécurisé.
- L'administrateur doit pouvoir visualiser les commandes en attente de paiement.
- L'administrateur doit pouvoir effectuer le paiement des commandes.
- Backend: Python, Django, Django REST framework, GraphQL.
- Base de données: SQLite (pour le développement), PostgreSQL (pour la production).
- Authentification: JWT (JSON Web Tokens) pour les utilisateurs.
- Intégration d'API: Utilisation des API Amazon et eBay.
- Génération d'adresses: Utilisation de services tiers pour la génération d'adresses.
- Toutes les transactions et informations utilisateur doivent être sécurisées.
- Utilisation de HTTPS pour les communications.
- Gestion sécurisée des jetons d'authentification.
Utilisation de Git pour le contrôle de version.
- Installation de l'environnement de développement avec des dépendances spécifiées dans un fichier de configuration.
- Écriture de tests unitaires pour les fonctionnalités clés.
- Réalisation de tests d'intégration pour s'assurer de la compatibilité avec les API d'Amazon et eBay.
- Documentation complète du code, expliquant les fonctionnalités et l'architecture de l'application.
- Documentation sur le déploiement de l'application en production.
POST /api/token/: Obtenir un jeton d'accès avec des informations d'identification validesPOST /api/auth/register: Créer un nouveau compte utilisateur avec validation par e-mail ou SMS.POST /api/auth/login: Authentifier un utilisateur existant.GET /api/auth/logout: Déconnecter un utilisateur.POST /api/auth/verify-email: Vérifier l'e-mail de l'utilisateur.POST /api/auth/resend-verify-email: Vérifier l'e-mail de l'utilisateur.POST /api/auth/password-change/POST /api/auth/forgot-password: .POST /api/auth/reset-password.GET /api/auth/me/: Obtenir les infos sur le usersPOST /api/auth/token-verify/:POST /api/auth/token/verify/:
- Génération d'Adresse et Numéro de Téléphone :
-
GET /api/address/:country: Générer une adresse aléatoire en fonction du pays spécifié. -
GET /api/phone/:country: Générer un numéro de téléphone aléatoire dans la liste de contacts prédéfinie pour le pays spécifié. -
GET /api/user/addresses: Obtenir la liste des adresses uniques de l'utilisateur. -
GET /api/user/phones: Obtenir la liste des numéros de téléphone uniques de l'utilisateur.
-
- Méthode: POST
- Description: Obtenir un jeton d'accès avec des informations d'identification valides.
- Endpoint:
/api/generate-info/- Méthode: POST
- Description: Permet aux utilisateurs de générer des adresses et des numéros de téléphone en fonction des pays choisis.
- Endpoint:
/api/submit-link/- Méthode: POST
- Description: Permet aux utilisateurs de soumettre des liens d'articles ou de produits.
- Endpoint:
/api/confirm-purchase/- Méthode: POST
- Description: Permet aux utilisateurs de confirmer l'achat après avoir examiné les détails de la commande.
- Endpoint:
/api/admin/dashboard/- Méthode: GET
- Description: Récupérer les commandes en attente de paiement pour l'administrateur.
- Endpoint:
/api/admin/payment/- Méthode: POST
- Description: Permet à l'administrateur de procéder au paiement des commandes.
Ces endpoints constituent une base de départ. Ils doivent être adaptés et étendus en fonction des besoins spécifiques du projet.