Ana içeriğe geç

Confirmed

Genel Bakış

/v1/notify/confirmed webhook'u, beneficiary KVHS'nin işlemi doğruladığını bildirir. Bu bildirim hem MAIN hem de BASIC protokollerinde originator tarafına gönderilir. MAIN akışında bu adım, IVMS.101 verisinin confirmed-data webhook'u üzerinden paylaşılmasının hemen öncesidir; BASIC akışında ise beneficiary tarafının alınan veriyi kontrol ettiğini gösterir.

Tetiklenme Koşulları

  • Beneficiary KVHS /v1/transactions/confirm çağrısını tamamladı.
  • İşlem durumu CONFIRMED değerine güncellendi.
  • Originator KVHS, sonraki adımlar (ACCEPT veya DECLINE) için bilgilendirilmelidir.

Webhook Endpoint

POST /v1/notify/confirmed

Payload

{
"transactionRef": "6f61b14a-60ec-4569-8ba9-b675dae62159",
"protocol": "MAIN",
"status": "CONFIRMED",
"originatorVASPdid": "did:web:originator.example",
"beneficiaryVASPdid": "did:web:beneficiary.example"
}

Alanlar

AlanAçıklama
transactionRefClearTX tarafından üretilen benzersiz işlem referansı.
protocolMAIN veya BASIC.
statusBu webhook için her zaman CONFIRMED.
originatorVASPdidOriginator KVHS DID.
beneficiaryVASPdidBeneficiary KVHS DID.

Not: MAIN protokolünde IVMS.101 içeriği bu webhook'ta yer almaz; ilgili veri confirmed-data webhook'u ile beneficiary tarafına gönderilir.

Bu Webhook Ne Zaman Tetiklenir

Bu webhook aşağıdaki durumlarda tetiklenir:

  1. Transaction bildirimi, alıcı KVHS tarafından onaylandığında
  2. Onay işlemi, başarılı compliance doğrulamasından sonra gerçekleştiğinde
  3. Originator KVHS'nın onaydan haberdar edilmesi gerektiğinde

Yanıt Gereksinimleri

  • 200 OK: Bildirim başarıyla işlendi.
  • >=400: ClearTX yeniden deneme politikası uygular (exponential backoff, 24 saate kadar).

Örnek Sunucu

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

app.post("/webhook/confirmed", rawJson, (req, res) => {
verifySignature(req);
const event = JSON.parse(req.body.toString());
if (event.status === "CONFIRMED" && event.protocol === "MAIN") {
// PII confirmed-data webhook'u beklenir
}
res.status(200).json({ status: "received" });
});