Diferencia entre las API Charges y Payment Intents
Descubre las diferencias entre las dos API de pago principales de Stripe y cuándo utilizarlas.
Cómo son las API de pago de Stripe
Actualmente, existen tres formas de aceptar pagos en Stripe:
- Stripe Checkout
- API Charges
- API Payment Intents
Stripe Checkout es una página de pago prediseñada a la que puedes redireccionar a tu cliente para realizar compras sencillas y suscripciones. Ofrece muchas funciones, como Apple Pay, Google Pay, internacionalización y validación de formularios.
La API Charges y la API Payment Intents te permiten definir experiencias y flujos de pago personalizados.
La API Payment Intents es la API que unifica todos los productos y métodos de pago de Stripe. Aunque no dejaremos de usar la API Charges, las nuevas funciones solo estarán disponibles en la API Payment Intents.
Para ver un cuadro comparativo de todas las funciones, mira la tabla que aparece a continuación:
API Charges | API Payment Intents |
---|---|
La utilizan empresas con clientes principalmente de Estados Unidos y Canadá que buscan una forma sencilla de aceptar tarjetas. | Obligatorio para empresas que aceptan varios métodos de pago y tarjetas que exigen autenticación (por ejemplo, la autenticación reforzada de clientes en Europa). |
Funciona en la web, en iOS y en Android. | Funciona en la web, en iOS y en Android, y también puede utilizarse para aceptar pagos en la tienda con Terminal. |
Acepta tarjetas y todos los métodos de pago en la API Sources. | Acepta tarjetas, tarjetas que requieren 3D Secure, iDEAL, SEPA y muchos otros métodos de pago. |
no está lista para SCA | Está lista para SCA |
Cómo migrar el código que lee desde objetos Charge
Si tienes una aplicación con varios flujos de pago y quieres migrar cada uno de ellos de forma gradual de la API Charges a la API Payment Intents, primero debes actualizar el código que lea desde el objeto Charge. Para facilitar la tarea, el objeto Charge tiene dos propiedades adicionales, payment_method_details y billing_details, que proporcionan una interfaz uniforme para leer los datos del método de pago utilizado para el cargo.
Estos campos están disponibles en todas las versiones de la API y en los objetos Charge creados tanto con la API Charges como con la API Payment Intents.
La siguiente tabla muestra las propiedades más utilizadas en un cargo y cómo se puede acceder a la misma información mediante las propiedades adicionales: