Ir a contenido
Crea una cuenta
o
inicia sesión
Logotipo de la documentación de Stripe
/
Pregúntale a la IA
Crear cuenta
Iniciar sesión
Empezar
Pagos
Ingresos
Plataformas y marketplaces
Gestión del dinero
Recursos para desarrolladores

Añade métodos de pago externos

Añade métodos de pago externos al Mobile Payment Element.

Nota

Hemos creado una función de métodos de pago personalizados que te permite ampliar tu integración de pagos con métodos de pago procesados fuera de Stripe. Te recomendamos que lo uses para tu integración en lugar de utilizar métodos de pago externos.

El Mobile Payment Element puede mostrar métodos de pago externos que aceptas además de los métodos de pago que se procesan a través de Stripe. La integración de métodos de pago externos requiere trabajo de integración adicional, ya que las transacciones de métodos de pago externos se procesan y finalizan fuera de Stripe.

Responsabilidad por los métodos de pago externos

Cuando los clientes eligen un método de pago externo, tu aplicación gestiona el pago en lugar de que lo procese Stripe. Para obtener más información sobre tus responsabilidades y la disponibilidad continua de métodos de pago externos, consulta el descargo de responsabilidad de los métodos de pago externos.

Esta guía añade un método de pago externo, Fawry, mediante la guía Aceptar pagos desde la aplicación de Payment Sheet. Consulta la lista de todos los métodos de pago externos disponibles.

Cosas a tener en cuenta

  1. Crea una cuenta de Stripe o inicia sesión.
  2. Sigue el ejemplo de Payment Sheet para completar una integración de pagos.
  3. Para cada método de pago externo que quieras añadir, completa su integración y confirma que funciona en la región en la que quieres habilitarlo.

Añade tipos de métodos de pago externos

Cuando crees tu objeto PaymentSheet.Configuration e inicialices PaymentSheet, especifica los métodos de pago externos que quieres añadir al Payment Element y un controlador para completar el pago. En este ejemplo se añade 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 } }

Completa el pago

Cuando el cliente pulsa el botón Compra en PaymentSheet mediante un método de pago externo, llama al controlador con el tipo (por ejemplo, «external_fawry»), los datos de facturación que se han recopilado y un controlador de finalización.

Tu implementación completa el pago (por ejemplo, mediante el SDK de tu proveedor de métodos de pago externos) y llama al controlador de finalización con el siguiente resultado del pago: completed, canceled o failure(error:).

Si pasas .failure(error:), PaymentSheet muestra el error utilizando errorDescription para los errores de Swift y localizedDescription para 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)) } }

OpcionalPosiciona los métodos de pago externos

Prueba tu integración

  1. Revisa el flujo del proceso de compra y verifica que el Payment Element muestre Fawry. En este ejemplo se configura Fawry en la segunda posición después de las tarjetas.
    El Payment Element cuando se añade Fawry
  2. Elige el método de pago Fawry.
    El Payment Element cuando se selecciona Fawry
  3. Haz clic en Paga ahora para probar la integración existente de Fawry. Verifica que tu integración completa la transacción y que cualquier acción posterior al pago (por ejemplo, mostrar una página de confirmación, un mensaje de confirmación o un mensaje de error) sigue funcionando con tu integración de Fawry.

Consideraciones sobre el Dashboard

Los PaymentIntents de las transacciones procesadas con un proveedor de métodos de pago externo tienen el estado incomplete en el Stripe Dashboard. Stripe no participa en transacciones de métodos de pago externos y no puede determinar el estado de estas transacciones.

Si recopilas datos de pago antes de crear un Intent, no verás ninguna transacción incomplete en el Dashboard de Stripe para las transacciones que se procesaron con un proveedor de métodos de pago externo.

Descargo de responsabilidad por los métodos de pago externos

Puedes usar el Mobile Payment Element de Stripe para mostrar algunos métodos de pago externos que no son compatibles con Stripe, pero con los que te integras directamente. Cuando los clientes eligen un método de pago externo, tu aplicación completa la transacción en lugar del Mobile Payment Element de Stripe. Reconoces lo siguiente:

  1. Stripe no ofrece ni acepta métodos de pago externos. El proveedor de métodos de pago externos proporciona el funcionamiento y el soporte de los métodos de pago externos.
  2. Eres responsable de mantener una integración directa con el proveedor de métodos de pago externo.
  3. Tienes que mantener un acuerdo con el proveedor externo de métodos de pago y eres responsable de cumplir con tus acuerdos con cada proveedor de métodos de pago externo.
  4. Eres responsable de obtener todos los derechos necesarios para utilizar las marcas y los logotipos del proveedor de métodos de pago externo en tu proceso de compra, tal y como se describe en esta documentación.
  5. Stripe no es responsable del procesamiento de ninguna transacción con ningún proveedor de métodos de pago externo, lo que incluye, por ejemplo, cargos, reembolsos, disputas, liquidaciones o flujos de fondos.
  6. Tú o el proveedor de métodos de pago externo son responsables de la finalización del flujo de compra después de que un cliente haya elegido un método de pago externo, incluidos, por ejemplo, la confirmación del pedido y la conciliación de pedidos.
  7. Eres responsable de configurar correctamente la URL de redireccionamiento para el método de pago externo.
  8. Debes eliminar inmediatamente los métodos de pago externos en caso de que se rescindan tus acuerdos con cualquier proveedor de métodos de pago externo o Stripe elimine la disponibilidad de un método de pago externo.
  9. Solo se te permite integrar y presentar en el Payment Element los métodos de pago externos enumerados en esta guía.
  10. Eres la única persona responsable de asegurarte de que se redirija correctamente a los compradores al método de pago externo elegido.

Disponibilidad continua de métodos de pago externos

Stripe podría decidir en cualquier momento eliminar la disponibilidad de cualquier método de pago como método de pago externo. Stripe te notificará si elimina alguno de los métodos de pago externos que usas, y deberás eliminar inmediatamente el método de pago externo de tu código. Si no lo haces, el método de pago externo no se mostrará a tus clientes.

Métodos de pago externos disponibles

Puedes mostrar los siguientes métodos de pago externos. Debes usar el tipo de método de pago externo correspondiente en tu código.

RegiónMétodo de pagoTipo de método de pago externo
AMERInteracexternal_interac
APACau PAYexternal_au_pay
APACatoneexternal_atone
APACTouch’n Goexternal_tng_ewallet
APACソフトバンクまとめて支払い (Pagos del operador Softbank)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, EuropaShopback Payexternal_shopback_pay
EuropaAplazameexternal_aplazame
EuropaBizumexternal_bizum
EuropaDividoexternal_divido
EuropaFonixexternal_fonix
EuropaIwocapayexternal_iwocapay
EuropaKBCexternal_kbc
EuropaNexi Payexternal_nexi_pay
EuropaOneyexternal_oney
EuropaPayconiqexternal_payconiq
EuropaPayPoexternal_paypo
EuropaSofincoexternal_sofinco
EuropaPostepayexternal_postepay
EuropaPostFinanceexternal_postfinance
EuropaScalapayexternal_scalapay
EuropaTrueLayerexternal_truelayer
EuropaWalleyexternal_walley
EuropaYounitedPayexternal_younited_pay
En todo el mundoLINE Payexternal_line_pay
En todo el mundopaysafecardexternal_paysafecard
En todo el mundoSamsung Payexternal_samsung_pay
En todo el mundoSezzleexternal_sezzle
LATAMDappexternal_dapp
LATAMPicPayexternal_picpay
MEATabbyexternal_tabby
MEABenefitexternal_benefit
MEAFawryexternal_fawry
¿Te ha sido útil la página?
SíNo
¿Necesitas ayuda? Ponte en contacto con el equipo de soporte.
Únete a nuestro programa de acceso anticipado.
Echa un vistazo a nuestro registro de cambios.
¿Tienes alguna pregunta? Ponte en contacto con el equipo de ventas.
¿LLM? Lee llms.txt.
Con tecnología de Markdoc