Files
tripz-llc/docs/33-addons-packaging.md
T
Hamza-AyedandClaude Opus 4.8 8cbaa89642 refactor(pricing): restructure add-ons 7→3, safety+payments to core, transit as own product line
تنفيذ توصيات المراجعة النقدية التي لم تُنفَّذ في الجولة السابقة:

- حذف «الأمان والامتثال» $79 كوحدة → النواة (سبب قانوني: بيع الأمان
  يُنشئ وثيقة إدانة يوم يقع حادث عند مستأجر لم يشترِ الوحدة)
- حذف «حزمة المدفوعات» $99 → النواة (الحلقة الأساسية لا ترقية)
- دمج «ذكاء الأسطول» $99 في باقة أسطول+ (تناقض تسموي)
- «المواصلات» تخرج من الشبكة → قسم #transit مستقل بجمهوره وCTA خاص
- شريط .core-band يعرض ما لا يُباع كحجة بيع
- إصلاح الانقلاب السعري: كانت سيادة $879 أرخص من أسطول+ محمّلة $903
  الآن: علامة $585 < أسطول+ $599 < سيادة $879
- الشارات ← «متاح الآن» بتأكيد المالك أنها تعمل في إنتاج سيرو
- تصحيح سردية docs/33 §0 المستحيلة (كانت تبني التوسّع على باقة
  تنتهي بعد 90 يوماً)

الترجمات مكتملة في اللغات الأربع — تحقُّق برمجي: صفر عناصر فارغة.

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
2026-07-24 05:06:40 +03:00

15 KiB
Raw Blame History

33 — الوحدات والإضافات: كيف نحزّمها ونسعّرها ونسوّق لها

أُنشئ 2026-07-24 بطلب المالك: «التطبيق الكبير فيه المواصلات والذكاء الصناعي واستخبارات التسعير ومنصة نبيه — بدنا نسوّق لها كباقات وإضافات على الموقع.» يُقرأ مع: docs/27 (كتالوج الميزات + حالة كل ميزة) · docs/05 (التسعير) · docs/32 (نصوص الإعلانات) · docs/34 (أي باك إند سيحملها).


0) الفكرة الاستراتيجية — لماذا الوحدات تحل مشكلتنا السعرية

في المراجعة السابقة ظهر توتر: السعر الأساسي منخفض جداً في بعض البنود ($0.02/رحلة = 20% من السوق) لدرجة أنه يقرأ كإغراق.

الوحدات تحلّ هذا التوتر تماماً:

النواة رخيصة عمداً (سلاح اكتساب) — والربح يأتي من الوحدات (محرّك توسّع).

الطبقة الدور التسعير
النواة (تطبيقان + لوحة + dispatch) كسر الاعتراض السعري، الدخول السريع ~55% من أرخص منافس
الوحدات هامش الربح الحقيقي + التمايز الذي لا يُقلَّد سعر كامل — لا يوجد منافس يبيعها أصلاً
الاستهلاك (نسبة GMV) ينمو مع نمو العميل 1–3.5% تنازلي

هذا نموذج land-and-expand الكلاسيكي، لكن بمسار صحيح: العميل يدخل بـ«علامة» ($4,900 إعداد · $349/شهر)، وبعد ٦ أشهر يصير عند $585/شهر لأنه أضاف الوحدات الثلاث. متوسط الإيراد لكل عميل يرتفع 68% بلا حملة اكتساب جديدة.

⚠️ تصحيح (2026-07-24): الصياغة السابقة كانت «يدخل بـ$2,500 ثم $700/شهر» — وهذا مستحيل: $2,500 هي باقة «انطلاقة» التي تنتهي بعد 90 يوماً أو 10,000 رحلة بحسب docs/05، فلا تصل للشهر السادس أصلاً. مسار التوسّع يبدأ من «علامة» لا من «انطلاقة».


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) الباقات — التحزيم بعد إصلاح الانقلاب السعري

المشكلة التي كانت: بالسبع وحدات (قائمة $1,103) كانت «أسطول+ محمّلة بالكامل» = $903/شهر و«علامة محمّلة» = $1,032/شهر، بينما سيادة $879 تشمل كل شيء — أي أن الباقة الأعلى كانت أرخص من الوسطى محمّلة. سُلّم مقلوب يقتل الباقات الوسطى.

بعد التصحيح (٣ وحدات = $527 + مواصلات منفصلة):

انطلاقة $169 علامة $349 ⭐ أسطول+ $599 سيادة $879
النواة (+ الأمان + المدفوعات) ✅ ✅ ✅ ✅
ذكاء الأسطول — — ✅ مدمج ✅
الوحدات الثلاث بسعرها ١ بالاختيار + خصم 15% الثلاث مشمولة ✅ الثلاث
المواصلات بسعرها بسعرها بسعرها ✅ مشمولة
الإجمالي محمّلاً بالكامل — $585 $599 $879

السُّلّم صار تصاعدياً: $585 < $599 < $879 ✅

المواصلات كمشغّل ترقية مقصود: علامة + مواصلات = $884/شهر مقابل سيادة $879 التي تشملها مع العزل و SLA. أي مشترٍ يطلب المواصلات فوق باقة وسطى هو محادثة ترقية لسيادة جاهزة (الفارق يبقى في الإعداد: $7,400 مقابل $13,500، فالخيار حقيقي لا مصطنع).

4) كيف تُعرض على الموقع

4.1 المنفَّذ فعلاً على الموقع (2026-07-24) ✅

بنية من ثلاث طبقات بدل شبكة السبع بطاقات الأصلية:

  1. شريط النواة (.core-band) أعلى القسم — بحدّ أخضر وقفل: «مشمول في كل باقة — ولا يُباع كإضافة أبداً»، وفيه بطاقتا الأمان والامتثال والمدفوعات المحلية. هذا يحوّل ما كان بنداً مُسعَّراً محرجاً إلى حجة بيع: «نحن لا نبيعك أماناً».
  2. شبكة ٣ بطاقات (.addons-grid.three) — الذكاء · استخبارات التسعير (مميّزة) · النمو.
  3. قسم #transit مستقل — تصميم داكن مختلف، شرائح الجمهور (بلديات/جامعات/نقل موظفين/مدارس)، بطاقة سعر مستقلة وCTA واتساب خاص بالمواصلات.

الشارات: «متاح الآن» على الأربعة (الثلاث + المواصلات) بناءً على تأكيد المالك أنها تعمل في إنتاج سيرو، ومطابقةً لجدول §1.

قاعدة أخلاقية وقانونية غير قابلة للتفاوض: لا تُعرض ميزة كـ«متاحة» إن لم تكن تعمل فعلاً في نسخة إنتاج. مشغّل دفع $5,000 على وعد وحدة غير موجودة = دعوى قضائية. الشارة تتبع الإنتاج لا الرغبة — أي وحدة تتوقف عن العمل في الإنتاج تعود «قريباً» في نفس اليوم.

4.2 ربط الحاسبة بالوحدات

أضف لقسم الحاسبة صف «أضف وحدات» بمربعات اختيار — يُحدَّث المجموع الشهري فوراً. هذا:

  • يرفع متوسط قيمة الصفقة المتصوّرة قبل أول مكالمة
  • يُرسل مع رسالة الواتساب قائمة الوحدات التي اختارها → مندوب المبيعات يبدأ من عرض شبه جاهز

4.3 صفحة لكل وحدة (لاحقاً — مهم للـSEO)

/modules/pricing-intelligence وأخواتها. كل صفحة: المشكلة → كيف تعمل → لقطة حقيقية → السعر → CTA. هذه صفحات الهبوط لإعلانات إعادة الاستهداف في docs/32 §2.4.


5) خطوات التنفيذ بالترتيب

  1. ✅ توثيق الوحدات (هذا الملف)
  2. ⬜ قرار المالك: تثبيت الأسعار السبعة + توضيح «سوق الركاب»
  3. ⬜ جرد صدق: لكل وحدة — هل تعمل في إنتاج سيرو اليوم؟ الشارة تُبنى على هذه الإجابة حصراً
  4. ⬜ بناء قسم #modules بأربع لغات (~60 مفتاح ترجمة)
  5. ⬜ ربط مربعات الوحدات بالحاسبة ورسالة الواتساب
  6. ⬜ إعلانات الوحدات (docs/32 §2.4) لإعادة الاستهداف
  7. ⬜ صفحات الوحدات المستقلة للـSEO
  8. ⬜ جدول feature_catalog في الباك إند (N6) + الاستحقاقات (FeatureGuard) — الحدّ الأمني يبقى السيرفر دائماً (docs/19)

سجل التغييرات

التاريخ التغيير
2026-07-24 إنشاء الملف — 7 وحدات، تسعيرها، تحزيمها، عرضها على الموقع + جرد حالتها الفعلية في سيرو مقابل NestJS
2026-07-24 (مساءً) مراجعة نقدية وإعادة هيكلة: 7 وحدات ← 3. الأمان والمدفوعات ← النواة (سبب قانوني، §2.1) · ذكاء الأسطول ← باقة أسطول+ · المواصلات ← خط منتج مستقل #transit. إصلاح الانقلاب السعري (كانت سيادة أرخص من أسطول+ محمّلة) · تصحيح سردية §0 المستحيلة · تنفيذ الكل على الموقع بأربع لغات