> ## 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 rappel Batch au moment où un produit que le client consomme arrive à épuisement.

export const Logiciel = ({id}) => {
  const logiciels = {
    klaviyo: ["Klaviyo", "CRM et e-mailing"],
    brevo: ["Brevo", "CRM et e-mailing"],
    mailchimp: ["Mailchimp", "CRM et e-mailing"],
    batch: ["Batch", "CRM et e-mailing"],
    shopify: ["Shopify", "Boutique en ligne"],
    woocommerce: ["WooCommerce", "Boutique en ligne"],
    prestashop: ["PrestaShop", "Boutique en ligne"],
    magento: ["Magento", "Boutique en ligne"]
  };
  const [nom, famille] = logiciels[id] || [id, ""];
  return <div className="not-prose" style={{
    display: "flex",
    alignItems: "center",
    gap: 10,
    margin: "0 0 20px"
  }}>
      <img src={`/logos/${id}.png`} alt={nom} width={28} height={28} noZoom style={{
    width: 28,
    height: 28,
    margin: 0
  }} />
      <span style={{
    fontSize: 14
  }}>
        <strong>{nom}</strong>
        <span style={{
    opacity: 0.6
  }}> · {famille}</span>
      </span>
    </div>;
};

export const ApercuPush = ({titre, texte, image, logiciel, moment = "maintenant"}) => <div className="not-prose" style={{
  border: "1px solid rgba(127,127,127,0.25)",
  borderRadius: 14,
  overflow: "hidden",
  margin: "20px 0",
  maxWidth: 420
}}>
    <div style={{
  background: "linear-gradient(160deg, #2B3A37 0%, #1C1A16 100%)",
  padding: "26px 16px 22px"
}}>
      <div style={{
  textAlign: "center",
  color: "#F7F5F0",
  fontSize: 40,
  fontWeight: 300,
  letterSpacing: "-0.02em",
  marginBottom: 18
}}>9:41</div>
      <div style={{
  background: "rgba(247,245,240,0.94)",
  color: "#1C1A16",
  borderRadius: 18,
  overflow: "hidden",
  fontFamily: "Helvetica, Arial, sans-serif"
}}>
        <div style={{
  display: "flex",
  alignItems: "center",
  gap: 8,
  padding: "10px 12px 0",
  fontSize: 12
}}>
          <span style={{
  width: 20,
  height: 20,
  borderRadius: 5,
  background: "#1E4A45",
  color: "#F7F5F0",
  display: "inline-flex",
  alignItems: "center",
  justifyContent: "center",
  fontFamily: "Georgia, 'Times New Roman', serif",
  fontSize: 12
}}>p</span>
          <span style={{
  opacity: 0.7,
  letterSpacing: "0.04em",
  textTransform: "uppercase",
  fontSize: 11
}}>Pure</span>
          <span style={{
  marginLeft: "auto",
  opacity: 0.55,
  fontSize: 11
}}>{moment}</span>
        </div>
        <div style={{
  padding: "6px 12px 12px"
}}>
          <div style={{
  fontSize: 14,
  fontWeight: 700,
  lineHeight: 1.35
}}>{titre}</div>
          <div style={{
  fontSize: 14,
  lineHeight: 1.4,
  marginTop: 2
}}>{texte}</div>
        </div>
        {image ? <img src={image} alt="" noZoom style={{
  display: "block",
  width: "100%",
  aspectRatio: "3 / 2",
  objectFit: "cover",
  margin: 0
}} /> : null}
      </div>
    </div>
    {logiciel ? <div style={{
  padding: "8px 16px",
  fontSize: 12,
  opacity: 0.65
}}>Aperçu d'une notification envoyée depuis {logiciel}, marque de démonstration « Pure ».</div> : null}
  </div>;

<Logiciel id="batch" />

**L'objectif :** que le client rachète **chez vous**, au bon moment, ce qu'il consomme.

**Le modèle TITAN :** TITAN-CORE, qui repère chez chaque client les produits qui arrivent à épuisement.

**Ce qu'il vous faut :** les champs `titan_reassort` et `titan_prochain_reassort`, [confirmés](/crm/batch/index#confirmer-les-champs-titane) dans **Data** › **Profile data**.

**Temps :** 20 minutes.

<Note>
  Chez Batch, Titane écrit **la date** du prochain réassort (`titan_prochain_reassort`) et un repère simple (`titan_reassort` égal à `du`), pas le produit lui-même. Le message parle donc de renouvellement, et peut montrer la sélection personnalisée du client.
</Note>

## Le résultat

<ApercuPush logiciel="Batch" moment="10:00" titre="Il est temps de refaire le plein" texte="Vos indispensables du quotidien vous attendent, en un clic." />

## Pas à pas

<Steps>
  <Step title="Créer l'automatisation">
    **Automations** › **New Automation**, puis l'automatisation à déclencheur (Trigger Automation).
  </Step>

  <Step title="Choisir le déclencheur">
    **Attribute Change Trigger** : l'attribut `titan_reassort`, nouvelle valeur `du`.
  </Step>

  <Step title="Garder la cible à jour">
    Dans le ciblage : `titan_reassort` est égal à `du`. Un client qui rachète entre-temps sort de l'automatisation à la prochaine vérification.
  </Step>

  <Step title="Attendre une heure correcte">
    **Delay** › **Wait until**, 10 h.
  </Step>

  <Step title="Le rappel">
    Une étape **Push** : un message court et utile, avec un lien vers votre page de réassort ou vers `{{ titan_reco_1_url }}`.
  </Step>

  <Step title="Une relance, si besoin">
    **Delay** › **Wait for**, 5 jours, puis une étape **Email** plus brève : « Toujours là si vous en avez besoin ». Les clients qui ont racheté sont déjà sortis.
  </Step>

  <Step title="Lancer">
    Relisez, puis lancez l'automatisation.
  </Step>
</Steps>

<Warning>
  Les clients déjà « à échéance » quand vous lancez l'automatisation n'y entrent pas : envoyez-leur une fois une campagne ciblée sur `titan_reassort` égal à `du`.
</Warning>

## Prévenir avant la date

Pour écrire **avant** l'échéance plutôt que le jour même, servez-vous de la date :

<Steps>
  <Step title="Une automatisation récurrente">
    **Automations** › **New Automation** › **Push**, en automatisation récurrente (Recurring Automation), **une fois par jour**, à 10 h à l'heure locale du profil.
  </Step>

  <Step title="Cibler sur la date">
    **Add conditions** : `titan_prochain_reassort`, **dans** 3 jours (une date à venir).
  </Step>

  <Step title="Écrire le message">
    « Bientôt à court ? Pensez à le recommander. » Chaque jour, Batch écrit aux clients dont l'échéance tombe trois jours plus tard.
  </Step>
</Steps>

<Tip>
  La date se met en forme dans un message : `{{ titan_prochain_reassort|formatDate(pattern: 'dd/MM/yyyy') }}` donne « 15/10/2026 ».
</Tip>


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