# Cupones y códigos de promoción Agrega descuentos a suscripciones y artículos de suscripción con cupones y códigos promocionales. Si tu plataforma Connect usa [Cuentas configuradas por clientes](https://docs.stripe.com/api/v2/core/accounts/create.md#v2_create_accounts-configuration-customer), usa nuestra [guía](https://docs.stripe.com/connect/use-accounts-as-customers.md) para reemplazar las referencias de `Clientes` y eventos en tu código con las referencias de la API Accounts v2 equivalentes. Canjea cupones para aplicar descuentos a las suscripciones que ofreces. También puedes usar cupones para crear códigos de promoción y compartirlos con tus clientes. Los clientes pueden canjear estos códigos de promoción para aplicar descuentos a sus suscripciones. - [Cupones](https://docs.stripe.com/billing/subscriptions/coupons.md#coupons): Los cupones se crean y administran para determinar descuentos, como un porcentaje o un importe que se resta del precio de la suscripción. - [Códigos de promoción](https://docs.stripe.com/billing/subscriptions/coupons.md#promotion-codes): Creas códigos para clientes que se asignan a tus cupones. Por ejemplo, FALLPROMO y SPRINGPROMO pueden asociarse a un solo cupón de descuento del 25 %. Puedes compartir los códigos de promoción directamente con tus clientes, quienes podrán ingresarlos y canjearlos durante el proceso de finalización de compra. Puedes usar cupones y códigos de promoción para lo siguiente: - Aplica uno o más descuentos a una factura, suscripción o ítem de suscripción - Aplica uno o más descuentos durante un período de tiempo determinado - Reducir los importes de las facturas conforme a un porcentaje o un importe fijo También puedes definir un cupón que un cliente deba canjear antes de una fecha determinada o que se limite a una cantidad determinada de canjes para todos tus clientes. Para usar descuentos para pagos únicos, consulta [Agrega descuentos para pagos únicos](https://docs.stripe.com/payments/checkout/discounts.md). ## Cupones Para aplicar descuentos a un cliente o a los cargos de un cliente, canjea cupones por descuentos. Aprende a crear y administrar cupones en las siguientes secciones. ### Crear un cupón Crea cupones en el Dashboard o con la [API](https://docs.stripe.com/api/coupons/create.md): #### Dashboard 1. En el Dashboard, abre la página [Productos](https://dashboard.stripe.com/test/products?active=true). 1. Haz clic en **Cupones**. 1. Haz clic en **+Nuevo**. 1. En el cuadro de diálogo **Crear un cupón**, ingresa los parámetros del cupón. 1. Haz clic en **Crear cupón**. A continuación se muestran todas las configuraciones de los cupones. El nombre es la única configuración que puedes editar después de crear el cupón. | Configuración | Descripción | | ------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | | **Nombre** | El nombre del cupón que aparece en los recibos y facturas. | | **ID** (optional) | Un identificador único para el cupón en la API. Si dejas este campo en blanco, Stripe te genera un ID. | | **Tipo** | Determina si un cupón aplica un descuento a una suscripción por un importe fijo o por un porcentaje. | | **Porcentaje de descuento** o **Importe del descuento** | Indica el descuento que ofrece el cupón. Si vendes en varias monedas, un solo cupón puede definir diferentes importes de descuento para diferentes monedas. Los cupones en múltiples monedas siguen las mismas reglas que los [precios en múltiples monedas](https://docs.stripe.com/products-prices/how-products-and-prices-work.md#multiple-currencies). | | **Aplicar a productos específicos** (optional) | Limita el tipo de artículos a los que se puede aplicar el cupón. | | **Duración** | Indica por cuánto tiempo es válido el cupón. | | **Límites de canjes** (optional) | Te permite limitar el momento en que el cliente puede canjear el cupón y la cantidad de veces que se puede canjear. | | **Códigos** (optional) | Te permite crear [códigos de promoción](https://docs.stripe.com/billing/subscriptions/coupons.md#promotion-codes--promotion-codes) para el cupón. | #### API ```curl curl https://api.stripe.com/v1/coupons \ -u "<>:" \ -d duration=once \ -d id=free-period \ -d percent_off=100 ``` La siguiente tabla contiene los parámetros del cupón. | Configuración | Descripción | | ------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | | `id` | Un identificador único para el cupón. | | `percent_off` o `amount_off` | El importe que se deduce del subtotal mientras dure la validez del cupón. | | `currency` (si se establece `amount_off`) | El código ISO de tres letras de la moneda del importe a descontar. | | `currency_options` (si se establece `amount_off`) (optional) | Si vendes en varias monedas, descuenta los importes correspondientes del subtotal para las diferentes monedas. Los cupones en múltiples monedas siguen las mismas reglas que los [precios en múltiples monedas](https://docs.stripe.com/products-prices/how-products-and-prices-work.md#multiple-currencies). | | `duration` | Indica por cuánto tiempo es válido el cupón. Los valores incluyen **una vez**, **siempre** o **varias veces**. | | `max_redemptions` (opcional) | Cantidad máxima de veces que se puede canjear un cupón para todos los clientes. | | `redeem_by` (optional) | La fecha límite para aplicar este cupón a clientes. | | `applies_to` (opcional) | Limita los artículos de una factura a los que se puede aplicar el cupón. | ### Definir los productos elegibles #### Dashboard Para establecer los productos elegibles para descuentos, agrega el producto pertinente en el campo **Aplicar a un producto específico**. Todos los códigos de promoción asociados con el cupón también están restringidos a esta lista de productos aptos. Si configuras un cupón para que se aplique a productos específicos y una suscripción no tiene ningún producto aplicable, no se aplicará ningún descuento cuando agregues el cupón a la suscripción. #### API Para establecer qué productos son aptos para descuentos, agrega los ID de los productos correspondientes al hash `applies_to` del cupón. Esta lista de productos elegibles también se aplica a los códigos de promoción asociados con el cupón. Si configuras un cupón para que se aplique a productos específicos y una suscripción no tiene ningún producto aplicable, no se aplicará ningún descuento cuando agregues el cupón a la suscripción. Cuando [haces cambios](https://docs.stripe.com/billing/subscriptions/change.md) a una suscripción, Stripe calcula el prorrateo y aplica los descuentos existentes. No puedes descontar más partidas de prorrateo en la factura que se genera. ### Aplica cupones a las suscripciones Después de crear los cupones, crea un descuento aplicándolos a una suscripción. Puedes aplicar el cupón creando la suscripción o [actualizando la suscripción vigente del cliente](https://docs.stripe.com/api.md#update_subscription). #### Dashboard 1. En el Dashboard, abre la página [Suscripciones](https://dashboard.stripe.com/test/subscriptions?status=active). 1. Haz clic en la suscripción correspondiente. 1. Haz clic en **Acciones**. 1. Haz clic en **Actualizar suscripción**. 1. Haz clic en **Agregar cupón**. 1. Selecciona uno o más cupones del menú desplegable y haz clic en **Enviar**. #### API ```curl curl https://api.stripe.com/v1/subscriptions \ -u "<>:" \ -d customer="{{CUSTOMER_ID}}" \ -d "items[0][price]"="{{PRICE_ID}}" \ -d "discounts[0][coupon]"=free-period ``` Aún puedes crear una suscripción cuando un cliente no tenga un método de pago almacenado si [no se requiere un pago inmediato](https://docs.stripe.com/billing/subscriptions/deferred-payment.md) después de apliques cupones a dicha suscripción. ### Aplica cupones a Checkout Para aplicar cupones a las suscripciones en una sesión de Checkout, establece el parámetro `discounts` en la [API](https://docs.stripe.com/api/checkout/sessions/create.md#create_checkout_session-discounts). Para crear una sesión con un descuento aplicado, especifica el ID del cupón en el parámetro `coupon` de la matriz `discounts`. #### curl ```bash curl https://api.stripe.com/v1/checkout/sessions \ -u <>: \ -d "payment_method_types[]"=card \ -d "line_items[][price]"="{{PRICE_ID}}" \ -d "line_items[][quantity]"=1 \ -d mode=subscription \-d "discounts[][coupon]"="{{COUPON_ID}}" \ -d success_url="https://example.com/success" ``` ### Eliminar cupones Puedes eliminar cupones en el Dashboard o con la [API](https://docs.stripe.com/api/coupons/delete.md). La eliminación de un cupón impide que se aplique a futuras suscripciones o facturas, pero no elimina el descuento de ninguna suscripción o factura que ya lo tenga. #### Dashboard 1. En el Dashboard, abre la página [Productos](https://dashboard.stripe.com/test/products?active=true). 1. Haz clic en **Cupones** 1. Haz clic en el cupón correspondiente. 1. Haz clic en el menú de contenido adicional (⋯). 1. Haz clic en **Eliminar cupón**. #### API ```curl curl -X DELETE https://api.stripe.com/v1/coupons/free-period \ -u "<>:" ``` ### Duración del cupón La duración de un cupón indica por cuánto tiempo es válido el [descuento](https://docs.stripe.com/api/.md#discounts) canjeado. Por ejemplo, un cupón del 50 % de descuento con una duración de 4 meses se aplica a todas las facturas del período de 4 meses a partir del momento en que se aplica el cupón por primera vez. Si un cliente aplica este cupón a una suscripción anual durante el período de 4 meses del cupón, el descuento del 50 % se aplicará a toda la suscripción anual. En una suscripción mensual, el cupón se aplica para los primeros 4 meses. Si la suscripción es semanal, un cupón de 4 meses se aplicará a cada factura de los primeros 4 meses. Si configuras la duración de un cupón en la API, cuando usas el valor `repeating` debes especificar `duration_in_months` como la cantidad de meses a los que se aplica el cupón de manera reiterada. Si estableces la duración en `once`, el cupón solo se aplica a la primera factura. Si estableces la duración en `forever`, el cupón se aplica a todas las facturas de manera indefinida. > Si aplicas un cupón a una [suscripción con fecha anterior](https://docs.stripe.com/billing/subscriptions/backdating.md), la duración del cupón comienza a contar desde la fecha de inicio anterior, no desde el momento en que realizas la llamada API. Para `repetir` cupones, esto significa que el período anterior consume parte de la duración del cupón. El valor de `duration_in_months` del cupón debe ser mayor que el período con fecha anterior si quieres que el descuento se aplique a las facturas posteriores a este. Consulta [Fechas y descuentos](https://docs.stripe.com/billing/subscriptions/backdating.md#backdating-discounts) para obtener más detalles. ### Límites de canjes Los límites de canje se aplican al cupón para todos los clientes. Por ejemplo, si limitas el número de veces que se puede canjear un cupón a 50, solo podrás aplicarlo a tus clientes 50 veces. Esto puede ser una sola vez cada cupón para 50 clientes diferentes, un cliente que lo use 50 veces o varios clientes, varias veces hasta alcanzar un máximo de 50 veces. Si configuras un cupón para que dure por siempre cuando un cliente lo use, pero el cupón tiene una fecha de vencimiento, cualquier cliente que reciba ese cupón tendrá el descuento de ese cupón para siempre. Ningún cliente nuevo puede aplicar el cupón después de la fecha de vencimiento. ## Códigos de promoción Los códigos de promoción son códigos para el cliente que creas para los cupones. Por ejemplo, tanto FALLPROMO como SPRINGPROMO pueden apuntar a un solo cupón de descuento del 25 %. Puedes compartir códigos de promoción directamente con tus clientes para que los usen en el proceso de compra. Si implementaste el *portal de clientes* (The customer portal is a secure, Stripe-hosted page that lets your customers manage their subscriptions and billing details) y activaste los códigos de promoción, los clientes pueden aplicar un descuento al cambiar sus suscripciones existentes a un nivel superior o inferior en el portal. > Las suscripciones aplican actualizaciones de precios y códigos de promoción por separado, lo que puede provocar actualizaciones inesperadas. Por ejemplo, un error en el pago puede provocar que falle una actualización de precio, pero el código de promoción incluido con la actualización de precio se efectúa correctamente. > El portal de clientes muestra los códigos de promoción que se han aplicado a una suscripción. Si no deseas permitir que los clientes apliquen el código de promoción ellos mismos o que lo compartan con otras personas, debes [establecer límites en el código de promoción](https://docs.stripe.com/billing/subscriptions/coupons.md#promo-code-config) o [aplicar un cupón](https://docs.stripe.com/billing/subscriptions/coupons.md#discount-subscriptions) directamente. Personaliza los controles y los límites de los códigos de promoción, especificando los clientes elegibles, los primeros pedidos, los valores mínimos de los pedidos, las fechas de vencimiento y los límites de canje. ### Restricciones Hay algunas restricciones en cuanto a los códigos de promoción. - No puedes aplicar un código de promoción con restricciones de importe a: - [Objetos Subscription Item](https://docs.stripe.com/api/subscription_items/object.md) - [Objetos de partida de factura](https://docs.stripe.com/api/invoiceitems/object.md) - [Objetos Subscriptions](https://docs.stripe.com/api/subscriptions/object.md) cuando haces una actualización - Fases futuras en [objetos Subscription Schedule](https://docs.stripe.com/api/subscription_schedules/object.md) ### Crear códigos de promoción #### Dashboard Puedes crear un código de promoción en el Dashboard cuando [creas un cupón](https://docs.stripe.com/billing/subscriptions/coupons.md#create-coupons--create-coupons). El **Código** reconoce mayúsculas y minúsculas y es único entre los códigos de promoción activos para cualquier cliente. Por ejemplo: - Puedes crear múltiples códigos de promoción restringidos a un cliente con el mismo **código**, pero no puedes reutilizar ese **código** para un código de promoción que cualquier cliente pueda canjear. - Si creas un código de promoción que pueda canjear cualquier cliente, no podrás crear otro código de promoción activo con el mismo **código**. - Puedes crear un código de promoción con un **Código**, [desactivarlo](https://docs.stripe.com/billing/subscriptions/coupons.md#inactive-promotions--inactivate) y luego crear un nuevo código de promoción con el mismo **Código**. 1. En el Dashboard de la página [Crear un cupón](https://dashboard.stripe.com/test/coupons/create), haz clic en el botón **Usar códigos de cupones para el cliente**. 1. Ingresa un código. Este es el código que un cliente ingresa en el proceso de finalización de compra para canjear el descuento. Si no defines un código, Stripe lo genera por ti. 1. Selecciona requisitos para el código de promoción. Por ejemplo, puedes restringir el cupón para que solo sea válido en los primeros pedidos. #### API El `code` distingue mayúsculas y minúsculas y es único entre todos los códigos de promoción activos para clientes. Por ejemplo: - Puedes crear múltiples códigos de promoción restringidos a un cliente con el mismo `code`, pero no puedes reutilizar ese `code` para un código de promoción que cualquier cliente pueda canjear. - Si creas un código de promoción canjeable por cualquier cliente, no podrás crear otro código de promoción activo con el mismo `code`. - Puedes crear un código de promoción con `code: NEWUSER`, inactivarlo especificando `active: false` y luego crear un nuevo código de promoción con `code: NEWUSER`. Para crear un [código de promoción](https://docs.stripe.com/api/promotion_codes.md), especifica un `coupon` existente y las restricciones (por ejemplo, limitado a un determinado `customer`). Si tienes un código específico que quieres darle a tu cliente (por ejemplo, `FALL25OFF`), establece el valor `code`. Si dejas este campo en blanco, Stripe genera un `code` aleatorio. ```curl curl https://api.stripe.com/v1/promotion_codes \ -u "<>:" \ -d coupon=ZQO00CcH \ -d code=ALICE20 \ -d customer="{{CUSTOMER_ID}}" ``` Al crear un código de promoción, este hereda la configuración del cupón asociado. ### Configuraciones del código de promoción Al configurar los ajustes del código de promoción, puedes personalizar lo siguiente: - Qué clientes cumplen los requisitos para usar un código de promoción - Cuántas veces puede canjear un código de promoción un cliente - Cuando vence un código de promoción - Establece el importe mínimo al que se puede aplicar un código de promoción ### Limitar por cliente #### Dashboard Para limitar un código de promoción a un cliente en particular, sigue estos pasos: 1. En la página [Crear un cupón](https://dashboard.stripe.com/test/coupons/create), selecciona **Limitar a un cliente específico**. 1. Selecciona el cliente correspondiente. Si no especificas un cliente, cualquier cliente puede canjear el código de promoción. #### API Para limitar un código de promoción a un determinado cliente, especifica un `customer` al crear el código de promoción. Si no especificas un cliente, cualquier cliente puede canjear el código de promoción. ### Limitar por primer pedido Limita el uso de un cupón a los clientes que no tienen un historial previo de transacciones en tu plataforma. Esta configuración impide que los clientes utilicen un cupón si: - Se inició un PaymentIntent, incluso si el pago nunca se completó. - Se suscribió a un período de prueba, incluso si posteriormente se canceló. #### Dashboard Para limitar un código de promoción a los clientes nuevos, en la página [Crear un cupón](https://dashboard.stripe.com/test/coupons/create), selecciona **Apto solo para pedidos nuevos**. #### API Se limita el código promocional a los clientes nuevos configurando el parámetro `first_time_transaction` del atributo `restrictions`. ### Definir un importe mínimo #### Dashboard Para establecer un importe mínimo apto para un código de promoción, en la página [Crear un cupón](https://dashboard.stripe.com/test/coupons/create), selecciona **Requerir un valor mínimo de pedido** e ingresa el valor mínimo. Debido a que las restricciones del código de promoción se verifican en el momento del canje, el importe mínimo de transacción solo se aplica al pago inicial de una suscripción. Si el cupón admite varias monedas, el importe mínimo puede ser diferente según la moneda. #### API Con códigos de promoción, puedes definir el importe mínimo de la transacción para aplicar el descuento configurando las propiedades `minimum_amount` y `minimum_amount_currency`. Dado que las restricciones del código de promoción se controlan en el momento del canje, el importe mínimo de transacción solo se aplica al pago inicial de una suscripción. Si vendes en varias monedas, fija el importe mínimo de la transacción para diferentes monedas configurando la propiedad `currency_options`. ### Personalizar los vencimientos #### Dashboard Para establecer una fecha de vencimiento para un código de promoción, en la página [Crear un cupón](https://dashboard.stripe.com/test/coupons/create), selecciona **Agregar una fecha de vencimiento** y la fecha y hora en que vence el código de promoción. Si el cupón subyacente ya tiene una fecha de vencimiento establecida, la fecha de vencimiento del código de promoción no puede ser posterior a la del cupón. Supongamos que planeas aceptar un cupón por un año, pero quieres que solo sea canjeable durante una semana a partir de que el cliente lo recibe. Debes establecer la fecha de vencimiento del cupón en un año a partir de ahora y la fecha de vencimiento de cada código de promoción a una semana a partir de su creación. #### API Define la fecha de vencimiento del código de promoción con `expires_at`. Si el cupón subyacente ya tiene definido `redeem_by`, la fecha de vencimiento del código de promoción no puede ser posterior a la del cupón. Si no se especifica `promotion_code[expires_at]`, el valor `redeem_by` del cupón automáticamente se completa como `expires_at`. - Supongamos que planeas aceptar un cupón por un año, pero quieres que solo sea canjeable durante una semana a partir de que el cliente lo recibe. Debes establecer `coupon[redeem_by]` en un año a partir de ahora y cada `promotion_code[expires_at]` a una semana a partir de su creación. ### Limitar los canjes #### Dashboard Para establecer la cantidad total de veces que tus clientes pueden canjear un código de promoción, selecciona **Limitar la cantidad de veces que este código puede ser canjeado** en la página [Crear un cupón](https://dashboard.stripe.com/test/coupons/create) e ingresa el número. Consulta [Límites de canje](https://docs.stripe.com/billing/subscriptions/coupons.md#redemption-limits) para obtener más información. Si el cupón subyacente ya tiene configurado un número máximo de veces, los canjes máximos del código de promoción no pueden ser mayores que los del cupón. #### API Limita la cantidad total de veces que tus clientes pueden canjear un código de promoción usando `max_redemptions`, que funciona de manera similar a los cupones. Si el cupón correspondiente ya tiene un `max_redemptions` definido, el `max_redemptions` del código de promoción no puede ser mayor que el del cupón. Consulta los [límites de canje](https://docs.stripe.com/billing/subscriptions/coupons.md#redemption-limits) para obtener más información. ### Desactivar códigos de promoción #### Dashboard Para desactivar un código de promoción, sigue estos pasos: 1. En el Dashboard, abre la página [Productos](https://dashboard.stripe.com/test/products?active=true). 1. Haz clic en **Cupones**. 1. Haz clic en el cupón cuyo código de promoción deseas desactivar. 1. En la fila del código de promoción correspondiente, haz clic en el menú de contenido adicional (⋯). 1. Haz clic en **Archivar código de promoción**. Sin embargo, si el cupón subyacente de un código de promoción pierde su validez, todos sus códigos de promoción quedarán inactivos de forma permanente. Del mismo modo, si un código de promoción alcanza su límite máximo de canje o su fecha de vencimiento, queda inactivo de forma permanente. Estos códigos de promoción no se pueden reactivar. #### API Establece si un código de promoción es canjeable en un determinado momento usando el parámetro `active`. Sin embargo, si el cupón subyacente de un código de promoción pierde su validez, todos sus códigos de promoción quedarán inactivos de forma permanente. Del mismo modo, si un código de promoción alcanza su `max_redemptions` o `expires_at`, quedará inactivo de forma permanente. Estos códigos de promoción no se pueden reactivar. ### Aplicar códigos de promoción a las suscripciones Después de crear un código de promoción, canjea un descuento aplicando el código de promoción a una suscripción. Puedes aplicar códigos de promoción de dos maneras: - Cuando [creas una suscripción](https://docs.stripe.com/api.md#create_subscription) - Cuando [actualizas la suscripción existente de un cliente](https://docs.stripe.com/api.md#update_subscription) #### Dashboard 1. En el Dashboard, ve a **Billing** > **Suscripciones**. 1. Haz clic en la suscripción correspondiente. 1. Haz clic en **Acciones** > **Actualizar suscripción** > **Agregar cupón**. 1. Haz clic en un código de promoción desde el menú desplegable y luego haz clic en **Enviar**. #### API 1. Elabora una [lista](https://docs.stripe.com/api/promotion_codes/list.md) de los códigos de promoción y usa el [código](https://docs.stripe.com/api/promotion_codes/list.md#list_promotion_code-code) del cliente como filtro para [recuperar](https://docs.stripe.com/api/promotion_codes/retrieve.md) el [ID del código de promoción](https://docs.stripe.com/api/promotion_codes/object.md#promotion_code_object-id). 1. Para aplicar el código de promoción, usa el ID del código de promoción en la siguiente llamada de API: ```curl curl https://api.stripe.com/v1/subscriptions \ -u "<>:" \ -d customer="{{CUSTOMER_ID}}" \ -d "items[0][price]"="{{PRICE_ID}}" \ -d "discounts[0][promotion_code]"="{{PROMOTIONCODE_ID}}" ``` ### Agrega códigos de promoción a Checkout Habilita los códigos de promoción con la API estableciendo el parámetro [allow_promotion_codes](https://docs.stripe.com/api/checkout/sessions/object.md#checkout_session_object-allow_promotion_codes) en las Checkout Sessions. Cuando se habilita `allow_promotion_codes` en una Checkout Session, el Checkout incluirá una casilla para el canje de códigos de promoción para que utilicen tus clientes. ![Campo de código de promoción en el proceso de compra](https://b.stripecdn.com/docs-statics-srv/assets/promo_code_checkout.c07ef6d4f0b1b3f9a8a7e4bbba83d56f.png) Campo de código de promoción en el proceso de compra ## Cupones acumulables y códigos de promoción Puedes agregar varios cupones, códigos de promoción o [descuentos](https://docs.stripe.com/api/.md#discounts) canjeables a la lista de cargos de un cliente. Puedes hacerlo [creando una suscripción](https://docs.stripe.com/api.md#create_subscription) o [actualizando la suscripción existente de un cliente](https://docs.stripe.com/api.md#update_subscription). Admitimos varios descuentos tanto en suscripciones como en artículos de suscripción. Cuando creas una suscripción con descuentos acumulables, cada descuento se aplica a todos los ítems de la suscripción. El orden de los descuentos es importante si usas `amount_off` y `percent_off`. Por ejemplo, los siguientes descuentos acumulados se aplican de forma diferente: - 20 % de descuento *luego* USD 5 de descuento - USD 5 de descuento *luego* 20 % de descuento #### Dashboard 1. En el Dashboard, ve a **Billing** > **Suscripciones**. 1. Haz clic en la suscripción correspondiente. 1. Haz clic en **Acciones** > **Actualizar suscripción** > **Agregar cupón**. 1. Haz clic en los cupones desde los menús desplegables y haz clic en **Enviar**. 1. Haz clic en el producto correspondiente. 1. Haz clic en **Agregar cupones**. 1. Haz clic en los cupones desde los menús desplegables y haz clic en **Enviar**. #### API ```curl curl https://api.stripe.com/v1/subscriptions \ -u "<>:" \ -d customer="{{CUSTOMER_ID}}" \ -d "items[0][price]"="{{PRICE_ID}}" \ -d "items[0][discounts][0][coupon]"=item-coupon \ -d "items[0][discounts][1][promotion_code]"=item-promo \ -d "discounts[0][coupon]"=sub-coupon \ -d "discounts[1][promotion_code]"=sub-promo ``` ### Restricciones Existen algunas restricciones en cuanto al uso de descuentos múltiples. - Puedes configurar hasta 20 entradas en el parámetro `discounts`. - Cada entrada en `discounts` tiene que ser única. - No puedes pasar un cupón y un código de promoción creados a partir del mismo cupón. - No puedes pasar un cupón y un descuento que se genera a partir del mismo cupón. - Los descuentos canjeados ya deben estar asociados al cliente o a la suscripción que estás actualizando. ### Actualizar una suscripción No es necesario que establezcas `discounts` si no tienes intención de hacer cambios en los descuentos existentes. Al actualizar `discounts`, debes especificar cualquier `coupon`, `promotion_code` o `discount` previamente configurado que quieras mantener en la suscripción. Especifica `discounts = ""` para eliminar todos los descuentos de la suscripción. Cuando una suscripción no tiene descuentos, el descuento del cliente, si lo hubiera, se aplica a las facturas. Si ya estableciste más de un descuento en una suscripción con el nuevo parámetro `descuentos`, no puedes actualizar la suscripción con el parámetro `cupón` o `promotion_code` obsoleto. Del mismo modo, no puedes actualizar las fases de un calendario con el parámetro `cupón` o `promotion_code` obsoleto si estableciste más de un descuento en una fase anterior. La actualización de `discounts` no implica prorrateos ni genera facturas por sí solas. Los nuevos descuentos se aplican la próxima vez que la suscripción crea una factura. ## Métodos de descuento alternativos Si bien los cupones son la forma más común de aplicar descuentos a una suscripción, también puedes hacer lo siguiente: - Agrega un [saldo de cliente](https://docs.stripe.com/api.md#customer_object-balance) negativo al cliente. - Agrega [partidas de factura](https://docs.stripe.com/billing/invoices/subscription.md#adding-draft-invoice-items) negativas. - Agrega un [segundo precio](https://docs.stripe.com/products-prices/manage-prices.md#create-price) que sea una versión más barata del precio habitual del producto. De estos métodos, las partidas de factura negativas proporcionan información más detallada sobre qué descuento se creó, cuándo y por qué. ## See also - [Cómo modificar las suscripciones](https://docs.stripe.com/billing/subscriptions/change.md) - [Cómo trabajar con facturas](https://docs.stripe.com/billing/invoices/subscription.md) - [API de cupones](https://docs.stripe.com/api.md#coupons) - [API de códigos de promoción](https://docs.stripe.com/api.md#promotion_codes)