تخطَّ إلى المحتوىSkip to content

مقال

كيف ربطنا الدفع الإلكتروني والحجز الفوري لعيادة في الرياض

سجل بناء: كيف ربطنا الدفع بمدى وApple Pay والحجز بنظام عيادات أڤانت في الرياض، مع التحقق من الدفع والحماية من التكرار ومراجعة الاستقبال.

الصفحة الرئيسية لعيادات أڤانت بالعربي على الكمبيوتر، مع أزرار الحجز والعروض.
سجل البناءذكاء الرعاية الصحيةالسعوديةالأتمتة
افتح المحفوظات (بتبويب جديد)

النشر

١٥ ربيع الآخر ١٤٤٨ هـ · ٢٦ سبتمبر ٢٠٢٦

آخر تحديث

٢ أكتوبر ٢٠٢٦

مدة القراءة

6 دقائق قراءة

الكاتب

عزيز الخنيزان

في هذا المقالالعناوين · 8

الملخص التنفيذي

عيادات أڤانت تستقبل الدفع عبر Moyasar (مدى وApple Pay)، ويرتبط حجز صفحات الأطباء بنظام Nixpend. التطبيق يتحقق من مصدر إشعار الدفع، وما يعيد تلقائيًا طلب حجز نتيجته غير مؤكدة، ويجمع طلبات الموقع في طابور استقبال واحد. التطبيق الأساسي مستضاف على Google Cloud في الدمام، مع ضوابط للنشر والوصول؛ وخدمات الأطراف الأخرى تحتاج مراجعة مستقلة لمسار البيانات.

هذا أول «سجل بناء» شهري. كل شهر باخذ نظام حقيقي بنيته أو أشغّله، وأشرح القرارات اللي وراه بكلام بسيط. بدون أرقام العملاء، وبدون صور من الأدوات الخاصة. بس وش بنينا، وليش، ووش المفروض يطلبه صاحب المشروع.

هالشهر: كيف صارت عيادات أڤانت، عيادة الجلدية والتجميل والليزر في حي الربيع بالرياض، تستقبل الدفع الإلكتروني والحجز الفوري من موقعها نفسه.

المشكلة

أغلب مواقع العيادات تسوي شغلتين بشكل ضعيف. تعرض عروض ما يقدر الزائر يدفعها، وفيها زر «احجز الحين» اللي معناه الحقيقي «أرسل لنا رسالة وانتظر».

أڤانت كانت تبي شيئين:

  • الزائر يقدر يشتري باقة أو عرض أونلاين بمدى أو Apple Pay، ويقدر يهديه لشخص ثاني.
  • الزائر يختار وقت حقيقي مع طبيب حقيقي، والموعد ينحفظ في نظام العيادة نفسه، مو في صندوق رسائل.

الاثنين يبانون بسيطين. بس فيهم نفس الفخ: أول ما تدخل الفلوس أو جدول الطبيب، «يشتغل غالبًا» ما يكفي. طلب ينحسب مدفوع وهو ما اندفع، أو مراجعين اثنين في نفس الموعد، يكلفون ثقة أكثر من اللي تجيبه الميزة.

الدفع الحقيقي شغال من أغسطس ٢٠٢٦ عبر Moyasar. والحجز الفوري في صفحات الأطباء ويكتب مباشرة في Nixpend، نظام إدارة العيادة اللي يستخدمه الفريق كل يوم.

ثلاث قرارات سوّت أغلب الشغل.

القرار الأول: تحقق من مصدر إشعار الدفع قبل اعتماد «مدفوع»

لما الزائر يدفع، فيه شيئين يقدرون يقولون للموقع إن الدفع تم. متصفح الزائر وهو راجع من صفحة الدفع، ورسالة ترسلها بوابة الدفع مباشرة لسيرفرنا، اسمها webhook.

المتصفح ما يعتمد عليه. الناس تسكّر الصفحة، أو تنقطع الشبكة، أو يضغطون رجوع. وأي شي يقوله المتصفح ممكن يتزوّر.

فالقاعدة واضحة: ما يأكد الطلب إلا الـ webhook. رجوع المتصفح يعرض بس صفحة «جالسين نتأكد من دفعتك».

وحتى الـ webhook نتعامل معه بحذر:

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

أول ما ينحسب الطلب مدفوع، يطلع له قسيمة. وطلبات الإهداء تطلع لها قسيمة مفتوحة مع رابط استلام. اللي وصلته الهدية يفتح الرابط ويربطها باسمه ورقم جواله بخطوة وحدة، فما يقدر شخصين يستلمون نفس الهدية. وإذا صار أي خلل، الاستقبال يلقى القسيمة ويعيد إصدارها من صفحة الموظفين. وكل طلب مدفوع يفتح طلب فاتورة، والفريق يقفله بعد ما تنصدر الفاتورة في نظام العيادة.

الحجز نفسه ما فيه عربون. الدفع للباقات والعروض بس، وهذا يخلي مسار الحجز قصير.

القرار الثاني: لا تعيد طلب حجز نتيجته غير مؤكدة تلقائيًا

الحجز الفوري موجود في صفحة كل طبيب. الزائر يشوف المواعيد المتاحة لـ ١٤ يوم الجاية بتوقيت الرياض، جايه من نظام العيادة. يختار موعد، ويكتب اسمه وجواله وجنسه، ويعطي موافقته.

اللي يصير بعدها هو المكان اللي يحتاج عناية:

  1. السيرفر يتحقق من الموعد مرة ثانية لحظة الحجز. موعد كان فاضي قبل دقيقة ممكن ما يكون فاضي الحين.
  2. المراجع يتطابق مع ملفه في Nixpend، أو يتسجل إذا كان جديد.
  3. يتسجل موعد واحد بالضبط في Nixpend.
  4. تنكتب نسخة للاستقبال، والفريق يوصله تنبيه بدون أي بيانات شخصية.

الصعوبة كلها في الخطوة الثالثة لما يكون نظام العيادة بطيء.

إذا طلب تسجيل الموعد أخذ وقت زيادة وانقطع، ما نعرف هل نجح أو لا. أنظمة كثيرة بتعيد المحاولة وخلاص. بس الربط المستخدم في هالبناء ما كان يوفر طريقة تقول «هذا نفس الطلب اللي قبل» (المبرمجين يسمونها idempotency key). يعني إعادة المحاولة ممكن تسجل موعد ثاني لنفس المراجع.

فالطلب اللي ينقطع بسبب الوقت ما يتعاد أبدًا. الزائر يشوف رسالة واضحة إن العيادة بتتصل عليه، والاستقبال يوصله تنبيه يأكد الحجز بالتلفون.

هذي مقايضة مقصودة. الزوار اللي صارت نتيجة طلبهم غير مؤكدة يروحون لمراجعة الاستقبال بدل التأكيد الفوري. كذا نتجنب إنشاء موعد ثاني بإعادة عمياء للطلب. هذا ما يثبت إن كل أنواع التكرار أو تعارض المواعيد مستحيلة؛ الاستقبال يظل مسؤولًا عن مطابقة السجل في نظام العيادة.

القرار الثالث: طابور استقبال واحد، مهما كانت طريقة الحجز

مو كل زائر يبي يختار موعد بنفسه. فيه اللي يفضّل يعبّي نموذج، وفيه اللي يبي يسأل أول.

عشان كذا فيه ثلاث طرق للحجز:

  • الحجز الفوري في صفحات الأطباء، مثل ما شرحت فوق.
  • نموذج حجز فيه الاسم والجوال والخدمة والتاريخ والوقت المفضل والموافقة. والفريق يأكد خلال ٢٤ ساعة.
  • مساعد محادثة ذكي في الموقع (Chatbase). إذا الزائر يبي يحجز، يطلب موافقته الصريحة داخل المحادثة قبل ما يرسل أي شي.

الثلاث كلها توصل لنفس المكان: لوحة استقبال وحدة في نظام المحتوى، وكل طلب يظهر فيها مع مصدره. الاستقبال ما يفتح ثلاث صناديق. يشتغل على طابور واحد، والصلاحيات حسب الدور.

واللي يفضّل واتساب، فريق التنسيق قريب منه بضغطة كخيار بديل.

الاستضافة والامتثال

التطبيق الأساسي الموصوف في هالبناء شغال على Google Cloud في منطقة الدمام: الموقع وواجهاته البرمجية، ونظام المحتوى، وقاعدة البيانات، والعامل الخلفي اللي يرسل التنبيهات. وملفات الفواتير الخاصة في مخزن خاص منفصل عن الصور العامة.

هالوصف يخص المكونات اللي نستضيفها. ما يثبت مكان كل معالج بيانات خارجي. Moyasar وNixpend وChatbase وخدمات التنبيه تحتاج مراجعة مستقلة لمسار البيانات والاحتفاظ والمعالجين الفرعيين والمتطلبات المنطبقة. استضافة التطبيق الأساسي داخل السعودية ما تثبت وحدها الامتثال لنظام حماية البيانات أو متطلبات القطاع الصحي.

وفي التطبيق ضوابط في قاعدة البيانات والكود تدعم مسار نشر العيادة:

  • صفحات الخدمات ما تنشر بدون موافقة وزارة الصحة على الإعلان.
  • الأجهزة مربوطة باعتمادها من هيئة الغذاء والدواء.
  • ألقاب الأطباء من قائمة مغلقة تطابق الترخيص، وبقواعد عربية صحيحة.
  • كل نموذج يطلب موافقة صريحة.
  • التحليلات والتنبيهات والروابط ما فيها أي بيانات شخصية.

هالضوابط تساعد الفريق يطبق قواعد النشر باتساق. العيادة تظل مسؤولة عن صحة سجلات الموافقات والتراخيص، وصلاحيات المورّدين، والمراجعة المهنية والنظامية المناسبة. الحقل أو قيد قاعدة البيانات مو شهادة امتثال مستقلة.

ولترتيب أسئلة مكان البيانات، اقرأ دليل استضافة البيانات للمؤسسين.

وش تسأل المبرمج قبل ما تطلق الدفع أو الحجز؟

ما تحتاج تقرأ كود عشان تحمي عيادتك. اسأل هالأسئلة قبل الإطلاق:

  1. وش اللي يحسب الطلب مدفوع؟ إذا الجواب «لما العميل يرجع للموقع»، اعترض. اسأل كيف السيرفر يتحقق من مصدر الإشعار والمبلغ والعملة ويتعامل مع التكرار. هالبناء يتحقق من سر مشترك مضبوط مسبقًا؛ بوابات أخرى قد تستخدم آليات مختلفة.
  2. وش يصير إذا بوابة الدفع أرسلت نفس الإشعار مرتين؟
  3. وش يصير إذا المبلغ المدفوع ما يطابق الطلب؟
  4. لما أحد يحجز أونلاين، هل الموعد يتحقق منه مرة ثانية لحظة التأكيد؟
  5. إذا نظام العيادة بطيء أو واقف، وش يشوف المراجع؟ وهل ممكن ينحجز مرتين؟
  6. هل طرق الحجز في الموقع توصل لطابور واحد، وكيف يضيف الفريق طلبات واتساب أو يطابقها؟
  7. وين تمر بيانات المرضى ووين تبقى، بما فيها المعالجون الخارجيون والسجلات والملفات والنسخ الاحتياطية؟ وش المتطلبات اللي تنطبق على كل مسار؟
  8. أي قواعد صحية يفرضها النظام، وأيها تعتمد على إن أحد يتذكر؟
  9. هل التحليلات أو التنبيهات فيها أسماء مرضى أو أرقام جوالات؟

المبرمج الزين يجاوب كل سؤال بجملة. والجواب الغامض إشارة إنك تهدّي شوي.

الشهر الجاي

سجل البناء الجاي بيتكلم عن نظام حي ثاني. وإذا عندك عيادة وتبي نفس الشي، الصورة الكاملة في دراسة الحالة، وصفحة أنظمة العيادات توضح كيف نشتغل على عيادتك.

قراءات مرتبطة

أسئلة شائعة

كيف أتأكد إن الدفع الإلكتروني في موقع العيادة فعلًا تم؟

في بناء عيادات أڤانت، ما يأكد الطلب إلا الـ webhook اللي ترسله بوابة الدفع مباشرة للسيرفر، مو رجوع المتصفح من صفحة الدفع. الـ webhook لازم يجي معه السر الصحيح، وإذا وصل نفس الإشعار مرتين النظام يعرفه ويتجاهله، والتأكيد كله يصير في عملية وحدة في قاعدة البيانات. وإذا المبلغ أو العملة ما تطابق الطلب، الطلب ما يتأكد أبدًا وينتظر إنسان يراجعه.

هل أقدر أستقبل الدفع بمدى وApple Pay في موقع العيادة؟

عيادات أڤانت في الرياض تسويها: الدفع الحقيقي شغال من أغسطس ٢٠٢٦ عبر Moyasar، والزائر يشتري باقة أو عرض بمدى أو Apple Pay. الدفع للباقات والعروض بس، والزائر يقدر يهديها لشخص ثاني برابط استلام، واللي وصلته الهدية يربطها باسمه ورقم جواله بخطوة وحدة. أما الحجز نفسه فما فيه عربون، وهذا يخلي مسار الحجز قصير.

وش يصير إذا نظام العيادة تأخر وانقطع الطلب وقت الحجز الأونلاين؟

في هالبناء، الطلب اللي ينقطع بسبب الوقت ما يتعاد أبدًا، لأن الربط ما كان يوفر idempotency key، وإعادة المحاولة ممكن تسجل موعد ثاني لنفس المراجع. الزائر يشوف رسالة واضحة إن العيادة بتتصل عليه، والاستقبال يوصله تنبيه يأكد الحجز بالتلفون. وهذا ما يثبت إن كل أنواع التكرار مستحيلة؛ الاستقبال يظل مسؤولًا عن مطابقة السجل في نظام العيادة.

هل استضافة نظام العيادة داخل السعودية تكفي للامتثال لنظام حماية البيانات؟

ما تكفي وحدها. استضافة التطبيق الأساسي داخل السعودية ما تثبت وحدها الامتثال لنظام حماية البيانات أو متطلبات القطاع الصحي. في هالبناء التطبيق الأساسي شغال على Google Cloud في منطقة الدمام، بس Moyasar وNixpend وChatbase وخدمات التنبيه تحتاج مراجعة مستقلة لمسار البيانات والاحتفاظ والمعالجين الفرعيين والمتطلبات المنطبقة. والحقل أو قيد قاعدة البيانات مو شهادة امتثال مستقلة.