Lewati ke konten
Buat akun
atau
Masuk
Logo Dokumen Stripe
/
Tanya AI
Buat akun
Masuk
Mulai
Pembayaran
Pendapatan
Platform dan situs belanja online
Manajemen uang
Sumber daya pengembang

Tambahkan metode pembayaran eksternal

Tambahkan metode pembayaran eksternal ke Mobile Payment Element.

Catatan

Kami membuat fitur metode pembayaran custom yang memungkinkan Anda memperluas integrasi pembayaran dengan metode pembayaran yang diproses di luar Stripe. Kami merekomendasikan penggunaannya untuk integrasi Anda, bukan metode pembayaran eksternal.

Mobile Payment Element dapat menampilkan metode pembayaran eksternal yang Anda dukung selain metode pembayaran yang diproses melalui Stripe. Pengintegrasian metode pembayaran eksternal memerlukan pekerjaan integrasi tambahan, karena transaksi metode pembayaran eksternal diproses dan difinalisasi di luar Stripe.

Tanggung jawab metode pembayaran eksternal

Bila pelanggan memilih metode pembayaran eksternal, aplikasi Anda akan menangani pembayaran, bukan Stripe memprosesnya. Untuk mempelajari tentang tanggung jawab Anda dan ketersediaan berkelanjutan metode pembayaran eksternal, lihat penafian metode pembayaran eksternal.

Panduan ini menambahkan metode pembayaran eksternal, Fawry, menggunakan panduan Terima pembayaran dalam aplikasi Payment Sheet. Lihat daftar semua metode pembayaran eksternal yang tersedia.

Sebelum Anda memulai

  1. Buat akun Stripe atau masuk.
  2. Ikuti contoh Payment Sheet untuk menyelesaikan integrasi pembayaran.
  3. Untuk setiap metode pembayaran eksternal yang ingin Anda tambahkan, selesaikan integrasinya dan konfirmasikan bahwa metode ini berfungsi di wilayah tempat Anda ingin mengaktifkannya.

Tambahkan tipe metode pembayaran eksternal

Saat membuat objek PaymentSheet.Configuration Anda serta menginisialisasi PaymentSheet, tentukan metode pembayaran eksternal yang ingin Anda tambahkan ke Payment Element dan handler untuk menyelesaikan pembayaran. Contoh ini menambahkan 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 } }

Selesaikan pembayaran

Bila pelanggan mengetuk tombol Beli di PaymentSheet menggunakan metode pembayaran eksternal, itu akan memanggil handler dengan tipe (misalnya, “external_fawry”), detail tagihan yang dikumpulkan, dan handler penyelesaian.

Implementasi Anda menyelesaikan pembayaran (misalnya, dengan menggunakan SDK penyedia metode pembayaran eksternal) dan memanggil handler penyelesaian dengan hasil pembayaran: completed, canceled, atau failure(error:).

Jika Anda meneruskan .failure(error:), PaymentSheet menampilkan kesalahan menggunakan errorDescription untuk kesalahan Swift dan localizedDescription untuk NSErrors.

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)) } }

OpsionalPosisikan metode pembayaran eksternal

Uji integrasi Anda

  1. Periksa alur checkout Anda dan verifikasikan bahwa Payment Element menampilkan Fawry. Contoh ini mengonfigurasikan Fawry di posisi kedua setelah kartu.
    Payment Element bila Fawry ditambahkan
  2. Pilih metode pembayaran Fawry.
    Payment Element bila Fawry dipilih
  3. Klik Bayar sekarang untuk mencoba integrasi Fawry yang ada. Verifikasikan bahwa integrasi Anda menyelesaikan transaksi dan bahwa setiap tindakan pasca-pembayaran (misalnya, menampilkan halaman konfirmasi, pesan keberhasilan, atau pesan kegagalan) tetap berfungsi dengan integrasi Fawry Anda.

Pertimbangan Dashboard

PaymentIntents untuk transaksi yang diproses dengan penyedia metode pembayaran eksternal memiliki status incomplete di Dashboard Stripe. Stripe tidak terlibat dalam transaksi metode pembayaran eksternal dan tidak dapat menentukan status transaksi ini.

Jika mengumpulkan detail pembayaran sebelum membuat Intent, Anda tidak akan melihat transaksi incomplete di Dashboard Stripe untuk transaksi yang diproses dengan penyedia metode pembayaran eksternal.

Sanggahan metode pembayaran eksternal

Anda dapat menggunakan Stripe Mobile Payment Element untuk menampilkan beberapa metode pembayaran eksternal yang tidak didukung oleh Stripe tetapi secara langsung terintegrasi dengan Anda. Bila pelanggan memilih metode pembayaran eksternal, aplikasi Anda akan menyelesaikan transaksi, bukan Stripe Mobile Payment Element. Anda mengakui bahwa:

  1. Metode pembayaran eksternal tidak ditawarkan atau tidak didukung oleh Stripe. Operasi dan dukungan metode pembayaran eksternal disediakan oleh penyedia metode pembayaran eksternal.
  2. Anda bertanggung jawab untuk memelihara integrasi langsung dengan penyedia metode pembayaran eksternal.
  3. Anda perlu menjaga perjanjian dengan penyedia metode pembayaran eksternal dan bertanggung jawab untuk mematuhi perjanjian Anda dengan setiap penyedia metode pembayaran eksternal.
  4. Anda bertanggung jawab untuk mendapatkan semua hak yang diperlukan untuk menggunakan tanda dan logo penyedia metode pembayaran eksternal dalam checkout Anda, seperti yang dijelaskan dalam dokumen ini.
  5. Stripe tidak bertanggung jawab atas pemrosesan transaksi dengan penyedia metode pembayaran eksternal, termasuk, misalnya, charge, pengembalian dana, sengketa, penyelesaian, atau aliran dana.
  6. Anda atau penyedia metode pembayaran eksternal bertanggung jawab atas penyelesaian alur pembelian setelah pelanggan memilih metode pembayaran eksternal, termasuk, misalnya, konfirmasi pesanan dan rekonsiliasi pesanan.
  7. Anda bertanggung jawab untuk mengonfigurasi URL pengalihan untuk metode pembayaran eksternal dengan benar.
  8. Anda harus segera menghapus metode pembayaran eksternal jika perjanjian Anda dengan penyedia metode pembayaran eksternal berakhir atau Stripe menghilangkan ketersediaan metode pembayaran eksternal.
  9. Anda hanya diizinkan untuk mengintegrasikan dengan dan menyajikan metode pembayaran eksternal yang tercantum dalam panduan ini kepada Payment Element.
  10. Anda sepenuhnya bertanggung jawab untuk memastikan bahwa pembeli dialihkan dengan benar ke metode pembayaran eksternal yang dipilih.

Ketersediaan metode pembayaran eksternal yang sedang berlangsung

Stripe mungkin sewaktu-waktu memutuskan untuk menghapus ketersediaan metode pembayaran sebagai metode pembayaran eksternal. Stripe akan memberi tahu Anda tentang penghapusan metode pembayaran eksternal yang Anda gunakan, dan Anda harus segera menghapus metode pembayaran eksternal dalam kode Anda. Kegagalan melakukannya akan mengakibatkan metode pembayaran eksternal tidak ditampilkan kepada pelanggan Anda.

Metode pembayaran eksternal yang tersedia

Anda dapat menampilkan metode pembayaran eksternal berikut ini. Anda harus menggunakan tipe metode pembayaran eksternal yang sesuai dalam kode Anda.

WilayahMetode pembayaranTipe metode pembayaran eksternal
AMERInteracexternal_interac
APACau PAYexternal_au_pay
APACatoneexternal_atone
APACTouch’n Goexternal_tng_ewallet
APACソフトバンクまとめて支払い (Softbank carrier payments)external_softbank_carrier_payment
APACToss Payexternal_toss_pay
APACLaybuyexternal_laybuy
APACBank Payexternal_bank_pay
APACauかんたん決済 (au easy payments)external_au_easy_payment
APACBitCashexternal_bitcash
APACAzupayexternal_azupay
APACd払い (d-barai)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ペイジー (Pay-easy)external_pay_easy
APAC楽天ペイ (Rakuten Pay)external_rakuten_pay
APACメルペイ (Merpay)external_merpay
APACWebMoneyexternal_webmoney
APAC, EuropeShopback Payexternal_shopback_pay
EropaAplazameexternal_aplazame
EropaBizumexternal_bizum
EropaDividoexternal_divido
EropaFonixexternal_fonix
EropaIwocapayexternal_iwocapay
EropaKBCexternal_kbc
EropaNexi Payexternal_nexi_pay
EropaOneyexternal_oney
EropaPayconiqexternal_payconiq
EropaPayPoexternal_paypo
EropaSofincoexternal_sofinco
EropaPostepayexternal_postepay
EropaPostFinanceexternal_postfinance
EropaScalapayexternal_scalapay
EropaTrueLayerexternal_truelayer
EropaWalleyexternal_walley
EropaYounitedPayexternal_younited_pay
GlobalLINE Payexternal_line_pay
Globalpaysafecardexternal_paysafecard
GlobalSamsung Payexternal_samsung_pay
GlobalSezzleexternal_sezzle
LATAMDappexternal_dapp
LATAMPicPayexternal_picpay
MEATabbyexternal_tabby
MEAManfaatexternal_benefit
MEAFawryexternal_fawry
Apakah halaman ini membantu?
YaTidak
Butuh bantuan? Hubungi Tim CS.
Bergabunglah dengan program akses awal kami.
Lihat log perubahan kami.
Ada pertanyaan? Hubungi Bagian Penjualan.
LLM? Baca llms.txt.
Dijalankan oleh Markdoc