أدلة الميزات

نظام الإحالة والتسويق بالعمولة في ڤاريونس للمتاجر الإلكترونية في مصر: روابط وأكواد وتتبع ونِسَب طلبات

نظام الإحالة في ڤاريونس يتيح للتاجر إنشاء روابط إحالة بأكواد مخصصة، وتتبع النقرات والتسجيلات من معامل ?ref=، ونِسَب الطلبات والإيرادات لكل كود من نفس لوحة /dashboard/affiliate.

آخر تحقق: 2026-09-19

يُدار نظام الإحالة من مسار /dashboard/affiliate الذي يعرض مكوّن AffiliatePage بتبويبات: نظرة عامة، والتحليلات، والإدارة، والأمان، والأدوات، والموارد، مع وضعين داخل الصفحة هما «بسيط» و«متقدم». والوضع البسيط هو الجزء الحقيقي المدعوم بقاعدة بيانات، بينما اللوحات المتقدمة (التحليلات، والحملات، والعمولات، والمدفوعات، والصدارة، وكشف الغش، والجغرافيا والأجهزة، ومتعدد المستويات، والإشعارات، والصفحات المخصصة، والمقارنات، والتدريب) تقرأ حالياً بيانات تجريبية من dataStructure/affiliate/mockData ولا تحفظ في قاعدة البيانات.

الوضع البسيط مكوّن من ثلاث قطع: SimpleReferralSteps لإنشاء الرابط، وSimpleStats لعرض المجاميع، وSimpleLinksList لعرض أحدث 10 روابط مع عدد الطلبات والإيراد لكل كود. وكل رابط محفوظ في مجموعة SimpleReferralLink بحقول: userId الخاص بالتاجر، وcode بأحرف كبيرة وفريد، وname اختياري، وurl مطلوب، وعدادات clicks وsignups وconversions التي تبدأ من صفر، مع فهرس مركّب على userId وتاريخ الإنشاء لسرعة الاستعلام.

إنشاء الرابط يتم عبر POST /api/affiliate/simple/create-link بمعدل 20 طلباً في الدقيقة: الكود مطلوب بحد أقصى 20 حرفاً ويُحوَّل لأحرف كبيرة، والرابط مطلوب، والاسم اختياري. والكود فريد عالمياً فإن تكرر ردّ الخادم 409 CODE_ALREADY_EXISTS. وعند النجاح يرد 201 مع id والكود والعدادات. وقائمة الروابط عبر GET /api/affiliate/simple/links تبني رابط المتجر ديناميكياً بصيغة {subdomain}.{baseDomain}/?ref={CODE} من نطاق التاجر المخزّن في User.domain ورؤوس الاستضافة، وتُلحق بكل رابط عدد الطلبات وإجمالي الإيراد بحساب تجميعي على الطلبات. والإحصائيات عبر GET /api/affiliate/simple/stats تجمع clicks وsignups وconversions ثم تحسب totalOrders وordersPerRef من حقل data.affiliateCode في الطلبات. والتعديل عبر PUT /api/affiliate/simple/update-link والحذف عبر DELETE /api/affiliate/simple/delete-link والتحقق من الكود عبر verify-code وتتبع النقرة البسيطة عبر track-click ونسخ الرابط عبر copy-link.

تتبع الزائر يبدأ من مكوّن ReferralTracker الذي يقرأ ?ref= من الرابط ويرسل POST /api/referral/track مع معاملات UTM (utm_source وutm_medium وutm_campaign وutm_term وutm_content) إلى نظام الشراكات، فيُنشأ مستند ReferralClick يحمل partnershipId وreferralCode وعنوان IP ووكيل المستخدم والمُحيل والدولة والمدينة ومعاملات UTM وحالة التحويل converted مع convertedUserId وبيانات الاشتراك (الخطة من free إلى enterprise والمبلغ والعملة EGP وعدد الأشهر وحالة التجديد). ولمنع التكرار يستخدم المكوّن sessionStorage لكل جلسة، ويحفظ الكود في localStorage بمفتاح oro_referralCode لمدة 30 يوماً مع كوكي partner_ref لمدة سنة، بينما يحفظ النظام القديم referralCode لمدة 24 ساعة فقط. وعند التسجيل يقرأ مسار pages/api/users/register.js الكود المخزّن ويرسله إلى track-signup دون تعطيل التسجيل عند الفشل، فيزيد عدّاد signups ويُربط المستخدم الجديد بالرابط.

ونِسَب الطلبات تعتمد على حقل data.affiliateCode في مستند الطلب مع data.totals.grandTotal للإيراد، فيجمع الخادم الطلبات حسب الكود لكل تاجر على حدة. وهذا يعني أن أي طلب يحمل الكود يظهر في إحصائيات SimpleStats وفي عمودي الطلبات والإيراد داخل SimpleLinksList.

وحول النظام خدمات مساندة: أدوات مساعد الذكاء الاصطناعي في features/ai-copilot/tools/affiliate/index.ts تقرأ لوحات الإحالة وتدير الروابط البسيطة (إنشاء وتعديل وحذف) بصلاحيات marketing.view للقراءة وmarketing.create/edit/delete للتعديل، وتطبيق affiliate في سوق التطبيقات (User.enabledApps) ببوابة خطة، وتصنيف affiliate في سجلات التدقيق، ومفاتيح إشعارات affiliate في تفضيلات الإشعارات، وربط الطلبات بكود الإحالة في أعمدة جدول الطلبات.

والأزرار التي سيراها التاجر في الصفحة هي: توليد كود، وإنشاء الرابط، ونسخ الرابط، وتبويبا إنشاء رابط جديد وإدارة الروابط، وتفعيل وإلغاء تفعيل الرابط، وحذف الرابط، وتعديل الاسم، والتبديل بين البسيط والمتقدم، وأزرار التصدير CSV وExcel وPDF، وحاسبة العمولات التفاعلية، وإنشاء الحملات، ومرشحات جدول المدفوعات (مدفوع وقيد الانتظار ومرفوض)، وإعدادات الإشعارات (القنوات: اللوحة والبريد والدفع وSMS، والتكرار: فوري وكل ساعة ويومي وأسبوعي)، وقوالب صفحات الهبوط، ومفتاح الإحالة مدى الحياة، وموارد التدريب.

خطوات الإعداد في ڤاريونس

  1. افتح صفحة الإحالة

    من لوحة التحكم ادخل إلى /dashboard/affiliate من الشريط الجانبي (أيقونة TrendingUp)، وابقَ في وضع «بسيط» لأن اللوحات المتقدمة تعرض بيانات تجريبية.

  2. أنشئ رابط الإحالة

    في تبويب إنشاء رابط جديد أدخل اسم الحملة، واضغط توليد كود أو اكتب كوداً حتى 20 حرفاً (يُحوَّل لأحرف كبيرة)، وأدخل رابط الصفحة المستهدفة، ثم اضغط إنشاء الرابط وانتظر رد 201.

  3. انسخ الرابط وشاركه

    اضغط نسخ الرابط لتحصل على صيغة {subdomain}.{baseDomain}/?ref={CODE}، وشاركها على السوشيال أو البريد، وتابعها من تبويب إدارة الروابط.

  4. تأكد من التتبع والنِسَب

    افتح الرابط بنفسك وتأكد من زيادة النقرات في SimpleStats، وسجّل حساباً تجريبياً للتأكد من زيادة التسجيلات، ثم نفّذ طلباً يحمل الكود وتأكد من ظهوره في عمودي الطلبات والإيراد.

  5. أدر الروابط

    من إدارة الروابط فعّل أو عطّل أي رابط، وعدّل الاسم، واحذف ما انتهى، وراجع أحدث 10 روابط فقط لأن القائمة تعرض آخر 10.

أسئلة شائعة

هل يدعم ڤاريونس التسويق بالإحالة؟

نعم، من /dashboard/affiliate يمكن إنشاء روابط بأكواد مخصصة وتتبع النقرات والتسجيلات ونِسَب الطلبات والإيرادات لكل كود عبر SimpleReferralLink وReferralClick وPartnership.

كيف أنشئ رابط إحالة جديد؟

افتح /dashboard/affiliate في الوضع البسيط، أدخل اسم الحملة والرابط المستهدف، وولّد كوداً حتى 20 حرفاً، ثم اضغط إنشاء الرابط. الكود فريد عالمياً والمكرر يرد 409، والرابط النهائي بصيغة ?ref={CODE} على نطاق متجرك.

كيف يعمل تتبع ?ref= وكم مدته؟

مكوّن ReferralTracker يرسل الكود مع UTM إلى /api/referral/track مرة واحدة لكل جلسة، ويحفظ oro_referralCode لمدة 30 يوماً مع كوكي partner_ref لسنة، بينما النظام القديم يحفظ referralCode لمدة 24 ساعة فقط.

كيف تُنسب الطلبات والأرباح لكود الإحالة؟

الطلب يحمل data.affiliateCode، فيجمع مسارا simple/stats وsimple/links الطلبات والإيراد (data.totals.grandTotal) لكل كود داخل متجرك، فتظهر في الإحصائيات وفي عمودي الطلبات والإيراد.

هل لوحات العمولات والمدفوعات وكشف الغش حقيقية؟

لا، هذه اللوحات المتقدمة (العمولات والقواعد المخصصة والمدفوعات والصدارة والحملات وكشف الغش والجغرافيا ومتعدد المستويات والإشعارات والصفحات المخصصة والتصدير والتدريب) تقرأ بيانات تجريبية من mockData ولا تحفظ في قاعدة البيانات، والجزء الحقيقي هو الروابط البسيطة والتتبع والنِسَب.

استكشاف الأخطاء

1) إذا ردّ الإنشاء 409 فالكود مستخدم عالمياً: غيّر الكود أو ولّد واحداً جديداً. 2) إذا ردّ 400 فتحقق من الكود (مطلوب حتى 20 حرفاً) ومن حقل الرابط (مطلوب). 3) إذا لم تزد النقرات فافتح الرابط بصيغة ?ref= الصحيحة وتأكد أن المتصفح يقبل التخزين المحلي وأن الجلسة جديدة (التتبع مرة واحدة لكل جلسة). 4) إذا لم تُنسب الطلبات فتأكد أن الطلب يحمل data.affiliateCode الصحيح بأحرف كبيرة وأن التاجر هو نفس مالك الرابط. 5) إذا ظهرت القائمة فارغة فراجع أنك في الوضع البسيط وأن الروابط تتجاوز 10 (القائمة تعرض الأحدث فقط) أو أن userId غير متطابق الصيغة.

حدود مهمة

• الأكواد فريدة عالمياً وبحد 20 حرفاً وتُحوَّل لأحرف كبيرة، وقائمة الروابط تعرض أحدث 10 فقط. • اللوحات المتقدمة (التحليلات والحملات والعمولات والمدفوعات والصدارة وكشف الغش والجغرافيا ومتعدد المستويات والإشعارات والصفحات والتصدير والتدريب والمقارنات) بيانات تجريبية غير محفوظة. • مسارا track وtrack-signup القديمان يعدّلان بياناتاً لحظية ولا يمثلان التخزين الحقيقي، والتتبع الحقيقي عبر /api/referral/track ونماذج Partnership وReferralClick. • نِسَب الطلبات تعتمد على كتابة data.affiliateCode عند إنشاء الطلب، فالطلبات القديمة بدون الكود لا تُنسب بأثر رجعي.

روابط ذات صلة

تواصل معنا على واتساب