> ## Documentation Index
> Fetch the complete documentation index at: https://apidocs.gimpayapp.com/llms.txt
> Use this file to discover all available pages before exploring further.

# API Errors

> Comprendre les codes d'erreur retournés par l'API GIMgar Sud et comment les gérer.

Chaque API GIMgar Sud retourne un code de statut HTTP standard accompagné d'une cause précise. Utilisez le code de statut pour déterminer la catégorie du problème, puis reportez-vous à la section **Codes d'erreur** de la page de l'endpoint concerné pour la cause exacte.

## Codes de statut HTTP

<AccordionGroup>
  <Accordion title="400 — Bad Request" icon="circle-exclamation">
    Un paramètre requis est manquant, ou une donnée fournie est incorrecte (format invalide, valeur hors énumération, etc.). Corrigez la requête avant de réessayer — un nouvel essai identique échouera de la même façon.
  </Accordion>

  <Accordion title="401 — Unauthorized" icon="lock">
    Le token Bearer est manquant, invalide ou expiré. Générez un nouveau token via [Authentication](/getting-started/authentication) et réessayez.
  </Accordion>

  <Accordion title="404 — Not Found" icon="magnifying-glass">
    L'entité demandée (usager, instrument de paiement, contributeur, MMP, service, opération, pays, terminal...) est introuvable. Vérifiez l'identifiant utilisé.
  </Accordion>

  <Accordion title="406 — Not Acceptable" icon="ban">
    L'entité existe mais n'est pas dans le statut attendu pour cette action — par exemple verrouiller un instrument de paiement déjà inactif, ou désenrôler un instrument déjà désenrôlé.
  </Accordion>

  <Accordion title="409 — Conflict" icon="triangle-exclamation">
    L'action entre en conflit avec un état existant — par exemple ajouter un bénéficiaire ou une MMP déjà marqués comme favoris.
  </Accordion>

  <Accordion title="500 — Internal Server Error" icon="server">
    Problème côté serveur GIMgar Sud. Réessayez après un court délai ; contactez le support si l'erreur persiste.
  </Accordion>
</AccordionGroup>

<Note>
  L'API d'authentification (`POST /api/v1/auth/token`) ne retourne que les codes `400` et `500`, puisqu'aucun token n'est requis pour l'obtenir.
</Note>

## Stratégie de nouvel essai

**Ne réessayez pas** une erreur `4xx` sans modifier la requête — le problème vient de la requête elle-même et le même appel échouera à nouveau.

**Réessayez** une erreur `500` après un court délai. Si le problème persiste après plusieurs tentatives, contactez le support GIM-UEMOA.

## Étapes suivantes

<CardGroup cols={2}>
  <Card title="Authentication" icon="key" href="/getting-started/authentication">
    Générez et utilisez votre token d'accès.
  </Card>

  <Card title="Tester votre intégration" icon="flask" href="/getting-started/testing">
    Utilisez le sandbox interactif pour observer ces erreurs en conditions réelles.
  </Card>
</CardGroup>
