Ana içeriğe geç

Declined

Genel Bakış

/v1/notify/declined webhook'u, beneficiary KVHS'nin işlemi DECLINED durumuna aldığını originator tarafına bildirir. Bu bildirim hem MAIN hem de BASIC protokollerinde geçerlidir ve gerekçeyle birlikte gönderilir.

Tetiklenme Koşulları

  • Beneficiary KVHS /v1/transactions/decline çağrısını tamamladı.
  • İşlem durumu DECLINED olarak güncellendi.
  • Originator KVHS, kullanıcıyı bilgilendirmek veya alternatif iş akışlarını tetiklemek zorundadır.

Webhook Endpoint

POST /v1/notify/declined

Payload

{
"transactionRef": "6f61b14a-60ec-4569-8ba9-b675dae62159",
"protocol": "MAIN",
"status": "DECLINED",
"originatorVASPdid": "did:web:originator.example",
"beneficiaryVASPdid": "did:web:beneficiary.example",
"reason": {
"category": "COMPLIANCE_CHECK_FAILED",
"description": "Beneficiary does not meet compliance requirements"
}
}

Alanlar

AlanAçıklama
transactionRefClearTX referansı.
protocolMAIN veya BASIC.
statusDECLINED.
originatorVASPdidOriginator KVHS DID.
beneficiaryVASPdidBeneficiary KVHS DID.
reason.categoryÖnceden tanımlı ret kategorisi (COMPLIANCE_CHECK_FAILED, SANCTIONS_MATCH vb.).
reason.descriptionRet gerekçesinin serbest metin açıklaması.

Bu Webhook Ne Zaman Tetiklenir

Bu webhook aşağıdaki durumlarda tetiklenir:

  1. Transaction bildirimi, alıcı KVHS tarafından reddedildiğinde
  2. Reddetme, compliance doğrulama süreci sırasında gerçekleştiğinde
  3. Originator KVHS'ın reddetmeden haberdar edilmesi gerektiğinde

Yanıt Gereksinimleri

  • 200 OK: Ret bilgisi kaydedildi.
  • >=400: ClearTX yeniden denemeye devam eder.

Örnek Sunucu

const express = require("express");
const app = express();
const rawJson = express.raw({ type: "application/json" });

app.post("/webhook/declined", rawJson, (req, res) => {
verifySignature(req);
const event = JSON.parse(req.body.toString());
logDecline(event.transactionRef, event.reason);
res.status(200).json({ status: "received" });
});