コンテンツにスキップ
アカウントを作成
または
サインイン
Stripe ドキュメントのロゴ
/
AI に質問する
アカウントを作成
サインイン
始める
支払い
財務の自動化
プラットフォームおよびマーケットプレイス
資金管理
開発者向けのツール
始める
支払い
財務の自動化
始める
支払い
財務の自動化
プラットフォームおよびマーケットプレイス
資金管理

注

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

外部の決済手段を追加する

Mobile Payment Element に外部の決済手段を追加します。

注

カスタムの決済手段機能を作成しました。Stripe 外で処理される決済手段を連携させて決済システムを拡張できます。外部の決済手段ではなく、システムで使用することをお勧めします。

The Mobile Payment Element can display external payment methods that you support in addition to the payment methods processed through Stripe. Integrating external payment methods requires additional integration work, because external payment method transactions are processed and finalized outside of Stripe.

External payment methods responsibility

When customers choose an external payment method, your app handles the payment instead of Stripe processing it. To learn about your responsibilities and the ongoing availability of external payment methods, see the external payment methods disclaimer.

このガイドでは、Payment Sheet を使用したアプリ内決済受け付けガイドを応用して、外部決済手段である Fawry を追加しています。利用可能なすべての外部決済手段のリストをご確認ください。

はじめに

  1. Stripe アカウントを作成するか、サインインしてください。
  2. Payment Sheet のサンプルに従って、決済システムの構築を完了します。
  3. 追加しようとしている外部決済手段ごとに、システムとの連携が完了し、目的の地域で機能していることを確認してください。

外部の支払い方法タイプを追加する

PaymentSheet.Configuration オブジェクトを作成し、PaymentSheet を初期化するときに、Payment Element に追加する外部の支払い方法、および決済を実行するハンドラを指定します。次の例では Fawry を追加します。

import StripePaymentSheet class MyCheckoutVC: UIViewController { func setUpPaymentSheet() { // ... var configuration = PaymentSheet.Configuration() configuration.externalPaymentMethodConfiguration = .init( externalPaymentMethods: ["external_fawry"] ) { externalPaymentMethodType, billingDetails, completion in self.handleExternalPaymentMethod(type: externalPaymentMethodType, billingDetails: billingDetails, completion: completion) } // ... } func handleExternalPaymentMethod(type: String, billingDetails: STPPaymentMethodBillingDetails, completion: @escaping (PaymentSheetResult) -> Void) { // ...explained in the next step } }

支払いを完了する

顧客が PaymentSheet で外部の支払い方法を使用する購入ボタンをタップすると、外部の支払い方法のタイプ (“external_fawry” など)、収集された請求の詳細、および完了ハンドラを指定して、ハンドラが呼び出されます。

実装システムによって支払いが実行 (外部の支払い方法の提供業者の SDK を使用するなど) され、決済の結果 (completed、canceled、または failure(error:)) を指定して完了ハンドラが呼び出されます。

.failure(error:) を渡すと、PaymentSheet によって errorDescription (SWIFT エラーの場合) または localizedDescription (NSError の場合) を使用してエラーが表示されます。

import StripePaymentSheet class MyCheckoutVC: UIViewController { func setUpPaymentSheet() { // ... var configuration = PaymentSheet.Configuration() configuration.externalPaymentMethods = .init( externalPaymentMethods: ["external_fawry"] ) { [weak self] externalPaymentMethodType, billingDetails, completion in self?.handleExternalPaymentMethod(type: externalPaymentMethodType, billingDetails: billingDetails, completion: completion) } // ... } func handleExternalPaymentMethod(type: String, billingDetails: STPPaymentMethodBillingDetails, completion: @escaping (PaymentSheetResult) -> Void) { // Your implementation should complete the payment with the payment method provider // When the payment completes, cancels, or fails, call the `completion` handler // Note you can present on top of PaymentSheet by using the `self.presentedViewController`. // This example code just immediately fails: let exampleError = NSError(domain: "MyErrorDomain", code: 0, userInfo: [NSLocalizedDescriptionKey: "Failed to complete payment!"]) completion(.failed(error: exampleError)) } }

オプション外部の支払い方法を配置する

実装内容をテストする

  1. 決済フローを実行して、Payment Element に Fawry が表示されることを確認します。この例では、カードの後の 2 番目の項目として Fawry を設定しています。
    Fawry が追加されたときの Payment Element
  2. Fawry による支払い方法を選択します。
    Fawry が選択されたときの Payment Element
  3. 今すぐ支払うをクリックして、既存の Fawry の実装をテストします。お客様の実装システムが取引を完了し、支払い後のすべての動作 (確認ページ、成功メッセージ、または失敗メッセージの表示など) が Fawry の実装でも引き続き機能することを確認します。

ダッシュボードに関する考慮事項

外部の支払い方法の提供業者に対する PaymentIntent は Stripe ダッシュボードでは、incomplete ステータスになります。Stripe は外部の支払い方法による取引に関与しないため、これらの取引のステータスを特定できません。

インテントを作成する前に支払いの詳細を収集する場合、外部の支払い方法の提供業者で処理された取引に対して、Stripe ダッシュボードに incomplete 取引は表示されません。

外部の支払い方法の免責事項

You can use the Stripe Mobile Payment Element to show some external payment methods that aren’t supported by Stripe but that you directly integrate with. When customers choose an external payment method, your app completes the transaction instead of the Stripe Mobile Payment Element. You acknowledge that:

  1. 外部の支払い方法が提供されても、Stripe で対応してもいません。外部の支払い方法の運用とサポートは外部の支払い方法の提供業者によって提供されます。
  2. 外部の支払い方法の提供業者との直接実装の保守はお客様自身で行う必要があります。
  3. お客様は外部の支払い方法の提供業者との契約を維持する必要があり、各提供業者との契約を遵守する責任があります。
  4. 決済機能内で外部の支払い方法の提供業者のマークとロゴを使用するのに必要なすべての権利は、お客様がこれらのドキュメントの記載に従って取得する必要があります。
  5. Stripe は、いかなる外部の支払い方法の提供業者とのいかなる取引 (支払い、返金、不審請求の申請、売上処理、資金フローなど) も処理する責任を負いません。
  6. 顧客が外部の支払い方法を選択した後で、たとえば注文の確定や注文の照合などを含む、注文の購入フローを完了する責任は、お客様または外部の支払い方法の提供業者にあります。
  7. 外部の支払い方法へのリダイレクト URL は、お客様自身の責任で正しく設定する必要があります。
  8. 外部の支払い方法の提供業者との契約が終了するか、Stripe が外部の支払い方法を利用不可にした場合、お客様はすぐに外部の支払い方法を削除する必要があります。
  9. Payment Element に実装して提示できる外部の支払い方法は、このガイドのリストにあるものに限られます。
  10. 買い手が指定の外部の支払い方法に正しくリダイレクトされるようにする作業は、お客様単独の責任で行う必要があります。

外部の支払い方法の継続的な利用可能性

Stripe は、いつでも外部の支払い方法として任意の支払い方法を利用不可にすることを決定できます。お客様が使用している外部の支払い方法が利用不可になる場合は Stripe から通知されるため、コードで外部の支払い方法をすぐに削除する必要があります。これに失敗すると、外部の支払い方法が顧客に表示されなくなります。

利用可能な外部の支払い方法

以下の外部の支払い方法を表示できます。該当する外部の支払い方法タイプをコード内でお使いください。

地域決済手段外部の支払い方法タイプ
AMERInteracexternal_interac
APACau PAYexternal_au_pay
APACatoneexternal_atone
APACTouch’n Goexternal_tng_ewallet
APACソフトバンクまとめて支払いexternal_softbank_carrier_payment
APACToss Payexternal_toss_pay
APACLaybuyexternal_laybuy
APACBank Payexternal_bank_pay
APACauかんたん決済external_au_easy_payment
APACBitCashexternal_bitcash
APACAzupayexternal_azupay
APACd払いexternal_dbarai
APACFamiPayexternal_famipay
APACGCashexternal_gcash
APACGrabPay Laterexternal_grabpay_later
APACMoMoexternal_momo
APACNET CASHexternal_net_cash
APACOctopusexternal_octopus
APACPaidyexternal_paidy
APACPayPayexternal_paypay
APACPlanPayexternal_planpay
APACペイジーexternal_pay_easy
APAC楽天ペイexternal_rakuten_pay
APACメルペイexternal_merpay
APACWebMoneyexternal_webmoney
APAC、ヨーロッパShopback Payexternal_shopback_pay
ヨーロッパAplazameexternal_aplazame
ヨーロッパBizumexternal_bizum
ヨーロッパDividoexternal_divido
ヨーロッパFonixexternal_fonix
ヨーロッパIwocapayexternal_iwocapay
ヨーロッパKBCexternal_kbc
ヨーロッパNexi Payexternal_nexi_pay
ヨーロッパOneyexternal_oney
ヨーロッパPayconiqexternal_payconiq
ヨーロッパPayPoexternal_paypo
ヨーロッパSofincoexternal_sofinco
ヨーロッパPostepayexternal_postepay
ヨーロッパPostFinanceexternal_postfinance
ヨーロッパScalapayexternal_scalapay
ヨーロッパTrueLayerexternal_truelayer
ヨーロッパWalleyexternal_walley
ヨーロッパYounitedPayexternal_younited_pay
グローバルLINE Payexternal_line_pay
グローバルPaySafeCardexternal_paysafecard
グローバルSamsung Payexternal_samsung_pay
グローバルSezzleexternal_sezzle
LATAMDappexternal_dapp
LATAMPicPayexternal_picpay
MEATabbyexternal_tabby
MEABenefitexternal_benefit
MEAFawryexternal_fawry
このページはお役に立ちましたか。
はいいいえ
お困りのことがございましたら 、サポートにお問い合わせください。
早期アクセスプログラムにご参加ください。
変更ログをご覧ください。
ご不明な点がございましたら、お問い合わせください。
LLM ですか?llms.txt を読んでください。
Powered by Markdoc