Ce mécanisme est OBLIGATOIRE lorsque le mode Polling est utilisé, car le Connecteur ne peut pas déterminer seul l’issue du traitement bancaire.
A. Principes généraux
- La Banque est source de vérité du statut final
- Le Callback Push est :
- synchrone au niveau HTTP
- asynchrone au niveau métier
- Deux modes sont supportés :
- Unitaire (un ordre)
- Batch (plusieurs ordres)
B. Endpoints de réception (côté Connecteur)
1. Callback unitaire (ordre unique)
Cas d’usage
- Traitement en temps réel
- Ordres critiques
- Implémentation simple
- Faible volumétrie
2. Callback batch (plusieurs ordres)
Endpoint
Cas d’usage
- Traitement par lot (batch bancaire)
- Forte volumétrie
- Fenêtres de compensation
- Optimisation réseau
C. Sécurité et authentification (COMMUNS AUX DEUX ENDPOINTS)
Les deux endpoints PARTAGENT EXACTEMENT les mêmes exigences de sécurité.
Exigences obligatoires
- mTLS obligatoire
- Signature JWS de la Banque obligatoire
- Protection anti-replay
- Idempotence stricte
En-têtes requis
Corps de la requête
Règles spécifiques (unitaire)
X-Idempotency-Key est lié à l’ordre
- Un ordre NE PEUT PAS changer de statut final
FAILED ⇒ reasonCode + reasonMessage obligatoires
Règles spécifiques (batch)
- Le batch est traité de manière atomique
- Aucune acceptation partielle
- La signature JWS couvre :
- tous les headers
- le
X-Idempotency-Key du batch
- le hash du payload complet
F. Idempotence (CRITIQUE)
Le Connecteur NE DOIT JAMAIS appliquer deux fois un même statut final.
H. Réponse du Connecteur (accusé de réception)
Codes HTTP
Règle clé
Le Connecteur NE PEUT PAS accepter partiellement un batch ou une notification.
Exemple – Callback unitaire (cURL)
Exemple – Callback batch (cURL)