ما هي بوابة الدفع (Payment Gateway)؟ كيف تعمل المدفوعات الإلكترونية
بوابة الدفع هي الخدمة التي تأخذ بيانات دفع العميل بأمان عند الشراء، وتمررها إلى البنوك وشبكات البطاقات للموافقة، ثم ترسل إليك رداً بـ«تمت الموافقة» أو «مرفوض»، عادةً خلال بضع ثوانٍ. وهي الجسر بين تطبيقك والنظام المالي. Stripe وPayPal وAdyen وSquare وBraintree أمثلة معروفة.
واليوم تجمع معظم هذه الشركات البوابة مع كل ما تحتاجه لتحصيل أموالك، لذلك تُستخدم عبارات "بوابة الدفع" و"معالج الدفع" و"مزود الدفع" غالباً بالمعنى نفسه.
لماذا تهم بوابات الدفع عند البناء بالذكاء الاصطناعي
"أضف الدفع" من أكثر الطلبات شيوعاً عند الناس الذين يبنون بأدوات الذكاء الاصطناعي، ومن أسهلها أن تسير خطأً بطريقة خفية. الكود نفسه غالباً قصير. أما الأجزاء المهمة فهي القرارات المحيطة به:
- أي مزود يناسب نشاطك وبلدك وما تبيعه.
- أين يعمل الكود. مفاتيح الدفع السرية يجب أن تبقى على الخادم، ولا تصل أبداً إلى المتصفح.
- كيف يعرف تطبيقك أن الدفع نجح. الطريقة الموثوقة هي webhook يرسله المزود، لا أن يصل العميل إلى صفحة "شكراً لك".
- مسؤولياتك القانونية والضريبية، وهي تعتمد على من هو تاجر السجل.
فهم ما تفعله البوابة يساعدك على إعطاء تعليمات واضحة، والتحقق من أن النتيجة آمنة.
تشبيه من الحياة اليومية
فكّر في الدفع بالبطاقة في متجر.
جهاز نقاط البيع على الكاونتر هو البوابة: يقرأ بطاقتك بأمان ويرسل الطلب. لا يقرر شيئاً، بل يمرر السؤال "هل يستطيع هذا الشخص دفع 40 يورو؟" عبر سلسلة إلى بنكك ويعيد الجواب. أما بنك المتجر (Acquirer) وبنكك (Issuer) فهما اللذان يقرران، عبر شبكة البطاقات (Visa وMastercard) التي تربط بينهما.
بوابة الدفع الإلكترونية هي ذلك الجهاز، لكن مُعاد بناؤه للويب، مع الأمان اللازم للتعامل مع بيانات البطاقات القادمة عبر الإنترنت.
كيف يعمل الدفع الإلكتروني بالبطاقة
إليك ما يحدث في الثواني القليلة بعد أن يضغط العميل "ادفع":
| الخطوة | ما يحدث | من يقوم به |
|---|---|---|
| 1. الدفع | يُدخل العميل بيانات البطاقة في نموذج دفع آمن | نموذج المزود أو صفحته |
| 2. التشفير | تُشفَّر البيانات وتُرسل إلى البوابة | البوابة |
| 3. طلب التفويض (Authorisation) | يسافر الطلب إلى شبكة البطاقات وبنك العميل | المعالج، وشبكة البطاقات |
| 4. الفحوصات | يتحقق البنك المُصدِر من الرصيد وإشارات الاحتيال، وقد يطلب تحققاً إضافياً مثل 3D Secure | البنك المُصدِر |
| 5. الرد | يعود الرد بالموافقة أو الرفض إلى تطبيقك | البوابة |
| 6. التحصيل والتسوية (Settlement) | تُحصَّل الأموال، ثم بعد جدول الدفعات لدى المزود تُحوَّل إلى حسابك البنكي بعد خصم الرسوم | المعالج، والبنك المتجر |
هناك نقطتان تستحقان المعرفة:
- التفويض لا يعني أنك دُفعت. تُحجز الأموال أولاً، ثم تُحصَّل، ثم تُسوّى إلى حسابك، وغالباً بعد أيام.
- تطبيقك لا ينبغي أن يرى رقم البطاقة أبداً. المزودون الحديثون يقدمون صفحة دفع مستضافة أو حقولاً مدمجة يتحكمون فيها، ولا يحصل تطبيقك إلا على مرجع للدفعة.
المكونات الرئيسية، ومن يتولى كل منها
| المكون | ما هو |
|---|---|
| بوابة الدفع | تلتقط بيانات الدفع بأمان وتمررها. |
| معالج الدفع | ينقل بيانات المعاملة بين البنوك. |
| حساب التاجر (Merchant account) | الحساب الذي يستقبل مدفوعات البطاقات نيابةً عنك. يُدمجه مزودون مثل Stripe. |
| البنك المتجر (Acquirer) | البنك في جانب التاجر. |
| البنك المُصدِر (Issuer) | بنك العميل، الذي يوافق على المعاملة أو يرفضها. |
| شبكة البطاقات | Visa وMastercard وغيرهما، وتربط بين البنوك المتجرة والمُصدِرة. |
| تاجر السجل (Merchant of record) | النشاط الذي يبيع للعميل قانونياً، ويتحمل الضرائب والمرتجعات والنزاعات. |
بعض المزودين (Paddle وLemon Squeezy) يعملون كـتاجر سجل بأنفسهم، فيتولون ضريبة المبيعات وضريبة القيمة المضافة عنك مقابل رسوم أعلى. وآخرون (Stripe وPayPal) يتركون لك صفة تاجر السجل، مع أدوات ضريبية اختيارية. لمقارنة منصفة بين الخيارات، انظر Stripe مقابل Paddle مقابل Lemon Squeezy وStripe مقابل PayPal.
مثال عملي: بيع دورة تدريبية
تبيع دورة تدريبية عبر الإنترنت بسعر 99 يورو، وتطلب من أداة البناء بالذكاء الاصطناعي إضافة زر "شراء".
- ينقر العميل على شراء. يستخدم خادمك مفتاحه السري لطلب إنشاء جلسة دفع (Checkout session) بقيمة 99 يورو من المزود، فيحصل على رابط.
- يُوجَّه العميل إلى صفحة الدفع المستضافة لدى المزود، يُدخل بطاقته، ويكمل أي تحقق 3D Secure مع بنكه.
- تتم الموافقة على الدفع، ويُعاد توجيه العميل إلى صفحة "النجاح" الخاصة بك.
- بشكل منفصل، يرسل المزود webhook إلى خادمك: "تم نجاح الدفع للجلسة X". يتحقق خادمك من توقيع الـ webhook، ويجد الطلب، ويعلّمه مدفوعاً، ويفتح الدورة.
- بعد أيام، تصل الأموال بعد خصم الرسوم إلى حسابك البنكي.
الخطوة 4 هي الأهم. لو فتحت الدورة في صفحة النجاح بدلاً من ذلك، لاستطاع أي شخص وجد ذلك الرابط الحصول عليها مجاناً، والعملاء الذين أُغلق متصفحهم مبكراً سيدفعون ولا يحصلون على شيء.
مصطلحات أساسية
| المصطلح | معناه |
|---|---|
| Checkout session (جلسة الدفع) | صفحة أو تدفق دفع لمرة واحدة، يُنشئها خادمك لعملية شراء محددة. |
| Test mode (وضع الاختبار) | بيئة تجريبية تستخدم فيها مفاتيح الاختبار وأرقام بطاقات تجريبية، ولا تتحرك أموال حقيقية. |
| Publishable / secret key (المفتاح القابل للنشر / السري) | المفتاح القابل للنشر يمكن أن يظهر في كود المتصفح، أما السري فيجب أن يبقى على الخادم. |
| 3D Secure | خطوة إضافية يؤكد فيها العميل الدفع مع بنكه، وهي شائعة في أوروبا بموجب قواعد المصادقة القوية للعملاء (SCA). |
| PCI DSS | معيار الأمان لصناعة البطاقات، لكل من يتعامل مع بيانات البطاقات. |
| Chargeback (الاسترداد الإجباري) | حين يعترض العميل على دفعة لدى بنكه فتُسحب الأموال منك. |
| Refund (المرتجع) | أموال تعيدها أنت طوعاً. |
| Payout (الدفعة الصادرة) | تحويل المزود لأموالك المحصّلة إلى حسابك البنكي. |
تصورات خاطئة شائعة
- "يجب أن أخزّن أرقام البطاقات لأحاسب العملاء مرة أخرى." لا. المزودون يخزنون البطاقة ويعطونك مرجعاً (token) للخصومات المتكررة والاشتراكات. لا ينبغي أبداً أن تخزّن أرقام البطاقات بنفسك.
- "صفحة النجاح تعني أن الدفع تم." أكّد المدفوعات عبر webhooks على الخادم. إعادة التوجيه قد تُتجاوز أو تُزوَّر أو لا تحدث أبداً.
- "كل مزودي الدفع متقاربون في التكلفة." الرسوم تختلف حسب المزود والبلد ونوع البطاقة وهل يشمل ذلك إدارة الضرائب. راجع صفحة الأسعار الحالية لكل مزود في بلدك.
- "استخدام Stripe يجعلني متوافقاً مع PCI." هذا يبسّط الامتثال كثيراً، لأن بيانات البطاقات تبقى لدى المزود، لكنك ما زلت بحاجة إلى تقييم ذاتي (عادةً قصير) لإكماله.
- "وضع الاختبار والوضع الحقيقي يتصرفان بالتماثل تماماً." هما متقاربان، لكن الوضع الحقيقي يحتاج إلى حساب موثق بالكامل، وإعداد webhooks حقيقية لبيئة الإنتاج، وبيانات بنكية حقيقية.
- "بوابة الدفع تتولى ضرائبي." هذا صحيح فقط إذا كانت هي تاجر السجل، أو إذا فعّلتَ ميزاتها الضريبية وضبطتها. تحقق من القواعد المحلية، أو استشر مختصاً.
ماذا تطلب من أداة البناء بالذكاء الاصطناعي
- «أضف [Stripe] Checkout لـ[المنتج]. أنشئ الجلسة على الخادم باستخدام المفتاح السري من متغير بيئة.»
- «علّم الطلبات كمدفوعة فقط من webhook موثّق، وتحقق من توقيع الـ webhook.»
- «تعامل مع إرسال الـ webhook مرتين دون إنشاء طلبات مكررة.»
- «استخدم مفاتيح وضع الاختبار، واشرح لي كيف أختبر بأرقام بطاقات المزود التجريبية، بما في ذلك بطاقة مرفوضة.»
- «ماذا يحدث إذا أغلق العميل التبويب بعد الدفع؟»
- «اعرض لي كل مكان يُستخدم فيه مفتاح دفع، وأكّد أن المفتاح السري لا يصل أبداً إلى المتصفح.»
بوابات الدفع في Mythex
لا تتضمن Mythex مدفوعات مدمجة للتطبيقات التي تبنيها، ولا يوجد زر "اربط Stripe" بنقرة واحدة. تنشئ حساباً لدى المزود الذي تختاره، وتضيف مفاتيح الاختبار الخاصة به كأسرار للمشروع، وتطلب من الوكيل بناء الدفع على جانب الخادم. اختبر في المعاينة باستخدام بطاقات الاختبار الخاصة بالمزود، ثم انشر. توضح الوثائق ذلك في قبول المدفوعات عبر Stripe، ويشرح Webhooks خطوة التأكيد.
ولبناء خطوة بخطوة، انظر كيف تضيف المدفوعات إلى تطبيقك، وللفوترة المتكررة كيف تضيف الاشتراكات باستخدام Stripe.
الأسئلة
ما هي بوابة الدفع ببساطة؟
بوابة الدفع هي الخدمة التي تأخذ بيانات دفع العميل بأمان من صفحة الدفع الخاصة بك، وترسلها إلى البنوك وشبكات البطاقات للموافقة، ثم تعيد إلى تطبيقك رداً بالموافقة أو الرفض، عادةً خلال بضع ثوانٍ.
ما الفرق بين بوابة الدفع ومعالج الدفع (Payment processor)؟
من الناحية الدقيقة، البوابة هي الباب الآمن الذي يلتقط بيانات الدفع ويمررها، والمعالج ينقل المعاملة بين البنوك. عملياً، المزودون الحديثون مثل Stripe وPayPal وAdyen يجمعون الاثنين، إضافة إلى حساب التاجر، في خدمة واحدة، لذلك تُستخدم المصطلحات غالباً بالمعنى نفسه.
هل أحتاج إلى الامتثال لمعيار PCI لقبول الدفع بالبطاقات؟
أي نشاط يقبل البطاقات عليه أن يستوفي معيار الأمان PCI DSS بشكل ما. واستخدام صفحة دفع مستضافة لدى المزود، أو حقول الدفع المدمجة التي يقدمها، يعني ألا تمر أرقام البطاقات على خوادمك أبداً، وهذا يقلل مسؤوليتك بشكل كبير. ومزودك سيخبرك أي تقييم ذاتي ينطبق عليك.
ما هو تاجر السجل (Merchant of record)؟
تاجر السجل هو النشاط الذي يبيع للعميل قانونياً، ويتحمل مسؤوليات مثل تحصيل ضريبة المبيعات أو ضريبة القيمة المضافة ودفعها، ومعالجة المرتجعات والنزاعات (chargebacks). وخدمات مثل Paddle وLemon Squeezy تعمل كتاجر سجل نيابةً عنك، أما مع Stripe أو PayPal فأنت غالباً التاجر.
هل أستطيع إضافة المدفوعات إلى تطبيق بُني بالذكاء الاصطناعي؟
نعم. تستطيع أداة البناء بالذكاء الاصطناعي كتابة الكود الذي يربط تطبيقك بمزود مثل Stripe: إنشاء جلسات الدفع على الخادم، ومعالجة webhooks، وتحديث الطلبات. ما زال عليك امتلاك حساب خاص بك لدى المزود، ويجب أن تختبر كل شيء في وضع الاختبار (test mode) لدى المزود قبل الإطلاق.