コンテンツにスキップ
アカウントを作成
または
サインイン
Stripe ドキュメントのロゴ
/
AI に質問する
アカウントを作成
サインイン
始める
支払い
売上
プラットフォームおよびマーケットプレイス
資金管理
開発者向けリソース
概要
Stripe Payments について
構築済みのシステムをアップグレード
支払いの分析
オンライン決済
概要ユースケースを見つけるManaged Payments
Payment Links を使用する
決済ページを構築
高度なシステムを構築
アプリ内実装を構築
決済手段
決済手段を追加
    概要
    支払い方法の導入オプション
    ダッシュボードで支払い方法を管理
    決済手段のタイプ
    カード
    Stripe 残高で支払う
    仮想通貨
    銀行口座引き落とし
    銀行へのリダイレクト
    銀行振込
    クレジットトランスファー (Sources)
    後払い
    リアルタイム決済
    店舗支払い
    ウォレット
      Alipay
      Amazon Pay
      Apple Pay
      Cash App Pay
        決済を受け付ける
        支払い情報の保存
      Google Pay
      GrabPay
      Link
      MB WAY
      MobilePay
      PayPal
      PayPay
      Revolut Pay
      Satispay
      Secure Remote Commerce
      Vipps
      WeChat Pay
    国ごとに現地の支払い方法を有効化
    カスタムの決済手段
決済手段を管理
Link による購入の迅速化
支払いインターフェイス
Payment Links
Checkout
Web Elements
アプリ内 Elements
決済シナリオ
複数の通貨を扱う
カスタムの決済フロー
柔軟なアクワイアリング
オーケストレーション
店頭支払い
端末
決済にとどまらない機能
会社を設立する
仮想通貨
Financial Connections
Climate
ホーム支払いAdd payment methodsWalletsCash App Pay

注

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

将来の Cash App Pay による支払いを設定する

Cash App Pay の詳細を保存し、後で顧客に請求する方法をご紹介します。

Setup Intents API を使用して事前に決済手段の詳細を収集し、後から最終的な金額や支払い日を決定できます。次の場合に使用します。

  • 支払い方法をウォレットに保存して、以降の購入を効率化する
  • サービスの提供後に追加料金を回収する
  • サブスクリプションの無料トライアルを開始する

支払い方法の詳細を収集し、保存済みの支払い方法にすぐに請求するには、Payment Intents API を使用します。

Checkout で決済手段の保存後に継続支払いを作成するには、Cash App Pay によるサブスクリプションを設定するをご覧ください。

Stripe を設定する
サーバー側

まず、Stripe アカウントが必要です。今すぐ登録してください。

アプリケーションから Stripe API にアクセスするには、Stripe の公式ライブラリを使用します。

Command Line
Ruby
# Available as a gem sudo gem install stripe
Gemfile
Ruby
# If you use bundler, you can add this line to your Gemfile gem 'stripe'

Customer を作成または取得する
サーバー側

今後の支払いに備えて Cash App Pay の支払い方法を保存するには、これを Customer に関連付ける必要があります。

顧客がビジネスでお客様のアカウントを作成する際、Customer オブジェクトを作成します。この Customer オブジェクトの ID を、顧客を表す独自の内部表記と関連付けてください。あるいは、Customer オブジェクトを作成してから、今後の支払いのために支払い方法を保存することもできます。

新しい Customer を作成するには、サーバー側で以下のコードを含めます。

Command Line
cURL
curl https://api.stripe.com/v1/customers \ -u "
sk_test_BQokikJOvBiI2HlWgH4olfQ2
:"
\ --data-urlencode description="My First Test Customer (created for API docs)"

決済フォームに許可に関する規約を提示する
クライアント側

将来のオフセッションの支払いに備え、顧客の Cash App Pay の認証情報 ($Cashtag) を保存してアカウントに請求できるようにします。PaymentIntent や SetupIntent を確定する前に、カスタムの決済フォームに書面による承認の通知を表示する必要があります。

承認に関する条件は、顧客の $Cashtag を初めて保存するときにのみ表示する必要があります。

カスタムの決済フォームでは以下のテキストを使用することをお勧めします。

続行すると、Rocket Rides の利用規約に従って、この許可が取り消されない限り、お客様は今回の支払いおよび今後の支払いを、Cash App のアカウントから引き落とすことを Rocket Rides に許可したものとみなされます。これは、Cash App の設定でいつでも変更できます。

Setup Intents API を使用して事前に決済手段の詳細を収集し、後から最終的な金額や支払い日を決定します。これは、次の場合に役立ちます。

  • 以降の購入時に認証せずにすむように顧客の支払い方法を保存する
  • サブスクリプションの無料トライアルを開始する

SetupIntent を作成して支払い方法を保存する
サーバー側

SetupIntent は、将来の支払いに備えて顧客の決済手段を設定する意図を示すオブジェクトです。SetupIntent は、この設定プロセスの手順を追跡します。payment_method_types を cashapp に設定してサーバーで SetupIntent を作成し、Customer の ID と usage=off_session または usage=on_session を指定します。

Command Line
cURL
curl https://api.stripe.com/v1/setup_intents \ -u "
sk_test_BQokikJOvBiI2HlWgH4olfQ2
:"
\ -d "payment_method_types[]"=cashapp \ -d "payment_method_data[type]"=cashapp \ -d usage=off_session \ -d customer={{CUSTOMER_ID}}

client secret を取得する

SetupIntent には、client secret が含まれています。これは、支払いプロセスを安全に完了するためにクライアント側で使用されます。client secret をクライアント側に渡す際は、いくつかの方法を使用できます。

ブラウザーの fetch 関数を使用して、サーバーのエンドポイントから client secret を取得します。この方法は、クライアント側が 1 ページのアプリケーションで、特に React などの最新のフロントエンドフレームワークで構築されている場合に最適です。client secret を処理するサーバーのエンドポイントを作成します。

main.rb
Ruby
get '/secret' do intent = # ... Create or retrieve the SetupIntent {client_secret: intent.client_secret}.to_json end

その後、クライアント側で JavaScript を使用して client secret を取得します。

(async () => { const response = await fetch('/secret'); const {client_secret: clientSecret} = await response.json(); // Render the form using the clientSecret })();

次に、Stripe.js を使用してクライアントに Cash App Pay を保存します。

Stripe.js スクリプトを決済ページに含めるには、このスクリプトを HTML ファイルの head に追加します。

checkout.html
<head> <title>Checkout</title> <script src="https://js.stripe.com/basil/stripe.js"></script> </head>

決済ページで以下の JavaScript を使用して、Stripe.js のインスタンスを作成します。

client.js
// Set your publishable key. Remember to change this to your live publishable key in production! // See your keys here: https://dashboard.stripe.com/apikeys const stripe = Stripe(
'pk_test_TYooMQauvdEDq54NiTphI7jx'
);

stripe.confirmCashappSetup を使用し、return_url とオプションの mandate_data を指定して、クライアント側で setupIntent を確定します。return_url を使用して、SetupIntent の成功後に顧客を特定のページにリダイレクトします。

client.js
const form = document.getElementById('setup-form'); form.addEventListener('submit', function(event) { event.preventDefault(); // Set the clientSecret here stripe.confirmCashappSetup( clientSecret, { payment_method: { type: 'cashapp', }, return_url: 'https://www.example.com/checkout/done', }, ); });

顧客は、モバイルアプリまたはデスクトップアプリで Cash App Pay を認証することができます。confirmCashappSetup を呼び出した後、顧客が使用するクライアントは、モバイルの場合はリダイレクト、デスクトップの場合は QR コードなど、認証方法を決定します。認証のレスポンスには、次のステップで PaymentIntent を作成するために使用する必要がある支払い方法 ID も含まれています。

confirmCashappSetup を呼び出した後、Stripe は、顧客をオーソリのために Cash App にリダイレクトします。支払いがオーソリされた後、Stripe は顧客を Setup Intent の return_url に送ります。Stripe は、URL クエリパラメーターとして setup_intent、setup_intent_client_secret、redirect_pm_type、redirect_status のほか、既存のクエリパラメーターを return_url に追加します。

認証セッションは 10 分後に期限切れになり、SetupIntent のステータスは require_payment_method に戻ります。ステータスが移行すると、顧客にはオーソリエラーが表示され、プロセスをもう一度開始する必要があります。

オプションリダイレクトと認証を手動で処理する

保存された支払い方法を使用して PaymentIntent を作成する
サーバー側

PaymentMethod を作成した後、PaymentIntent を作成して確定すると、それ以降 Cash App Pay による決済を受け付けられるようになります。PaymentIntent を確定する際は、以前の SetupIntent オブジェクトまたは PaymentIntent オブジェクトと同じ決済手段 ID を使用します。顧客がこの PaymentIntent の決済フロー内にいない場合は、off_session 値も true に設定する必要があります。

Command Line
cURL
curl https://api.stripe.com/v1/payment_intents \ -u "
sk_test_BQokikJOvBiI2HlWgH4olfQ2
:"
\ -d "payment_method_types[]"=cashapp \ -d payment_method={{PAYMENT_METHOD_ID}} \ -d amount=1000 \ -d currency=usd \ -d customer={{CUSTOMER_ID}} \ -d statement_descriptor=test_statement \ -d capture_method=automatic \ -d confirm=true \ -d off_session=true

再利用可能な決済手段の取り消しを処理する

再使用可能な決済手段を取り消すには、以下の 2 つの方法があります。

  • 顧客は、Cash App モバイルアプリで再利用可能な決済手段を無効にすることができます。この場合、Stripe は mandate.updated イベントを送信します。Webhook イベントに登録し、detach PaymentMethod を呼び出して無効化します。
  • 顧客は、再利用可能な決済手段に対応している場合、UI で無効にすることもできます。この場合、サーバーは detach PaymentMethod を呼び出して無効化することができます。

いずれのケースでも、detach PaymentMethod を呼び出した後、payment_method.detached イベントが送信されます。

このページはお役に立ちましたか。
はいいいえ
お困りのことがございましたら 、サポートにお問い合わせください。
早期アクセスプログラムにご参加ください。
変更ログをご覧ください。
ご不明な点がございましたら、お問い合わせください。
LLM ですか?llms.txt を読んでください。
Powered by Markdoc