Exemple : une Mini App de drop minuté pour un canal VIP Telegram
Un canal qui fait déjà monter l’attente autour d’un drop, puis meurt dans les DM. La Mini App s’ouvre à heure fixe, verrouille le stock, prend la facture, se ferme. Comment je construirais ce créneau sans une boutique complète.
C’est la Mini App que je prends quand une marque a déjà un canal Telegram qui remplit une salle, puis perd la vente dans les DM : « il reste du M ? », un numéro de carte à 00:03, deux personnes promises le dernier hoodie. Instagram a tué l’attente. Telegram peut la garder si la vitrine s’ouvre à l’heure pile, pas un catalogue ouvert toute la semaine.
Un bot boutique avec panier et Nova Poshta, je l’ai déjà écrit. Un drop n’est pas cette boutique avec un CSS de compte à rebours. La liste SKU est minuscule. Le pic est le produit. Si vous copiez le store entier, vous passerez la semaine sur les formulaires de livraison et vous vendrez quand même le M en double à la seconde zéro.
1. Le parcours utilisateur dans cet exemple
Le canal est la waitlist. La Mini App est une porte fermée jusqu’à `starts_at`, puis elle vend jusqu’à ce que `qty` soit zéro.
- Quelques jours avant : le canal poste photos, grille de tailles, prix, l’horaire. Pas de « écrivez-nous ». Un bouton ouvre la Mini App dans une salle d’attente : compte à rebours, rien à acheter.
- À `starts_at` le bot poste le même deeplink. La salle d’attente devient une grille de trois SKU. MainButton = payer. La taille est un tap, pas un message.
- Le checkout retient l’unité 90 secondes tant que la facture est ouverte. Le webhook « payé » commit. Un hold abandonné revient au stock. Impayé à la fermeture = parti, pas « écrivez au manager ».
- Après : une ligne bot dans le canal - « M épuisé » - et une confirmation privée à l’acheteur avec les champs colis dont vous avez vraiment besoin. Pas un dump CRM.
2. Le créneau, c’est le stock
Un drop meurt de deux façons : vendre une unité deux fois, ou ouvrir trop tard pendant que l’attente est déjà dans les DM. Les deux sont des problèmes de base, pas de design.
- L’heure serveur, pas l’horloge du téléphone. `starts_at` vit dans Postgres. La Mini App interroge `/drop/state` toutes les quelques secondes près de l’ouverture. Ne faites pas confiance à `Date.now()` dans la webview.
- Le hold est une ligne avec `expires_at`, unique sur `(sku, size)` tant qu’il est actif. Le checkout crée le hold dans une transaction. Le webhook passe hold → commande, ou la tâche d’expiry le supprime. La même anti-double-vente que les billets de la série bots de paiement.
- Un drop = un `starts_at`. Pas de « soft launch » pour les copains à 23:50. Le feeling VIP, c’est que tout le monde tape la même seconde. Un preview discret, c’est un autre SKU un autre jour.
3. Ce que je construirais d’abord (et ce que non)
Un premier drop, c’est trois SKU, deux tailles, un rail de paiement, un DM de colisage. Ce n’est pas un OS mode.
- Livrer d’abord : salle d’attente, `starts_at` serveur, hold + webhook, état épuisé, ligne bot dans le canal, HMAC à chaque achat, un formulaire d’adresse après paiement.
- Payer avec le rail que cette audience utilise déjà. En Ukraine, souvent Mono ou LiqPay sur une page hébergée depuis la Mini App. Stars seulement si le drop est numérique. Un hoodie n’est pas un bien numérique.
- Pas en premier : raffle de waitlist, bots d’achat auto, un portail retours complet, Apple Pay sur une surface qui ne l’héberge pas, « stickers story », une animation de file qui cache une API de 4 secondes. Si le hold est faux, l’animation ment.
4. Pour qui est cet exemple - et qui devrait simplement utiliser le bot boutique
Une Mini App drop est une arme pour la rareté. Une Mini App boutique est une arme pour l’assortiment. Une tâche par lancement.
- Le drop : merch, un tirage, une cohorte de cours à 30 places, une dégustation à 12 billets. Le canal peut vraiment rassembler des gens à une heure.
- Sinon l’article boutique : cosmétique restockée chaque semaine, 40 SKU, Nova Poshta comme habitude. Une horloge sur ce catalogue, c’est du théâtre.
Un drop, c’est un horodatage avec un hold
Je construirais ça pour une marque qui poste déjà dans un canal et colle encore une carte dans les DM quand les commentaires explosent. Salle d’attente Next.js, SKU Postgres avec `starts_at` et `qty`, hold de 90 secondes, webhook Mono / LiqPay / Stripe, un bot qui n’annonce que l’ouverture et « épuisé ». Si c’est votre vendredi soir - écrivez via le formulaire. On cadrera un drop qui encaisse un vrai paiement à la seconde zéro ce mois-ci, pas une boutique avec un sticker compte à rebours.
Il faut le construire, pas seulement le lire ?
Développement Telegram Mini App : Next.js, paiements, bots. Prestataire directe.
On discute de votre projet ?
Je suis ingénieure web senior, spécialisée en React et Next.js - disponible en freelance partout dans le monde.
Localisation
Kyiv, Ukraine
Upwork
Voir le profilTelegram
Me contacterViber
Me contacter