Guía de migración de precios de Checkout
Descubre cómo actualizar tu integración para usar precios con Stripe Checkout.
La API Prices añade nuevas funciones y flexibilidad a la forma en la que cobras a los clientes. Esta nueva integración ofrece:
- Modelos más unificados para los elementos de Checkout; en lugar de planes, SKU y partidas alineadas, ahora cada elemento es un precio.
- La capacidad de procesar imágenes de productos para artículos recurrentes.
- Crear un producto y un catálogo de precios reutilizables en lugar de ítems de factura puntuales.
- Crea tarifas alineadas para suscripciones.
- Aplicar tipos fiscales dinámicos a las suscripciones y a los pagos puntuales.
¿No quieres migrar? Puedes seguir usando tu integración actual, pero las nuevas funciones no son compatibles. Puedes usar cualquier plan nuevo o los precios recurrentes que crees en el parámetro plan
de las llamadas existentes a la API.
Resumen de productos y precios
Los precios son una nueva unidad central de Stripe que funciona con las suscripciones, las facturas y Checkout. Cada precio está vinculado a un único Product, y cada producto puede tener varios precios. Los diferentes bienes físicos o niveles de servicio deben estar representados por productos. El precio de ese producto debe estar representado por precios.
Define los precios base y, en el caso de productos recurrentes, el ciclo de facturación. Esto te permite cambiar y añadir los precios sin necesidad de cambiar los datos de lo que ofreces. Por ejemplo, puede que tengas un único producto «de oro» con precios de 10 USD al mes, 100 USD al año, 9 EUR al mes y 90 EUR al año. O quizás tengas una camiseta azul con un precio de 20 USD y 15 EUR.
Pagos puntuales
Las integraciones para pagos únicos tienen los siguientes cambios:
- En lugar de partidas específicas (que definan, por ejemplo, el nombre, el importe y la divisa), la creación de una sesión de Checkout requiere un producto y, por lo general, un precio.
- Ahora se requiere el modo.
El código del lado del cliente se mantiene igual.
Tabla de asignación
En lugar de definir cada campo en line_
, Checkout utiliza los objetos Product y Price de base para determinar el nombre, la descripción, el importe, la moneda y las imágenes. Puedes crear productos y precios con la API o en el Dashboard.
Sin precios | Con precios |
---|---|
line_ | product. |
line_ | product. |
line_ |
|
line_ |
|
line_ | product. (muestra la primera imagen proporcionada) |
Código del lado del servidor para elementos alineados
Antes, solo podías crear ítems puntuales alineados. Con precios, puedes seguir configurando ítems alineados, pero también puedes definir precios en forma dinámica con price_data al crear la sesión de Checkout.
Cuando creas la sesión de Checkout con price_
, debes hacer referencia al ID de un producto existente con price_data.product o definir los datos del producto dinámicamente usando price_data.product_data. El siguiente ejemplo muestra el flujo para crear un ítem puntual.
Código del lado del servidor para precios puntuales
Con esta nueva integración, puedes crear un producto y un catálogo de precios de antemano en lugar de tener que definir el importe, la moneda y el nombre cada vez que crees una sesión de Checkout.
Puedes crear un producto y un precio con la API Prices o mediante el Dashboard. El ID del precio será necesario para crear una sesión de Checkout. El siguiente ejemplo ilustra cómo se crea un producto o precio a través de la API:
Suscripciones
Las integraciones para pagos recurrentes tienen los siguientes cambios:
- Todos los elementos pasan a un solo campo de line_items, en lugar de
subscription_
.data. items - Ahora se requiere el modo. Establece
mode=subscription
si la sesión incluye algún elemento recurrente.
El código del lado del cliente se mantiene igual. Los planes existentes pueden usarse cuando se acepten los precios recurrentes.
Código del lado del servidor con planes
Este es un ejemplo del antes y el después de crear una sesión de Checkout durante el período de prueba usando un plan existente, que puede emplearse de forma intercambiable a un precio determinado. Ahora el plan ha pasado a line_
en lugar de subscription_
.
Código del lado del servidor para precios recurrentes con una tasa de instalación
Si tienes planes recurrentes con una tasa de instalación única, crea el producto y el precio que representen el costo único antes de crear la sesión de Checkout. Consulta la tabla de asignaciones para ver cómo se asignan los campos line_
anteriores a la nueva integración. Puedes crear un producto y un precio a través de la API Prices o a través del Dashboard de Stripe. También puedes crear el ítem puntual alineado. El siguiente ejemplo utiliza un ID de precio existente:
Cambios en el objeto de respuesta
En lugar de enumerar los elementos con display_
, el objeto de la sesión de Checkout utiliza line_
. El campo line_
no procesa por defecto como en el caso de display_
, pero puedes incluirlo usando la opción de ampliar al crear una sesión de Checkout:
Cambios del webhook
Como puede incluirse line_
, la respuesta del webhook checkout.
ya no enumera elementos de forma predeterminada. El objeto de respuesta más pequeño te permite recibir los webhooks de Checkout más rápido. Puedes recuperar elementos con el nuevo punto de conexión line_
:
Para obtener más información, consulta completar pedidos con Checkout.