Chowple ProCentre d'aide

Publier votre carte sur votre site

Affichez votre carte Chowple sur votre propre site — widget, iframe ou API JSON, toujours à jour.

Votre carte Chowple peut être affichée sur votre propre site web : vous la tenez à jour dans l'onglet Carte, votre site la reflète automatiquement. Trois formats sont proposés — un widget à coller, une iframe, ou l'API JSON brute pour votre webmaster.

Publier ma carte

La diffusion sur votre propre site — widget, iframe et API JSON — fait partie du plan Pro. En plan Starter, l'interrupteur de publication vous propose de passer au plan Pro. Votre carte reste en revanche toujours visible sur votre page Chowple, quel que soit votre plan.

Activez la publication

Dans Réglages → Carte, carte Publier ma carte, activez l'interrupteur Carte publiée sur le web et confirmez. Vos plats, prix, photos et notes deviennent alors accessibles publiquement : sur votre page Chowple, dans le widget et via l'API. Vous pouvez dépublier à tout moment, d'un clic.

Choisissez d'afficher ou non les notes

Juste sous l'interrupteur de publication, Afficher les notes Chowple décide si les notes de vos plats et de votre établissement apparaissent sur la carte diffusée sur votre site — widget, iframe et API. Désactivez-le et votre carte y devient une carte de menu classique : noms, descriptions, prix et photos, sans aucune note.

Ce réglage ne concerne que votre propre site. Votre page Chowple, elle, continue d'afficher les notes : c'est la page d'avis de votre établissement.

Collez le widget sur votre site

Copiez le bloc Widget à coller sur votre site et insérez-le dans votre page (ou transmettez-le à votre webmaster) :

<div data-chowple-menu="votre-slug" data-lang="fr"></div>
<script src="https://chowple.com/embed/menu.js" async></script>

Le widget est isolé du style de votre site (il reste net quel que soit votre thème) et s'adapte : liste dense pour une carte des vins, cartes avec photos pour les plats.

Personnalisez-le (optionnel)

Ajoutez des attributs sur le <div> selon vos besoins :

AttributEffet
data-lang="en"textes et prix en anglais
data-theme="dark"thème sombre
data-photos="false"masquer les photos
data-ratings="false"masquer les notes Chowple sur cette intégration précise
data-mode="dense"forcer la liste compacte, sans cartes photo
data-menu="Carte des vins"n'afficher qu'une seule de vos cartes (nom exact) ; vos formules restent affichées
data-formulas="false"masquer le bloc Formules (si vous affichez plusieurs cartes dans plusieurs widgets, gardez-le sur un seul)
data-font="Georgia, serif"police personnalisée

Si le widget ne s'affiche pas : l'iframe

Certains sites bloquent les scripts externes (règle de sécurité CSP — fréquent chez Wix, Squarespace ou sur un site durci). Deux solutions :

  • soit votre webmaster ajoute ces quatre directives à la CSP du site :

    script-src  https://chowple.com;
    connect-src https://chowple.com;
    img-src     https://hleawvqvbrkywdgjxcoo.supabase.co;
    style-src   'unsafe-inline';

    Les deux premières autorisent le chargement du widget et l'appel à votre carte. La troisième affiche les photos de plats, hébergées sur un autre domaine que chowple.com — sans elle, la carte s'affiche mais toutes les photos restent vides. La quatrième autorise la feuille de style interne du widget : sans elle, la carte s'affiche en texte brut, sans mise en forme.

  • soit utilisez la Variante iframe :

    <iframe src="https://chowple.com/embed/menu/votre-slug" style="width:100%;border:0" height="800" title="Menu"></iframe>

    Ajustez height à la longueur de votre carte ; ajoutez ?lang=en pour l'anglais. Une iframe est elle aussi soumise à la CSP : si votre site en applique une stricte, il faut y ajouter frame-src https://chowple.com.

Si votre CSP est verrouillée au point que rien de tout cela ne passe, il reste le lien simple vers votre carte publique Chowple, qui ne demande aucune autorisation.

Pour votre webmaster : l'API JSON

Le bloc API JSON donne l'adresse https://chowple.com/api/v1/menu/votre-slug (?lang=en pour l'anglais) : votre carte complète en JSON, sans authentification, pour un rendu 100 % personnalisé. Points de contrat à connaître :

  • menus, sections, items, prices et formulas sont toujours des tableaux, même avec un seul élément, ou aucun (formulas vaut [] sans formule). Les notes sont sur 10 (rating_scale: 10) et masquées (rating: null) sous 3 avis par plat ou 5 avis pour l'établissement.
  • ratings_visible (booléen) dit si la réponse porte des notes : false quand l'établissement a désactivé Afficher les notes Chowple — à distinguer d'un rating: null isolé, qui signifie « pas encore assez d'avis ».
  • formulas (clé ajoutée en octobre 2026) décrit vos formules commandables : name, description, price (objet {amount, currency}), available, validity et slots. validity vaut null sans restriction, sinon : days_of_week en jours ISO (1 = lundi … 7 = dimanche), heures start_time / end_time en HH:MM (end_time inclus), dates starts_at / ends_at en UTC (starts_at repasse à null une fois la date dépassée, ends_at est exclu). Chaque emplacement de slots porte min_picks et max_picks (le nombre de plats distincts que le client y choisit : 1 et 1 un plat, 0 et 1 facultatif, 2 et 2 « 2 au choix », 0 et 2 « jusqu'à 2 », jamais plus de 10), required (toujours égal à min_picks > 0, conservé pour les intégrations écrites avant) et son price_delta (le supplément d'emplacement, dû pour chaque plat choisi et cumulé au price_delta du plat ; 0 sans supplément). Ce sont des nombres, jamais une phrase : à votre rendu d'écrire « (2 au choix) » ou « (+3 € par plat) ». Un emplacement à min_picks 0 sans aucun plat commandable est omis de slots (ne supposez pas un nombre d'emplacements stable d'une réponse à l'autre) ; un emplacement à min_picks > 0 est conservé et la formule passe alors available: false. Il liste ensuite ses plats : id identique à celui de items, price_label de la variante servie, supplément price_delta, section_id quand le plat vient d'une section entière publiée dans la même réponse (null sinon, ou pour un plat nommé), url. Aucune note, aucune économie.
  • Le contrat v1 est stable : les évolutions n'ajoutent que de nouvelles clés, rien n'est retiré ni renommé. Ignorez les clés inconnues.
  • Erreurs : corps {"error":"code"} — invalid_slug (400), menu_unavailable (404 : slug inconnu, publication désactivée, carte vide ou abonnement insuffisant — ces causes sont volontairement indistinguables), rate_limited (429, avec un en-tête Retry-After), internal (500). CORS ouvert (*), y compris sur les erreurs.
  • Le widget émet les événements chowple:menu:loaded et chowple:menu:error sur le <div> si vous voulez réagir au chargement.

Mise à jour : les réponses sont mises en cache. Après une modification dans l'onglet Carte, comptez jusqu'à 5 minutes avant qu'elle apparaisse sur votre site — il n'y a pas de purge instantanée. Le bloc Formules du widget peut mettre jusqu'à 24 heures à apparaître la première fois sur un site qui l'intègre déjà (les navigateurs gardent le script menu.js en cache) ; vos données, elles, suivent le délai de 5 minutes.

La publication exige le plan Pro, un établissement vérifié et le rôle propriétaire, administrateur ou manager. Une carte vide ne peut pas être publiée. Si vous dépubliez, le widget disparaît proprement de votre site (aucun bloc d'erreur) et l'API répond 404. Même chose si votre abonnement repasse en Starter : la diffusion s'arrête (widget vide, API 404) sans toucher votre réglage — elle reprend telle quelle dès le retour au plan Pro, et votre page Chowple reste en ligne dans l'intervalle.

Cet article vous a-t-il aidé ?

On this page