Skip to main content

Vue d’ensemble

Ce guide vous montre exactement ce qu’il faut modifier lors de la migration de l’API OneClickDz Flexy v2 vers v3. Chaque exemple présente votre code v2 actuel, liste les changements à effectuer et montre le résultat en v3. Disponible en plusieurs langages : exemples JavaScript/Node.js, PHP et Python inclus.
Dépréciation de l’API v2 : L’API v2 sera dépréciée le 30 octobre 2026. Veuillez migrer avant cette date pour éviter toute interruption de service.

Nouveautés de v3

Réponses standardisées

Toutes les réponses encapsulées dans la structure {(success, data, meta, requestId)}

Meilleure gestion des erreurs

Erreurs structurées avec codes, messages et détails pour un débogage plus facile

Débogage amélioré

Chaque réponse inclut des horodatages et des IDs de requête uniques

Endpoints plus clairs

Regroupement logique : /mobile/*, /internet/*, /gift-cards/*, /account/*

Clés API séparées

Générez des clés sandbox dédiées pour les tests tout en conservant votre clé de production

Liste blanche d'IP

Ajoutez des restrictions IP directement depuis la page des paramètres pour une sécurité renforcée

Liste de contrôle de migration rapide

1

Générer une clé API sandbox (optionnel)

Créez une clé API sandbox depuis la page des paramètres de votre tableau de bord pour tester v3 avant de migrer la production
2

Configurer la liste blanche d'IP (optionnel)

Ajoutez des restrictions IP pour une sécurité renforcée directement depuis les paramètres
3

Mettre à jour l'en-tête d'authentification

Passez de authorization à X-Access-Token dans toutes les requêtes API
4

Mettre à jour la gestion des réponses

Accédez aux données via result.data au lieu d’y accéder directement depuis la réponse
5

Mettre à jour la gestion des erreurs

Vérifiez le booléen result.success et gérez l’objet structuré result.error
6

Mettre à jour les chemins des endpoints

Mappez les chemins v2 vers les nouveaux chemins v3 (voir le tableau de référence complet ci-dessous)
7

Mettre à jour la logique de pagination

Accédez aux informations de pagination depuis result.data.pagination au lieu du niveau racine

Choisissez votre stratégie de migration

Bonne nouvelle : Les APIs v2 et v3 fonctionnent simultanément jusqu’à la dépréciation de v2. Votre clé API de production actuelle fonctionne avec les endpoints v2 et v3, vous offrant une flexibilité dans votre migration.
Changement d’URL de base : v3 utilise une nouvelle URL de base : - v2 : https://flexy-api.oneclickdz.com/v2 - v3 : https://api.oneclickdz.com/v3
Nouvelles fonctionnalités de sécurité : v3 introduit la gestion de clés API sandbox séparées pour les tests, ainsi que la liste blanche d’IP directement depuis la page des paramètres de votre tableau de bord. Votre clé de production continue de fonctionner avec v2 et v3.
Choisissez l’approche qui correspond à vos besoins :

🆕 Nouveau départ

Idéal pour : Refonte complète ou nouveaux projets
  • Générez une clé sandbox pour les tests depuis les paramètres
  • Configurez la liste blanche d’IP pour la clé de production
  • Testez tout en sandbox avec v3
  • Utilisez la clé de production quand vous êtes prêt
✅ Table rase, pas de code hérité ✅ Sécurité renforcée avec les restrictions IP

🔄 Migration progressive

Idéal pour : Systèmes de production existants
  • Continuez d’utiliser la clé de production actuelle pour les endpoints v2
  • Générez une clé sandbox pour tester v3 en toute sécurité
  • Migrez les endpoints un par un vers v3
  • Exécutez v2 et v3 en parallèle avec la même clé de production
✅ Zéro temps d’arrêt, moins de risques ✅ Migrez à votre rythme
Recommandé : La plupart des équipes choisissent la migration progressive pour minimiser les risques. Vous pouvez d’abord mettre à jour les endpoints critiques tout en maintenant les autres sur v2.

Migration intelligente : Commencez par les cartes cadeaux

Conseil pro : Si vous êtes intéressé par les cartes cadeaux, intégrez-les d’abord sur v3 ! Vous n’avez pas besoin de migrer vos recharges mobiles et internet existantes pour commencer à utiliser les cartes cadeaux sur v3. C’est une façon peu risquée de tester v3 tout en maintenant vos opérations critiques sur v2. Utilisez votre clé sandbox pour tester, puis passez en production quand vous êtes prêt.
Ordre de migration suggéré :
  1. Phase 1 : Intégrer les cartes cadeaux sur v3 (si applicable)
    • Générez une clé sandbox pour les tests
    • Utilisez les endpoints /v3/gift-cards/* en sandbox
    • Testez soigneusement, puis utilisez la clé de production
    • Maintenez mobile/internet sur v2
  2. Phase 2 : Migrer les endpoints de compte et de validation
    • /v3/validate
    • /v3/account/balance
    • /v3/account/transactions
  3. Phase 3 : Migrer les recharges mobiles progressivement
    • Testez d’abord avec des opérations à faible volume
    • Surveillez les problèmes
    • Augmentez progressivement la migration
  4. Phase 4 : Migrer les recharges internet
    • Complétez avant la date limite de dépréciation
Cette approche vous permet de migrer à votre rythme jusqu’à la date de dépréciation tout en profitant des nouvelles fonctionnalités v3.

Les 3 changements principaux

1. En-tête d’authentification

Ce qu’il faut modifier : Renommez l’en-tête de authorization à X-Access-Token
Nouvelle gestion des clés : v3 vous permet de générer une clé API sandbox séparée pour les tests depuis les paramètres de votre tableau de bord. Vous pouvez également ajouter des restrictions de liste blanche d’IP pour une sécurité renforcée. Votre clé API de production existante fonctionne avec les endpoints v2 et v3.
Modifications nécessaires :
  • ❌ Supprimer : authorization: "YOUR_API_KEY"
  • ✅ Ajouter : X-Access-Token: "YOUR_API_KEY"
  • ✅ Mettre à jour : URL de base vers https://api.oneclickdz.com/v3
Le mécanisme d’authentification reste le même - seul le nom de l’en-tête change. Votre clé API existante fonctionne avec v2 et v3.

2. Structure des réponses

Ce qu’il faut modifier : Toutes les réponses sont maintenant encapsulées dans une structure standard
Modifications nécessaires :
  • ❌ Supprimer : L’accès direct à data.balance
  • ✅ Ajouter : Vérifiez d’abord result.success
  • ✅ Ajouter : Accédez via result.data.balance
  • ✅ Bonus : Utilisez result.requestId pour le débogage
  • ✅ Bonus : Utilisez result.meta.timestamp pour les informations de timing
Changement majeur : En v3, vous devez toujours vérifier le booléen success avant d’accéder aux données. L’accès direct aux champs causera des erreurs si la requête a échoué.

3. Gestion des erreurs

Ce qu’il faut modifier : Les erreurs sont maintenant des objets structurés avec des codes
Modifications nécessaires :
  • ❌ Supprimer : La vérification de la chaîne result.error
  • ✅ Ajouter : Vérifiez result.success === false
  • ✅ Ajouter : Accédez à result.error.code et result.error.message
  • ✅ Ajouter : Gérez les différents codes d’erreur avec des switch/if
  • ✅ Ajouter : Journalisez result.requestId pour les tickets de support
Conseil pro : Sauvegardez toujours le requestId lors de la journalisation des erreurs. Notre équipe de support en a besoin pour tracer les problèmes dans notre système.

Exemples de migration étape par étape

Exemple 1 : Récupérer les forfaits mobiles

Étape 1 - Votre code v2 actuel :
Étape 2 - Ce qu’il faut changer :
  1. Changer l’URL de base : https://flexy-api.oneclickdz.comhttps://api.oneclickdz.com
  2. Changer l’endpoint : /v2/plans/listAll/v3/mobile/plans
  3. Changer l’en-tête : authorizationX-Access-Token
  4. Ajouter la vérification de succès : if (result.success)
  5. Accéder via data : data.dymanicPlansresult.data.dynamicPlans (faute corrigée !)
OBLIGATOIRE : v3 corrige la faute de frappe dans “dymanicPlans” en “dynamicPlans”. Mettez à jour votre code pour utiliser l’orthographe correcte.
Étape 3 - Votre nouveau code v3 :

Exemple 2 : Envoyer une recharge mobile

Étape 1 - Votre code v2 actuel :
Étape 2 - Ce qu’il faut changer :
  1. Changer l’URL de base : https://flexy-api.oneclickdz.comhttps://api.oneclickdz.com
  2. Changer l’endpoint : /v2/topup/sendTopup/v3/mobile/send
  3. Changer l’en-tête : authorizationX-Access-Token
  4. Ajouter la vérification de succès : if (result.success)
  5. Accéder via data : data.topupIdresult.data.topupId
  6. Ajouter une gestion complète des erreurs
Important : Gérez toujours les erreurs lors de l’envoi de recharges. Les problèmes réseau, le solde insuffisant ou des données invalides peuvent causer des échecs. Sauvegardez le requestId pour le suivi.
Étape 3 - Votre nouveau code v3 :

Exemple 3 : Vérifier le statut d’une recharge

Étape 1 - Votre code v2 actuel :
Étape 2 - Ce qu’il faut changer :
  1. Changer l’URL de base : https://flexy-api.oneclickdz.comhttps://api.oneclickdz.com
  2. Changer l’endpoint : /v2/topup/checkStatus/REF/:ref/v3/mobile/check-ref/:ref
  3. Changer l’en-tête : authorizationX-Access-Token
  4. Ajouter la vérification de succès : if (result.success)
  5. Accéder directement : data.topup.statusresult.data.status (plus d’objet topup imbriqué)
  6. Gérer les nouveaux champs d’information sur le remboursement
Nouvelle fonctionnalité : v3 inclut des informations détaillées sur les remboursements avec des offres alternatives suggérées quand une recharge est remboursée.
Étape 3 - Votre nouveau code v3 :

Exemple 4 : Lister les transactions avec pagination

Étape 1 - Votre code v2 actuel :
Étape 2 - Ce qu’il faut changer :
  1. Changer l’URL de base : https://flexy-api.oneclickdz.comhttps://api.oneclickdz.com
  2. Changer la version : /v2/account/transactions/v3/account/transactions
  3. Changer l’en-tête : authorizationX-Access-Token
  4. Ajouter la vérification de succès : if (result.success)
  5. Accéder aux éléments : data.transactionsresult.data.items
  6. Accéder à la pagination : Champs au niveau racine → objet result.data.pagination
Changement cassant : La structure de pagination a été déplacée du niveau racine vers data.pagination. Mettez à jour toute la logique de liste/pagination.
Étape 3 - Votre nouveau code v3 :

Exemple 5 : Vérifier les produits internet

Étape 1 - Votre code v2 actuel :
Étape 2 - Ce qu’il faut changer :
  1. Changer l’URL de base : https://flexy-api.oneclickdz.comhttps://api.oneclickdz.com
  2. Changer l’endpoint : /v2/internet/checkCards/:type/v3/internet/products?type=:type
  3. Passer du param de chemin au param de requête : /ADSL?type=ADSL
  4. Changer l’en-tête : authorizationX-Access-Token
  5. Ajouter la vérification de succès : if (result.success)
  6. Accéder au tableau : Tableau direct → result.data.products
Conception API : v3 utilise des paramètres de requête au lieu de paramètres de chemin pour la sélection du type, facilitant l’ajout de filtres à l’avenir.
Étape 3 - Votre nouveau code v3 :

Migrer votre client API

Voici comment mettre à jour votre wrapper de client API : Étape 1 - Votre client v2 actuel :
Étape 2 - Ce qu’il faut changer :
  1. Changer l’URL de base : https://flexy-api.oneclickdz.comhttps://api.oneclickdz.com
  2. Changer l’en-tête : authorizationX-Access-Token
  3. Ajouter la gestion de l’encapsuleur de réponse dans la méthode request()
  4. Vérifier result.success et gérer les erreurs
  5. Mettre à jour tous les chemins d’endpoint vers v3
  6. Lever des erreurs structurées avec des codes et des IDs de requête
Bonne pratique : Centralisez la gestion des erreurs dans votre client API. Cela facilite l’ajout de journalisation, de surveillance et de notifications utilisateur.
Étape 3 - Votre nouveau client v3 :

Référence des codes d’erreur

Erreurs v2 courantes et leurs équivalents v3 : Comment gérer les erreurs v3 :

Délai critique : Après le 30 octobre 2026, toutes les requêtes API v2 échoueront. Planifiez votre migration en conséquence pour éviter toute interruption de service.

Problèmes de migration courants et solutions

Problème : Endpoint changé mais nom de l’en-tête non mis à jour.Solution : Remplacez authorization par X-Access-Token dans TOUTES les requêtes.
Problème : Tentative d’accès direct aux données sans passer par result.data.Solution : Accédez toujours aux données de réponse via la propriété data.
Problème : Recherche des champs de pagination au niveau racine.Solution : Accédez à la pagination via data.pagination.
Problème : Vérification de l’ancien format d’erreur.Solution : Vérifiez le booléen success et accédez à l’objet d’erreur structuré.
Problème : Utilisation des anciens chemins d’endpoint v2.Solution : Mettez à jour tous les chemins selon le tableau de référence ci-dessus.


Référence complète des endpoints


Liste de vérification des tests

Avant de déployer en production, vérifiez :
  • Tous les en-têtes d’authentification modifiés vers X-Access-Token
  • Tous les chemins d’endpoints mis à jour vers v3
  • Vérification succès/erreur implémentée partout
  • Données accessibles via result.data
  • Pagination accessible via result.data.pagination
  • Codes d’erreur gérés avec result.error.code
  • IDs de requête journalisés pour le débogage
  • Testé en mode sandbox d’abord
  • Toutes les fonctionnalités existantes fonctionnent encore
  • Scénarios d’erreur testés (solde insuffisant, données invalides, etc.)

Besoin d’aide ?

Documentation API v3

Référence complète v3 et exemples

Guide de gestion des erreurs

Bonnes pratiques pour la gestion des erreurs

Paramètres du tableau de bord

Accès : Connectez-vous à votre tableau de bordGénérer une clé sandbox : Créez une clé sandbox pour des tests sécurisésListe blanche d’IP : Ajoutez des restrictions IP pour une sécurité renforcée

Support

Email : [email protected]Important : Incluez toujours votre ID de requête lors du signalement de problèmes
Support à la migration : Notre équipe est là pour vous aider ! Envoyez-nous un e-mail avec “Support migration API v3” en objet, et incluez : - Les détails de votre implémentation actuelle - Les erreurs spécifiques (avec les IDs de requête) - Des exemples de code illustrant le problème