Passer au contenu principal

Documentation Index

Fetch the complete documentation index at: https://docs.oneclickdz.com/llms.txt

Use this file to discover all available pages before exploring further.

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.
// Votre code v2 actuel :
fetch("https://flexy-api.oneclickdz.com/v2/plans/listAll", {
  headers: {
    authorization: "YOUR_API_KEY",
  },
});
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.
// Code v3 mis à jour :
fetch("https://api.oneclickdz.com/v3/mobile/plans", {
  headers: {
    "X-Access-Token": "YOUR_API_KEY",
  },
});

2. Structure des réponses

Ce qu’il faut modifier : Toutes les réponses sont maintenant encapsulées dans une structure standard
// Votre code v2 actuel :
const response = await fetch("https://flexy-api.oneclickdz.com/v2/account/balance", {
  headers: { authorization: API_KEY },
});
const data = await response.json();
console.log("Balance:", data.balance); // Accès direct
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é.
// Code v3 mis à jour :
const response = await fetch("https://api.oneclickdz.com/v3/account/balance", {
  headers: { "X-Access-Token": API_KEY },
});
const result = await response.json();

if (result.success) {
  console.log("Balance:", result.data.balance);
  console.log("Request ID:", result.requestId); // Pour le débogage
  console.log("Timestamp:", result.meta.timestamp);
} else {
  console.error("Error:", result.error.message);
}

3. Gestion des erreurs

Ce qu’il faut modifier : Les erreurs sont maintenant des objets structurés avec des codes
// Votre code v2 actuel :
const response = await fetch("https://flexy-api.oneclickdz.com/v2/topup/sendTopup", {
  method: "POST",
  headers: {
    "Content-Type": "application/json",
    authorization: API_KEY,
  },
  body: JSON.stringify(data),
});

const result = await response.json();
if (result.error) {
  console.error("Error:", result.message); // Chaîne simple
}
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.
// Code v3 mis à jour :
const response = await fetch("https://api.oneclickdz.com/v3/mobile/send", {
  method: "POST",
  headers: {
    "Content-Type": "application/json",
    "X-Access-Token": API_KEY,
  },
  body: JSON.stringify(data),
});

const result = await response.json();

if (!result.success) {
  console.error(`Error [${result.error.code}]: ${result.error.message}`);
  console.log("Request ID:", result.requestId);

  switch (result.error.code) {
    case "INSUFFICIENT_BALANCE":
      alert("Veuillez recharger votre compte");
      break;
    case "ERR_PHONE":
      alert(`Numéro de téléphone invalide : ${result.error.message}`);
      break;
    case "DUPLICATED_REF":
      alert("Cette référence de commande a déjà été utilisée");
      break;
    default:
      alert("Une erreur s'est produite. Veuillez réessayer.");
  }
}

Exemples de migration étape par étape

Exemple 1 : Récupérer les forfaits mobiles

Étape 1 - Votre code v2 actuel :
const response = await fetch("https://flexy-api.oneclickdz.com/v2/plans/listAll", {
  headers: {
    authorization: API_KEY,
  },
});

const data = await response.json();
const dynamicPlans = data.dymanicPlans; // Note: typo in v2
const fixedPlans = data.fixedPlans;
É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 :
const response = await fetch("https://api.oneclickdz.com/v3/mobile/plans", {
  headers: {
    "X-Access-Token": API_KEY,
  },
});

const result = await response.json();
if (result.success) {
  const dynamicPlans = result.data.dynamicPlans; // Faute corrigée !
  const fixedPlans = result.data.fixedPlans;
}

Exemple 2 : Envoyer une recharge mobile

Étape 1 - Votre code v2 actuel :
const response = await fetch("https://flexy-api.oneclickdz.com/v2/topup/sendTopup", {
  method: "POST",
  headers: {
    "Content-Type": "application/json",
    authorization: API_KEY,
  },
  body: JSON.stringify({
    plan_code: "PREPAID_DJEZZY",
    MSSIDN: "0778037340",
    amount: 500,
    ref: "order-123",
  }),
});

const data = await response.json();
console.log("Topup ID:", data.topupId);
console.log("New Balance:", data.newBalance);
É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 :
const response = await fetch("https://api.oneclickdz.com/v3/mobile/send", {
  method: "POST",
  headers: {
    "Content-Type": "application/json",
    "X-Access-Token": API_KEY,
  },
  body: JSON.stringify({
    plan_code: "PREPAID_DJEZZY",
    MSSIDN: "0778037340",
    amount: 500,
    ref: "order-123",
  }),
});

const result = await response.json();
if (result.success) {
  console.log("✅ Recharge envoyée avec succès !");
  console.log("Topup ID:", result.data.topupId);
  console.log("Nouveau solde:", result.data.newBalance);
  console.log("Request ID:", result.requestId);
} else {
  console.error(`❌ Erreur [${result.error.code}]: ${result.error.message}`);
  console.error("Request ID:", result.requestId);
}

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

Étape 1 - Votre code v2 actuel :
const response = await fetch(
  "https://flexy-api.oneclickdz.com/v2/topup/checkStatus/REF/order-123",
  {
    headers: { authorization: API_KEY },
  }
);

const data = await response.json();
console.log("Statut:", data.topup.status);
console.log("Téléphone:", data.topup.MSSIDN);
É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 :
const response = await fetch(
  "https://api.oneclickdz.com/v3/mobile/check-ref/order-123",
  {
    headers: { "X-Access-Token": API_KEY },
  }
);

const result = await response.json();
if (result.success) {
  console.log("Statut:", result.data.status);
  console.log("Téléphone:", result.data.MSSIDN);

  // Nouveau en v3 : informations de remboursement améliorées
  if (result.data.status === "REFUNDED") {
    console.log("❌ La recharge a été remboursée");
    console.log("Raison:", result.data.refund_message);
    if (result.data.suggested_offers) {
      console.log("💡 Essayez ces offres à la place :");
      console.log(result.data.suggested_offers);
    }
  } else if (result.data.status === "FULFILLED") {
    console.log("✅ Recharge complétée avec succès");
  }
}

Exemple 4 : Lister les transactions avec pagination

Étape 1 - Votre code v2 actuel :
const response = await fetch(
  "https://flexy-api.oneclickdz.com/v2/account/transactions?page=1&pageSize=20",
  {
    headers: { authorization: API_KEY },
  }
);

const data = await response.json();
console.log("Transactions:", data.transactions);
console.log("Total:", data.totalResults);
console.log("Page:", data.currentPage);
console.log("Pages:", data.totalPages);
É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 :
const response = await fetch(
  "https://api.oneclickdz.com/v3/account/transactions?page=1&pageSize=20",
  {
    headers: { "X-Access-Token": API_KEY },
  }
);

const result = await response.json();
if (result.success) {
  console.log("Transactions:", result.data.items);
  console.log("Total:", result.data.pagination.totalResults);
  console.log("Page:", result.data.pagination.page);
  console.log("Pages:", result.data.pagination.totalPages);
  console.log("Taille de page:", result.data.pagination.pageSize);
}

Exemple 5 : Vérifier les produits internet

Étape 1 - Votre code v2 actuel :
const response = await fetch(
  "https://flexy-api.oneclickdz.com/v2/internet/checkCards/ADSL",
  {
    headers: { authorization: API_KEY },
  }
);

const cards = await response.json(); // Direct array
cards.forEach((card) => {
  console.log(`${card.value} DA - Disponible: ${card.available}`);
});
É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 :
const response = await fetch(
  "https://api.oneclickdz.com/v3/internet/products?type=ADSL",
  {
    headers: { "X-Access-Token": API_KEY },
  }
);

const result = await response.json();
if (result.success) {
  result.data.products.forEach((card) => {
    console.log(`${card.value} DA - Disponible: ${card.available}`);
  });
}

Migrer votre client API

Voici comment mettre à jour votre wrapper de client API : Étape 1 - Votre client v2 actuel :
class FlexyAPI {
  constructor(apiKey) {
    this.apiKey = apiKey;
    this.baseUrl = "https://flexy-api.oneclickdz.com";
  }

  async request(endpoint, options = {}) {
    const response = await fetch(`${this.baseUrl}${endpoint}`, {
      ...options,
      headers: {
        ...options.headers,
        authorization: this.apiKey,
      },
    });
    return response.json();
  }

  async getBalance() {
    const data = await this.request("/v2/account/balance");
    return data.balance;
  }

  async sendTopup(params) {
    return await this.request("/v2/topup/sendTopup", {
      method: "POST",
      headers: { "Content-Type": "application/json" },
      body: JSON.stringify(params),
    });
  }
}
É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 :
class FlexyAPI {
  constructor(apiKey) {
    this.apiKey = apiKey;
    this.baseUrl = "https://api.oneclickdz.com";
  }

  async request(endpoint, options = {}) {
    const response = await fetch(`${this.baseUrl}${endpoint}`, {
      ...options,
      headers: {
        ...options.headers,
        "X-Access-Token": this.apiKey,
      },
    });

    const result = await response.json();

    if (!result.success) {
      const error = new Error(result.error.message);
      error.code = result.error.code;
      error.details = result.error.details;
      error.requestId = result.requestId;
      throw error;
    }

    return result.data;
  }

  async getBalance() {
    const data = await this.request("/v3/account/balance");
    return data.balance;
  }

  async sendTopup(params) {
    return await this.request("/v3/mobile/send", {
      method: "POST",
      headers: { "Content-Type": "application/json" },
      body: JSON.stringify(params),
    });
  }
}

Référence des codes d’erreur

Erreurs v2 courantes et leurs équivalents v3 :
Erreur v2Code d’erreur v3Ce qui a changé
"NO-BALANCE"INSUFFICIENT_BALANCEMaintenant un code avec un message structuré
"DUPLICATED-REF"DUPLICATED_REFMême code, maintenant avec un objet details
"ERR_VALIDATION"ERR_VALIDATIONInclut details.field et details.pattern
"ERR_PHONE"ERR_PHONEInclut le pattern de validation dans les détails
"ERR_STOCK"ERR_STOCKInformations sur la disponibilité du produit
"Forbidden"ERR_AUTHPlus descriptif, erreurs d’auth unifiées
"Access token missing"ERR_AUTHMême code pour toutes les erreurs d’auth
"NOT_FOUND"NOT_FOUNDRessource non trouvée (commande, produit, etc.)
Comment gérer les erreurs v3 :
// Méthode v2 :
if (result.error === "NO-BALANCE") {
  // gérer
}

// Méthode v3 :
if (!result.success && result.error.code === "INSUFFICIENT_BALANCE") {
  console.log("Request ID:", result.requestId); // Sauvegarder pour le support
  if (result.error.details?.currentBalance) {
    console.log("Solde actuel:", result.error.details.currentBalance);
  }
}

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.
// ❌ Incorrect
headers: { authorization: API_KEY }

// ✅ Correct
headers: { "X-Access-Token": API_KEY }
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.
// ❌ Incorrect
const balance = result.balance;

// ✅ Correct
const balance = result.data.balance;
Problème : Recherche des champs de pagination au niveau racine.Solution : Accédez à la pagination via data.pagination.
// ❌ Incorrect
const total = result.totalResults;
const page = result.currentPage;

// ✅ Correct
const total = result.data.pagination.totalResults;
const page = result.data.pagination.page;
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é.
// ❌ Incorrect
if (result.error) {
  console.log(result.message);
}

// ✅ Correct
if (!result.success) {
  console.log(result.error.code, result.error.message);
  console.log("Request ID:", result.requestId);
}
Problème : Utilisation des anciens chemins d’endpoint v2.Solution : Mettez à jour tous les chemins selon le tableau de référence ci-dessus.
// ❌ Incorrect
POST /v2/topup/sendTopup
GET /v2/internet/checkCards/ADSL

// ✅ Correct
POST /v3/mobile/send
GET /v3/internet/products?type=ADSL


Référence complète des endpoints

ServiceEndpoint v2Endpoint v3Notes
Authentification
En-têteauthorization: KEYX-Access-Token: KEYNom de l’en-tête modifié
ValiderGET /v2/validateGET /v3/validateRéponse encapsulée
Mobile
Liste des forfaitsGET /v2/plans/listAllGET /v3/mobile/plansChemin modifié, faute de frappe corrigée
Envoyer rechargePOST /v2/topup/sendTopupPOST /v3/mobile/sendChemin simplifié
Vérifier par réfGET /v2/topup/checkStatus/REF/:refGET /v3/mobile/check-ref/:refChemin simplifié, infos remboursement ajoutées
Vérifier par IDGET /v2/topup/checkStatus/ID/:idGET /v3/mobile/check-id/:idChemin simplifié
Liste rechargesGET /v2/topup/listGET /v3/mobile/listPagination déplacée vers data.pagination
Internet
ProduitsGET /v2/internet/checkCards/:typeGET /v3/internet/products?type=Param de chemin → param de requête
Vérifier numéroGET /v2/internet/checkNumber/:t/:nGET /v3/internet/check-number?type=&number=Params de chemin → params de requête
EnvoyerPOST /v2/internet/sendTopupPOST /v3/internet/sendChemin simplifié
Vérifier par réfGET /v2/internet/checkStatus/REF/:refGET /v3/internet/check-ref/:refChemin simplifié
Vérifier par IDGET /v2/internet/checkStatus/ID/:idGET /v3/internet/check-id/:idChemin simplifié
ListeGET /v2/internet/listGET /v3/internet/listPagination déplacée
Cartes cadeaux
CatalogueGET /v2/gift-cards/catalogueGET /v3/gift-cards/catalogOrthographe corrigée
Vérifier produitGET /v2/gift-cards/checkProduct/:idGET /v3/gift-cards/checkProduct/:idRéponse encapsulée
Passer commandePOST /v2/gift-cards/placeOrderPOST /v3/gift-cards/placeOrderRéponse encapsulée
Vérifier commandeGET /v2/gift-cards/checkOrder/:idGET /v3/gift-cards/checkOrder/:idRéponse encapsulée
Liste commandesGET /v2/gift-cards/listGET /v3/gift-cards/listPagination déplacée
Compte
SoldeGET /v2/account/balanceGET /v3/account/balanceRéponse encapsulée
TransactionsGET /v2/account/transactionsGET /v3/account/transactionsPagination déplacée

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