コンテンツにスキップ
アカウントを作成
または
サインイン
Stripe ドキュメントのロゴ
/
AI に質問する
アカウントを作成
サインイン
始める
支払い
財務の自動化
プラットフォームおよびマーケットプレイス
資金管理
開発者向けのツール
始める
支払い
財務の自動化
始める
支払い
財務の自動化
プラットフォームおよびマーケットプレイス
資金管理
概要
Stripe Payments について
構築済みのシステムをアップグレード
支払いの分析
オンライン決済
概要ユースケースを見つけるManaged Payments
Payment Links を使用する
決済ページを構築
高度なシステムを構築
アプリ内実装を構築
決済手段
決済手段を追加
    概要
    支払い方法の導入オプション
    ダッシュボードで支払い方法を管理
    決済手段のタイプ
    カード
    銀行口座引き落とし
    銀行へのリダイレクト
    銀行振込
    クレジットトランスファー (Sources)
    後払い
    リアルタイム決済
    店舗支払い
      Boleto
      コンビニ決済
      Multibanco
      OXXO
        決済を受け付ける
    ウォレット
    国ごとに現地の支払い方法を有効化
    カスタムの決済手段
決済手段を管理
Link による購入の迅速化
支払いインターフェイス
Payment Links
Checkout
Web Elements
アプリ内 Elements
決済シナリオ
カスタムの決済フロー
柔軟なアクワイアリング
オーケストレーション
店頭支払い
端末
他の Stripe プロダクト
Financial Connections
仮想通貨
Climate
ホーム支払いAdd payment methodsVouchersOXXO

注

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

OXXO での支払いを受け付ける

メキシコで一般的な支払い方法である OXXO を受け付ける方法をご紹介します。

ページをコピー

注意

サーバー側での手動確定を使用する必要がある場合、またはお使いの実装で決済手段を別途表示する必要がある場合を除き、決済を受け付けるガイドに従うことをお勧めします。すでに Elements との連携が完了している場合は、Payment Element 移行ガイドをご覧ください。

アプリで OXXO を受け付けるには、Webview で OXXO の取引の詳細を表示します。顧客は、OXXO コンビニエンスストアで、生成された番号が記載された取引の詳細を提示し、現金で支払います。支払いが完了すると、Stripe からお客様に通知が送られます。

Stripe を設定する
サーバ側
クライアント側

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

サーバ側

この組み込みには、サーバ上に Stripe API と通信するエンドポイントが必要です。サーバから 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'

クライアント側

Stripe Android SDK はオープンソースであり、詳細なドキュメントが提供されています。

To install the SDK, add stripe-android to the dependencies block of your app/build.gradle file:

build.gradle.kts
Kotlin
plugins { id("com.android.application") } android { ... } dependencies { // ... // Stripe Android SDK implementation("com.stripe:stripe-android:21.14.0") // Include the financial connections SDK to support US bank account as a payment method implementation("com.stripe:financial-connections:21.14.0") }

注

SDK の最新リリースおよび過去バージョンの詳細については、GitHub の Releases ページをご覧ください。新しいリリースの公開時に通知を受け取るには、リポジトリのリリースを確認してください。

Stripe の公開可能キーを使用して SDK を設定し、 Application サブクラスなどで、Stripe API へのリクエストを実行できるようにします。

Kotlin
import com.stripe.android.PaymentConfiguration class MyApp : Application() { override fun onCreate() { super.onCreate() PaymentConfiguration.init( applicationContext,
"pk_test_TYooMQauvdEDq54NiTphI7jx"
) } }

注

Use your test keys while you test and develop, and your live mode keys when you publish your app.

Stripe サンプルでは、サーバへの HTTP リクエストの作成に、OkHttp および GSON も使用します。

PaymentIntent を作成する
サーバー側
クライアント側

PaymentIntent (支払いインテント) は、顧客から支払いを回収する意図を表すオブジェクトで、決済プロセスのライフサイクルの各段階を追跡します。

サーバー側

金額と mxn 通貨 (OXXO は他の通貨には対応していません) を指定して、サーバーで PaymentIntent を作成します。すでに Payment Intents API を使用したシステムがある場合は、oxxo を PaymentIntent の支払い方法タイプのリストに追加します。

Command Line
curl
curl https://api.stripe.com/v1/payment_intents \ -u
sk_test_BQokikJOvBiI2HlWgH4olfQ2
:
\ -d "amount"=1099 \ -d "currency"="mxn" \ -d "payment_method_types[]"="oxxo"

その他の支払い方法オプション

PaymentIntent の支払い方法オプションでオプションの expires_after_days パラメーターを指定して、OXXO の支払い票の有効期限が切れるまでの日数を設定できます。たとえば、月曜日に OXXO の支払い票を作成し、expires_after_days を 2 に設定した場合、OXXO の支払い票は、America/Mexico_City (UTC-6) 時間で水曜日の 23:59 に有効期限が切れます。expires_after_days パラメーターは 1 日から 7 日まで設定できます。デフォルトは 3 日です。

クライアント側

クライアント側で、サーバーの PaymentIntent をリクエストし、その client secret を保存します。

Kotlin
class OXXOActivity: AppCompatActivity() { private lateinit var paymentIntentClientSecret: String private fun startCheckout() { // Request a PaymentIntent from your server and store its client secret } }

支払い方法の詳細を収集する
クライアント側

アプリで、必要とされる次の請求詳細を顧客から収集し、その請求詳細を使用して PaymentMethodCreateParams を作成します。

フィールド値
name顧客の氏名。姓と名はそれぞれ 2 文字以上である必要があります。
email顧客のメールアドレス。
Kotlin
val billingDetails = PaymentMethod.BillingDetails(email = "email@email.com", name = "Jenny Rosen") val paymentMethodCreateParams = PaymentMethodCreateParams.createOxxo(billingDetails)

Stripe に支払いを送信する
クライアント側

ステップ 2 で作成した PaymentIntent から client secret を取得し、PaymentLauncher confirm を呼び出します。これにより、OXXO の支払いコードを表示する Webview が示されます。その後、支払い結果とともに、onPaymentResult が呼び出されます。

Kotlin
class OXXOActivity : AppCompatActivity() { // ... private lateinit var paymentIntentClientSecret: String private val paymentLauncher: PaymentLauncher by lazy { val paymentConfiguration = PaymentConfiguration.getInstance(applicationContext) PaymentLauncher.Companion.create( this, paymentConfiguration.publishableKey, paymentConfiguration.stripeAccountId, ::onPaymentResult ) } private fun startCheckout() { // ... val confirmParams = ConfirmPaymentIntentParams .createWithPaymentMethodCreateParams( paymentMethodCreateParams = paymentMethodCreateParams, clientSecret = paymentIntentClientSecret ) paymentLauncher.confirm(confirmParams) } private fun onPaymentResult(paymentResult: PaymentResult) { when (paymentResult) { is PaymentResult.Completed -> { // The OXXO voucher was displayed successfully. // The customer can now pay the OXXO voucher at the OXXO convenience store. } is PaymentResult.Canceled -> { // handle cancel flow } is PaymentResult.Failed -> { // handle failures // (for example, the customer may need to choose a new payment // method) } } } }

オプション: 顧客に取引の詳細へのリンクをメールで送信する

Stripe は、OXXO の取引の詳細が正常に作成されると、payment_intent.requires_action イベントを送信します。顧客に取引の詳細のリンクをメールで送信する必要がある場合は、イベントの受信時に PaymentIntent (支払いインテント) を取得することで、リンクを取得できます。payment_intent.next_action.oxxo_display_details の hosted_voucher_url フィールドには、取引の詳細へのリンクが含まれています。

オプション: 取引の詳細をカスタマイズする

Stripe では、ブランディング設定ページで、顧客に表示される UI をカスタマイズできます。

取引の詳細には、以下のブランド設定を適用できます。

  • アイコン: ブランド画像と公開ビジネス名
  • アクセント—番号コピーボタンの色として使用されます
  • ブランドカラー: 背景色として使用されます

支払い後のイベントを処理する
サーバー側

OXXO は遅延通知型の支払い方法であるため、売上はすぐには利用可能になりません。顧客は決済直後に OXXO コンビニエンスストアで OXXO の支払いを行わない場合があります。

Stripe は、支払われた OXXO の支払いごとに、翌営業日 (メキシコの祝日を除く月曜日から金曜日) に payment_intent.succeeded イベントを送信します。ダッシュボードを使用するか、Webhook ハンドラーを構築して、これらのイベントを受信し、アクション (顧客への注文確認メールの送信、データベースへの売上の記録、配送ワークフローの開始など) を実行します。

有効期限日を過ぎると、PaymentIntent のステータスは processing に移行し、顧客は期限切れの OXXO の支払い票に対する支払いを行うことができなくなります。OXXO の支払い票が有効期限日の 23:59 America/Mexico_City (UTC-6) より前に支払われなかった場合、Stripe は有効期限日から 10 日以内に payment_intent.payment_failed イベントを送信します (ほとんどの場合、このイベントは 7 日以内に送信されます)。たとえば、OXXO の支払い票の有効期限日が 9 月 1 日の場合、このイベントは遅くとも 9 月 10 日までに送信されます。

イベント説明次のステップ
payment_intent.requires_actionOXXO の支払い票が正常に作成されました。顧客が OXXO で支払うのを待ちます。
payment_intent.processing顧客は OXXO の支払いができなくなりました。支払いの成功、または失敗を待ちます。
payment_intent.succeeded顧客は有効期限が切れる前に OXXO の支払い票に対する支払いを行いました。顧客が購入した商品またはサービスのフルフィルメントを行います。
payment_intent.payment_failed顧客が有効期限までに OXXO の支払い票に対する支払いを行いませんでした。Contact the customer through email or push notification and request another payment method.

イベントを受信し、ビジネスアクションを実行する

手動

Stripe ダッシュボードを使用して、Stripe のすべての支払いの確認、メール領収書の送信、入金処理、失敗した支払いの再試行を実行します。

  • ダッシュボードでテスト支払いを確認する

カスタムコード

Webhook ハンドラを構築してイベントをリッスンし、非同期型のカスタムの決済フローを作成します。Stripe CLI を使用して、ローカルで Webhook の組み込みのテストとデバッグを行います。

  • カスタム Webhook を作成する

構築したシステムをテストする

サンドボックスでは、Stripe# confirmPayment() を呼び出すときに PaymentMethod.BillingDetails#email を次の値に設定することで、さまざまなシナリオをテストできます。

メールアドレス説明

{any_prefix}@{any_domain}

顧客が 3 分後に支払い、約 3 分後に payment_intent.succeeded Webhook を受信する OXXO 支払いをシミュレーションします。本番環境では、この Webhook は 1 営業日後に受信します。

例: fulano@test.com

{any_prefix}succeed_immediately@{any_domain}

顧客が即座に支払う OXXO をシミュレーションし、payment_intent.succeeded Webhook を数秒以内に受信します。本番環境では、この Webhook は 1 営業日後に受信します。

例: succeed_immediately@test.com

{any_prefix}expire_immediately@{any_domain}

顧客が支払う前に期限切れになり、payment_intent.payment_failed Webhook を数秒以内に受信する OXXO をシミュレーションします。

支払い方法オプションで expires_after_days パラメーターに設定された値に関係なく、next_action.oxxo_display_details の expires_after フィールドには、現在時刻が設定されます。

例: expire_immediately@test.com

{any_prefix}expire_with_delay@{any_domain}

顧客が支払う前に期限切れになり、payment_intent.payment_failed Webhook を約 3 分後に受信する OXXO をシミュレーションします。

支払い方法オプションで expires_after_days パラメーターに設定された値に関係なく、next_action.oxxo_display_details の expires_after フィールドが 3 分後に設定されます。

例: expire_with_delay@test.com

{any_prefix}fill_never@{any_domain}

顧客が支払う前に期限切れになり、payment_intent.payment_failed Webhook を 1 営業日と 2 日後に受信する OXXO をシミュレーションします。本番環境では、この Webhook をテスト環境と同じタイミングで受信します。

例: fill_never@test.com

有効期限とキャンセル

OXXO vouchers expire after the expires_after UNIX timestamp and a customer can’t pay an OXXO voucher once it has expired. OXXO vouchers can’t be canceled before expiration.

OXXO 支払い票の有効期限が切れると、PaymentIntent のステータスは requires_payment_method に変わります。この時点では、別の支払い方法を指定して PaymentIntent を確定するか、キャンセルすることができます。

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