API Payment Methods
Descubre más sobre la API que impulsa toda una gama de métodos de pago internacionales.
La API Payment Methods te permite aceptar distintos métodos de pago a través de una sola API. Un objeto PaymentMethod contiene los datos del método para crear pagos. Con la API Payment Methods, puedes combinar un PaymentMethod:
- Con un PaymentIntent para aceptar un pago
- Con un SetupIntent y un cliente para guardar los datos de pago para más adelante
Métodos de pago aceptados
Para determinar qué método de pago usar en regiones determinadas, consulta la guía de métodos de pago.
En la guía se incluyen los métodos de pago disponibles en diferentes regiones, una descripción detallada de las características de cada método de pago y las regiones geográficas donde más se usan. Puedes activar cualquier método de pago disponible en el Dashboard. La activación suele ser instantánea y no requiere contratos adicionales.
Acciones del cliente
Algunos métodos de pago exigen que el cliente cumpla pasos adicionales para completar el pago. El parámetro next_
del objeto PaymentIntent especifica el tipo de acción del cliente.
A continuación indicamos algunas de las acciones habituales que deben realizar los clientes:
- Redirigirse al servicio en línea de su banco para autenticar y aprobar el pago.
- Verificar la titularidad de la cuenta por medio de un código único que publicas en la API de Stripe (por ejemplo, microdepósitos).
- Enviar fondos (por ejemplo, en caso de transferencias bancarias) mediante el servicio en línea del banco.
No todos los métodos de pago exigen que el cliente realice acciones adicionales. Por ejemplo, los pagos con tarjeta (excepto con 3D Secure) no necesitan una autenticación adicional más allá de recopilar los datos de la tarjeta.
Nota
For payment methods that require customer action, configure event destinations for notifications on whether a payment has succeeded or not.
Notificación inmediata o diferida de que el pago se hizo efectivo
Algunos métodos de pago reflejan de inmediato el estado del pago al efectuarse una transacción (por ejemplo, los pagos con tarjeta). Otros, como los adeudos ACH, en cambio, tienen un retraso. Cuando el estado del pago se refleja de inmediato, el estado del PaymentIntent cambia a succeeded
o a requires_
. El estado succeeded
garantiza que recibirás los fondos del cliente.
Los métodos de pago con notificación diferida no pueden garantizar el pago durante la espera. El estado del objeto PaymentIntent será processing
hasta que el estado del pago indique si se hizo efectivo o no. Durante ese plazo, es habitual que las empresas muestren el pedido con el estado pendiente y no completen el pedido hasta que se haga efectivo el pago.
Nota
For payment methods with delayed notification, configure event destinations for notifications on whether a payment has succeeded or not.
De un solo uso o reutilizables
Puedes reutilizar ciertos métodos de pago (por ejemplo, tarjetas o adeudos bancarios) para realizar pagos adicionales sin tener que autorizar y guardar de nuevo los datos de pago.
Siempre debes configurar métodos de pago reutilizables para usarlos en el futuro y así reducir la posibilidad de que se produzcan rechazos y fricciones en los pagos en el futuro (como se requiere autenticación). Los métodos de pago reutilizables se pueden configurar para utilizarse en el futuro al aceptar un pago o configurar para utilizarse en el futuro sin aceptar un pago.
Los métodos de pago de un solo uso (por ejemplo, algunos tipos de transferencias bancarias) no se pueden vincular a clientes porque se consumen después de un intento de pago.
Use event destinations to track payment status
Configure event destinations for payment methods that either require customer action or when payment notification is delayed. Stripe sends the following events when the PaymentIntent
status is updated:
Evento | Descripción | Siguientes pasos |
---|---|---|
payment_ | El pago del cliente se envió a Stripe correctamente. Solo se aplica a métodos de pago con notificación diferida. | Espera hasta saber si el pago iniciado se hizo efectivo o no. |
payment_ | El pago se hizo efectivo. | Completa el pedido de los productos o servicios comprados. |
payment_ | Error en el pago. | Envía un correo electrónico o una notificación emergente para solicitar otro método de pago. |
You can also use the following options instead of setting up an event destination to listen to events:
- Haz un seguimiento manual del estado de los pagos en el Dashboard de Stripe, si tu empresa acepta pocos pedidos con métodos de pago con notificación diferida. El Dashboard te permite ver todos tus pagos en Stripe, enviar recibos por correo electrónico, gestionar transferencias o reintentar pagos fallidos.
- Usa el sondeo (por ejemplo, recupera repetidamente un PaymentIntent para comprobar su estado). Ten en cuenta que el sondeo es mucho menos fiable y puede no funcionar a escala. Stripe aplica una limitación de velocidad a las solicitudes de API, así que ten cuidado si usas el sondeo.
- Usa una aplicación de socio para manejar eventos comerciales comunes, como automatización o marketing y ventas, mediante la integración de una aplicación de socio.
El objeto PaymentMethod
Un PaymentMethod contiene detalles del método de pago reutilizable para crear pagos (por ejemplo, la fecha de vencimiento de la tarjeta o la dirección de facturación), no incluye información específica de la transacción (por ejemplo, la cantidad o la moneda). Un PaymentMethod se adjunta a un PaymentIntent para representar los estados de un ciclo de vida de pago. Cada PaymentMethod tiene un atributo de type (por ejemplo, "type": "sepa_
) y un hash adicional cuyo nombre coincide con el type y contiene información específica del type de PaymentMethod (por ejemplo, "sepa_
). Ejemplo de un objeto PaymentMethod sepa_
:
{ "id": "pm_123456789", "object": "payment_method", "billing_details": { "address": {...}, "email": "jenny@example.com", "name": "Jenny Rosen", "phone": "+335555555555" }, "sepa_debit": { "bank_code": "37040044", "branch_code": "94832", "country": "FR", "fingerprint": "ygEJfUjzWMGyWnZg", "last4": "3000" }, "type": "sepa_debit", (...) }
Nota
Para gestionar la información de pago confidencial de forma segura y gestionar las acciones de los clientes automáticamente, Stripe te recomienda crear métodos de pago con Stripe.js.