0
Help us understand the problem. What are the problem?

posted at

updated at

マンガでわかるStripe

Stripeとは

Stripeは決済代行サービスです。

通常決済機能はPCI DSSだったり不正検知だったり単なるWebサービスの機能より高いレベルが求められますが、Stripeを使うことでリスクを最小化できます。

API、用語の種類について

Stripeの公式ドキュメントはよく書かれていますが、シンプルな名前を好むゆえに混同しやすかったり、歴史的経緯が省かれているので少し補足します。

プロダクト名 API (あえて冗長に名前をつけるなら) 説明
Payment Charges API (SimplePayment API) 3Dセキュア未サポートの古いAPI
Payment Payment Intent API (Payment API) 3Dセキュアに対応している新API
Checkout (Payment with Builtin UI) Payment Intent APIのラッパー.  Stripeの画面で決済
Element (Payment with Custom UI) Checkoutより画面をカスタマイズしたい場合に使用

Charges API

古いAPIです。Payment Intent APIへの移行が推奨されています。

日本語で"チャージする"というと電子マネーに貯める側に使うことが多いですが、Stripeの用語では支払う側に使います。

Payment Intent API

新APIです。最近のWeb上の決済ではクレジットカードの番号とCVCを入力するだけでは不十分で3Dセキュアなど追加の認証が必要になり、Payment Intent APIはそのフローに対応しています。

欧州ではPSD2(欧州決済サービス指令第2版)の法規変更によりこのフローをサポートすることが必須になっています。

Checkout

Stripe Paymentの上記APIを使うと柔軟性は得られるのですが、画面のほとんどを自前で用意する必要があります。

Stripe Checkoutでは金額やメタ情報を元に生成したセッションをurlに渡すことで、Stripe側が後は対応してくれます。素のAPIだとアプリもサポートしているのですが、CheckoutはWebのみ対応しています。

Element

Checkoutよりはカスタマイズしたいという場合にはElementを使います。Reactが使えます。

その他

Stripeは決済が完了すると設定したurlにイベントとして情報を返してくれます。
自分がStripeのAPIを呼ぶだけでなく、Stripeから返ってくるイベントを受け取る口も実装する必要があります。

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
Sign upLogin
0
Help us understand the problem. What are the problem?