پرداخت ها را با Firebase پردازش کنید

با استفاده از چند ویژگی مختلف Firebase و Stripe، می‌توانید پرداخت‌ها را در برنامه وب خود بدون ایجاد زیرساخت سرور شخصی پردازش کنید. این راهنما شما را در سفارشی‌سازی و استقرار نسخه شخصی خود از برنامه نمونه متن‌باز cloud-functions-stripe-sample.web.app راهنمایی می‌کند.

قبل از شروع، یک پروژه در کنسول Firebase ایجاد کنید و یک حساب کاربری Stripe تنظیم کنید.

مرور کلی پیاده‌سازی

  1. یک حساب کاربری Stripe راه‌اندازی کنید.
  2. یک پروژه در کنسول Firebase ایجاد کنید.
  3. پروژه خود را به طرح قیمت‌گذاری Blaze که در آن پرداخت در حین استفاده انجام می‌شود، ارتقا دهید.
  4. رابط خط فرمان Firebase را طوری پیکربندی کنید که از پروژه شما با firebase use --add استفاده کند.
  5. کد منبع برنامه نمونه Firestripe را دریافت کنید. آن را با اطلاعات مناسب برای پروژه خود پیکربندی کنید و کد را متناسب با برنامه خود سفارشی کنید.
  6. پس از استقرار برنامه، در کنسول Firebase به دنبال لیستی از کاربران و تراکنش‌ها بگردید.

راه‌اندازی و استقرار برنامه نمونه

  1. کد منبع را دریافت کنید.
  2. ورود به سیستم از طریق گوگل و ایمیل را در تنظیمات ارائه‌دهنده‌ی احراز هویت خود فعال کنید.
  3. فعال کردن Cloud Firestore .
  4. اگر هنوز رابط خط فرمان Firebase CLI) را نصب نکرده‌اید، آن را نصب کنید و با استفاده از firebase login وارد سیستم شوید.
  5. این نمونه را طوری پیکربندی کنید که پروژه شما با استفاده firebase use --add استفاده باشد.
  6. با اجرای cd functions; npm install; cd -
  7. کلید مخفی Stripe API خود را به پیکربندی محیط 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 تنظیم می‌کند. قوانین ارائه شده فقط به کاربر اجازه می‌دهند پرداخت‌ها و روش‌های پرداخت خود را بخواند و بنویسد.

برنامه نمونه را آزمایش کنید

به آدرس اینترنتی برنامه پرداخت خود در your-firebase-project-id.web.app مراجعه کنید و تأیید کنید که ویژگی‌های زیر کار می‌کنند:

  • می‌توانید از طریق گوگل یا ایمیل وارد شوید.
  • می‌توانید یک کارت آزمایشی 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 .