Synchronisation produits
Intent
Maintenir le catalogue produit synchronisé entre Magento, LogiDAV et les marketplaces (prix, stock, disponibilité, fiches produit).
Déclencheur
menzzo:v2:products— synchronisation périodique du catalogue- Événementiel — mise à jour suite à un changement de stock ou de prix
Composants principaux
| Composant | Rôle |
|---|---|
menzzo:v2:products | Commande de synchronisation principale |
| Services de sync marketplace | Envoi des données vers chaque marketplace |
SaleProductAvailabilityService | Calcul de disponibilité et dates de livraison |
Effets de bord
- Mise à jour des fiches produit sur les marketplaces
- Synchronisation des prix
- Mise à jour du stock disponible sur les canaux de vente
- Mise à jour des dates de livraison estimées
Modes d'échec
- Données produit incomplètes — rejet par la marketplace
- Rate limiting — trop de requêtes vers l'API marketplace
- Produit inexistant côté marketplace — erreur de mapping
Chemin de débogage
- Vérifier les logs de la commande de synchronisation
- Contrôler la réponse de l'API marketplace
- Valider les données produit envoyées
- Vérifier les files d'attente de synchronisation
SaleProductAvailabilityService
Le service mz.saleproductavailability calcule la disponibilité des produits :
$availabilityService = $this->get('mz.saleproductavailability');
$dispo = $availabilityService->getProductDispo($saleProduct);
$deliveryInfo = $availabilityService->getOrderDeliveryInfo($saleProduct);
Priorité de calcul de la date de disponibilité :
- Date d'arrivée du conteneur
dispoClientDate- Champ
available - Champ
availability