Firebase로 결제 처리

몇 가지 다른 Firebase 기능과 Stripe를 사용하면 자체 서버 인프라를 구축하지 않고도 웹 앱에서 결제를 처리할 수 있습니다. 이 가이드는 오픈 소스 cloud-functions-stripe-sample.web.app 예제 앱의 고유 버전을 사용자 지정하고 배포하는 과정을 안내합니다.

시작하기 전에 Firebase 콘솔 에서 프로젝트를 만들고 Stripe 계정을 설정하세요.

구현 개요

  1. 스트라이프 계정을 설정합니다.
  2. Firebase 콘솔 에서 프로젝트를 만듭니다.
  3. 프로젝트에 대한 결제를 활성화하고 Firebase CLI를 firebase use --add 와 함께 프로젝트를 사용하도록 구성합니다.
  4. 샘플 Firestripe 앱의 소스 코드 를 가져옵니다. 프로젝트에 대한 올바른 정보로 구성하고 앱에 맞게 코드를 사용자 지정합니다.
  5. 앱을 배포한 후 Firebase 콘솔에서 사용자 및 트랜잭션 목록을 찾습니다.

샘플 앱 설정 및 배포

  1. 소스 코드 를 가져옵니다.
  2. 인증 공급자 설정 에서 Google 및 이메일 로그인을 활성화합니다.
  3. Cloud Firestore 를 사용 설정합니다.
  4. Firebase CLI 를 아직 설치하지 않았다면 설치하고 firebase login 으로 로그인합니다.
  5. firebase use --add 와 함께 프로젝트를 사용하도록 이 샘플을 구성합니다.
  6. cd functions; npm install; cd -
  7. Cloud Functions 환경 구성에 Stripe API 비밀 키 를 추가합니다.

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

  8. /public/javascript/app.js 에서 Stripe 게시 가능 키 를 설정하십시오.

    const STRIPE_PUBLISHABLE_KEY=<YOUR STRIPE PUBLISHABLE KEY>;

  9. firebase deploy 를 사용하여 프로젝트를 배포합니다. 이 명령:

    1. 웹 사이트를 사용할 수 있도록 public 디렉터리의 모든 파일을 호스팅으로 보냅니다.
    2. functions 디렉토리의 코드를 Firebase용 Cloud Functions로 보냅니다.
    3. firestore.rules 에 구성된 대로 Cloud Firestore 데이터베이스에 보안 규칙을 설정합니다. 제공된 규칙은 사용자가 자신의 지불 및 지불 방법을 읽고 쓸 수 있도록 허용합니다.

샘플 앱 테스트

your-firebase-project-id.web.app 에서 결제 앱의 URL을 방문하여 다음 기능이 작동하는지 확인합니다.

  • 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 .