Skip to main content
Chaque fois qu’un plat passe en rupture — mis en pause par l’équipe, écoulé via l’inventaire ou désactivé par ta caisse — storekit envoie un événement. Cette recette les stocke, te montre les tendances (quels plats, quels jours, à quelle heure) et publie chaque matin un digest dans Slack pour que l’acheteur et le chef commencent la journée en sachant ce qui a manqué.
Le dashboard dispose déjà d’un rapport de snooze sous Reports (voir Rapport de snooze). Construis cette recette quand tu veux aussi que les ruptures d’inventaire et les changements pilotés par la caisse figurent dans la même liste, ou que le digest soit poussé dans Slack plutôt que consulté.

Comment ça marche

  1. storekit envoie item.out_of_stock à ton application chaque fois qu’un article devient indisponible.
  2. Ton application enregistre l’article, l’heure, la raison et ce qui l’a provoqué.
  3. Une tâche planifiée s’exécute à l’heure que tu choisis chaque matin et publie la liste de la veille, plus un tableau glissant des « plus mis en rupture ce mois-ci », dans Slack.

Ce dont tu as besoin

  • Les webhooks activés sur ton plan storekit (Settings → Developers).
  • Un compte Replit. Cette recette a besoin d’une URL publique qui reste en ligne, d’une base de données, et d’un planificateur pour la tâche matinale, que Replit fournit au même endroit.
  • Une URL Slack incoming webhook pour le canal qui doit recevoir le digest.

Étape 1 : construire l’application

Colle tout le bloc dans le builder en un seul message.

Either button opens the builder with the whole prompt below already filled in. Nothing starts until you press send, so read it through and edit the parts marked as yours first.

Ouvre l’application, appuie sur « Send digest now » et vérifie que Slack affiche « Nothing sold out yesterday. » avant de connecter storekit.

Étape 2 : connecter storekit

1

Open the webhooks portal

In the dashboard sidebar, go to Settings → Webhooks. If your plan includes webhooks and they are not yet enabled, click Enable Webhooks. If the page shows Upgrade to enable webhooks, contact support to discuss adding webhooks to your plan.
2

Add your app as an endpoint

In the embedded portal, add a new endpoint, paste the webhook URL your app builder gave you, and tick only the event types the recipe needs.
3

Copy the signing secret into your app

Open the endpoint you just created and copy its signing secret. In your app builder, save it as the environment variable STOREKIT_WEBHOOK_SECRET (builders call this “secrets” or “environment variables”). Redeploy if the builder asks you to.
4

Send a test event

Use the portal’s test option on the endpoint to send a sample event. The delivery log shows the response code from your app. A 2xx means your app accepted it; anything else, read the response body in the log — it is usually a missing secret.
Coche uniquement item.out_of_stock pour cet endpoint.

Étape 3 : tester avec une vraie rupture

Mets un article en pause dans le menu builder (voir Mettre en pause des produits). En quelques secondes, une ligne apparaît dans l’application avec la raison « snoozed » et la source « manual ». Réactive ensuite l’article — l’application ne le consigne pas, ce qui est attendu.

Idées

  • E-mail hebdomadaire à l’acheteur : demande au builder d’ajouter un e-mail du lundi (via un service comme Resend ou Postmark) avec le tableau des 30 jours joint en CSV.
  • Liste de prep : marque les articles qui s’écoulent avant 20h trois fois dans la semaine comme « sous-préparés » et liste-les séparément.
  • Vérification croisée avec la caisse : filtre par source pour voir combien de fois ton POS cache des articles que tu pensais en vente.

Ce que cette recette ne fait pas

  • Elle ne peut pas te dire quand un article est revenu, car il n’y a pas d’événement « back in stock ». Lis le journal comme « est parti à », pas « a été absent pendant ».
  • Elle ne modifie pas la disponibilité. Sortir de pause et réapprovisionner se font dans le dashboard ou sur ta caisse comme avant.
  • Les événements commencent au moment où tu connectes l’endpoint. Il n’y a pas d’historique antérieur ; le tableau des 30 jours se remplit au fil du premier mois.
  • C’est ton service. Le support storekit peut confirmer qu’un événement item.out_of_stock a atteint ton URL et le code de réponse ; le journal et le digest sont à toi.

Voir aussi

Payload item.out_of_stock

Chaque valeur de raison et de source que l’événement peut porter.

Rédiger un prompt qui fonctionne

La structure derrière ce prompt, et quoi dire quand le builder se trompe.

Alertes de commande vers Slack ou ton téléphone

Le même motif pour les commandes plutôt que le stock.

Disponibilité et snooze

Le snooze, l’inventaire et le rapport de snooze intégré.