コンテンツにスキップ
アカウントを作成
または
サインイン
Stripe ドキュメントのロゴ
/
AI に質問する
アカウントを作成
サインイン
始める
支払い
売上
プラットフォームおよびマーケットプレイス
資金管理
開発者向けリソース
API & SDKヘルプ
概要
Stripe Payments について
構築済みのシステムをアップグレード
支払いの分析
オンライン決済
概要ユースケースを見つけるManaged Payments を使用する
Payment Links を使用する
事前構築済みの決済ページを使用する
Elements を使用したカスタム統合の構築
アプリ内実装を構築
    概要
    Payment Sheet
    Payment Element
    アプリ内購入のリンク
      構築済みの決済ページを使用する
      Payment Links を使用する (ローコード)
      カスタムフローを構築する
      カスタマーポータルを使用
    住所を収集
    設定で支払い方法を管理する
    アメリカとカナダのカード
決済手段
決済手段を追加
決済手段を管理
Link による購入の迅速化
支払いインターフェイス
Payment Links
Checkout
Web Elements
アプリ内決済
決済シナリオ
複数の通貨を扱う
カスタムの決済フロー
柔軟なアクワイアリング
オーケストレーション
店頭支払い
端末
決済にとどまらない機能
会社を設立する
仮想通貨
エージェント型ワークフロー
Financial Connections
Climate
不正利用について
Radar の不正防止
不審請求の申請の管理
本人確認
アメリカ
日本語
ホーム支払いBuild an in-app integrationLink out for in-app purchases

注

このページはまだ日本語ではご利用いただけません。より多くの言語で文書が閲覧できるように現在取り組んでいます。準備が整い次第、翻訳版を提供いたしますので、もう少しお待ちください。

事前構築済みの決済ページを使用して、iOS でデジタル商品の決済を受け付けます

ブラウザーで Stripe Checkout を開き、アプリ内のデジタル商品およびサービスを販売します。

注

Managed Payments を使用する同様の導入の構築方法をご確認ください。 Managed Payments を使用すると、Stripe は マーチャントオブレコード として機能できます。

For digital products, content, and subscriptions sold in the United States or European Economic Area (EEA), your iOS app can accept Apple Pay using Stripe Checkout.

If you have a limited number of products and prices, you can instead use Payment Links.

In other regions, your app can’t accept Apple Pay for digital products, content, or subscriptions.

This guide describes how to sell credits for consumption in your app using Stripe Checkout to redirect your customers to a Stripe-hosted payment page.

注

If your business is new to Stripe, processes a high volume of payments, and has advanced integration needs, contact our sales team.

1 回限りの支払い

1 回限りの支払いでアプリからリンクを解除する

継続支払い

継続支払いまたはサブスクリプション支払いのためにアプリからリンクする

構築する内容

注

このガイドでは、アプリ内のデジタル商品を販売するプロセスのみについて説明します。以下の販売については取り扱いません。

  • 物品アイテム
  • アプリ外での使用を目的とする商品やサービス
  • 2 人の個人間の、対人リアルタイムサービス

代わりにネイティブ iOS 支払いガイドを使用してください。

このガイドでは以下の方法について説明します。

  • Checkout で支払い情報を収集します。
  • 商品、価格、顧客を使用したクレジットパッケージのモデル化。
  • ユニバーサルリンクの使用による Checkout からアプリへの直接のリダイレクト。
  • Webhook のモニタリングによる顧客のアプリ内通貨残高の更新。

対象範囲外の内容

このガイドでは、既存のアプリ内購入システムと並列的に Stripe Checkout を追加する方法を説明します。以下はこのガイドの対象範囲には含まれません。

  • ユーザーの認証。既存の認証プロバイダーがない場合には、Sign in with Apple (Apple にサインイン) や Firebase Authentication などのサードパーティープロバイダーを使用できます。
  • ネイティブのアプリ内購入。StoreKit を使用してアプリ内購入を実装するには、Apple のアプリ内課金 ガイドをご覧ください。

Stripe を設定する
サーバー側

まず、Stripe アカウントを登録します。

次に、バックエンドに Stripe API ライブラリーを追加します。

次に Stripe CLI をインストールします。CLI は必要な Webhook のテストを提供します。これを実行することで商品と価格を作成できます。

その他のインストールオプションについては、Stripe CLI を使ってみるをご覧ください。

商品および価格を作成する

ダッシュボードまたは Stripe CLI で商品 とその価格を作成します。1 回限りの価格を使用してデジタル商品をモデル化し、継続価格を使用してサブスクリプションをモデル化できます。顧客が支払い金額を選択する を選択して、顧客が希望する金額を支払えるようにすることもできます (たとえば、購入するクレジットの数を決定するなど)。

この例では、1 つの「商品」と「価格」を使用して、100 コインのバンドルを表します。

顧客を作成する
サーバー側

Checkout セッションを作成するたびに、そのユーザーにまだ設定されていなければ Customer オブジェクトを作成します。

警告

ユーザーアカウントと Stripe 顧客 ID との関連付けを、サーバーに必ず保存してください。顧客を購入に関連付ける方法がなければ、顧客は購入を回復できなくなります。

アプリが既存の認証プロバイダーを持たない場合は、代わりに Apple でサインインを利用できます。

支払い方法の詳細を保存し、Checkout で Customer に支払い方法を自動的に関連付け、その後の支払いに再利用できます。

ユニバーサルリンクを設定する
クライアント側
サーバー側

ユニバーサルリンクを使用すると、Checkout をお使いのアプリにディープリンクできます。ユニバーサルリンクを設定するには、次の手順を行います。

  1. ドメインに apple-app-site-association ファイルを追加します。
  2. アプリに Associated Domains エンタイトルメントを追加します。
  3. Checkout リダイレクト URL のフォールバックページを追加します。

関連ドメインを定義する

.well-known/apple-app-site-association メインにファイルを追加し、アプリで処理する URL を定義します。アプリ ID の前にチーム ID を付加します。チーム IDは、Apple Developer Portal のメンバーシップページにあります。

このファイルは、MIME タイプ application/json で提供する必要があります。curl -I を使用してコンテンツタイプを確認します。

詳細については、関連ドメインのサポートに関する Apple のページを参照してください。

アプリに Associated Domains エンタイトルメントを追加する

  1. アプリのターゲットの、Signing & Capabilities (署名とケイパビリティ) ウィンドウを開きます。
  2. + ケイパビリティ をクリックし、関連ドメイン を選択します。
  3. applinks:example.com のエントリーを Associated Domains リストに追加します。

ユニバーサルリンクの詳細については、Apple の Universal Links for Developers (開発者のためのユニバーサルリンク) (英語) ページをご覧ください。

iOS は、apple-app-site-association ファイルで定義された URL へのリンクをインターセプトしますが、リダイレクトでアプリを開くことができないケースが発生することがあります。

必ず success_url にフォールバックページを作成してください。たとえば、アプリにカスタム URL スキームを定義し、ユニバーサルリンクが失敗した場合にリンクバックに使用できます。

Checkout セッションを作成する
サーバー側

Checkout Sessionは、支払いフォームにリダイレクトされた顧客に表示される内容をプログラムで表現したものです。Checkout Session は作成後 24 時間で有効期限が切れます。以下のように設定してください。

  • 顧客 ID
  • 商品 ID (1 回限りの支払いまたはサブスクリプション)
  • origin_context が mobile_app に設定され、アプリから Web への購入に最適化された UI にオプトインします。
  • success_url。支払いが完了した後に、顧客をお客様のアプリにリダイレクトするユニバーサルリンクです。

よくある間違い

origin_context: "mobile_app"を使用して決済セッションを作成し、アプリからウェブへの購入に最適化された UI にオプトインします。

Checkout セッションを作成したら、レスポンスからの URL をお客様のアプリに返します。

注

Apple Pay はデフォルトで有効になっており、顧客が対応デバイスを使用すると決済に自動的に表示されます。動的決済手段を使用して、追加の決済手段を受け付けることができます。

Safari で Checkout を開く
クライアント側

アプリに決済ボタンを追加します。このボタンは以下を行います。

  1. サーバー側のエンドポイントを呼び出して、Checkout セッションを作成します。
  2. クライアントに Checkout セッションを返します。
  3. Safari でセッション URL を開きます。

クライアントで Checkout URL を取得する

サーバーエンドポイントを使用して、Checkout セッションを取得します。

注文のフルフィルメントを処理する
サーバー側

購入が成功すると、Stripe は checkout.session.completed Webhook を送信します。このイベントを受け取ったら、サーバー上の顧客にコインを追加できます。

イベントを受信したことを確認すると、Checkout は購入者を success_url にリダイレクトします。エンドポイントが停止していたり、イベントが正しく確認されない場合、Checkout は支払い成功の 10 秒後に購入者を success_url にリダイレクトします。

テスト目的の場合は、ダッシュボードまたは Stripe CLI を使用してイベントをモニタリングできます。本番環境では、Webhook エンドポイントを設定して、適切なイベントタイプに登録します。STRIPE_WEBHOOK_SECRET キーが不明な場合は、ダッシュボードで Webhook をクリックして表示します。

テスト

顧客をStripe Checkout にリダイレクトする決済ボタンをテストします。

  1. 決済ボタンをクリックすると、Stripe Checkout 支払いフォームにリダイレクトされます。
  2. のテストカード番号、3 桁のセキュリティコード、将来の有効期限日、および任意の有効な郵便番号を入力します。
  3. 支払う をタップします。
  4. checkout.session.completed Webhook が起動して、Stripe は取引についてお客様のサーバーに通知します。
  5. リダイレクトによってアプリへと戻されます。

実装が機能していない場合には、以下のその他のテスト用リソースのセクションをご覧ください。

オプションその他のテスト用リソース

実装を本番環境に移行する準備ができたかの確認に使用できる、テスト用の番号がいくつかあります。任意のセキュリティコード、郵便番号、および今後の有効期限を指定して使用します。

数字説明
支払いが成功し、すぐに処理されます。
支払いを正常に完了させるために、3D セキュア 2 認証を実行します。
常に支払い拒否コード insufficient_funds で失敗します。

全テストカードの一覧については、テストに関するガイドをご覧ください。

ユニバーサルリンクをテストする

ユニバーサルリンクで Checkout からアプリにリダイレクトされない場合は、SharedWebCredentials ログでエラーがないかを確認してください。

  1. Associated Domains エンタイトルメントにデバッグパラメーターを追加する

    • アプリのターゲットの、Signing & Capabilities (署名とケイパビリティ) ウィンドウを開きます。
    • 関連ドメインのエントリーに ?mode=developer フラグを追加します。「(例: applinks:example.com?mode=developer)」
  2. デバイスを開発者モードに設定します。

    • デバイスで Xcode からアプリを実行し、開発者メニューを有効にします。
    • iPhone で、Settings (設定) を開き、Developer (開発者) をタップし、Associated Domains Development (関連ドメイン開発) を有効にします。
  3. アプリを削除して、再インストールします。これにより、iOS は apple-app-site-association ファイルを再取得します。

  4. アプリで決済フローを完了します。

  5. Checkout によってアプリにリダイレクトされます。そうでない場合は、sysdiagnose を取得します。

  6. 音量アップ、音量ダウン、および電源ボタンを同時に 1 秒間押してから離します。短い振動を感じますが、視覚的なフィードバックは表示されません。

  7. 5 分間待ってから、Settings (設定) > Privacy (プライバシー) > Analytics & Improvement (分析と改善) > Analytics Data (分析データ) に移動し、リストの最後の sysdiagnose ファイルまでスクロールします。

  8. 共有ボタンをタップして、お使いのコンピューターにファイルを AirDrop (エアドロップ) します。

  9. sysdiagnose アーカイブを開き、次に swcutil_show.txt を開きます

  10. このファイルでアプリ ID を検索します。アプリのデバッグ情報のセクションが表示されます。エラーがある場合には、それも含まれます。

オプションManaged Payments を使用したアプリ内購入

多くのビジネス機能 (税金や不審請求の申し立てなど) を代理で処理できる Managed Payments で決済を受け付けます。アプリ内購入のマーチャントオブレコードとして Managed Payments の使用方法 の詳細をご確認ください。

参照情報

  • 割引を追加する
  • 税金を徴収する
  • 納税者番号を収集する
  • ブランディングをカスタマイズする
  • 成功ページをカスタマイズする
このページはお役に立ちましたか。
はいいいえ
  • お困りのことがございましたら 、サポートにお問い合わせください。
  • 変更ログをご覧ください。
  • ご不明な点がございましたら、お問い合わせください。
  • LLM ですか?llms.txt を読んでください。
  • Powered by Markdoc