Establecer cantidades de productos o suscripciones
Suscribe a un cliente a varios productos o a varias cantidades de un solo producto, todo facturado en una sola factura.
Es posible que tengas que crear suscripciones para varios productos o para varias cantidades del mismo producto. También puedes crear varias suscripciones para clientes particulares.
Suscripciones con varios productos
Si ofreces varios productos o quieres cobrar diferentes importes por el mismo producto, puedes crear una suscripción para varios productos. Esto genera una sola factura en cada período de facturación en la que se combinan todos los precios, y el cliente solo tiene que realizar un único pago.
Crear una suscripción para varios productos
Crea suscripciones a varios productos para un cliente utilizando el parámetro ítems. Proporciona el precio
y, alternativamente, una cantidad
para cada producto (si utilizas un valor distinto de uno):
La respuesta incluye una lista de todos los ítems, precios y cantidades de la suscripción:
{ "id": "sub_CZEpS1Zt9QLxdo", "object": "subscription", ... "items": { "object": "list", "data": [ { "id": "si_H1yPnAVzP9vDRW", "object": "subscription_item", "billing_thresholds": null, "created": 1585939321, "metadata": { }, "price": { "id": "price_H1c8v1liEvrfcd", "object": "price", "active": true, "billing_scheme": "per_unit", "created": 1585856460,
Períodos de facturación con varios precios
Las suscripciones con un importe fijo en cada intervalo se facturan al inicio de cada período de facturación (ciclo). En cada factura, el cliente paga el siguiente intervalo de servicio. Con el cobro por consumo, el importe que debe abonar el cliente varía en función del consumo durante el período de facturación, de manera que el cliente paga por el consumo al final.
Cuando una suscripción combina una tarifa fija con el cobro por consumo, se cobra el consumo medido del período de facturación anterior junto con la tarifa fija, correspondiente al nuevo período de facturación, al inicio de cada renovación. El cobro por consumo y la tarifa fija se combinan en una única factura.
El uso de varios productos en una misma suscripción genera una sola factura e implica un solo pago, por lo que todos los precios de los productos deben estar expresados en la misma moneda. Además, tienes un límite de 20 productos por suscripción.
Para gestionar varios productos de una suscripción que pueden tener diferentes períodos de facturación, puedes crear una suscripción de intervalos mixta.
Descuentos, impuestos y períodos de prueba
Cuando usas varios productos, también puedes crear descuentos, cargos impuestos y usar los períodos de prueba de la misma manera que lo harías con una suscripción de un solo producto.
Proporciona estos argumentos cuando crees o actualices una suscripción para aplicarlos a toda la suscripción, o proporciónalos en el nivel del ítem para descontar solo un ítem específico.
Varias cantidades de una suscripción
De manera predeterminada, cada suscripción corresponde a un solo producto, pero Stripe permite que los clientes se suscriban a varias cantidades de un producto. Por ejemplo, supongamos que tienes una empresa de alojamiento web y que los clientes usan tu servicio para alojar sus sitios web a un costo de USD 9.99 por sitio, por mes. La mayoría de los clientes alojan un solo sitio; algunos alojan varios. Podrías crear precios por alojar un sitio (USD 9.99), dos sitios (USD 19.98) y así sucesivamente, pero es mejor que los clientes se suscriban por cantidad y que el precio unitario sea USD 9.99.
Las suscripciones tienen dos tipos de cobro por consumo: licencias por consumo y por usuario. Puedes habilitar estos modelos de facturación estableciendo el valor del atributo recurring[usage_
al crear un precio. Al crear una suscripción, solo puedes especificar una cantidad si el valor de recurring[usage_
es licensed
. Si quieres tener un cobro detallado por consumo que fluctúa dentro de un mismo intervalo de cobro, considera la posibilidad de usar el cobro por consumo en lugar de cantidades.
Definir varias cantidades
Para definir la cantidad en una suscripción, especifica un valor de quantity
al crear o actualizar la suscripción:
Aun así, puedes cobrar varias cantidades en una sola factura y prorratearlas cuando cambie la suscripción. Esto incluye los cambios de cantidad en la suscripción.
Cobra diferentes importes en función de la cantidad
Es posible que en algunos casos quieras ajustar el costo por usuario según la cantidad de usuarios en la suscripción. Por ejemplo, puedes ofrecer descuentos por volumen de licencias para las suscripciones que superen determinados umbrales de cantidad. Puedes usar niveles para ajustar las tarifas por usuario.
Transformación de cantidades
Cuando factures a los clientes, quizá te convenga hacer un seguimiento del consumo en una forma más detallada que en la factura. Por ejemplo, piensa en un paquete de software de productividad que cuesta USD 10 por cada 5 usuarios (o fracción) que usan el producto. Sin la transformación de cantidades, sería necesario aumentar la quantity
del ítem de suscripción en 1 por cada 5 usuarios.
Cantidad de usuarios | Cantidad de ítems de suscripción informada a Stripe | Total |
---|---|---|
1 | 1 | USD 10 |
3 | 1 | USD 10 |
5 | 1 | USD 10 |
6 | 2 | USD 20 |
7 | 2 | USD 20 |
Con el parámetro transform_quantity, puedes indicarle a Stripe que transforme la cantidad antes de aplicar el costo por unidad. En la siguiente suscripción, puedes informar la cantidad actual de usuarios normalmente como la cantidad
del ítem de la suscripción. El sistema de facturación de Stripe divide esa cantidad por 5 y la redondea hacia arriba antes de calcular el costo por unidad.
Solo puedes usar transform_
con billing_scheme=per_unit. No es compatible con las tarifas escalonadas.
Redondeo
En el ejemplo anterior, se mostró una suscripción que cobraba por cada 5 usuarios, redondeando hacia arriba (es decir, 6 dividido por 5 daba una cantidad de 2). Para los casos de uso en los que no quieras cobrar por una fracción de consumo, sino que quieras cobrar, por ejemplo, por cada gigabyte entero de consumo de un servicio de Internet de banda ancha, también puedes especificar down
como valor de round
.
Consumo medido
Junto con el cobro por consumo, también puedes aplicar transform_
. Esta transformación se aplica a los precios con recurring[usage_
al final de un período de facturación de la misma manera que se aplica a quantity
para los precios con recurring[usage_
.
Un servicio de correos electrónicos de marketing que fija un precio por uso para cobrar 0.10 USD por cada 1000 mensajes de correo electrónico enviados podría ser de la siguiente manera:
Con esta suscripción, el consumo puede informarse por correo electrónico, y puedes facturar al cliente USD 0.10 por cada 1000 correos enviados.
Varias suscripciones
Puedes crear de forma simultánea varias suscripciones para un solo cliente. Esta funcionalidad es muy útil si quieres que tus clientes puedan suscribirse a varios productos con períodos de servicio separados. Cada suscripción tiene su propio período de facturación, factura y cargo, incluso cuando los precios básicos tienen el mismo período de facturación.
Nota
Si creas varias suscripciones con el mismo precio, cada una de ellas es independiente, incluidos los pagos y los períodos de facturación. Si eso no es lo que quieres, crea una sola suscripción utilizando varias cantidades.
Crear varias suscripciones para un solo cliente
Crea varias suscripciones para un cliente utilizando la API create subscription:
Un cliente se puede suscribir a varios productos e incluso a uno solo varias veces. Cada suscripción tiene una identificación única y su estado se gestiona de forma independiente de las demás suscripciones de los clientes. Cada suscripción también tiene su propio período de facturación sobre la base de la delimitación del ciclo de facturación de la suscripción.
Cuando un cliente tiene varias suscripciones, la propiedad subscriptions
del objeto Customer
proporciona una lista de cada suscripción:
{ "id": "cus_4fdAW5ftNQow1a", "object": "customer", "subscriptions": { "object": "list", "data": [ { "id": "sub_9RRl3XywPg2P5H", "object": "subscription", ... "price": { "id": "price_CZB2krKbBDOkTS", "object": "price", "amount": 2995, ... } }, { "id": "sub_9RRlIq2t9obFLI", "object": "subscription", ... "price": { "id": "price_CZB1AX3KOacNJw", "object": "price", "amount": 1295, ... } } ] ... } ... }