HSRCPAY Dökümantasyon

Webhooks

Olay tabanlı ödeme doğrulama, imza kontrolü ve idempotent event işleme.

Webhook, ödeme sonucunu kendi backend’inize taşımanın güvenilir yoludur. Kullanıcının gördüğü ekran veya redirect tek başına yeterli değildir.

Ayrıntı: Webhook Delivery ve Güvenlik.

Prensip

  • Redirect / success sayfası: bilgilendirme
  • Webhook + gerekirse payments.get: nihai state

Handler iskeleti

export async function handleWebhook(rawBody: string, signature: string) {
  // 1) İmza doğrula
  // 2) Event parse
  // 3) event.id ile daha önce işlendi mi?
  // 4) Sipariş / abonelik state güncelle
  // 5) 2xx
}

Sık event tipleri

  • payment.succeeded
  • payment.authorized
  • payment.requires_action
  • payment.requires_payment_method
  • payment.canceled / payment.refunded
  • charge.declined (operasyonel detay)
  • checkout_session.completed (hosted checkout)

payment.updated gibi genel isimlere güvenmeyin; abonelik ettiğiniz event listesini dashboard’da netleştirin.

Dayanıklılık

  • İmza hatalıysa 401/403
  • Aynı event ikinci kez gelirse no-op (idempotent)
  • Handler’ı kuyruğa almak pik trafikte faydalıdır; iş mantığı yine idempotent kalmalı

Bu sayfada