أعراض المشكلة
يُبلغ المشارك أنه دفع ثمن التذكرة، لكن:
- حالة التسجيل — «قيد انتظار الدفع»
- لم يصل بريد إلكتروني بالتذكرة
- في قائمة المشاركين حالة الدفع —
pending
السبب الأكثر شيوعاً — أن الويب هوك من بوابة الدفع لم يتم تسليمه أو لم تتم معالجته بواسطة tikento.
الخطوة 1. تحقق من سجل تسليم الويب هوك
يحتفظ tikento بسجل لجميع طلبات webhook الواردة:
- افتح الإعدادات ← المدفوعات.
- اختر البوابة (YooKassa أو Tochka).
- انتقل إلى علامة التبويب «سجل Webhook».
يعرض السجل:
- تاريخ ووقت الطلب
- نوع الحدث (
payment.succeeded،payment.canceled،refund.succeeded) - رمز استجابة HTTP من tikento
- نص الطلب (للتشخيص)
- حالة المعالجة (نجاح / خطأ)
النتائج المحتملة
| الحالة | ماذا يعني | ماذا تفعل |
|---|---|---|
| الويب هوك غير موجود في السجل | البوابة لم ترسله أو لم تتمكن من تسليمه | انتقل إلى الخطوة 2 |
الويب هوك موجود، رمز 200 | تمت المعالجة بنجاح | تحقق من تطابق payment_id مع الدفعة المعنية |
الويب هوك موجود، رمز 4xx | خطأ في التحقق (توقيع غير صحيح، تنسيق غير معروف) | انتقل إلى الخطوة 4 |
الويب هوك موجود، رمز 5xx | خطأ داخلي في tikento | انتقل إلى الخطوة 5 |
الخطوة 2. تحقق من إعدادات الويب هوك في البوابة
سجّل الدخول إلى لوحة تحكم بوابة الدفع وتحقق من:
YooKassa
- افتح «الإعدادات» ← «إشعارات HTTP».
- تأكد من تطابق عنوان URL للويب هوك:
https://app.tikento.com/webhooks/yookassa/{shopId} - تحقق من تحديد جميع الأحداث المطلوبة:
payment.succeededpayment.canceledrefund.succeeded
Tochka
- افتح «التكامل» ← «الإشعارات».
- تأكد من تطابق عنوان URL للويب هوك:
https://app.tikento.com/webhooks/tochka/{merchantId} - تحقق من فلاتر الأحداث.
الأخطاء الشائعة في عنوان URL
- حذف
https://(تم إدخالhttp://— تتطلب البوابات HTTPS) - شرطة مائلة زائدة في نهاية URL
shopIdأوmerchantIdغير صحيح في المسار- عنوان URL من اتصال قديم (إذا أعدت توصيل البوابة)
الخطوة 3. تحقق من إمكانية الوصول إلى نقطة نهاية الويب هوك
إذا كان عنوان URL صحيحاً ولكن الويب هوك لا يُسلَّم، فالأسباب المحتملة:
- جدار الحماية أو CDN يحظر طلبات POST الواردة من البوابة
- مهلة زمنية: لم يتمكن tikento من الرد في الوقت المحدد (تنتظر البوابات عادةً 10-30 ثانية)
- مشاكل DNS: لا يمكن حل النطاق من جانب البوابة
للتحقق، استخدم ويب هوك اختباري من لوحة تحكم البوابة (إن كان متاحاً) أو اطلب إعادة الإرسال.
الخطوة 4. خطأ في التحقق (4xx)
إذا وصل الويب هوك لكن tikento أرجع خطأ 4xx:
| الرمز | السبب | الحل |
|---|---|---|
400 | نص طلب غير صالح | تحقق من تنسيق الإشعارات في البوابة. تأكد من اختيار تنسيق JSON وليس XML |
401 | توقيع طلب غير صحيح | تأكد من أن secretKey في tikento محدّث. إذا أعدت إنشاء المفتاح في البوابة، حدّثه في tikento أيضاً |
404 | مسار عنوان URL غير صحيح للويب هوك | تحقق من URL — ربما shopId / merchantId مُدخل بشكل خاطئ |
409 | ويب هوك مكرر (تمت معالجته مسبقاً) | هذا سلوك طبيعي — حماية التكرار (idempotency) فعّالة. تمت معالجة الدفع بالفعل |
الخطوة 5. خطأ داخلي (5xx)
إذا تم استلام الويب هوك لكن tikento أرجع 5xx — فهذا خطأ مؤقت من جانب tikento. في معظم الحالات:
- ستعيد البوابة التسليم تلقائياً (انظر سياسة إعادة المحاولة أدناه).
- عادةً ما تُحل المشكلة عند المحاولة التالية.
- إذا تكرر الخطأ — تواصل مع دعم tikento.
سياسة إعادة التسليم
| البوابة | عدد المحاولات | الفواصل الزمنية |
|---|---|---|
| YooKassa | حتى 10 | تأخير أسي: 1 ث، 5 ث، 30 ث، 2 د، 10 د، 30 د، 1 س، 3 س، 6 س، 12 س |
| Tochka | حتى 5 | فاصل ثابت: كل 5 دقائق |
إذا استُنفدت جميع المحاولات، استخدم إعادة المحاولة يدوياً.
إعادة المحاولة يدوياً والتأكيد
إعادة المحاولة يدوياً للويب هوك
في سجل webhook اضغط «إعادة المحاولة» بجانب السجل غير الناجح. سيعيد tikento معالجة نص طلب الويب هوك.
التأكيد اليدوي للدفع
إذا تعذر استعادة الويب هوك لكنك ترى دفعة ناجحة في لوحة تحكم البوابة:
- افتح الفعالية ← «المشاركون».
- ابحث عن السجل ذي الحالة المعلقة.
- اضغط «إجراءات» ← «تأكيد الدفع يدوياً».
- حدد السبب (للتدقيق).
يُحدّث التأكيد اليدوي حالة التسجيل ويرسل للمشارك بريداً إلكترونياً بالتذكرة.
اختبار الويب هوك
للتأكد من أن الويب هوك يعمل بشكل صحيح، قبل أو بعد الإعداد:
دفعة اختبارية
- أنشئ فعالية اختبارية بتذكرة مدفوعة.
- وصّل البوابة في وضع الاختبار.
- ادفع ببطاقة اختبارية (
4111 1111 1111 1111). - تحقق من سجل webhook — يجب أن يظهر سجل برمز
200. - تأكد من تحديث حالة التسجيل إلى «مدفوع».
ويب هوك اختباري من البوابة
بعض البوابات تسمح بإرسال ويب هوك اختباري يدوياً:
- YooKassa: في قسم «إشعارات HTTP» زر «إرسال إشعار اختباري»
- Tochka: تواصل مع دعم Tochka لإرسال إشعار اختباري
الوقاية
لتجنب مشاكل الويب هوك:
- عند تغيير مفاتيح API في البوابة، حدّثها فوراً في tikento
- لا تحذف أو تغيّر عنوان URL للويب هوك بدون ضرورة
- تحقق بشكل دوري من سجل webhook بحثاً عن أخطاء
- عند إعادة توصيل البوابة، أجرِ دائماً دفعة اختبارية