web-dev-qa-db-ja.com

ストライプ支払い:ソースvsトークン/カード?

ストライプを使用した定期的な支払いの設定に取り組んでいます。私はreact-stripe-elementsを使用してカード情報を収集していますが、後でカードを保存するには2つの方法があるようです:

  • this.props.stripe.createToken()
  • this.props.stripe.createSource()

次に、バックエンドで顧客を作成します。

  • stripe.customers.create({ source: tokenId })
  • stripe.customers.create({ source: sourceId })

ストライプダッシュボードの結果:

  • tokenId

    • tokenIdカード enter image description here
  • sourceId

    • sourceIdソース

enter image description here

  • sourceIdカード

enter image description here

私の質問は、これら2つのパターンの違いは何ですか?他の代わりに一方を使用する必要がありますか? tokenIdパターンでは、カードがcvc/Zipチェックに合格したことを示していますが、sourceIdパターンではそれを示していません。しかし、sourceIdパターンは、カードが充電可能で再利用可能であると明示的に言っていますが、それはtokenIdパターンを使用して保存されたカードが再利用可能でないことを意味しますか? sourceIdカードのログ/イベントはより便利ですか? 2つのパターンの戻りオブジェクト構造も異なります。

どんな助けでも大歓迎です、事前に感謝します!

22
connor

トークンは、ユーザーカードの詳細のトークン化後の単なる文字列値の結果です。トークンまたはソースは、1回限りの支払いまたはサブスクリプションの支払いに使用できます(ただし、トークンを使用して顧客にアタッチする直前に課金しない場合)。

しかし、ソースはより多くのオプションを提供します。これは、alipayやwechat payなどの他の支払いオプションを受け入れるときに唯一のオプションであり、トークンAPIをカード以外の他の支払い方法で使用することはできません。 @Daniel Winterstein氏は、トークンはStripeの古いAPIであり、ストライプは下位互換性のためだけに保持することを決定したが、使用支払いの詳細を取得するには標準のAPIとしてソースを使用する必要があると述べた。

10
kasongoyo