معالجة الدفعات باستخدام Firebase

باستخدام بعض ميزات Firebase وStripe المختلفة، يمكنك معالجة الدفعات في لتطبيق الويب بدون إنشاء بنية أساسية للخادم. يستعرض هذا الدليل من خلال تخصيص ونشر نسختك الخاصة من البرامج مفتوحة المصدر cloud-functions-stripe- sample.web.app.

قبل أن تبدأ، قم بإنشاء مشروع في وحدة تحكم Firebase وإعداد Stripe.

نظرة عامة على التنفيذ

  1. أعِدّ حسابًا على Stripe.
  2. أنشئ مشروعًا في وحدة تحكُّم Firebase.
  3. فعِّل الفوترة لمشروعك وضبط Firebase CLI لاستخدام مشروعك مع firebase use --add.
  4. احصل على الرمز المصدر لنموذج تطبيق Firestripe. اضبطه باستخدام المعلومات الصحيحة لمشروعك وخصِّص الرمز ليناسب تطبيقك.
  5. بعد نشر تطبيقك، ابحث عن قائمة بالمستخدمين والمعاملات في وحدة تحكّم Firebase.

إعداد نموذج التطبيق ونشره

  1. الحصول على رمز المصدر.
  2. تفعيل Google & تسجيل الدخول إلى البريد الإلكتروني في إعدادات موفِّر المصادقة
  3. تفعيل Cloud Firestore
  4. تثبيت واجهة سطر الأوامر Firebase إذا لم يسبق لك إجراء ذلك، وسجل الدخول باستخدام firebase login.
  5. يجب إعداد هذا النموذج لاستخدام مشروعك مع firebase use --add.
  6. تثبيت التبعيات على الجهاز من خلال تشغيل cd functions; npm install; cd -
  7. أضِف المفتاح السري لواجهة برمجة تطبيقات Stripe. إلى إعداد بيئة Cloud Functions:

    firebase functions:config:set stripe.secret=<YOUR STRIPE SECRET KEY>

  8. اضبط مفتاح Stripe القابل للنشر. في /public/javascript/app.js:

    const STRIPE_PUBLISHABLE_KEY=<YOUR STRIPE PUBLISHABLE KEY>;

  9. يمكنك نشر مشروعك باستخدام "firebase deploy". الأمر التالي:

    1. يتم إرسال جميع الملفات في دليل public إلى Hosting لكي يكون موقعك الإلكتروني متاحًا.
    2. تُرسِل الرمز في دليل functions إلى Cloud Functions for Firebase.
    3. تضبط هذه السياسة قواعد الأمان على قاعدة بيانات "Cloud Firestore" على النحو الذي تم ضبطه في. firestore.rules تسمح القواعد المقدمة للمستخدم فقط بقراءة كتابة الدفعات وطرق الدفع الخاصة بهم.

اختبار التطبيق النموذجي

انتقل إلى عنوان URL لتطبيق الدفعات على your-firebase-project-id.web.app وتأكَّد من أنّ الميزات التالية تعمل بشكلٍ سليم:

  • يمكنك تسجيل الدخول عبر Google أو البريد الإلكتروني.
  • يمكنك إضافة بطاقة اختبار Stripe جديدة وعرضها في عنصر اختيار البطاقة.
  • يمكنك اختيار إحدى البطاقات وتحصيل الرسوم منها.
  • يمكنك تسجيل الخروج.

للمقارنة، راجع cloud-functions-stripe-sample.web.app.

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

عرض الدفعات التي تمت معالجتها

بعد إعداد صفحة الدفعات ونشرها، يمكنك التحقّق من Firebase وحدة التحكم والاطّلاع على قائمة بالمستخدمين إلى جانب طرق الدفع والدفعات.

  1. انتقِل إلى Cloud Firestore.
  2. تحقق من قائمة بالمستخدمين، وما إذا كانوا قد أضافوا أي بطاقات ائتمان أو وأي معاملات، وقائمة بهذه المعاملات ضمن كل مستخدم.

قبول الدفعات المباشرة

بعد الانتهاء من بدء البث المباشر، عليك استبدال مفاتيح الاختبار بـ المفاتيح المباشرة. راجِع مستندات Stripe لمزيد من المعلومات. حول هذه المفاتيح.

  1. عدِّل إعدادات Stripe السرّية:

    firebase functions:config:set stripe.secret=<YOUR STRIPE LIVE SECRET KEY>

  2. ضبط مفتاحك المباشر القابل للنشر في /public/javascript/app.js

  3. يُرجى إعادة نشر كل من Cloud Functions وHosting حتى تصبح التغييرات سارية: firebase deploy