مرجع الأحداث
أرسل الأسماء كما هي مكتوبة تمامًا. وأسماء الخصائص بصيغة snake_case في كل الصفحة. وكل ما لم يُوسم بأنه مطلوب فهو اختياري، ولا مانع من إضافة خصائص من عندك — تُحفظ مع البقية.
لا تحتاج الثلاثين كلها. أغلب المتاجر ترسل خمسة: Product Viewed وProduct Added وCheckout Started وOrder Completed وProducts Searched.
كائن المنتج
عدة أحداث تحمل مصفوفة products، وكل عنصر فيها له الشكل نفسه:
{
product_id: "P-4471", // required
sku: "WH-BLK-01",
name: "Wireless Headphones",
price: 199.99,
quantity: 1,
currency: "SAR",
category: "Electronics",
brand: "AudioTech",
variant: "Black",
position: 3,
coupon: "SUMMER20",
url: "https://store.example.com/p/headphones",
image_url: "https://store.example.com/i/headphones.jpg"
}
price وquantity يستحقان التعبئة حتى حين يكونان اختياريين: فحين يصل طلب بلا إجمالي، يعيد فلوفاي بناء الإيرادات بجمع price × quantity على عناصر المصفوفة.
المال
| الخاصية | المعنى |
|---|---|
value | قيمة الطلب. هذا هو حقل الإيرادات |
currency | رمز من ثلاثة أحرف — SAR أو USD |
subtotal | قبل الشحن والضريبة والخصم |
discount | المبلغ المخصوم |
shipping | قيمة الشحن المحتسبة |
tax | الضريبة المحتسبة |
أرسل value مع كل ما يحمل مبلغًا؛ وrevenue مقبول مرادفًا له. وأرسل currency بجانبه دائمًا — مبلغ بلا عملة لا يمكن مقارنته بإنفاقك الإعلاني.
التصفّح
| الحدث | مطلوب | مفيد أيضًا |
|---|---|---|
Products Searched | query | results_count وproducts |
Product List Viewed | products، وواحد من list_id / list_name / category | — |
Product List Filtered | filters | list_id وlist_name وcategory وsorts وproducts |
Product Viewed | product_id | كل حقول المنتج |
Product Clicked | product_id | حقول المنتج وlist_id وlist_name |
filters مصفوفة من { type, value }. وsorts مصفوفة من { field, direction }، والاتجاه فيها إما asc أو desc.
flowfyanalytics.track("Product Viewed", {
product_id: "P-4471",
name: "Wireless Headphones",
price: 199.99,
currency: "SAR",
category: "Electronics"
});
العروض الترويجية
| الحدث | مطلوب | مفيد أيضًا |
|---|---|---|
Promotion Viewed | promotion_id وname | creative وplacement وposition |
Promotion Clicked | promotion_id وname | creative وplacement وposition |
السلة والدفع
| الحدث | مطلوب | مفيد أيضًا |
|---|---|---|
Product Added | product_id وquantity | حقول المنتج وcart_id وsource |
Product Removed | product_id وquantity | حقول المنتج وcart_id |
Cart Viewed | cart_id وproducts | currency وvalue |
Checkout Started | checkout_id وcurrency وvalue وproducts | subtotal وdiscount وshipping وtax وcart_id وcoupon |
Checkout Step Viewed | checkout_id وstep | step_name وpayment_method وshipping_method |
Checkout Step Completed | checkout_id وstep | step_name وpayment_method وshipping_method |
Payment Info Entered | checkout_id وpayment_method | order_id وshipping_method وstep |
step رقم صحيح يبدأ من 1. وsource في Product Added يقول من أين جاءت الإضافة: product_page أو wishlist أو search أو listing أو recommendation أو other.
flowfyanalytics.track("Checkout Started", {
checkout_id: "CHK-8821",
currency: "SAR",
value: 523.17,
subtotal: 489.98,
shipping: 22.00,
tax: 11.19,
products: [
{ product_id: "P-4471", name: "Wireless Headphones", price: 199.99, quantity: 1 },
{ product_id: "P-2210", name: "Phone Case", price: 145.00, quantity: 2 }
]
});
الطلبات
| الحدث | مطلوب | مفيد أيضًا |
|---|---|---|
Order Completed | order_id وcurrency وvalue وproducts | subtotal وdiscount وshipping وtax وcheckout_id وcoupon وpayment_method وshipping_method |
Order Updated | order_id وprevious_status وcurrent_status وchanged_fields | حقول المال وproducts |
Order Refunded | refund_id وorder_id وrefund_amount وcurrency | reason وproducts |
Order Cancelled | order_id وcurrency وvalue | cancellation_reason وprevious_status وproducts |
Order Completed هو الحدث الذي يستحق ضبطه بدقة تامة — فهو ما تُحسّن عليه كل منصة إعلانية.
flowfyanalytics.track("Order Completed", {
order_id: "ORD-12345",
currency: "SAR",
value: 523.17,
subtotal: 489.98,
shipping: 22.00,
tax: 11.19,
coupon: "SUMMER20",
payment_method: "mada",
products: [
{ product_id: "P-4471", name: "Wireless Headphones", price: 199.99, quantity: 1 },
{ product_id: "P-2210", name: "Phone Case", price: 145.00, quantity: 2 }
]
});
order_id هو ما يجعل الطلب طلبًا واحدًا. بدونه لا يستطيع فلوفاي التفريق بين حدث تكرّر وعملية شراء ثانية، فتُحتسب النسخة المكررة مرة أخرى. وtransaction_id مقبول بديلًا عنه. وorder_id بقيمة 0 يُعامَل كأنه غير موجود.
في الاسترجاع الجزئي، أرسل السطور المُرجَعة وحدها والمبلغ المسترجع فعلًا. وفي الاسترجاع الكامل يمكنك ترك مصفوفة products كلها.
الكوبونات
| الحدث | مطلوب |
|---|---|
Coupon Entered | coupon، وواحد من cart_id / checkout_id / order_id |
Coupon Applied | coupon، وواحد من cart_id / checkout_id / order_id |
Coupon Denied | coupon وreason، وواحد من cart_id / checkout_id / order_id |
Coupon Removed | coupon، وواحد من cart_id / checkout_id / order_id |
coupon هو الرمز الذي كتبه المشتري. وcoupon_id وcoupon_name وdiscount اختيارية.
قائمة الأمنيات
| الحدث | مطلوب | مفيد أيضًا |
|---|---|---|
Product Added to Wishlist | product_id وwishlist_id | حقول المنتج وwishlist_name |
Product Removed from Wishlist | product_id وwishlist_id | حقول المنتج وwishlist_name |
انتبه إلى to وfrom بالحروف الصغيرة في هذين الاسمين.
وحين ينقل المشتري شيئًا من قائمة الأمنيات إلى السلة، أرسل Product Added مع source: "wishlist".
المشاركة
| الحدث | مطلوب | مفيد أيضًا |
|---|---|---|
Product Shared | product_id وshare_via | حقول المنتج وrecipient وshare_message |
Cart Shared | cart_id وproducts وshare_via | recipient وshare_message |
WhatsApp Clicked | href | target_phone وsource وelement_id وpage_url وpage_title |
share_via واحد من email أو whats_app أو sms أو social أو link أو other. وفي Cart Shared يكفي أن يحمل كل عنصر في products قيمة product_id فقط.
التقييمات
| الحدث | مطلوب | مفيد أيضًا |
|---|---|---|
Product Reviewed | product_id وreview_id وrating | review_body |
rating رقم صحيح من 1 إلى 5.
العملاء المحتملون والنماذج
| الحدث | مطلوب | مفيد أيضًا |
|---|---|---|
Lead | lead_source | lead_id وcontact_method وform_id وstatus وestimated_value وcurrency |
Form Submitted | form_id | form_name وaction وstatus وfields وlocale وurl |
lead_source واحد من contact_form أو lead_form أو whats_app أو phone أو live_chat أو quote_request أو callback_request أو newsletter أو other.
لا تضع اسم المشتري ولا بريده ولا رقمه في خصائص Lead. أرسلها عبر identify بدلًا من ذلك، حيث تُشفَّر قبل تمريرها.
أي الأحداث تُحتسب تحويلات
تُعامَل هذه الأحداث تحويلات في التقارير: Order Completed وCheckout Completed وPurchase وLead وSign Up وForm Submitted وContact وCompleteRegistration.
ومنها ثلاثة فقط تحمل إيرادات: Order Completed وCheckout Completed وPurchase. أما حدث Lead الذي يصادف أن يحمل مصفوفة products، فلن تُجمع تلك المصفوفة يومًا ضمن إيراداتك — وهذا ما يبقي تكلفة العميل المحتمل صادقة.