Products Manager APP

Features

Price Monitor & Repricing

Le module Price Monitor surveille les prix concurrents en continu et ajuste automatiquement vos tarifs grace au moteur de repricing.

Veille concurrentielle

Sources de donnees

Deux sources complementaires pour collecter les prix :

  • SerpAPI : Google Shopping + Amazon (source principale, payante)
  • SearXNG : Moteur meta-search auto-heberge (fallback gratuit)

La cle SerpAPI est configurable via la variable SERPAPI_API_KEY ou depuis la page AI Providers (provider serp_api).

Tiers de surveillance

Chaque produit est affecte a un tier qui determine la frequence de surveillance :

TierFrequenceUsage
CritiqueToutes les 4hTop sellers, produits strategiques
StandardQuotidien (24h)Catalogue principal
LowHebdomadaire (7j)Long tail, accessoires

Le champ next_check_at dans PriceMonitorConfig determine le prochain passage Celery Beat.

File de validation

Les prix collectes passent par une file de validation avant integration :

  • Matching strict : correspondance EAN exacte
  • Matching flou : titre + marque (score de similarite)
  • Validation manuelle possible pour les matchs incertains

Alertes prix

Configuration d'alertes par produit ou par categorie :

TypeDescription
abovePrix concurrent au-dessus d'un seuil
belowPrix concurrent en-dessous d'un seuil
change_pctVariation de prix superieure a X%

Parametres :

  • Cooldown : delai minimum entre deux alertes (defaut 24h)
  • Canaux : email, notification in-app, webhook sortant

Monitoring MAP (Minimum Advertised Price)

Surveillance des prix planchers imposes par les marques :

  • Detection automatique des violations MAP
  • Historique des violations par revendeur
  • Export CSV pour reporting aupres des marques
  • Dashboard dedie avec KPIs (taux de conformite, top violateurs)

Historique des prix

Graphique PriceHistoryChart (Recharts) affichant :

  • Evolution du prix produit vs prix concurrents
  • Min / Max / Moyenne sur la periode
  • Annotations pour les evenements (promo, rupture, changement MAP)

Donnees stockees dans PriceCheckLog (db_analytics), partitionnees par mois.

Moteur de Repricing

Regles de repricing

Les regles sont stockees en JSONB et evaluees dans l'ordre de priorite :

{
  "strategy": "competitive",
  "target": "lowest_competitor - 0.01",
  "min_margin_pct": 15,
  "max_discount_pct": 30,
  "round_to": 0.99
}

Strategies disponibles :

  • competitive : s'aligner sur le concurrent le moins cher
  • margin_target : maintenir une marge cible
  • map_floor : ne jamais descendre sous le MAP
  • custom : formule personnalisee

Simulation (dry-run)

Avant application, le repricing peut etre simule :

POST /api/v1/prices/repricing/simulate

Retourne : ancien prix, nouveau prix, marge estimee, delta pour chaque produit concerne.

Garde-fous (Guard Rails)

Securites integrees pour eviter les erreurs de pricing :

  • Prix minimum absolu : jamais en-dessous du cout d'achat + marge minimale
  • Variation max par jour : limite le delta de prix (defaut +/-20%)
  • Blacklist concurrents : exclure certains revendeurs du calcul
  • Validation manuelle : au-dela d'un seuil de variation, approbation requise

Execution automatique

Celery Beat execute le repricing :

  • Horaire : verification des regles actives
  • Quotidien : recalcul complet du catalogue
  • File enrichment pour ne pas bloquer les imports

Le repricing ne modifie jamais directement les prix sur les plateformes externes. Il met a jour le prix dans ProductsManager, et la synchronisation vers Shopify/WooCommerce/etc. se fait via les connecteurs.

Endpoints API

MethodeEndpointDescription
GET/api/v1/prices/dashboardKPIs et resume
GET/api/v1/prices/monitoredProduits surveilles
GET/api/v1/prices/competitorsListe concurrents
GET/api/v1/prices/history/{id}Historique prix produit
POST/api/v1/prices/repricing/simulateSimulation repricing
POST/api/v1/prices/validationFile de validation