الانتقال إلى المحتوى الرئيسي
الأحداث المعاملات هي الأموال. الأحداث هي كل ما تعرفه منصتك غير ذلك: تسجيل الدخول الذي سبق عملية السحب، واليد التي نقلت الرقائق بين حسابين، والمكافأة التي طُالب بها مرتين، وعملية ردّ المبلغ التي وصلت بعد أسبوع. تستخدم الأحداث غلافاً واحداً لكل فئة، وتتسم بخاصية idempotency بحكم التصميم، ويقيّمها محرك القواعد نفسه الذي يحتسب درجات معاملاتك.
استيعاب الأحداث اختياري. فعّله من Transactions → Settings → Event monitoring. قبل تفعيله لا يتغير شيء: تستمر قواعد المعاملات الحالية في العمل على المعاملات فقط، ولا يمكن إنشاء قاعدة حدث عن طريق الخطأ، لأن القاعدة تنطبق على المعاملات ما لم تُضمّن الأحداث صراحةً.قبل تفعيله، تُرجع كل مسارات الكتابة - POST /v3/events/ وPOST /v3/events/batch/ وPOST /v3/events/sdk-token/ ومسار الجهاز /v1/events/ - الاستجابة 403 مع {"code": "event_monitoring_disabled"}، ولا يُخزَّن شيء ولا يُثرى ولا يُقيَّم. عمليات القراءة لا تتأثر.

نقاط النهاية

مسار /v3/ هو مسار الخادم، ويستخدم المصادقة x-api-key نفسها المستخدمة في بقية واجهة المعاملات البرمجية. مسار /v1/events/ هو مسار الجهاز، انظر إرسال أحداث SDK.

الغلاف

الفئات

عشر فئات أساسية، لكل منها تحقق قائم على الأنواع وحقول القواعد المُدارة. auth هي الفئة الواسعة في المنتج، وsecurity هي المجموعة الفرعية عالية المخاطر ذات دورة الحياة المرتبة التي تقرأها قواعد الاستيلاء على الحساب.

مفاتيح الحمولة المطلوبة

بعض الإجراءات لا يمكن ربطها دون مفاتيح محددة، لذلك يرفض التحقق هذه الأحداث بدلاً من تخزين أدلة لا يستطيع أحد ربطها.
أرسل المراجع والتجزئات، ولا ترسل أبداً أسراراً خام. تُخزَّن أدوات الدفع ووجهات السحب وتغييرات التحكم في الحساب كمرجع مُجزّأ تُرسله أنت. لا ترسل أبداً رقم بطاقة، ولا عنوان سحب كاملاً، ولا تجزئة كلمة مرور، ولا سر MFA.

مثال: تسوية P2P

مثال: الاعتراض على عملية دفع

دورات حياة النزاعات لا تقبل إلا الإضافة؛ التصحيح يكون حدث dispute جديداً، ولا يُعدَّل الحدث الأول أبداً.

idempotency

event_id فريد لكل تطبيق، وهو عقد idempotency كاملاً.
  • نفس event_id ونفس المحتوى يُعيد 200 مع "idempotent_replay": true والحدث المخزَّن أصلاً. أعد المحاولة بقدر ما تشاء.
  • نفس event_id ومحتوى مختلف يُعيد 409. أعدتَ استخدام المعرّف عن طريق الخطأ.

الدفعات

POST /v3/events/batch/ يقبل حتى 500 حدث. تنجح الدفعة جزئياً بحكم التصميم: لا يجب أبداً أن يُسقط عرض صفحة واحد مشوّه حدث النزاع المجاور له.
تكون الاستجابة 207 Multi-Status عند رفض أي حدث، و201 Created عند نجاح الكل.

الحالات

correlation_pending: true يعني أن قاعدة عبر الكيانات ما زال يجب أن تعمل؛ تُحسم خلال دقائق، وتُحدَّث حالة الحدث ودرجته في مكانهما. راجع القواعد غير المتزامنة.

الاحتفاظ بالبيانات

تفوق الأحداث المعاملات بكثير في الحجم، لذلك يُصنَّف كل حدث في فئة احتفاظ عند وصوله. تترتب على الجدول قاعدتان:
  • الحدث الذي تطابقه قاعدة يُعدّ دليلاً، لذلك يُرقّى تلقائياً إلى risk_relevant.
  • تحتفظ أحداث الدفع والنزاعات بمدة احتفاظ المعاملات. لا تنتهي صلاحيتها أبداً وفق جدول الأحداث، ولا يمكن لتجاوزات الفئات أن تقصّرها.
يمكنك تجاوز الفئات الثلاث القابلة للانتهاء لكل تطبيق من Transactions → Settings → Event monitoring (بين 1-730 يوماً لكل منها).

إثراء عنوان IP

تحمل الأحداث إثراء IP نفسه الذي تحمله المعاملات، أي الدولة وASN وعلامات VPN/الوكيل وعلامات مراكز البيانات، ويُحسم الإثراء لكل عنوان IP فريد، لا لكل حدث. الجلسة التي تُطلق 200 عرض صفحة من عنوان واحد يُحدَّد إثراء ذلك العنوان مرة واحدة فقط. القياسات عن بُعد منخفضة القيمة تقرأ الإثراء فقط إذا كان حدث آخر قد حلّ ذلك العنوان بالفعل، ولا تُطلق بحثاً خاصاً بها أبداً. GET /v3/events/enrichment-metrics/ يُبلغ عن النتيجة، وتعرض وحدة التحكم الأرقام نفسها فوق قائمة الأحداث:

قراءة الأحداث واسترجاعها

التصفية: event_category، action_type، status، retention_class، subject_vendor_data، business_vendor_data، session_id، device_fingerprint، ip_address، game_id، round_id، affiliate_code، payment_reference_id، counterparty_vendor_data، matched_only، occurred_from، occurred_to، search. تُكرَّر المعاملات التي تقبل أكثر من قيمة لكل قيمة، مثل ?status=A&status=B.

الجدول الزمني لموضوع واحد

القيمة vendor_data فريدة ضمن نوع الكيان فقط، فقد يشير المعرّف نفسه إلى مستخدم وإلى شركة، ويتعامل Didit معهما كموضوعين مختلفين. يحدد entity_type الكيان المطلوب: individual (الافتراضي) أو company. إذا أغفلته عند استخدام معرّف شركة، فسيُعاد الجدول الزمني للفرد لا الاثنين معاً. تنطبق عليه المرشحات نفسها الواردة في القائمة. يضيف GET /v3/events/{event_uuid}/ payload، وسياق الجهاز، وإثراء عنوان IP، وإشارات المخاطر المخزنة مؤقتاً الخاصة بالموضوع، وكل تطابق مع القواعد مع أدلته، بما في ذلك ما إذا كان كل حقل متطابق مشتقاً من الخادم، أو مشتقاً من SDK، أو مقدَّماً من العميل. يحذف DELETE /v3/events/{event_uuid}/delete/ حدثاً واحداً. بعد الحذف لا يُعاد هذا الحدث في أي عملية قراءة، والحذف لا رجعة فيه.

التالي

القواعد على الأحداث

قواعد السرعة والنسبة والتسلسل والارتباط على بيانات الأحداث.

إرسال الأحداث من SDK

التقاط الأحداث مباشرةً من الجهاز باستخدام بيانات اعتماد محدودة النطاق.
آخر تعديل في ٧ نوفمبر ٢٠٢٦