คุณประมวลผลการชำระเงินโดยใช้ฟีเจอร์ต่างๆ ของ Firebase และ Stripe ได้ เว็บแอปพลิเคชันของคุณได้โดยไม่ต้องสร้างโครงสร้างพื้นฐานเซิร์ฟเวอร์ของคุณเอง คู่มือนี้จะเดิน ผ่านการปรับแต่งและทำให้ เวอร์ชันโอเพนซอร์สของคุณใช้งานได้ cloud-functions-stripe-sample.web.app เป็นแอปตัวอย่าง
ก่อนเริ่มต้น ให้สร้างโปรเจ็กต์ใน คอนโซล Firebase และตั้งค่า บัญชี Stripe
ภาพรวมการใช้งาน
- ตั้งค่าบัญชี Stripe
- สร้างโปรเจ็กต์ในคอนโซล Firebase
- เปิดใช้การเรียกเก็บเงินสำหรับโปรเจ็กต์และกำหนดค่า Firebase CLI
เพื่อใช้โปรเจ็กต์ของคุณกับ
firebase use --add
- รับซอร์สโค้ดสำหรับแอป Firestripe ตัวอย่าง กำหนดค่าด้วยข้อมูลที่เหมาะสมสำหรับโปรเจ็กต์ และปรับแต่งโค้ดให้เหมาะกับแอปของคุณ
- เมื่อคุณทำให้แอปใช้งานได้แล้ว ให้ค้นหารายชื่อผู้ใช้และธุรกรรมใน คอนโซล Firebase
ตั้งค่าและทำให้แอปตัวอย่างใช้งานได้
- รับ ซอร์สโค้ด
- เปิดใช้ Google และ ลงชื่อเข้าใช้อีเมลในการตั้งค่าผู้ให้บริการตรวจสอบสิทธิ์
- เปิดใช้ Cloud Firestore
- ติดตั้ง Firebase CLI
หากยังไม่ได้ลงชื่อเข้าใช้ ให้เข้าสู่ระบบด้วย
firebase login
- กำหนดค่าตัวอย่างนี้เพื่อใช้โปรเจ็กต์ของคุณกับ
firebase use --add
- ติดตั้งการอ้างอิงภายในเครื่องโดยการเรียกใช้
cd functions; npm install; cd -
เพิ่มคีย์การเข้ารหัส API ของ Strip ในการกำหนดค่าสภาพแวดล้อม 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 หรืออีเมล
- คุณเพิ่มการ์ดทดสอบแถบใหม่และดูในองค์ประกอบการเลือกการ์ดได้
- คุณสามารถเลือกบัตรใดบัตรหนึ่งและเรียกเก็บเงินได้
- คุณสามารถออกจากระบบได้
สำหรับการเปรียบเทียบ โปรดดูที่ 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