- marketing: index.html من 2274 إلى 775 سطراً، والباقي إلى styles/ (tokens·base·components·sections·responsive) و js/ (app·i18n·calculator·analytics) و i18n/ بخمس لغات (ar·en·fr·es·tr) عبر سمة data-i18n. - docs/05 + docs/33 + لوحة السوبر-أدمن: الباقات صارت ثلاثاً (إطلاق · نمو · سيادة) بدل الأربع، وتحديث docs/31 بما يطابقها. - docs/36: توثيق سيرو إكسبرس للتوصيل. - تنظيف استيرادات غير مستعملة في apps/rider و apps/driver. Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
15 KiB
33 — الوحدات والإضافات: كيف نحزّمها ونسعّرها ونسوّق لها
أُنشئ 2026-07-24 بطلب المالك: «التطبيق الكبير فيه المواصلات والذكاء الصناعي واستخبارات التسعير ومنصة نبيه — بدنا نسوّق لها كباقات وإضافات على الموقع.» يُقرأ مع:
docs/27(كتالوج الميزات + حالة كل ميزة) ·docs/05(التسعير) ·docs/32(نصوص الإعلانات) ·docs/34(أي باك إند سيحملها).
0) الفكرة الاستراتيجية — لماذا الوحدات تحل مشكلتنا السعرية
في المراجعة السابقة ظهر توتر: السعر الأساسي منخفض جداً في بعض البنود ($0.02/رحلة = 20% من السوق) لدرجة أنه يقرأ كإغراق.
الوحدات تحلّ هذا التوتر تماماً:
النواة رخيصة عمداً (سلاح اكتساب) — والربح يأتي من الوحدات (محرّك توسّع).
| الطبقة | الدور | التسعير |
|---|---|---|
| النواة (تطبيقان + لوحة + dispatch) | كسر الاعتراض السعري، الدخول السريع | ~55% من أرخص منافس |
| الوحدات | هامش الربح الحقيقي + التمايز الذي لا يُقلَّد | سعر كامل — لا يوجد منافس يبيعها أصلاً |
| الاستهلاك (نسبة GMV) | ينمو مع نمو العميل | 1–2.5% تنازلي |
هذا نموذج land-and-expand الكلاسيكي، لكن بمسار صحيح: العميل يدخل بـ«إطلاق» ($4,900 إعداد · $349/شهر)، وبعد ٦ أشهر ينتقل إلى «نمو» ($8,500 إعداد · $599/شهر) لأنه أضاف الوحدات الثلاث. متوسط الإيراد لكل عميل يرتفع 72% بلا حملة اكتساب جديدة.
⚠️ تحديث (2026-07-26): أُزيلت باقة «انطلاقة» / «مدينتك» ($169/شهر، 3.5%، 500 رحلة، TestFlight فقط). الباقات الآن 3: إطلاق ($349) ← نمو ($599) ← سيادة ($879).
1) ⚠️ ملاحظة حرجة: حالة الميزات تختلف باختلاف الباك إند
هذه أهم نقطة في الملف، ولها أثر مباشر على القرار في docs/34:
| الوحدة | حالتها في NestJS (docs/27) | حالتها في سيرو PHP (مقروءة من الكود 2026-07-24) |
|---|---|---|
| استخبارات التسعير | ⬜ لم تُبنَ (L4) | ✅ محرّك TypeScript كامل — backend/pricing-engine/ |
| محرّك التسويق | ⬜ (O3/O4) | ✅ marketing_engine/ + socialBot + مولّد تعليقات Gemini |
| الخريطة الحرارية | ⬜ (O1) | ✅ bot/cron_generate_heatmap_cache.php |
| الطلب التنبؤي | ⬜ (O1) | ✅ bot/cron_predictive_demand.php |
| منصة نبيه (واتساب) | 🔵 OTP فقط | ✅ nabeh/ — 8 نقاط نهاية (شكاوى، وثائق، دفع، حالة سائق) |
| المواصلات | 🔵 microservice + لوحة | ✅ transit/ كامل + لوحة + كرونات تنبيه |
| تأمين السائق | ⬜ مؤجَّلة | ✅ driver_assurance/ |
| التلعيب (Gamification) | ⬜ غير مذكورة أصلاً | ✅ ride/gamification/ — تحديات، لوحة صدارة، streak، إحالات |
الخلاصة الصادقة: الميزات التي تريد بيعها كوحدات مدفوعة — موجودة في سيرو، وغير موجودة في NestJS. هذه ليست حجة عاطفية لصالح سيرو، بل حجة تجارية: كل وحدة مبنية = منتج يمكن بيعه الشهر القادم بدل الربع القادم.
2) الهيكل بعد المراجعة النقدية (2026-07-24) — ٣ وحدات فقط
المراجعة النقدية طبّقت اختباراً من أربعة شروط على كل وحدة: (أ) كلفة حدّية حقيقية · (ب) قيمة قابلة للقياس · (ج) رفضها لا يُنتج ضرراً أو واجباً قانونياً · (د) النواة تعمل بدونها.
| الوحدة الأصلية | النتيجة | المصير |
|---|---|---|
| استخبارات التسعير $249 | ✅ اجتازت الأربعة | تبقى وحدة مدفوعة |
| حزمة النمو $129 | ✅ اجتازت الأربعة | تبقى وحدة مدفوعة |
| حزمة الذكاء $149 | 🟡 سقط بند (ج) جزئياً | تبقى بعد تنحيف — فحص الوثائق وكشف الاحتيال خرجا للنواة؛ بقي تدقيق الشكاوى والمستشار والتسوية |
| المواصلات $299 | ✅ اجتازت، لكن جمهورها مختلف | خرجت من الشبكة → خط منتج مستقل بقسم #transit وقمع وCTA خاص |
| ذكاء الأسطول $99 | ❌ سقط بند (ب) | دُمج في باقة «أسطول+» — تناقض تسموي أن تُسمّى الباقة «أسطول+» ويُباع ذكاؤها منفصلاً |
| حزمة المدفوعات $99 | ❌ سقط بند (د) | للنواة — أن يدفع الراكب ويقبض السائق هو المنتج لا ترقية عليه |
| الأمان والامتثال $79 | ❌ سقط بند (ج) | للنواة — انظر §2.1 |
2.1 لماذا حُذف «الأمان والامتثال» نهائياً (قرار المالك)
السبب ليس ذوقياً بل قانونياً: إن كان زر الطوارئ وكشف الاحتيال بند تسعير بـ$79، فأنت تُنشئ بيدك وثيقة تُدينك. يوم يقع حادث عند مستأجر لم يشترِ الوحدة، تُطبع صفحة التسعير في المحكمة: المنصّة بنت الحماية، وعرفت أنها ضرورية، وحجبتها مقابل $79 شهرياً. هذا يحوّل حادثة عند المستأجر إلى دعوى «عيب تصميم» ضد Tripz.
ثلاثة أسباب مساندة:
- تنظيمياً: زر الاستغاثة والتحقق من وثائق السائق يتحوّلان إلى شرط ترخيص. ما هو شرط ترخيص لا يصحّ أن يكون اختيارياً — ولحظة صيرورته إلزامياً تصير الوحدة تساوي صفراً كترقية.
- حسابياً: كانت أرخص وحدة ($79 = 7% من القائمة) وأخطر وحدة. أسوأ بند من حيث العائد مقابل المخاطرة.
- تسويقياً: كانت الوحيدة بشارة «قريباً» — أي إعلان على صفحة يقرأها المنظِّم بأن الأمان غير جاهز.
2.2 النواة — مشمولة في كل باقة، لا تُسعَّر أبداً
طلب رحلة · فئات · تعرفة كاملة · OTP · تتبّع حيّ · تقييم · دردشة · إشعارات · لوحة · Dispatch + الأمان والامتثال: زر الطوارئ · كشف الاحتيال · تأمين السائق · فحص الوثائق بالذكاء الاصطناعي · تقارير المنظّم + المدفوعات المحلية: PayMob · CliQ · سيرياتيل وMTN كاش · شام كاش · المحافظ وطلبات السحب
⛔ وحدة المدفوعات صارت نواة، لذلك بوابة
docs/21تنطبق على المنتج كله لا على وحدة اختيارية: S4 (لا معاملة فيfinalize_payout) و S5 (varchar(10)للمال) تُصلَحان قبل أول استنساخ.
2.3 الوحدات الثلاث الباقية
| # | الوحدة | السعر | الحجة البيعية |
|---|---|---|---|
| ① | حزمة الذكاء | $149/شهر | تدقيق الشكاوى آلياً · مستشار تشغيلي أسبوعي · تسوية المدفوعات من رسائل المزوّد عبر Gemini |
| ② | استخبارات التسعير 🔥 | $249/شهر + $1,000 إعداد | MAD + K-Means + انحدار خطي يستخرج معادلة تسعير السوق. «تغيير 5% في سعرك يغيّر أرباحك 30%» |
| ③ | حزمة النمو | $129/شهر + رسوم الرسائل | إعادة تنشيط الخاملين · حملات واتساب عبر نبيه · تلعيب وإحالات |
تحذير قانوني قائم على ②: صِغ الوصف حول «استخبارات السوق» لا «كشط تطبيق منافس بالاسم». وخطر ثانٍ لم يكن موثّقاً: بيع نفس المحرّك لمشغّلَين في نفس المدينة = آلية تقارب أسعار بين متنافسين (تواطؤ خوارزمي). يلزم رأي قانوني قبل الخليج/أوروبا.
2.4 المواصلات — خط منتج مستقل لا وحدة
$299/شهر + $2,500 إعداد. جمهورها بلديات وجامعات ونقل موظفين ومدارس — لا تُشترى كإضافة على تطبيق تكسي. لها قسم #transit مستقل على الموقع بقمع وCTA خاصّين، ومشمولة بالكامل في «سيادة».
3) الباقات — هيكل 3 فئات (قرار المالك 2026-07-26)
حُذفت باقة "انطلاقة" (مدينة داخل تطبيق Tripz الجامع بلا تطبيق خاص). لا منطق تجاري لعميل يدفع ولا يحصل على تطبيق بعلامته. الباقات صارت ثلاث بناءً على مرحلة النمو.
الهيكل الجديد (٣ وحدات = $527 + مواصلات منفصلة):
| إطلاق $349 | نمو $599 ⭐ | سيادة $879 | |
|---|---|---|---|
| النواة (+ الأمان + المدفوعات) | ✅ | ✅ | ✅ |
| ذكاء الأسطول | بسعرها ($149) | ✅ مدمج | ✅ |
| الوحدات الثلاث | بسعرها | الثلاث مشمولة | ✅ الثلاث |
| المواصلات | بسعرها ($299) | بسعرها | ✅ مشمولة |
| الإجمالي محمّلاً بالكامل | $349 | $599 | $879 |
سر التسويقي:
- باقة "نمو" بـ$599 تشمل وحدات بقيمة $527 مجاناً = العميل يحس إنه حصل على مجاناً
- باقة "سيادة" بـ$879 = $250 فقط أكثر من نمو = "فرق بسيط لكامل الحماية والعزل"
- السُّلّم تصاعدي منطقي:
$349 ← $599 ← $879
المواصلات كمشغّل ترقية مقصود: نمو + مواصلات = $898/شهر مقابل سيادة $879 التي تشملها مع العزل و SLA. أي مشترٍ يطلب المواصلات فوق باقة "نمو" هو محادثة ترقية لسيادة جاهزة.
4) كيف تُعرض على الموقع
4.1 المنفَّذ فعلاً على الموقع (2026-07-24) ✅
بنية من ثلاث طبقات بدل شبكة السبع بطاقات الأصلية:
- شريط النواة (
.core-band) أعلى القسم — بحدّ أخضر وقفل: «مشمول في كل باقة — ولا يُباع كإضافة أبداً»، وفيه بطاقتا الأمان والامتثال والمدفوعات المحلية. هذا يحوّل ما كان بنداً مُسعَّراً محرجاً إلى حجة بيع: «نحن لا نبيعك أماناً». - شبكة ٣ بطاقات (
.addons-grid.three) — الذكاء · استخبارات التسعير (مميّزة) · النمو. - قسم
#transitمستقل — تصميم داكن مختلف، شرائح الجمهور (بلديات/جامعات/نقل موظفين/مدارس)، بطاقة سعر مستقلة وCTA واتساب خاص بالمواصلات.
الشارات: «متاح الآن» على الأربعة (الثلاث + المواصلات) بناءً على تأكيد المالك أنها تعمل في إنتاج سيرو، ومطابقةً لجدول §1.
قاعدة أخلاقية وقانونية غير قابلة للتفاوض: لا تُعرض ميزة كـ«متاحة» إن لم تكن تعمل فعلاً في نسخة إنتاج. مشغّل دفع $5,000 على وعد وحدة غير موجودة = دعوى قضائية. الشارة تتبع الإنتاج لا الرغبة — أي وحدة تتوقف عن العمل في الإنتاج تعود «قريباً» في نفس اليوم.
4.2 ربط الحاسبة بالوحدات
أضف لقسم الحاسبة صف «أضف وحدات» بمربعات اختيار — يُحدَّث المجموع الشهري فوراً. هذا:
- يرفع متوسط قيمة الصفقة المتصوّرة قبل أول مكالمة
- يُرسل مع رسالة الواتساب قائمة الوحدات التي اختارها → مندوب المبيعات يبدأ من عرض شبه جاهز
4.3 صفحة لكل وحدة (لاحقاً — مهم للـSEO)
/modules/pricing-intelligence وأخواتها. كل صفحة: المشكلة → كيف تعمل → لقطة حقيقية → السعر → CTA.
هذه صفحات الهبوط لإعلانات إعادة الاستهداف في docs/32 §2.4.
5) خطوات التنفيذ بالترتيب
- ✅ توثيق الوحدات (هذا الملف)
- ⬜ قرار المالك: تثبيت الأسعار السبعة + توضيح «سوق الركاب»
- ⬜ جرد صدق: لكل وحدة — هل تعمل في إنتاج سيرو اليوم؟ الشارة تُبنى على هذه الإجابة حصراً
- ⬜ بناء قسم
#modulesبأربع لغات (~60 مفتاح ترجمة) - ⬜ ربط مربعات الوحدات بالحاسبة ورسالة الواتساب
- ⬜ إعلانات الوحدات (docs/32 §2.4) لإعادة الاستهداف
- ⬜ صفحات الوحدات المستقلة للـSEO
- ⬜ جدول
feature_catalogفي الباك إند (N6) + الاستحقاقات (FeatureGuard) — الحدّ الأمني يبقى السيرفر دائماً (docs/19)
سجل التغييرات
| التاريخ | التغيير |
|---|---|
| 2026-07-24 | إنشاء الملف — 7 وحدات، تسعيرها، تحزيمها، عرضها على الموقع + جرد حالتها الفعلية في سيرو مقابل NestJS |
| 2026-07-24 (مساءً) | مراجعة نقدية وإعادة هيكلة: 7 وحدات ← 3. الأمان والمدفوعات ← النواة (سبب قانوني، §2.1) · ذكاء الأسطول ← باقة أسطول+ · المواصلات ← خط منتج مستقل #transit. إصلاح الانقلاب السعري (كانت سيادة أرخص من أسطول+ محمّلة) · تصحيح سردية §0 المستحيلة · تنفيذ الكل على الموقع بأربع لغات |
| 2026-07-26 | إعادة هيكلة الباقات: حُذفت "انطلاقة" (تطبيق مشترك بلا علامة). الباقات صارت 3: إطلاق ($349) ← نمو ($599) ← سيادة ($879). الوحدات الثلاث مشمولة في "نمو" و"سيادة". المواصلات مشمولة في "سيادة" فقط. سر تسويقي: نمو = وحدات مجانية، سيادة = $250 أكثر لكل شيء |