開発者API
連携して カスタマイズ
URLスキームで自社アプリやウェブサイトからPayment for Stripeを起動し、アプリに表示する商品をStripeダッシュボードから直接コントロールできます。
URLスキームで連携
仕組み
自社アプリが payment:// で始まるパラメータ付きURLを開く
Payment for Stripeが起動し、取引を処理
完了すると、アプリが結果を付けてコールバックURLにリダイレクト
エンドポイント
決済を作成する
payment://new?金額、通貨、説明を入力して1回限りの支払いを処理します。
パラメータ
| 名前 | タイプ | 必須 | 説明 |
|---|---|---|---|
amount | integer | はい | セント単位の金額(例:1000 = 10.00ドル) |
currency | string | いいえ | 3文字のISO通貨コード(デフォルト:USD) |
description | string | いいえ | URLエンコードされた決済の説明 |
customer | string | いいえ | 既存のStripe顧客ID |
email | string | いいえ | 領収書用の顧客メールアドレス |
name | string | いいえ | URLエンコードされた顧客名 |
metadata | string | いいえ | カスタムキーと値のペア(URLエンコードされたJSON) |
callback | string | いいえ | 完了後に戻るURL |
autoprocess | boolean | いいえ | ホーム画面をスキップしてすぐに決済を開始 |
auto_return | boolean | いいえ | 販売者が結果ダイアログを閉じるのを待つのではなく、結果が読み込まれた時点でコールバックを実行します。デフォルトはfalseです。 |
請求書を作成する
payment://cart?商品カタログの明細項目を含むStripe請求書を作成します。
パラメータ
| 名前 | タイプ | 必須 | 説明 |
|---|---|---|---|
prices | string | はい | カンマで区切られた価格IDと数量(例:price_abc:2,price_xyz:1) |
customer | string | いいえ | 既存のStripe顧客ID |
email | string | いいえ | 領収書用の顧客メールアドレス |
name | string | いいえ | URLエンコードされた顧客名 |
callback | string | いいえ | 完了後に戻るURL |
auto_return | boolean | いいえ | 販売者が結果ダイアログを閉じるのを待つのではなく、結果が読み込まれた時点でコールバックを実行します。デフォルトはfalseです。 |
既存の請求書を支払う(iOSのみ)
payment://invoice?既存のStripe請求書に対して、対面で支払いを受け付けます。金額、通貨、顧客、税金は請求書から取得され、いずれかを上書きしようとすると拒否されます。加盟店はカードリーダー、タッチ決済、または手動入力でカードを読み取ります。成功すると、請求書はアプリ外での支払い(paid out of band)として支払い済みになり、charge_idとpayment_intent_idのメタデータで紐付けられます。サブスクリプション付き、default_payment_methodあり、またはステータスがopen以外の請求書は、対処方法を示すエラーで拒否されます。
パラメータ
| 名前 | タイプ | 必須 | 説明 |
|---|---|---|---|
id | string | はい | Stripe請求書ID(in_で始まる必要があります) |
callback | string | いいえ | 完了後に戻るURL。成功時にはinvoice_idとpayment_intent_idを受け取ります。 |
metadata | string | いいえ | カスタムキーと値のペア(URLエンコードされたJSON)がPaymentIntentメタデータにマージされます |
autoprocess | boolean | いいえ | ホーム画面をスキップしてすぐに決済を開始します |
auto_return | boolean | いいえ | 販売者が結果ダイアログを閉じるのを待つのではなく、結果が読み込まれた時点でコールバックを実行します。デフォルトはfalseです。 |
コールバックの処理
取引が完了すると、Payment for Stripeは結果を示すクエリパラメータを付けてコールバックURLにリダイレクトします。デフォルトでは、加盟店が結果ダイアログを閉じた後にリダイレクトされるため、加盟店は決済後の操作(領収書のメール送信、返金など)を行えます。結果が判明した時点ですぐにリダイレクトするには、auto_return=trueを指定してください。iOSとAndroidに対応しています。
コールバックパラメータ
| パラメータ | 値 | 説明 |
|---|---|---|
status | success | error | cancelled | 取引の結果 |
charge_id | string | Stripe決済ID(成功時) |
invoice_id | string | Stripe請求書ID(支払い成功時、payment://invoiceフローのみ) |
payment_intent_id | string | Stripe PaymentIntent ID(成功時、payment://invoiceフローのみ) |
error | string | エラーメッセージ(エラー時) |
例
シンプルな決済
金額を入力するだけで10ドルを請求
payment://new?amount=1000説明付きの決済
説明付きで25.00ユーロを請求
payment://new?amount=2500¤cy=eur&description=Coffee%20and%20pastry新規顧客への請求
50ドルを請求し、顧客レコードを作成します
payment://new?amount=5000&name=John%20Smith&[email protected]既存顧客に請求
既存のStripe顧客に75.00ドルを請求する
payment://new?amount=7500&customer=cus_ABC123xyzメタデータ付きの決済
記録用のカスタムメタデータを付けて100ドルを請求
payment://new?amount=10000&description=Invoice%20%231234&metadata=%7B%22order_id%22%3A%221234%22%2C%22location%22%3A%22Store%20A%22%7Dコールバックによる自動処理
ホーム画面をスキップして、完了したらアプリに戻ります
payment://new?amount=3500&autoprocess=true&callback=myapp://payment-complete結果表示時に自動で戻る
販売者が結果ダイアログを閉じるのを待つのではなく、結果が判明したらすぐにコールバックを実行します。
payment://new?amount=3500&autoprocess=true&auto_return=true&callback=myapp://payment-complete明細項目付き請求書
Stripeカタログの商品を使って請求書を作成する
payment://cart?prices=price_coffee:2,price_muffin:1&[email protected]既存の請求書を支払う(iOS)
既存のStripe請求書に対する対面での支払いを受け付けます。成功した場合は、invoice_idとpayment_intent_idを返します。
payment://invoice?id=in_1ABC123xyz&autoprocess=true&callback=myapp://invoice-paid完全な例
すべてのパラメータを組み合わせて完全に統合されたフローを実現
payment://new?amount=15000¤cy=usd&description=Service%20Fee&customer=cus_ABC123xyz&metadata=%7B%22invoice%22%3A%22INV-2024-001%22%7D&autoprocess=true&callback=myapp://payment-resultURLエンコーディング
パラメータ値内の特殊文字は必ずURLエンコードしてください。スペースは%20、中括弧は%7Bと%7Dになります。