Skip to content
FonctionnalitésTarifsAffiliésBlogAideÀ proposContact
CommencerSe connecter
Retour au Blog
guides2026-07-216 min de lecture

Un inventaire, trois marketplaces : intégration Getir + Trendyol GO + Yemeksepeti

Une chaîne de döner à 4 succursales à Izmir Alsancak opère sur trois plateformes turques via un menu unique. Master record thMenu, webhook fan-out et D1 atomic UPDATE.

th

thMenu Team

thmenu.com

Une chaîne de döner avec 4 succursales à Izmir Alsancak est connectée simultanément à Getir Yemek, Trendyol GO et Yemeksepeti. Au lieu de maintenir trois menus, ils utilisent thMenu comme master record ; les décréments de stock se font à un seul endroit et un fan-out webhook met à jour les trois plateformes.

Architecture master record

La colonne products.stock_quantity dans D1_MENU est la source canonique unique. À la confirmation d'une commande : UPDATE products SET stock_quantity = stock_quantity - 1 WHERE id = ? AND stock_quantity > 0. 0 ligne affectée = rupture.

Sur succès, un événement part vers Cloudflare Queue. Trois workers patchent en parallèle les API. Latence moyenne 340 ms.

Résolution de conflits

Scénario : 5 lahmacun en stock. À la même seconde, 5 commandes arrivent depuis trois plateformes. L'UPDATE atomique sérialise — la dernière trouve stock=0 et est rejetée. Final 0, trois signaux "rupture" sortent.

D1 n'a pas de verrous de ligne mais WHERE stock > 0 joue le même rôle. Zéro vente excédentaire en 6 mois.

Réconciliation des écarts

Le webhook Yemeksepeti a 30 s de délai, Trendyol est immédiat, Getir poll toutes les 5 s. Un cron horaire compare les trois au master.

  • Yemeksepeti 5, Getir 3 : master à 5, PATCH Getir
  • Master 0, plateforme 2 : PATCH 0 immédiat
  • Écart > 3 : alerte Slack

FAQ

Doit-on saisir les menus manuellement sur chaque plateforme ? Non, master record + fan-out automatisent tout.

Qui a la priorité en cas de race ? FIFO par timestamp, le perdant obtient 422.

Le cron est-il automatique ? Oui, horaire avec alerte Slack au-delà du seuil.

Cet article vous a été utile ? Partagez-le.