باستخدام بعض ميزات Firebase وStripe المختلفة، يمكنك معالجة الدفعات في تطبيق الويب بدون إنشاء البنية الأساسية للخادم. يرشدك هذا الدليل إلى كيفية تخصيص إصدارك من تطبيق المثال المفتوحة المصدر cloud-functions-stripe-sample.web.app ونشره.
قبل البدء، أنشئ مشروعًا في وحدة تحكّم Firebase وأعدّ حسابًا على Stripe.
نظرة عامة على التنفيذ
- إعداد حساب على Stripe
- أنشئ مشروعًا في وحدة تحكُّم Firebase.
- ترقية مشروعك إلى خطة أسعار Blaze المستندة إلى الدفع حسب الاستخدام
- اضبط واجهة سطر أوامر Firebase لاستخدام مشروعك مع
firebase use --add
. - احصل على الرمز المصدر لنموذج تطبيق Firestripe. اضبطه باستخدام المعلومات الصحيحة لمشروعك وخصِّص الرمز ليناسب تطبيقك.
- بعد نشر تطبيقك، ابحث عن قائمة بالمستخدمين والمعاملات في وحدة تحكّم Firebase.
إعداد نموذج التطبيق ونشره
- احصل على رمز المصدر.
- فعِّل تسجيل الدخول باستخدام حساب Google وعنوان البريد الإلكتروني في إعدادات موفِّر المصادقة.
- فعِّل Cloud Firestore.
- ثبِّت Firebase CLI
إذا لم يسبق لك ذلك، وسجِّل الدخول باستخدام
firebase login
. - يمكنك ضبط هذا النموذج لاستخدام مشروعك مع
firebase use --add
. - تثبيت التبعيات على الجهاز من خلال تشغيل
cd functions; npm install; cd -
أضِف مفتاح Stripe API السري إلى إعدادات بيئة Cloud Functions:
firebase functions:config:set stripe.secret=<YOUR STRIPE SECRET KEY>
اضبط مفتاح Stripe القابل للنشر في
/public/javascript/app.js
:const STRIPE_PUBLISHABLE_KEY=<YOUR STRIPE PUBLISHABLE KEY>;
يمكنك نشر مشروعك باستخدام
firebase deploy
. يؤدي هذا الأمر إلى ما يلي:- إرسال جميع الملفات في الدليل
public
إلى Hosting حتى يصبح موقعك الإلكتروني متاحًا - تُرسِل الرمز في دليل
functions
إلى Cloud Functions for Firebase. - تُستخدَم لضبط قواعد الأمان في قاعدة بيانات Cloud Firestore كما تم ضبطها في
firestore.rules
. لا تسمح القواعد المقدَّمة للمستخدم إلا بقراءة مدفوعاته وطُرق دفعه وتسجيلها.
- إرسال جميع الملفات في الدليل
اختبار التطبيق النموذجي
يُرجى الانتقال إلى عنوان URL لتطبيق الدفعات على الرابط
your-firebase-project-id.web.app
والتأكّد من أنّ الميزات التالية تعمل:
- يمكنك تسجيل الدخول من خلال Google أو البريد الإلكتروني.
- يمكنك إضافة بطاقة اختبار Stripe جديدة وعرضها في عنصر اختيار البطاقة.
- يمكنك اختيار إحدى بطاقاتك وشحنها.
- يمكنك تسجيل الخروج.
للمقارنة، اطّلِع على cloud-functions-stripe-sample.web.app.
لتوفير تجربة سلسة للمستخدمين، يمكنك تخصيص مظهر صفحة الدفع بشكل أكبر أو دمجها في تطبيقك الحالي.
الاطّلاع على الدفعات التي تمت معالجتها
بعد إعداد صفحة الدفعات ونشرها، يمكنك الانتقال إلى وحدة تحكّم Firebase والاطّلاع على قائمة بالمستخدمين وطرق الدفع والدفعات التي أجروها.
- انتقِل إلى Cloud Firestore.
- ابحث عن قائمة بالمستخدمين، وإذا أضافوا أي بطاقات ائتمان أو أجروا أي معاملات، ابحث عن قائمة بهذه البطاقات والمعاملات ضمن كل مستخدم.
قبول الدفعات المباشرة
عندما تكون مستعدًا لنشر التطبيق، عليك استبدال مفاتيح الاختبار بمفاتيح النشر. اطّلِع على مستندات Stripe لمعرفة المزيد عن هذه المفاتيح.
عدِّل إعدادات المفتاح السري في Stripe:
firebase functions:config:set stripe.secret=<YOUR STRIPE LIVE SECRET KEY>
أعِد نشر كلّ من Cloud Functions وHosting لتصبح التغييرات سارية:
firebase deploy
.