Help us understand the problem. What is going on with this article?

Stripeの各種API(ChargesとPayment Intents)について

Stripeでは、以下 3種類の支払い方法が提供されています。

ここでは、Charges APIPayment Intents APIの違いと、それぞれいつ使うべきかをまとめています。
これらのAPIは自社サイトやiOS/Androidアプリに決済処理を組み込みたい場合に使います。
Stripeのページにリダイレクトさせて、もっと簡単に決済を実装したい場合は、Stripe Checkout の利用を検討してください。

まとめ

Charges vs. Payment Intents APIs には

  • Payment Intents APIは、すべてのStripe製品と支払い方法を統合するAPIとして設計されました。
  • Chareges APIの廃止予定はありませんが、製品開発をPayment Intents APIに集中して、これを中心的なAPIにする予定です。

と書かれており、「これから開発するならPayment Intents APIを使うんや〜」と思うかもしれませんが、Transitioning to the Payment Methods API では

  • Payment Intents APIで使われるPayment Methods APIは、Charges APIで使われるTokensSourcesを現時点で全て置き換えられるわけではない。
  • 例えば、AlipayCharges APIを使わないと実装出来ない。

となっていることを踏まえると、目的を考えてAPIを選ぶ(場合によっては、両方のAPIを併用する)必要がありそうです。

The Payment Intents API でも、双方の違いについて触れられていますが、上記に加えて以下のような(※一部抜粋)内容になっています。

  • Charges APIは、追加で認証が不要な基本的な支払いに使える(※アメリカとカナダのケースが書かれていますが、ヨーロッパと比較して、認証面がゆるい、ということだと思います)
  • Payment Intents APIは、Strong Customer Authentication (SCA)などの要件があるときには必須となります。

Charges API と Payment Intents API の違い

参照先: Charges vs. Payment Intents APIs

CHARGES API PAYMENT INTENTS API
カード決済の簡単な導入を希望する主に米国/カナダの顧客を持つ企業に推奨 複数の支払い方法と認証を必要とする企業に必要 (例:ヨーロッパでの強力な顧客認証のため)
Web, iOS, Androidで利用可能 左記に加えて、ターミナルを使った店頭支払いでも利用可能
ここに記載されたカードと支払い方法をサポート カード、及び3DS, iDEAL, SEPAが必要なカードをサポート
SCA対応されていない SCA対応されている

SCAとは?

Charges API の詳細

Card payments on the Charges API
Charges API reference

Payment Intents の詳細

Accept a payment(Payment Intents API)
The Payment Intents API
Payment Intents API reference

Charges API から Payment Intents API へのマイグレーション方法

※詳細は追記予定。

参照先

Migrating code that reads from charges
Migrating to Payment Intents

方法

以下の 2つのプロパティを使って段階的に移行(コードの書き換え)を行っていきます。

その他

JCBカードの利用サポート

  • JCBカードの利用を可能にするためには、Stripeに依頼する必要があります。
  • Charges APIPayment Intents APIいずれでも、JCBカードの利用は可能です。

各種サンプルコード

https://github.com/stripe-samples

luigiii
フリーランスで、開発(Go, Rails, Node (NestJS), React/TypeScript)やプロジェクトマネージメントやプロダクトマネージメント業務を行っています。
Why not register and get more from Qiita?
  1. We will deliver articles that match you
    By following users and tags, you can catch up information on technical fields that you are interested in as a whole
  2. you can read useful information later efficiently
    By "stocking" the articles you like, you can search right away
Comments
No comments
Sign up for free and join this conversation.
If you already have a Qiita account
Why do not you register as a user and use Qiita more conveniently?
You need to log in to use this function. Qiita can be used more conveniently after logging in.
You seem to be reading articles frequently this month. Qiita can be used more conveniently after logging in.
  1. We will deliver articles that match you
    By following users and tags, you can catch up information on technical fields that you are interested in as a whole
  2. you can read useful information later efficiently
    By "stocking" the articles you like, you can search right away
ユーザーは見つかりませんでした