$0 como una renovación normal.
Pagar por adelantado no decide si la suscripción se renueva después. Para vender períodos que terminan solos, combínalo con cancelAtPeriodEnd: true, descrito en Pagos únicos.
Cobrar varios períodos en el primer pago
checkoutUrl. El primer pago cubre 3 períodos del intervalo del precio, incluido el actual: 3 meses con un precio mensual, 3 trimestres con uno trimestral.
prepaidPeriods mayor que 1 requiere un precio recurrente pago. Los precios de pago único y los planes gratuitos devuelven 400 validation_error con param: "prepaidPeriods".
Agregar períodos a una suscripción existente
checkoutUrl devuelto. Abre un checkout alojado para esos períodos.
El estado de la suscripción define qué significa
periods:
Una suscripción
pending_payment que ya pagó y espera una renovación devuelve 409. Una suscripción cancelada también devuelve 409; para que el cliente vuelva, crea una suscripción nueva con prepaidPeriods.
Si el cliente ya generó un voucher de OXXO para el checkout pendiente, Commet primero lo cancela con el proveedor. Para aplicar una Offer a una suscripción pendiente, envía offerId al crear la suscripción o asígnala con PUT /subscriptions/{id}/offer antes o después de esta llamada: el checkout cobra cada período pagado con esa Offer.
Commet anula un link sin pagar y emite invoice.voided cuando creas un link nuevo, cambia el plan o el intervalo de cobro (en el momento o de forma programada), o la suscripción se pausa, se cancela de inmediato o termina, incluso cuando la cancelan los reintentos de pago fallidos. Si el cliente paga un voucher de OXXO de un link anulado, Commet lo reembolsa automáticamente.
Cómo se calcula el precio de cada período
Cada período cuesta el precio del intervalo de la suscripción para el país y la moneda del comprador, menos el descuento de la fase de la Offer que corresponde a ese período.PUT /v1/subscriptions/{id}/offer a una suscripción con períodos pagados por usar empieza en la primera renovación que cobra, después del último período pagado.
Las Card Promotions funcionan como en cualquier suscripción. Los Promo Codes también, con dos excepciones:
- Un link que agrega períodos a una suscripción activa mantiene el precio con el que se creó, así que un Promo Code ingresado ahí se rechaza con el mensaje “Promo codes can’t be used on a link that adds billing periods”.
- Un Promo Code de prueba gratis ingresado en un checkout que paga varios períodos o en una compra única se rechaza con el mensaje “Trial codes can’t be used when paying in advance”.
Offers que cobran en otro intervalo
Una Offer con una fase que cobra en un intervalo distinto al de la suscripción, como$5/mes por 3 meses sobre un precio anual, no se combina con el pago por adelantado. Estos requests devuelven 400 validation_error:
Un Promo Code de esa Offer ingresado en un checkout de pago por adelantado se rechaza con el mensaje “This promo code can’t be used when paying several billing periods in advance”.
Qué ve el cliente en el checkout
En un link que agrega períodos a una suscripción activa, el texto depende de si la suscripción se renueva, no del método elegido en ese checkout. Un pago con OXXO sobre una suscripción con tarjeta muestra
después sigue a ….
Terminar suscripciones pagadas con OXXO al final de sus períodos
Cuando una suscripción se paga con OXXO y no tiene otro método de pago guardado, Commet programa su cancelación al final de sus períodos pagados.- La API muestra
cancelAtPeriodEnd: trueycancellation.effectiveAtjusto después del pago. - Se disparan
subscription.updatedysubscription.cancellation_scheduled, coneffectiveAtal final de los períodos pagados ycancelReason: null. - La suscripción no se renueva ni se cobra, y
subscription.canceledse dispara cuando termina.
POST /v1/subscriptions/{id}/payment-method/update) o con Mantener suscripción en el Portal del Cliente. La suscripción se renueva normalmente con esa tarjeta.
POST /v1/subscriptions/{id}/uncancel sin una tarjeta guardada devuelve 409 subscription_uncancel_failed.
Seguir los períodos pagados después del pago
currentPeriodsigue siendo de un período de cobro.nextBillingDatees el próximo cobro real, después del último período pagado.- Cada período pagado se renueva con un recibo pagado de
$0, sin cobro ni link de pago, también con OXXO. - Las features, los créditos y los balances se reinician en su calendario habitual.
payment.receivedysubscription.updated: se pagaron los períodos.invoice.created: un período pagado se renovó con un recibo de$0.invoice.voided: se anuló un link sin pagar.subscription.canceled: terminó una compra única o una suscripción pagada con OXXO sin tarjeta.
Cancelar, pausar o cambiar de plan
- Cancelar: los períodos pagados no se reembolsan, y una cancelación programada se hace efectiva después del último período pagado.
- Pausar: se rechaza mientras queden períodos pagados.
- Cambiar de plan o de intervalo de cobro: los períodos pagados sin usar se convierten en Customer Credits al precio pagado.
Pagar por adelantado desde el Dashboard
Abre el detalle de la suscripción, elige Pay in advance, ingresa la cantidad de períodos y elige Copy payment link. El campo lleva la unidad del intervalo de la suscripción, como Months o Quarters. Envía el link copiado al cliente. El detalle de la suscripción muestra Paid through con la fecha en que terminan los períodos pagados.Limitaciones
prepaidPeriodsyperiodsaceptan de1a60en todos los intervalos.- Solo precios recurrentes pagos. Los precios de pago único y los planes gratuitos devuelven
400. - Las pruebas gratuitas no se combinan con
prepaidPeriodsmayor que1ni concancelAtPeriodEnd. - El overage, las licencias y los add-ons no se pagan por adelantado: se cobran en su calendario habitual, y una renovación con total distinto de cero sigue el flujo de pago normal.