Webhook güveni
Siparişi güncellemeden önce olayı doğrulayın.
XPayr webhook verilerini webhook gizli anahtarınızla imzalar. Ham istek gövdesini saklayın, X-XPayr-Signature başlığını doğrulayın, sonra olayı idempotent şekilde işleyin.
Okunacak başlıklar
X-XPayr-Signature:sha256=ön ekli HMAC SHA-256 imzası.X-XPayr-Event:payment.completedgibi olay türü.X-XPayr-Delivery: varsa teslim/olay tanımlayıcısı.
Çok Dilli Doğrulama Kod Parçacıkları
import crypto from "node:crypto";
export function verifyXPayrWebhook(rawBody, signatureHeader, secret) {
const received = String(signatureHeader || "").replace(/^sha256=/, "");
const expected = crypto
.createHmac("sha256", secret)
.update(rawBody)
.digest("hex");
return crypto.timingSafeEqual(
Buffer.from(received, "hex"),
Buffer.from(expected, "hex")
);
}
İşlenecek olaylar
En azından payment.completed, payment.failed, payment.expired, test.webhook olaylarını işleyin. Eşleştirme için oturum kimliğini ve kendi meta verinizdeki sipariş kimliğini kullanın.
Resmi NPM SDK'ları (v0.2.0) ve Uzak MCP Sunucusu
Resmi XPayr Paketleri ve Kurulumsuz MCP ile Daha Hızlı Entegre Olun
Kurulum: @xpayr/node-sdk (v0.2.0), @xpayr/payment-evidence (v0.2.0), @xpayr/extension-kit (v0.2.0)veya @xpayr/mcp-server (v1.0.0) paketlerini NPM'den yükleyin veya şu araçla canlı JSON-RPC 2.0 çağrıları yürütün: POST https://xpayr.com/api/mcp.