El bloque Subscription upgrade es un sub-bloque que se anida dentro de Cart items. Invita a los compradores a cambiar una línea elegible de compra única a una suscripción directamente desde el carrito, convirtiendo una compra única en ingresos recurrentes en el momento de la decisión, y permite a los compradores que ya están suscritos cambiar o cancelar su plan en esa línea.
Comportamiento
- Solo aparece en líneas elegibles. El bloque lee los planes de venta del producto y no renderiza nada en una línea cuyo producto no tiene planes de suscripción.
- Nunca se ofrece en regalos de recompensa. Suscribirse a un regalo gratis otorgado automáticamente le quitaría su estado de recompensa, así que la invitación se suprime en esas líneas.
- En una línea de compra única, muestra la llamada a la acción de mejora.
- En una línea ya suscrita, muestra un selector de plan más la opción de “bajar a compra única”.
Ajustes
Ubicación y límites
- Padre: se anida solo dentro de Cart items.
- Máximo: 1 por carrito.
- No se agrega de forma predeterminada. No está bloqueado, así que puedes quitarlo u ocultarlo.
Plantilla personalizada
view.state te dice cuál. view nunca es null dentro de una plantilla personalizada: cuando una línea no tiene planes, el bloque no renderiza nada y tu plantilla no se invoca.
Cada entrada en
view.plans es { id: number, name: string, discountPercent: number }.
Usa
onChange para un <select> y selectPlan para botones. onChange ya maneja el centinela oneTimeValue; si conectas tu propio handler a un <select>, tienes que comparar contra oneTimeValue y llamar a selectPlan(null) tú mismo.