التحدي
كانت Cleopatra INK تدير استوديو المكياج الدائم عبر ثلاث أدوات منفصلة: تطبيق تقويم للحجوزات، ونقطة بيع منفصلة للمدفوعات داخل الاستوديو، وجدول Google Sheet لعمولات الفنانين. وكانت مطابقتها في نهاية الشهر تستغرق أكثر من 12 ساعة، ولم تكن مالكة الاستوديو تعرف بنظرة سريعة أي فنان مربح فعلاً، وكانت الخلافات مع الفنانين حول «كم أتقاضى عن هذه اللمسة التجديدية؟» مصدر احتكاك متكرراً. وفي الوقت نفسه، كانت العربونات تُحصَّل يدوياً عبر الهاتف — فكان التغيب يضر مرتين (مرة بسبب الكرسي الفارغ ومرة بسبب نزاع استرداد المبلغ).
كان المطلوب ضغط عمليات الاستوديو بأكملها في منصة SaaS واحدة — حجز عام وعربونات آمنة ودفع داخل الاستوديو وتقسيم تلقائي لأرباح الفنانين ومرفقات نماذج الموافقة ولوحة للمالك تعرض الإيرادات وأداء الفنانين — مبنية خصيصاً لسير عمل التجميل الدائم (عربون + رصيد، وأدوار المصمم والفنان، وخدمات متعددة اللمسات، والإحالات) بدلاً من نظام CRM عام للصالونات.
حلّنا
بنينا Cleopatra INK كمنصة SaaS واحدة متعددة المستأجرين عبر ثلاث واجهات منسقة: صفحة حجز عامة، ولوحة عمليات داخل الاستوديو، وبوابة ذاتية الخدمة للفنانين — وكلها مدعومة بواجهة API بـ Node.js + Express وMongoDB Atlas وطبقة دفع Stripe + Stripe Connect التي تدير تدفق الأموال بالكامل.
صفحة الحجز العامة هي أعلى مسار التحويل. يختار العميل خدمة (ميكروبليدينغ، ولون الشفاه، وكحل العيون، والإزالة، وجلسة تجديد)، ثم فناناً (مع ملفه الشخصي ومعرض أعماله وتقييماته)، ثم موعداً من التوفر الفوري، ويملأ استمارة الموافقة، ويدفع العربون عبر Stripe Checkout — كل ذلك في تدفق واحد ملائم للجوال. وتُرسل رسالة SMS تأكيدية عبر Twilio مع رابط سحري لإعادة الجدولة، فينخفض معدل التغيب دون مكالمة هاتفية.
لوحة العمليات داخل الاستوديو هي ما يستخدمه موظفو الاستقبال والفنانة فعلياً أثناء الموعد. يرون جدول اليوم ونماذج الموافقة المرفقة بكل موعد وحالة العربون وزر «استلام الدفع» بلمسة واحدة يفتح Stripe Checkout للرصيد المتبقي. وفور سداد الرصيد، يشغّل النظام تقسيم العمولة: تذهب حصة الاستوديو إلى حساب Stripe الرئيسي للمنصة؛ وتذهب حصة الفنانة مباشرة إلى حساب Stripe Connect المرتبط بها؛ وتُخصم أي رسوم للمنتجات أو الغرفة أو الجهة المُحيلة قبل التقسيم، وكل ذلك وفق قواعد عمولة لكل خدمة ولكل فنانة تضعها المالكة مرة واحدة وتنساها.
البوابة ذاتية الخدمة للفنانين هي ما يُنهي نزاعات الأرباح. تسجّل كل فنانة الدخول إلى بوابة تعرض كل موعد أنجزته والمبلغ الإجمالي وكل رسم أو تقسيم والمبلغ الصافي المدفوع — مع تاريخ تحويل Stripe له. لا جدول بيانات ولا بريد إلكتروني ولا مفاوضات نهاية الشهر؛ فالحساب هو السجل.
بالنسبة للمالكة، تجمع لوحة مالية الإيرادات بحسب الخدمة والفنانة والموقع والنطاق الزمني، مع تصدير بنقرة واحدة. ويتتبع برنامج إحالات المصممين / الفنانين الإحالة من البداية إلى النهاية بحيث يحصل المصمم الذي يجلب عميلاً جديداً على مستحقاته تلقائياً. وتُخزَّن نماذج الموافقة وملفات التصميم والاتفاقيات الموقّعة في S3 بروابط موقّعة محددة المدة — ولا تُعرَض أبداً عبر وصول مباشر إلى الكائنات.
وتحت كل ذلك: تصل webhooks الخاصة بـ Stripe إلى واجهة Node.js API بشكل غير مكرر الأثر؛ وتُطابَق العربونات والأرصدة والمبالغ المستردة وتحويلات Stripe Connect مع دفتر لكل موعد بحيث تستطيع المالكة إثبات كل دولار في أي وقت.
- حجز عام يبدأ من الجوال — الخدمة + الفنانة + الموعد + استمارة الموافقة + عربون Stripe، كلها في تدفق واحد
- رسالة SMS تأكيدية عبر Twilio مع رابط سحري لإعادة الجدولة — ينخفض معدل التغيب دون مكالمة هاتفية
- لوحة عمليات داخل الاستوديو مع جدول اليوم ونماذج الموافقة المرفقة و«استلام الدفع» بلمسة واحدة
- تقسيم تلقائي لأرباح الفنانات عبر Stripe Connect — حصة الاستوديو وحصة الفنانة ورسوم الغرفة / المنتج / الجهة المُحيلة، كلها في عملية الخصم نفسها وبشكل غير مكرر الأثر
- قواعد عمولة لكل خدمة ولكل فنانة — تُضبط مرة واحدة وتُنسى؛ فيصبح الحساب هو السجل
- بوابة ذاتية الخدمة للفنانات — كل موعد والإجمالي وكل رسم والصافي وتاريخ الدفع — فلا مكان لنزاعات الأرباح
- برنامج إحالة المصممين والفنانين مع دفع تلقائي للجهة المُحيلة عند أول حجز للعميل المُحال
- لوحة مالية للمالكة بالإيرادات بحسب الخدمة والفنانة والموقع والنطاق الزمني، مع تصدير بنقرة واحدة
- نماذج الموافقة وملفات التصميم والاتفاقيات الموقّعة مخزنة في S3 بروابط موقّعة محددة المدة فقط — دون وصول مباشر إلى الكائنات
- EarningsLedger لكل موعد مع مطابقة بمجموع اختباري — تستطيع المالكة إثبات كل دولار في أي وقت