Rejected
Genel Bakış
/v1/notify/rejected webhook'u, originator KVHS'nin işlemi REJECTED durumuna çektiğini beneficiary tarafına bildirir. Webhook hem MAIN hem de BASIC protokollerinde gönderilir ve genelde kullanıcı isteği, adres hatası veya compliance bulguları nedeniyle tetiklenir.
Tetiklenme Koşulları
- Originator KVHS
/v1/transactions/rejectçağrısını yaptı (işlem NEW veya PENDING durumundaydı). - ClearTX durumu
REJECTEDolarak güncelledi. - Beneficiary KVHS, ilgili iş akışlarını sonlandırmak için bilgilendirildi.
Webhook Endpoint
POST /v1/notify/rejected
Payload
{
"transactionRef": "6f61b14a-60ec-4569-8ba9-b675dae62159",
"protocol": "MAIN",
"status": "REJECTED",
"originatorVASPdid": "did:web:originator.example",
"beneficiaryVASPdid": "did:web:beneficiary.example",
"reason": {
"category": "USER_CANCELLATION",
"description": "User requested cancellation before compliance review"
}
}
Alanlar
| Alan | Açıklama |
|---|---|
transactionRef | ClearTX referansı. |
protocol | MAIN veya BASIC. |
status | REJECTED. |
originatorVASPdid | Originator KVHS DID. |
beneficiaryVASPdid | Beneficiary KVHS DID. |
reason.category | Ret kategorisi (USER_CANCELLATION, SYSTEM_ERROR, vb.). |
reason.description | Kısa açıklama. |
Bu Webhook Ne Zaman Tetiklenir
Bu webhook aşağıdaki durumlarda tetiklenir:
- Transaction bildirimi, alıcı KVHS tarafından reddedildiğinde
- Reddetme, compliance doğrulama süreci sırasında gerçekleştiğinde
- Originator KVHS'ın reddetmeden haberdar edilmesi gerektiğinde
Yanıt Gereksinimleri
- 200 OK: Reddetme bilgisi işlendi.
- >=400: ClearTX yeniden deneme politikası uygular.
Örnek Sunucu
const express = require("express");
const app = express();
const rawJson = express.raw({ type: "application/json" });
app.post("/webhook/rejected", rawJson, (req, res) => {
verifySignature(req);
const event = JSON.parse(req.body.toString());
notifyOperationsTeam(event.transactionRef, event.reason);
res.status(200).json({ status: "received" });
});