الثقة في الويب هوك
تحقّق من الحدث قبل تحديث الطلب.
توقّع XPayr حمولات الويب هوك بمفتاحك السري. احفظ جسم الطلب الخام، وتحقّق من X-XPayr-Signature، ثم عالج الحدث بشكل غير تكراري.
الترويسات التي تُقرأ
X-XPayr-Signature: توقيع HMAC SHA-256 مسبوق بـsha256=.X-XPayr-Event: نوع الحدث مثلpayment.completed.X-XPayr-Delivery: معرّف التسليم/الحدث عند توفّره.
مقتطفات التحقق متعددة اللغات
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")
);
}
الأحداث التي تُعالَج
عالج على الأقل payment.completed, payment.failed, payment.expired, test.webhook. استخدم معرّف الجلسة ومعرّف الطلب في بياناتك الوصفية للمطابقة.
حزم NPM SDK الرسمية (v0.2.0) وخادم MCP عن بُعد
تكامل أسرع باستخدام حزم XPayr الرسمية وخادم MCP دون تثبيت
ثبّت @xpayr/node-sdk (v0.2.0), @xpayr/payment-evidence (v0.2.0), @xpayr/extension-kit (v0.2.0)أو @xpayr/mcp-server (v1.0.0) من NPM، أو نفّذ استدعاءات أدوات JSON-RPC 2.0 المباشرة عبر POST https://xpayr.com/api/mcp.