> ## Documentation Index
> Fetch the complete documentation index at: https://docs.titane-intelligence.com/llms.txt
> Use this file to discover all available pages before exploring further.

# Rappeler un réassort

> Un flow Klaviyo qui rappelle au client de racheter un produit qu'il consomme, au moment où il arrive à épuisement.

export const PRODUITS = {
  serum: {
    nom: "Sérum rééquilibrant niacinamide",
    prix: "24,90 €",
    image: "/images/pure/serum.jpg"
  },
  gel: {
    nom: "Gel nettoyant doux",
    prix: "14,90 €",
    image: "/images/pure/gel-nettoyant.jpg"
  },
  solaire: {
    nom: "Lait frais solaire SPF 50",
    prix: "19,90 €",
    image: "/images/pure/solaire.jpg"
  },
  baume: {
    nom: "Baume lèvres repulpant",
    prix: "8,90 €",
    image: "/images/pure/baume-levres.jpg"
  },
  huile: {
    nom: "Huile corps nourrissante",
    prix: "22,90 €",
    image: "/images/pure/huile-corps.jpg"
  },
  dentifrice: {
    nom: "Dentifrice éclat minéral",
    prix: "6,90 €",
    image: "/images/pure/dentifrice.jpg"
  },
  deodorant: {
    nom: "Déodorant stick néroli blanc",
    prix: "11,90 €",
    image: "/images/pure/deodorant-stick.jpg"
  },
  recharge: {
    nom: "Recharge déodorant roll-on 24 h",
    prix: "7,90 €",
    image: "/images/pure/recharge-roll-on.jpg"
  },
  masque: {
    nom: "Masque stick argile rose",
    prix: "16,90 €",
    image: "/images/pure/masque-stick.jpg"
  },
  duo: {
    nom: "Duo rituel du matin",
    prix: "29,90 €",
    image: "/images/pure/duo-matin.jpg"
  }
};

export const ApercuEmail = ({objet, preheader, titre, accroche, titreSelection, produits = [], cta = "Découvrir", pied, logiciel, colonnes}) => <div className="not-prose" style={{
  border: "1px solid rgba(127,127,127,0.25)",
  borderRadius: 14,
  overflow: "hidden",
  margin: "20px 0",
  maxWidth: 640
}}>
    <div style={{
  background: "rgba(127,127,127,0.08)",
  padding: "12px 16px",
  fontSize: 13,
  lineHeight: 1.5
}}>
      <div><span style={{
  opacity: 0.6
}}>De :</span> Pure &lt;bonjour@pure.example&gt;</div>
      <div><span style={{
  opacity: 0.6
}}>Objet :</span> <strong>{objet}</strong></div>
      {preheader ? <div style={{
  opacity: 0.6
}}>{preheader}</div> : null}
    </div>
    <div style={{
  background: "#F7F5F0",
  color: "#1C1A16",
  padding: "28px 20px",
  fontFamily: "Helvetica, Arial, sans-serif"
}}>
      <div style={{
  textAlign: "center",
  fontFamily: "Georgia, 'Times New Roman', serif",
  fontSize: 34,
  letterSpacing: "-0.02em",
  marginBottom: 22
}}>pure</div>
      <div style={{
  textAlign: "center",
  fontSize: 22,
  fontWeight: 700,
  marginBottom: 10
}}>{titre}</div>
      <div style={{
  textAlign: "center",
  fontSize: 15,
  lineHeight: 1.6,
  maxWidth: 440,
  margin: "0 auto 22px"
}}>{accroche}</div>
      <div style={{
  textAlign: "center",
  fontSize: 12,
  letterSpacing: "0.12em",
  textTransform: "uppercase",
  opacity: 0.7,
  marginBottom: 14
}}>{titreSelection}</div>
      <div style={{
  display: "grid",
  gridTemplateColumns: `repeat(${colonnes || Math.min(produits.length, 3) || 1}, minmax(0, 1fr))`,
  gap: 14
}}>
        {produits.map(p => <div key={p.nom} style={{
  background: "#FFFFFF",
  borderRadius: 10,
  padding: 10,
  textAlign: "center"
}}>
            <img src={p.image} alt={p.nom} style={{
  width: "100%",
  aspectRatio: "4 / 5",
  objectFit: "cover",
  borderRadius: 6,
  margin: 0
}} />
            <div style={{
  fontSize: 13,
  fontWeight: 600,
  marginTop: 8,
  lineHeight: 1.35
}}>{p.nom}</div>
            <div style={{
  fontSize: 13,
  marginTop: 4
}}>{p.prix}</div>
          </div>)}
      </div>
      <div style={{
  textAlign: "center",
  marginTop: 22
}}>
        <span style={{
  display: "inline-block",
  background: "#1E4A45",
  color: "#F7F5F0",
  padding: "12px 26px",
  borderRadius: 999,
  fontSize: 14,
  fontWeight: 600
}}>{cta}</span>
      </div>
      {pied ? <div style={{
  textAlign: "center",
  fontSize: 11,
  opacity: 0.6,
  marginTop: 24,
  lineHeight: 1.5
}}>{pied}<br />Se désinscrire</div> : null}
    </div>
    {logiciel ? <div style={{
  padding: "8px 16px",
  fontSize: 12,
  opacity: 0.65
}}>Aperçu d'un envoi depuis {logiciel}, marque de démonstration « Pure ».</div> : null}
  </div>;

**L'objectif :** que le client rachète **chez vous**, au bon moment, un produit qu'il consomme, plutôt qu'ailleurs ou trop tard.

**Ce qu'il vous faut :** la propriété `titan_reassort` et le modèle « Titane - Réassort », qui montre les deux produits à racheter.

**Temps :** 20 minutes.

## Le résultat

<ApercuEmail logiciel="Klaviyo, modèle « Titane - Réassort »" objet="Votre déodorant arrive bientôt à sa fin" preheader="Refaites le plein en un clic." titre="On a pensé à vous" accroche="Bonjour Léa, c'est peut-être le moment de refaire le plein de ce que vous utilisez au quotidien." titreSelection="À renouveler" produits={[PRODUITS.recharge, PRODUITS.dentifrice]} cta="Commander à nouveau" pied="Vous recevez cet e-mail parce que vous êtes client de Pure." />

## Pas à pas

<Steps>
  <Step title="Créer le segment déclencheur">
    **Audience** › **Lists & segments** › **Create new** › **Segment**, nommé « Réassort à échéance ».

    Condition : `titan_reassort` **equals** `du`.

    Si votre compte a déjà le segment « TITAN · Réassort · À échéance », utilisez-le.
  </Step>

  <Step title="Créer le flow">
    **Flows** › **Create flow** › **Build your own**. Déclencheur : **Segment** › « Réassort à échéance ».
  </Step>

  <Step title="Ajouter le filtre de sortie">
    **Trigger settings** › filtre **Placed Order zero times since starting this flow**.
  </Step>

  <Step title="Le rappel">
    Ajoutez un **Email** avec le modèle **Titane - Réassort**. Un message court et utile : le produit, le bouton, rien d'autre.
  </Step>

  <Step title="Une relance, si besoin">
    **Time delay** de 5 jours, puis un deuxième **Email** plus bref : « Toujours là si vous en avez besoin ».
  </Step>

  <Step title="Activer">
    Passez les e-mails et le flow en **Live**.
  </Step>
</Steps>

<Warning>
  Comme tout flow déclenché par un segment, il ne part que pour les clients qui y **entrent** après son activation. Envoyez une fois une campagne aux clients déjà dans le segment.
</Warning>

## Pour aller plus loin

* **Le bon jour.** La date du premier réassort est dans `titan_prochain_reassort` : citez-la dans votre texte, ou utilisez-la pour un segment « réassort dans les 7 jours ».
* **Un réassort dépassé n'est pas perdu.** Une date déjà passée veut dire que le client n'a pas encore racheté : il reste dans le segment, et votre relance a toute sa place.
* **Pas de remise par défaut.** Le client a besoin du produit : un rappel au bon moment suffit souvent. Gardez les remises pour la relance.


This documentation is built and hosted on [Mintlify](https://mintlify.com), a developer documentation platform.