PayPal によるサブスクリプションを設定する
PayPal と Checkout を使用したサブスクリプションの作成と請求の方法をご紹介します。
このガイドを使用して、PayPal と Checkout を使用するサブスクリプションを設定します。
Checkout Session (Checkout セッション) は、顧客の購入意図の詳細を表すものです。顧客がサブスクリプションの開始を希望したらセッションを作成します。顧客が Checkout セッションにリダイレクトされると、Stripe は支払いフォームを表示します。顧客はここで購入を完了できます。顧客が購入を完了すると、元のサイトにリダイレクトされます。
注意
Stripe で PayPal のサブスクリプションの受け付けを開始するには、ダッシュボードで PayPal 継続支払いを有効にする必要があります。
継続支払いの商品と価格を作成する
注意
Checkout を使用するには、まず商品と価格を作成する必要があります。物品やサービスレベルごとに商品を作成します。各商品の料金体系は 1 つ以上の価格で示されます。
たとえば、10 USD/月、100 USD/年、9 EUR/月、90 EUR/年の、4 つの「価格」が設定されたソフトウェア「商品」を作成できます。これにより、対象商品の詳細を変更することなく、価格を変更したり追加したりできるます。商品と価格は、API を通じて、または Stripe ダッシュボードを使用して作成できます。
価格が購入時に決定される場合 (顧客が寄付金額を設定する場合など)、または事前に価格を作成しない選択をした場合は、Checkout セッションの作成時に価格をインラインで作成することができます。
Checkout セッションを作成するクライアント側サーバー側
Web サイトにサーバー側のエンドポイントを呼び出す決済ボタンを追加して Checkout セッションを作成します。
<html> <head> <title>Checkout</title> </head> <body> <form action="/create-checkout-session" method="POST"> <button type="submit">Checkout</button> </form> </body> </html>
既存の Price (価格) の ID を使用してセッションを作成します。モードが subscription
に設定されていることを確認し、少なくとも 1 つは継続的な価格を渡してください。継続的な価格に加えて 1 回限りの価格も追加できます。Checkout セッションを作成したら、レスポンスで返された URL に顧客をリダイレクトします。
顧客は支払いを正常に完了すると、success_
にリダイレクトされます。これはお客様のウェブサイト上にあり、支払いの成功を顧客に知らせるページです。上記の例のように success_
に {CHECKOUT_
テンプレート変数を含めて、成功ページでセッション ID を使用できるようにします。
顧客が支払いを完了せずに Checkout セッションでお客様のロゴをクリックすると、Checkout は、Web サイトの cancel_
に顧客をリダイレクトします。これは通常、顧客が Checkout にリダイレクトされる前に表示していた Web サイトのページです。
デフォルトでは、Checkout セッションは作成後 24 時間で期限が切れます。
注意
次に挙げる理由により、支払い開始の検出時には、success_
へのリダイレクトのみに依存しないでください。
- 悪意を持つユーザが、支払いをせずに
success_
に直接アクセスし、商品やサービスにアクセスできるようになる可能性があります。url - 顧客が支払いの成功後に
success_
に到達するとは限りません。リダイレクトが発生する前に、顧客がブラウザタブを閉じることがあります。url
支払いが成功したことを確認する
注
買い手が PayPal を使用して Stripe でサブスクリプションを確認すると、Stripe と PayPal の両方から買い手に領収書が届きます。
顧客が支払いを完了すると、success_
として指定された URL にリダイレクトされます。この URL は通常、顧客に支払いが成功したことを知らせるお客様の Web サイト上のページです。
ダッシュボード、カスタム Webhook、またはサードパーティーのプラグインを使用して、顧客に注文の確認メールを送信したり、売上をデータベースに記録したり、配送ワークフローを開始するなどの、支払い後のイベントを処理します。
Zapier などのプラグインを使用すると、Stripe の支払いからの情報を利用して購入のフルフィルメントシステムを自動更新できます。
プラグインで対応可能な自動化の例の一部を以下に挙げます。
- 支払いの成功に対応して、注文の追跡に使用されるスプレッドシートを更新する
- 支払いの成功に対応して、在庫管理システムを更新する
- メールまたはチャットアプリケーションを使用して、社内のカスタマーサービスチームへの通知をトリガーする
組み込みをテストする
テスト API キー を使用して PayPal の実装をテストするには、リダイレクトページを表示します。リダイレクトページで支払いを認証することにより、支払い成功のケースをテストできます。PaymentIntent は requires_
から succeeded
に移行します。
ユーザが認証に失敗するケースをテストするには、テスト API キーを使用してリダイレクトページを表示します。リダイレクトページで テスト支払い失敗 をクリックします。PaymentIntent は、requires_
から requires_
に移行します。