ステーブルコイン決済の受け付け
仮想通貨支払い方法を有効にして、ステーブルコインの受け入れを開始します。
stablecoin による決済は、Payment Links、Checkout、Elements、または Payment Intents API で受け付けることができます。USDC などのステーブルコインで支払う場合、顧客は crypto.stripe.com にリダイレクトされ、仮想通貨ウォレットを接続して取引を完了します。資金は Stripe の残高として USD で処理されます。
はじめに
地域的な考慮事項アメリカ
顧客は世界中でステーブルコインを支払いに利用できますが、現在、ステーブルコインの決済を受け付けることができるのはアメリカ企業のみです。
To start accepting stablecoin payments, activate the Crypto payment method:
- Stripe アカウントがアクティブ になっていることをご確認ください。
- 設定 > 支払い >支払い方法 にアクセスし、仮想通貨 支払い方法をリクエストしてください。
- Stripe reviews your access request, and might contact you for more details if necessary. In this case, the payment method appears as Pending while we review your request.
- After you’re approved, Crypto becomes active in the Dashboard.
動的支払い方法での使用 Recommended
Stripe のデフォルト動的支払い方法 を Payment Links、Hosted Checkout、Embedded Checkout Forms、または Elements でご利用の場合、これ以上のアップデートは必要ありません。Stripe は、対象となる顧客にステーブルコインの支払いオプションを自動的に表示します。
カスタム導入する場合
必要に応じて、支払い導入に仮想通貨支払い方法を手動で追加することができます。
Payment Intents API を通じて、仮想通貨での支払いを直接導入します。
PaymentIntent を作成し、client secret を取得するサーバー側
PaymentIntent オブジェクトは、顧客から支払いを徴収する意図を表し、支払いプロセスのライフサイクルを追跡します。サーバーにPaymentIntentを作成し、徴収する金額と対応する通貨を指定します。既存の PaymentIntent を導入している場合は、payment_method_types のリストにcrypto
を追加します。
client secret を取得する
PaymentIntent には、client secret が含まれています。これは、支払いプロセスを安全に完了するためにクライアント側で使用されます。client secret をクライアント側に渡す際は、いくつかの方法を使用できます。
ステーブルコインの支払いページへのリダイレクト
顧客が仮想通貨を決済手段として選択したときに、Stripe.js を使用して Stripe に支払いを送信します。Stripe.js は、決済フローの構築の基盤となる JavaScript ライブラリです。以下に説明するリダイレクトのような複雑な処理を自動的に行い、他の決済手段にもシステムを拡張させることができます。Stripe.js スクリプトを決済ページに含めるには、スクリプトを HTML ファイルの <head>
に追加します。
<head> <title>Checkout</title> <script src="https://js.stripe.com/clover/stripe.js"></script> </head>
決済ページで次の JavaScript を使用して Stripe.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'
PaymentIntent の client secret を使用して stripe.
を呼び出し、Pay with Crypto のリダイレクトを処理します。return_
を追加して、決済完了後に顧客をリダイレクトする場所を指定します。
const form = document.getElementById('payment-form'); form.addEventListener('submit', async function(event) { event.preventDefault(); // Set the clientSecret of the PaymentIntent const { error } = await stripe.confirmPayment({ clientSecret: clientSecret, confirmParams: { payment_method_data: { type: 'crypto', }, // Return URL where the customer should be redirected after the authorization return_url: `${window.location.href}`, }, }); if (error) { // Inform the customer that there was an error. const errorElement = document.getElementById('error-message'); errorElement.textContent = result.error.message; } });
return_
は、支払いの結果を表示する、お客様のウェブサイトのページに相当します。PaymentIntent のステータスを確認して、表示する内容を決定します。ステータス確認のために Stripe がリダイレクトする return_
には、次の URL クエリパラメーターが含まれています。また、独自のクエリパラメーターを return_
に追加することもできます。設定したパラメーターは、リダイレクトプロセス全体にわたって保持されます。
payment_ | PaymentIntent の一意の ID。 |
payment_ | PaymentIntent オブジェクトの Client Secret。 |
オプション支払い後のイベントを処理する
支払いが完了すると、Stripe は payment_intent.succeeded イベントを送信します。ダッシュボード、カスタム Webhook、またはパートナーソリューションを使用して、これらのイベントを受信し、顧客への注文確認メールの送信、データベースへの販売の記録、配送ワークフローの開始などのアクションを実行します。
クライアントからのコールバックを待たずにこれらのイベントをリッスンします。クライアント側では、コールバックが実行される前に顧客がブラウザーのウィンドウを閉じたり、アプリを終了したりする可能性があるだけでなく、不正なクライアントによってレスポンスが操作される可能性もあります。非同期イベントをリッスンするようにシステムを設定すると、今後より多くの決済手段を受け付けられるようになります。サポートされている決済手段のそれぞれの違いについては、決済手段ガイドをご確認ください。
イベントを受信し、ビジネスアクションを実行する
ビジネスアクションを受信して実行するためのオプションとして、以下をご利用いただけます。
- 手動処理: Stripe ダッシュボードを使用して、Stripe Payments の表示、メール領収書の送信、入金処理、失敗した支払いの再試行などを処理します。
- カスタムコード: Webhook ハンドラを構築してイベントをリッスンし、カスタムの非同期決済フローを構築します。Stripe CLI を使用して、ローカルで Webhook の実装をテストまたはデバッグすることも可能です。
- 事前構築済みアプリ: パートナーアプリケーションと連携して、自動化やマーケティングセールスなどの一般的なビジネスイベントを処理します。
サポートされている通貨
仮想通貨での支払いは、お住まいの国に対応する通貨で作成できます。仮想通貨のデフォルトの現地通貨は USD であり、顧客もこの通貨単位で購入金額を確認できます。
実装内容をテストする
テスト API キーを使用して決済リダイレクトページを開き、暗号資産決済統合をテストします。テストネットアセット を使用して、決済フローの成功を無料でテストできます。
- サンドボックスで、選択した統合方法を使用して新しいトランザクションを作成し、そのリダイレクト URL を開きます。
- 任意のウォレットと決済ネットワークを接続します。
- 決済を完了し、想定する URL にリダイレクトされることを確認します。
テストネットアセットで決済をテストする
ほとんどの暗号資産は、ブロックチェーントランザクションのテストに使用できるテストネットアセット (金銭的価値のないトークン) を提供しています。Stripe は、テストに MetaMask ウォレット、Polygon Amoy テストネット、Circle Faucet を推奨していますが、独自のサービスを使用することもできます。
ウォレットをインストールする
- Web ブラウザ用の MetaMask 拡張機能をダウンロード します。
- 新しいウォレットを作成 するか、既存のウォレットをインポート します。
テストネットを有効にする
- MetaMask ウォレットで、メインメニューからネットワークを選択します。
- カスタムネットワークを追加をクリックします。
- 次の詳細を入力します。
- ネットワーク名:
Polygon Amoy
- デフォルトの RPC URL:
https://rpc-amoy.
polygon. technology/ - チェーン ID:
80002
- 通貨シンボル:
POL
- ブロックエクスプローラーの URL:
https://amoy.
polygonscan. com/
- ネットワーク名:
- 保存 をクリックします。
トークンをインポートする
- MetaMask ウォレットのトークンで、ネットワークドロップダウンからPolygon Amoy を選択します。
- オーバーフローメニュー () をクリックし、トークンのインポートを選択します。
- ネットワークを選択 > Polygon Amoy をクリックします。
- トークンコントラクトアドレスに、Polygon Amoy のテストネットコントラクトアドレスを貼り付けます。トークンシンボルフィールドは
0x41E94Eb019C0762f9Bfcf9Fb1E58725BfB0e7582
USDC
で自動的に更新され、小数点以下桁数フィールドは6
で更新されます。 - 次へ をクリックします。
USDC
トークンをインポートしていることを確認し、インポートをクリックします。
MetaMask ウォレットのトークンリストに Polygon Amoy と USDC が表示されるようになりました。
テストネットアセットを取得する
- faucet.circle.com を開きます
- USDC をクリックします。
- ネットワークで、Polygon PoS Amoy を選択します。
- 送信先にウォレットアドレスを貼り付けます。
- 10 USDC を送金をクリックします。
決済を行うための USDC に加えて、トランザクションコストを支払うための POL が必要です。
- faucet.polygon.technology を開きます。
- チェーンとトークンの選択で、Polygon Amoy と POL を選択します。
- 本人確認で、認証に使用するサードパーティプラットフォームをクリックし、ログインプロセスを完了します。
- ウォレットアドレスの入力に、ウォレットアドレスを貼り付けます。
- Claim をクリックします。
テストネットトランザクションの完了には数分かかる場合があります。ウォレットを確認して、USDC と POL が送金されたことを確認してください。
その他のテストネット Faucet
より多くのテストトークンオプションについては、次の Faucet サービスを確認してください。