Skip to main content

Documentation Index

Fetch the complete documentation index at: https://docs.corelink.dhi-cm.com/llms.txt

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

Ce mode est utilisé exclusivement lorsque la Banque est techniquement incapable d’émettre des appels sortants (Callback Push).

A. Principe général

  • Le Connecteur initie les requêtes
  • La Banque reste source de vérité du statut
  • Le Polling Inverse :
    • NE REMPLACE PAS le Callback Push
    • N’EST UTILISÉ QUE comme mécanisme de secours
  • Le Polling Inverse s’applique **uniquement aux ordres en statut **PENDING ou push async

B. Endpoint de requête de statut (côté Banque)

Endpoint

curl -X GET /payment-orders/{orderId}/status

Authentification et sécurité

La requête DOIT être protégée par :
  • mTLS obligatoire
  • Authentification applicative obligatoire :
    • OAuth 2.0 (Bearer ou DPoP)
    • ou API Key selon le contrat

En-têtes requis

En-têteObligatoireDescription
X-TimestampOuiHorodatage ISO-8601 UTC
X-NonceOuiProtection anti-replay
X-SignatureOuiSignature cryptographique du Connecteur
AuthorizationOuiBearer / DPoP / X-API-Key
X-Client-IdOuiIdentifiant du Connecteur

Paramètre de chemin

ParamètreTypeDescription
orderIdStringIdentifiant métier unique de l’ordre

Exemple

curl -X GET /payment-orders/PAY-2025-0001/status

C. Comportement attendu du Connecteur (client)

Fréquence de polling

Le Connecteur DOIT implémenter une stratégie de polling adaptative :
  • fréquence initiale courte (ex : 30s – 1min)
  • intervalle progressif (backoff exponentiel)
  • plafond maximal configurable (ex : 10–15 minutes)

Règles de sécurité

  • Chaque requête DOIT être signée via X-Signature
  • La signature DOIT couvrir :
    • la méthode HTTP
    • l’URI
    • les paramètres
    • les en-têtes critiques

Condition d’arrêt (CRITIQUE)

Le polling inverse s’arrête uniquement lorsque la Banque retourne un statut final.
Statuts finaux :
  • SUCCESS
  • FAILED

D. Format JSON de la réponse (côté Banque)

La Banque retourne une enveloppe JSON standard contenant un seul objet de mise à jour de statut.

Réponse – 200 OK

{
  "reference": "PAY-2025-0001",
  "bank_reference": "BNK-778899",
  "status": "PENDING | SUCCESS | FAILED",
  "reasonCode": "BUS_INSUFFICIENT_FUNDS",
  "reasonMessage": "Insufficient balance on debtor account.",
  "processed_at": "2025-11-19T07:30:00Z"
}

Règles associées

  • reference DOIT correspondre à l’ordre interrogé
  • reasonCode et reasonMessage sont :
    • **OBLIGATOIRES si **status = FAILED
  • processed_at est la date de traitement bancaire

E. Codes HTTP et comportements

Code HTTPSignificationAction du Connecteur
200 OKStatut disponibleMettre à jour l’état local
404 Not FoundOrdre inconnuArrêter le polling + alerte
429 Too Many RequestsLimite atteinteAppliquer backoff
4xx / 5xxErreur techniqueRetry selon stratégie

F. Exemple de requête – Polling inverse (Mintlify)

cURL

curl -X GET "https://bank.example.com/payment-orders/PAY-2025-0001/status" \
  -H "Authorization: Bearer <access_token>" \
  -H "X-Client-Id: CONNECTOR_X" \
  -H "X-Timestamp: 2025-11-19T07:30:00Z" \
  -H "X-Nonce: 550e8400-e29b-41d4-a716-446655440000" \
  -H "X-Signature: <signature>"