> ## Documentation Index
> Fetch the complete documentation index at: https://docs.i-pay.money/llms.txt
> Use this file to discover all available pages before exploring further.

# FAQ

> Réponses courtes aux questions fréquentes d'intégration, avec renvoi vers la page détaillée.

## Quelle clé utiliser avec l'API REST ?

La clé secrète de l'environnement ciblé, dans `Authorization: Bearer`. Elle doit rester côté serveur. Détails : [Authentification](/api-reference/authentification).

## Puis-je utiliser une clé Sandbox avec l'environnement Live ?

Non. La clé doit appartenir au même environnement que `Ipay-Target-Environment`. Détails : [Authentification](/api-reference/authentification) et [Mise en route](/demarrer/mise-en-route).

## Comment savoir si un paiement est réellement réussi ?

Vérifiez côté serveur que `GET /api/v1/payments/{reference}` retourne `status: succeeded`, ou traitez un webhook authentifié puis confirmez le statut si l'action est sensible. Détails : [Consulter une transaction](/api-reference/transactions#get-payments-reference).

## Puis-je réutiliser `transaction_id` ?

Non : cette référence externe doit être unique pour votre compte, et une duplication retourne `422 External Reference Not Valid` en Live (en Sandbox, la réponse n'est pas garantie identique — à confirmer auprès du support ; le paiement n'est pas créé dans les deux cas). Cette détection est appliquée au niveau applicatif et n'est pas garantie sous appels concurrents ; l'API n'expose aucune clé d'idempotence. Générez un `transaction_id` unique par tentative. Détails : [Erreurs](/api-reference/erreurs).

## Pourquoi mon paiement Live retourne-t-il `Incorrect MSISDN` ?

Ce message ne porte que sur le format du `msisdn` pour la méthode utilisée : il doit inclure l'indicatif attendu et correspondre au pays et à un opérateur pris en charge. Si le format est correct, l'erreur vient d'ailleurs — vérifiez l'en-tête `Ipay-Payment-Type` et les droits du compte, qui produisent des réponses distinctes. Détails : [Erreurs](/api-reference/erreurs).

## Le webhook remplace-t-il la vérification API ?

Non. Il évite l'interrogation continue, mais la vérification reste utile pour les actions sensibles, le retour utilisateur et la réconciliation. Détails : [Webhooks](/guides/webhooks).

## Quels SDK sont actuellement documentés ?

Un [SDK JavaScript](/outils/sdk-javascript) et un module [WooCommerce](/outils/woocommerce). Pour PHP, Java, Flutter ou Android, aucun guide n'est publié : utilisez l'API REST depuis votre backend, ou demandez au [support](/ressources/support) de confirmer la disponibilité d'un package officiel. Le contrat OpenAPI et la collection Postman sont sur la page [Téléchargements](/outils/telechargements).

## Où trouver les messages d'erreur ?

Sur la page [Erreurs](/api-reference/erreurs). Pour une demande d'assistance, voir [Support](/ressources/support).
