Erreurs et reprises
Format des erreurs
L'API Mobile utilise le format RFC 7807 (Problem Detail) pour toutes les réponses d'erreur.
{
"type": "solde-insuffisant",
"title": "Interdit",
"status": 403,
"detail": "Solde insuffisant pour effectuer cette opération",
"invalidParams": {
"name": "solde"
}
}
| Champ | Description |
|---|---|
type | URI identifiant la catégorie du problème (peut être relative) |
title | Libellé court, identique pour un même type |
detail | Explication spécifique de l'occurrence |
status | Code HTTP (optionnel) |
instance | URI de la ressource concernée (optionnel) |
Opérations non encore raccordées : 501
Les opérations déclarées dans le contrat mais pas encore raccordées répondent :
HTTP 501 Not Implemented
X-Implementation-Status: pending
Content-Type: application/problem+json
La réponse est un ProblemDetail standard. Ne pas réessayer automatiquement une opération 501 ; elle n'a produit aucun effet.
Opération sans effet : 200 no-op
La suppression de compte (DELETE /v1/api/comptes/{id}) répond 200 sans aucune action. L'en-tête X-Implementation-Status: no-op est présent.
Codes fréquents
| Code HTTP | Cause typique |
|---|---|
400 | Corps de requête invalide, champ manquant ou format incorrect |
403 | Solde insuffisant, règle PI-SPI non satisfaite |
404 | Ressource inconnue (compte, transfert, alias) |
409 | Conflit d'idempotence (même clé, corps différent) |
501 | Opération non encore raccordée (X-Implementation-Status: pending) |
503 | participant-api ou PI-SPI indisponible |
Reprises
- Transferts : un brouillon non confirmé expire après 1 heure. Ne pas relancer une confirmation sur un brouillon inconnu.
- Abonnements : une création ambiguë sans
scheduleIddoit être résolue manuellement (voir Abonnements). - Flux SSE expirés : le dernier état connu est renvoyé avec un statut
INCONNU; interrogerGET /transferts/{id}pour l'état courant. - Rejets PI-SPI : les causes de rejet non représentables dans l'énumération sont retournées comme
AG01(décision projet, confirmation BCEAO attendue).