🌐 Documentation Développeur - Webhook API

Protocole automatisé de notification pour le règlement en temps réel des virements de séquestre bancaire.

1. Spécifications de l'Endpoint HTTP

Votre infrastructure bancaire ou Prestataire de Services de Paiement (PSP) doit émettre une requête POST vers notre passerelle de règlement :

POST https://www.escrowledgers.com

2. Authentification Cryptographique

Pour sécuriser les écritures dans le grand livre, la requête doit impérativement inclure la clé privée suivante dans les variables d'en-tête HTTP :

Clé d'En-tête Valeur Requise Action en Cas d'Échec
X-Bank-Signature VOTRE_CLE_DE_PRODUCTION_VERY_SECURE HTTP 403 Forbidden Requête rejetée immédiatement

3. Format du Payload JSON

Le corps de la requête doit être une chaîne JSON valide et structurée (encodée en UTF-8) :

{
"iban_destination": "US4402202512251240005",
"montant": 75000.00,
"devise": "USD",
"reference_systeme_banque": "BANK-TRANSFER-9984"
}
Field Type Presence Description
`iban_destination` *String* Required The unique virtual IBAN code linked to the active applicant's wallet [INDEX].
`montant` *Float* Required The total currency capital amount to inject (Must be > 0) [INDEX].
`devise` *String* Required ISO standard 3-letter currency parameter (e.g., `USD`, `EUR`) [INDEX].
`reference_systeme_banque` *String* Required Unique interbank settlement routing hash identifier (Enforces `UNIQUE KEY` validation) [INDEX].

4. Réponses du Système Passerelle

Le processeur du grand livre comptable retourne des codes HTTP explicites basés sur les états de validation de la transaction :

🟢 HTTP 200 OK - Success [INDEX] {
"status": "success",
"message": "Portefeuille crédité en temps réel et reçu PDF généré par FPDF envoyé."
}
🟡 HTTP 409 Conflict - Anti-Fraud Duplicate Protection {
"status": "error",
"message": "Cette référence de virement a déjà été traitée sur la plateforme."
}

5. Test Terminal en Sandbox (cURL)

Exécutez cette commande cURL standard depuis le terminal de votre serveur pour effectuer une vérification de transfert de bout en bout en sandbox :

curl -X POST https://www.escrowledgers.com \
-H "X-Bank-Signature: VOTRE_CLE_DE_PRODUCTION_VERY_SECURE" \
-H "Content-Type: application/json" \
-d '{
"iban_destination": "US4402202512251240005",
"montant": 10000.00,
"devise": "USD",
"reference_systeme_banque": "MANUAL-HASH-7781"
}'

6. Test d'Intégration en Sandbox (PHP cURL Natif)

Utilisez ce script PHP léger et natif au sein de l'environnement de votre application bancaire pour simuler les opérations de crédit automatisées du grand livre :

<?php
$url = "https://www.escrowledgers.com";
$auth_token = "VOTRE_CLE_DE_PRODUCTION_VERY_SECURE";
$payload = [
"iban_destination" => "US4402202512251240005",
"montant" => 25000.00,
"devise" => "USD",
"reference_systeme_banque" => "PHP-CORE-HASH-" . strtoupper(bin2hex(random_bytes(4)))
];
$ch = curl_init($url);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
curl_setopt($ch, CURLOPT_POST, true);
curl_setopt($ch, CURLOPT_POSTFIELDS, json_encode($payload));
curl_setopt($ch, CURLOPT_HTTPHEADER, [
"Content-Type: application/json",
"X-Bank-Signature: " . $auth_token
]);
// Désactivation de la vérification SSL uniquement en environnement de développement local (XAMPP)
curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, false);
$response = curl_exec($ch);
$http_code = curl_getinfo($ch, CURLINFO_HTTP_CODE);
if(curl_errno($ch))
{
echo "cURL Network Error: " . curl_error($ch);
}
else
{
curl_close($ch);
$data = json_decode($response, true);
echo "HTTP Status Code: " . $http_code . "\n";
print_r($data);
}
?>