restocking
Retour au blog
L'équipe restocking

Comment notre technologie détecte les retours en stock en moins de 5 minutes

Plongée dans l'infrastructure technique de restocking : scraping intelligent, détection multi-couche, et double confirmation.

#tech#scraping#architecture#web scraping#fashion tech

Les coulisses techniques de restocking

Beaucoup d'utilisateurs nous demandent : "Comment faites-vous pour être aussi rapides ?" Voici les détails techniques de notre infrastructure.

Étape 1 : Le scraping intelligent

Notre worker Python scanne les pages produits en utilisant Playwright — un navigateur headless qui exécute le JavaScript exactement comme un vrai navigateur.

Pourquoi Playwright ? Les sites e-commerce modernes chargent leurs données de stock dynamiquement via JavaScript. Un simple curl HTTP ne voit qu'une page vide. Playwright exécute le JS et nous donne accès aux vraies données.

Nous utilisons aussi le stealth mode pour ne pas être bloqués par les protections anti-bot (Akamai, Cloudflare, DataDome).

Étape 2 : La détection à 4 couches

Une fois la page chargée, nous appliquons 4 couches de détection :

Couche 1 : dataLayer

La plupart des sites e-commerce utilisent un `digitalData` ou `dataLayer` JavaScript pour le tracking. Ce JSON contient souvent l'état du stock en temps réel. Nous le parsons en premier — c'est la source la plus fiable.

Couche 2 : État du bouton "Ajouter au panier"

Le bouton d'achat change d'état selon le stock : `disabled` quand la taille est épuisée, actif quand elle est disponible. Nous vérifions cet attribut.

Couche 3 : Attributs de variants

Les sélecteurs de taille et couleur (`data-size`, `data-color`, `aria-label`) contiennent souvent l'information de disponibilité. Nous les analysons avec un classifieur sémantique.

Couche 4 : Analyse LLM

Pour les cas complexes, nous utilisons DeepSeek pour analyser le contenu textuel de la page et déterminer si la taille est en stock.

Étape 3 : La double confirmation

C'est notre secret anti-faux-positifs. Nous exigeons DEUX détections IN_STOCK consécutives avant d'envoyer une alerte. Pourquoi ?

- Un bouton peut être temporairement actif pendant un rechargement

  • Un dataLayer peut contenir des données en cache
  • Un retour peut être annulé en quelques secondes

    Deux confirmations = zéro fausse alerte.

    Étape 4 : La notification

    Email via Resend (SMTP premium, délivrabilité 99.9%) et SMS via Twilio pour les utilisateurs Pro. Délai moyen : 3 secondes après détection.

    L'infrastructure

    - Worker Python : exécuté sur Railway, cron toutes les 5 minutes

  • Base de données : Supabase PostgreSQL (Francfort, GDPR compliant)
  • Frontend : Next.js 16 sur Vercel
  • Paiements : Stripe
  • LLM : DeepSeek V3 pour l'extraction avancée

    Créer votre première alerte →


  • Prête à ne plus jamais rater ta taille ?

    Crée un compte gratuit et active tes 3 premières alertes.

    Commencer gratuitement