زهو: كيف بنيت نظاماً عربياً لإدارة العيادات الخاصة في مصر

زهو نظام ويب عربي لإدارة العيادات الخاصة في مصر. يحجز المريض من رابط العيادة، ويؤكد الاستقبال الحجز ويدير الطابور، ويسجّل التمريض العلامات الحيوية، ويكتب الطبيب الزيارة والروشتة الإلكترونية، فتُنشأ الفاتورة والقيود المحاسبية وحدها. ويفتح كل شخص في العيادة مساحة مبنية لعمله، على الهاتف أو الحاسوب. يعمل على zahw.app بتجربة مجانية سبعة أيام، وله صفحة هنا: زهو.
الفيديو أعلاه هو المنتج كله في خمس دقائق: يسجّل صاحب العيادة ويُعدّ عيادته، ويحجز مريض من هاتفه، ثم يؤدي الاستقبال والتمريض والطبيب والمحاسب كلٌّ دوره. وهذه المقالة قصة بنائه: المشكلة، وقرارات التصميم، وكيف تترابط الأجزاء.
ما المشكلة التي يحلها زهو؟
في العيادة الخاصة الصغيرة تمر زيارة المريض الواحد على أربعة أشخاص أو خمسة، وتتوزع معلوماتها بين دفتر المواعيد ومكالمات الهاتف ورسائل واتساب والروشتة الورقية ودفتر الحسابات. لا يعرف المريض هل تأكد حجزه، ولا يرى الاستقبال الطابور كاملاً، ويكتب الطبيب الروشتة بيده، ولا يعرف صاحب العيادة إيراد اليوم إلا ليلاً بعد عدّ النقود.
وأغلب برامج العيادات التي اطلعت عليها كانت على أحد شكلين: مبنية بلغة أخرى ثم أضيفت إليها العربية، أو لوحة إدارة واحدة كبيرة تعرض كل الشاشات على كل الموظفين، فيضيع الاستقبال بين قوائم المحاسبة، ويضيع الطبيب بين صفحات الإعدادات. أردت العكس: العربية من أول سطر في الكود، وكل شخص يرى الجزء الذي يخصه من الرحلة فقط.
كيف تمر الزيارة داخل زهو؟
بُني المنتج حول رحلة واحدة، ولكل خطوة فيها صاحب واحد:
- المريض يحجز. لكل عيادة صفحة حجز عامة. يختار المريض الخدمة، ثم اليوم والوقت من الأوقات المتاحة فعلاً، ويكتب اسمه ورقم هاتفه، دون حساب. ويبقى الطلب في انتظار الاستقبال.
- الاستقبال يؤكد. يرى الاستقبال الطلبات في أعلى شاشة اليوم، فيؤكدها، ويسجّل حضور المريض بضغطة عند وصوله.
- التمريض يسجّل العلامات الحيوية. يرى الممرض من ينتظر ومن لم تُسجَّل علاماته بعد، فيسجّل الضغط والنبض والحرارة والسكر والوزن قبل دخول المريض.
- الطبيب يكشف. يرى الطبيب المريض التالي وعلاماته الحيوية، ويفتح ملفه (الحساسية والأمراض المزمنة والزيارات السابقة وملفات التحاليل والأشعة)، ويكتب الشكوى والتشخيص والروشتة، ويحجز المتابعة في وقت متاح.
- تنتهي الزيارة فتتبعها الفاتورة. إنهاء الزيارة يُنشئ الفاتورة، مع تغطية التأمين والدفعات الجزئية، ويحصّلها الاستقبال ويسجّل طريقة الدفع.
- تتوازن الدفاتر وحدها. كل فاتورة ودفعة ومصروف تُسجّل قيودها المحاسبية تلقائياً، فيراجع المحاسب دفاتر متوازنة بدل أن يكتبها.
ويحصل المريض أيضاً على رابط «مواعيدي» الخاص، يتابع منه الحجز أو يلغيه أو يطلب تغييره. ويستطيع الاستقبال أو الطبيب إرسال هذا الرابط أو موعد المتابعة أو الروشتة على واتساب بضغطة. وللدقة: زهو يجهّز الرسالة والمستخدم يرسلها بنفسه، ولا توجد تذكيرات آلية.
مساحة الاستقبال في زهو: المريض التالي والطابور والحجوزات التي تنتظر التأكيد
لماذا لكل دور مساحته؟
هذا هو قرار التصميم الأهم. بدل تطبيق واحد بقائمة طويلة، في زهو خمس مساحات، واحدة لكل دور في الفريق، وكل منها تفتح على أربع وجهات على الأكثر:
| الدور | يفتح على | يستطيع | لا يستطيع |
|---|---|---|---|
| صاحب العيادة | نظرة عامة · المالية · الفريق · الإعدادات | بيانات العيادة ومواعيد العمل والخدمات والأسعار ورابط الحجز ورمز QR، ودعوة الفريق وإلغاء الروابط | (يرى كل شيء، وهو الدور الوحيد الذي يدير الفريق) |
| الطبيب | المريض الحالي · مرضى اليوم · المرضى · حسابي | الزيارة والتشخيص والروشتة والمتابعة وإنهاء الزيارة | إدارة الفريق |
| الاستقبال | اليوم · الطابور · الحجوزات · التحصيل | تأكيد الحجوزات وتسجيل الحضور وتحصيل الدفعات | فتح الروشتات أو الدفاتر |
| التمريض | الطابور · المرضى · حسابي | تسجيل العلامات الحيوية وقراءة الروشتات | كتابة الروشتات، أو رؤية الفواتير والدفاتر |
| المحاسب | نظرة عامة · الفواتير · المصروفات · الدفاتر | الفواتير والدفعات والمصروفات والقيود | فتح المواعيد أو الزيارات أو الروشتات |
والصلاحيات ليست أزراراً مخفية فقط. يتحقق الخادم من كل طلب حسب حقوق القراءة والكتابة للدور في كل قسم (المرضى، والمواعيد، والزيارات، والجانب الطبي، والفواتير، والمحاسبة، والإعدادات، والفريق)، ويرد بالرفض في غير ذلك. إخفاء الزر راحة للمستخدم، والحماية الحقيقية في الخادم.
ويتنقل صاحب العيادة، وهو غالباً الطبيب الذي أنشأها، بين مساحة العيادة ومساحة الكشف من الشريط العلوي، لأن الشخص نفسه في العيادة الصغيرة يدير العمل ويكشف على المرضى.
كيف تعمل الروشتة الإلكترونية؟
الروشتة أكثر ما يلمسه الطبيب، فنالت أكبر قدر من العناية. يجري البحث في بنك أدوية مصري فيه أكثر من 23 ألف دواء، بالعربية أو الإنجليزية. وعند إضافة دواء يقترح نموذج ذكاء اصطناعي الجرعة، ويفحص تداخله مع بقية أدوية الروشتة ومع حساسية المريض، ويصوغ تعليمات قصيرة للمريض. وكل ذلك يظهر اقتراحاً: يقبله الطبيب أو يعدّله أو يتجاهله، والحقل الذي عدّله الطبيب لا يُكتب فوقه أبداً.
ويعمل الذكاء الاصطناعي عبر محوّل متوافق مع OpenAI، بحد شهري لكل عيادة، ومفتاح المزوّد محفوظ مشفّراً (AES-256-GCM). وتُطبع الروشتة على ورق A4 بأحد ثمانية قوالب، مع ترويسة العيادة.
مساحة الطبيب في زهو على الحاسوب والهاتف معاً
كيف بُني زهو؟
| الطبقة | الاختيار | السبب |
|---|---|---|
| الواجهة | React 19 وTypeScript وVite، بتصميم Material 3 Expressive وثيم أخضر خاص، وخط ثمانية | من اليمين لليسار من البداية، وكود واحد للهاتف والحاسوب، فاتح وداكن |
| الخادم | Express على Netlify Functions، ودخول بـ JWT | صغير ورخيص التشغيل، والكود نفسه يعمل محلياً وفي الإنتاج |
| البيانات | PostgreSQL مع Prisma | كل استعلام مقيّد بعيادة واحدة، والترقيم آمن مع الطلبات المتزامنة |
| الذكاء الاصطناعي | محوّل متوافق مع OpenAI | يمكن تغيير النموذج دون المساس بالمنتج |
وهناك تفصيلتان أهم من اختيار الأدوات. الأولى أن كل استعلام مقيّد بالعيادة، فلا تقرأ عيادة بيانات أخرى أبداً، وتُشغَّل الرحلة كاملة، من التسجيل حتى الدفاتر المتوازنة، في اختبارات تكامل على قاعدة بيانات حقيقية. والثانية أن الأرقام تصدر تحت قفل: أرقام الزيارات والفواتير والقيود تؤخذ داخل معاملة في قاعدة البيانات تمسك قفلاً خاصاً بالعيادة، فلا يحصل شخصان ضغطا الزر في الثانية نفسها على الرقم نفسه.
والصفحات العامة مبنية لمحركات البحث أيضاً: صفحة الهبوط تحمل عنوانها ووصفها وبياناتها المنظمة في HTML، والمدونة الطبية لأصحاب العيادات تُولَّد صفحات ثابتة وقت البناء، وتبقى شاشات التطبيق خارج الفهرسة.
صفحة حجز المريض في زهو على الهاتف
كم يكلّف زهو؟
هناك تجربة مجانية سبعة أيام دون بطاقة ائتمان، ثم الاشتراك 200 جنيه شهرياً أو 2000 جنيه سنوياً (شهران مجاناً)، ولا يتجدد تلقائياً: إن لم تجدد العيادة فلا يُخصم شيء.
ما أقوله لمن يبني برامج للعيادات
لم يكن الأصعب شاشة بعينها، بل تحديد صاحب كل خطوة. فحين صار لكل خطوة في الزيارة صاحب واحد، كادت الشاشات تصمّم نفسها: الاستقبال يحتاج الطابور والتحصيل لا دليل الحسابات، والطبيب يحتاج المريض التالي لا صفحة الإعدادات. وهو النهج نفسه الذي أقدّمه للشركات في خدمات التحول الرقمي: ارسم رحلة واحدة، وأعطِ كل خطوة صاحباً واضحاً، ثم ابنِ ما يحتاجه هذا الصاحب فقط.
الأسئلة الشائعة
ما هو زهو؟
زهو نظام ويب لإدارة العيادات الخاصة في مصر، من تطوير ابوالمكارم شهود. يغطي الحجز الإلكتروني والاستقبال والطابور والعلامات الحيوية والكشف مع الروشتة الإلكترونية والفواتير والقيود المحاسبية التلقائية، مع مساحة منفصلة لصاحب العيادة والطبيب والاستقبال والتمريض والمحاسب.
هل يحتاج زهو إلى تثبيت؟
لا. يعمل من المتصفح على الحاسوب أو اللوحي أو الهاتف، فيعمل كل عضو في الفريق من جهازه. ويحتاج إلى اتصال بالإنترنت.
هل يحجز المريض دون حساب؟
نعم. يفتح المريض رابط حجز العيادة، ويختار الخدمة ووقتاً متاحاً، ويكتب اسمه ورقم هاتفه. ينتظر الطلب تأكيد الاستقبال، ورابط «مواعيدي» الخاص يتيح له متابعته أو إلغاءه أو طلب تغييره.
هل يرسل زهو تذكيرات آلية؟
ليس حالياً. يرسل الاستقبال أو الطبيب الموعد أو المتابعة أو رابط «مواعيدي» على واتساب بضغطة؛ يجهّز زهو الرسالة ويرسلها المستخدم بنفسه.
أين أجرّبه؟
على zahw.app، بتجربة مجانية سبعة أيام. وصفحة المنتج باللقطات والأدوار هنا.