Skip to main content
Le bloc Subscription upgrade est un sous-bloc qui s’imbrique dans Cart items. Il invite les clients à convertir une ligne d’achat unique éligible en abonnement directement depuis le panier, transformant un achat ponctuel en revenu récurrent au moment de la décision, et permet aux clients déjà abonnés de changer ou d’annuler leur plan sur cette ligne.

Comportement

  • N’apparaît que sur les lignes éligibles. Le bloc lit les plans de vente du produit et n’affiche rien sur une ligne dont le produit n’a pas de plans d’abonnement.
  • Jamais proposé sur les cadeaux de récompense. S’abonner à un cadeau gratuit accordé automatiquement lui retirerait son statut de récompense, donc l’invitation est supprimée sur ces lignes.
  • Sur une ligne d’achat unique, il affiche l’appel à l’action de passage à l’abonnement.
  • Sur une ligne déjà abonnée, il affiche un sélecteur de plan ainsi que l’option « repasser à l’achat unique ».

Réglages

Placement et limites

  • Parent : s’imbrique uniquement dans Cart items.
  • Maximum : 1 par panier.
  • Non ajouté par défaut. Non verrouillé, vous pouvez donc le retirer ou le masquer.
Comme c’est un sous-bloc, il s’affiche par ligne, positionné au-dessus ou en dessous du contenu du produit selon l’endroit où vous le placez par rapport à la ligne Product. Voir comment les sous-blocs se positionnent.

Modèle personnalisé

Prend en charge un modèle personnalisé depuis son onglet Code, qui remplace le balisage intégré de ce bloc par votre JSX. Voici les props qu’il reçoit. Ce bloc affiche l’un de deux états, et view.state vous indique lequel. view n’est jamais null dans un modèle personnalisé : lorsqu’une ligne n’a pas de plans, le bloc n’affiche rien et votre modèle n’est pas appelé. Chaque entrée de view.plans est { id: number, name: string, discountPercent: number }.
Utilisez onChange pour un <select> et selectPlan pour des boutons. onChange gère déjà la sentinelle oneTimeValue ; si vous câblez votre propre gestionnaire sur un <select>, vous devez comparer avec oneTimeValue et appeler selectPlan(null) vous-même.

Design

Stylisez ce bloc via sa section Design dans le panneau de réglages. Ce sont des surcharges par bloc qui se superposent à votre design global et y retombent lorsqu’elles sont vides. Que sont les réglages de design ? Apprenez-en plus ici : Réglages de design.