Skip to content

Webhooks ​

Otpera بيبعت POST على رابط HTTPS بتاعك لما يحصل حاجة في مساحة العمل. ضيف الروابط من لوحة التحكم ← Webhooks، وكل رابط ليه مفتاح توقيع خاص.

الأحداث ​

الحدثامتى
order.createdطلب جديد اتعمل (API أو Shopify …)
order.status_changedحالة التأكيد اتغيرت (رد العميل، الفريق، انتهاء المدة)
webhook.testدوست إرسال تجربة من لوحة التحكم

الهيدرز ​

الهيدرالقيمة
Otpera-Event-Idمعرّف ثابت للحدث، استخدمه لمنع التكرار
Otpera-Event-Typeمثلًا order.status_changed
Otpera-Timestampالوقت بالثواني (Unix)
Otpera-Delivery-Attemptرقم المحاولة
Otpera-Signaturet=<unix>,v1=<hex>

التحقق من التوقيع ​

v1 = HMAC-SHA256(secret, "<t>.<raw body>") بصيغة hex. اتحقق دايمًا على الـ body الخام، وارفض أي توقيت أقدم من ٥ دقايق. أمثلة Node.js وPHP كاملة في النسخة الإنجليزية.

Laravel

استثني رابط الـ Webhook من حماية CSRF، وإلا الطلبات هترجع 419.

التسليم وإعادة المحاولة ​

  • أي رد 2xx خلال ١٠ ثواني يعتبر تسليم ناجح.
  • غير كده Otpera بيعيد بعد دقيقة، ٥ دقايق، ٣٠ دقيقة، ساعتين، و١٢ ساعة (٦ محاولات).
  • التسليم مرة على الأقل والترتيب مش مضمون: امنع التكرار بـ Otpera-Event-Id.
  • الرابط لازم يكون https:// عام (بورت 443 أو 8443)، والتحويلات (redirects) مش بتتتبع.
  • لوحة التحكم ← Webhooks بتعرض كل محاولة تسليم وتقدر تعيد الإرسال منها.

otpera.com · WhatsApp order confirmation & OTP