> ## Knowledge Base Index
> Fetch the complete knowledge base index at: https://help.hoppyapps.com/sitemap.xml
> Use this file to discover available pages before exploring further.
> Pure-Markdown content can be obtained by appending a '.md' suffix to the content URLs listed in the sitemap (without the trailing slash).

# 🌍 Appointment Bookings — Traduction

> ℹ️ **Note:** Cet article a été traduit automatiquement en utilisant l'IA et peut contenir des inexactitudes. Si quelque chose ne va pas, veuillez contacter notre équipe de soutien.

Hoppy Appointments vous permet de traduire le texte destiné aux clients tout au long de l'expérience de réservation. Cela inclut les libellés des boutons, les champs de formulaire, le texte du calendrier, les messages de confirmation, le wording de la liste d'attente, et même les libellés des blocs d'e-mail intégrés.

Si votre boutique vend dans plusieurs langues, les traductions aident les clients à réserver dans la langue dans laquelle ils naviguent déjà. Si vous ne vendez que dans une seule langue, les traductions vous permettent tout de même de personnaliser le wording par défaut pour correspondre à votre marque — par exemple en remplaçant « Book Now » par « Reserve My Spot » 🎯

Ce guide explique comment fonctionne le système de traduction, où le configurer et ce que contrôle chaque groupe de paramètres.

---

# **⚠️ Avant de commencer**

Les traductions se gèrent depuis :

**Hoppy Appointments → Settings → Translations** (Hoppy Appointments → Paramètres → Traductions)

Avant de traduire quoi que ce soit, assurez-vous que :

* L'application Hoppy Appointments est installée
* Vous avez créé au moins un service
* Les langues que vous souhaitez utiliser sont déjà ajoutées dans votre boutique Shopify

ℹ️ Les langues doivent d'abord être ajoutées dans Shopify avant d'apparaître dans Hoppy Appointments.

Pour ajouter ou gérer les langues de la boutique, rendez-vous dans :

**Shopify Admin → Settings → Languages** (Shopify Admin → Paramètres → Langues)

💡 Si une langue n'est pas configurée dans Shopify, elle ne sera pas disponible dans les menus déroulants de traduction.

---

# **🌐 Paramètres multilingues**

En haut de la page des traductions, la carte **Multi-language settings** (Paramètres multilingues) détermine les langues utilisées par le widget de réservation.

---

## **Langue par défaut**

C'est la langue utilisée lorsque :

* Les langues multiples sont **désactivées**
* Un client visite la boutique dans une langue que vous n'avez pas activée

Considérez-la comme votre langue de secours. L'application reviendra toujours à cette langue lorsque quelque chose ne peut pas être affiché dans la langue du client.

---

## **Activer les langues multiples**

Activez cette option pour prendre en charge plusieurs langues sur votre boutique.

Lorsqu'elle est activée, deux paramètres supplémentaires apparaissent :

### **Mode de détection de la langue**

Choisissez comment l'application détermine la langue à afficher :

* **Store language** (Langue de la boutique) → Utilise la langue active de la boutique Shopify pour la session de navigation du client
* **Browser language** (Langue du navigateur) → Utilise la langue configurée dans le navigateur du client

La plupart des marchands utilisent **Store language** car elle correspond au changement de langue de Shopify.

---

### **Langues activées**

Sélectionnez les langues que le widget de réservation doit prendre en charge. Seules les langues ajoutées dans Shopify apparaissent dans cette liste.

⚠️ Important :

* La **Default Language** (langue par défaut) est automatiquement incluse dans la liste des langues activées
* Si vous supprimez la langue actuellement sélectionnée dans l'éditeur, l'aperçu revient automatiquement à la langue par défaut

---

# **📝 L'éditeur de traduction**

Sous les paramètres multilingues, l'éditeur de traduction est divisé en deux onglets :

* **Calendar Translations** (Traductions du calendrier) → Texte global utilisé dans tous les services
* **Service Translations** (Traductions par service) → Substitutions par service pour les services ayant la configuration avancée activée

Un sélecteur de langue apparaît au-dessus des onglets lorsque les langues multiples sont activées. Utilisez-le pour traduire une langue à la fois.

L'onglet **Calendar Translations** comprend également un panneau d'aperçu en direct, afin que vous puissiez voir l'effet de vos modifications sur ordinateur et mobile pendant l'édition.

---

# **📅 Onglet Traductions du calendrier**

Cet onglet contrôle le texte par défaut affiché dans le widget de réservation, la page de reprogrammation, la page d'annulation et les libellés des blocs d'e-mail.

Le texte est organisé en groupes. Voici ce que contrôle chaque groupe.

---

## **Page produit**

* **Product page button label** (Libellé du bouton de la page produit) → Le texte du bouton qui remplace **Add to Cart** (Ajouter au panier) sur les pages produit réservables

   Valeur par défaut : « Book Now »

---

## **Textes généraux du calendrier**

Ce sont les principaux libellés et messages à l'intérieur du widget de réservation :

* **Time needed** (Durée nécessaire) → L'en-tête au-dessus des options de durée, par ex. « How long do you need? »
* **When do you want to book ?** (Quand souhaitez-vous réserver ?) → L'en-tête au-dessus de la liste des créneaux, par ex. « What time works best? »
* **Confirm booking title** (Titre de confirmation de réservation) → L'en-tête de l'étape de confirmation
* **Back button label**, **Confirm button label**, **Continue button** (Libellé du bouton Retour, Libellé du bouton Confirmer, Bouton Continuer) → Boutons de navigation
* **Confirm button label when submitting** (Libellé du bouton Confirmer lors de l'envoi) → La version d'envoi du bouton Confirmer
* **Time not found message / sub-message** (Message/sous-message Aucun créneau trouvé) → Affiché lorsqu'aucun créneau n'est disponible
* **Teammate selector label** (Libellé du sélecteur de collaborateur) → Libellé pour choisir un membre de l'équipe
* **No preference label** (Libellé Sans préférence) → Option lorsque n'importe quel collaborateur convient
* **Success title / description / CTA / CTA Link** (Titre de succès / description / CTA / lien CTA) → L'écran que voient les clients après confirmation d'une réservation gratuite

et bien d'autres.

---

## **Formulaire du calendrier**

Libellés et messages de validation des champs de formulaire de réservation par défaut :

* **First name field label** (Libellé du champ Prénom)
* **Last name field label** (Libellé du champ Nom)
* **Email field label** (Libellé du champ E-mail)
* **Phone field label** (Libellé du champ Téléphone)
* **Required message** (Message obligatoire) → Affiché lorsqu'un champ obligatoire est vide
* **Email error message** (Message d'erreur d'e-mail) → Affiché lorsque l'adresse e-mail est invalide

---

## **Page de reprogrammation**

Texte que voient les clients lorsqu'ils reprogramment une réservation via leur lien e-mail :

* **Reschedule booking heading** (En-tête de reprogrammation)
* **Rescheduling button** (Bouton de reprogrammation)
* **Rescheduled booking button** (Bouton de réservation reprogrammée)
* **Rescheduled booking message** (Message de réservation reprogrammée)

---

## **Détails de la réunion**

* **Meeting details title** (Titre des détails de la réunion) → L'en-tête au-dessus du lieu ou du lien de réunion sur l'écran de confirmation

---

## **Messages de statut de la réservation**

Messages affichés lorsqu'une réservation est en attente ou annulée :

* **On-hold title/message** (Titre/message En attente)
* **Cancelled title/message** (Titre/message Annulé)
* **Cancel booking title/button** (Titre/bouton Annuler la réservation)

Ceux-ci sont particulièrement utiles pour les services nécessitant une approbation manuelle.

---

## **Textes du calendrier multijour**

Libellés utilisés pour les séjours et locations :

* **Start date label**, **End date label** (Libellé de date de début, Libellé de date de fin)
* **Pick date text** (Texte Choisir une date)
* **Duration text** (Texte Durée)
* **Minimum selection label** (Libellé de sélection minimum) → Utilise les variables dynamiques `{count}` et `{unit}`

---

## **Textes des réservations par forfait**

Libellés utilisés pour les forfaits de séances :

* **Number of time slots label** (Libellé du nombre de créneaux)

---

## **Paiement partiel**

Libellés affichés lorsque les acomptes sont activés :

* **Partial payment label** (Libellé de paiement partiel) → Le libellé de la case à cocher d'acompte
* **Pay full amount label** (Libellé Payer le montant total) → Le libellé de la case à cocher de paiement intégral

💡 Ces libellés ne sont visibles sur la boutique que lorsque les paiements partiels sont activés pour un service payant.

---

## **Unités**

Libellés courts pour la durée et le formatage des dates :

* **Min**, **Hour**, **Hours**, **Day**, **Days**, **Night**, **Nights** (Min, Heure, Heures, Jour, Jours, Nuit, Nuits)
* **Date label** (Libellé de date)

Ils sont utilisés pour afficher des durées comme « 60 min » ou « 2 nights ».

---

## **Mois et jours de la semaine**

Traduisez les 12 noms de mois et les 7 noms de jours de la semaine. Il existe deux ensembles :

* **Days of week** (Jours de la semaine) → Noms complets comme Monday, Tuesday
* **Days of week short** (Jours de la semaine abrégés) → Noms courts comme Mon, Tue
* Month names → Noms complets comme January, February

Ils sont utilisés dans l'en-tête du calendrier et les sélecteurs de dates.

---

## **Blocs d'e-mail**

Ceux-ci contrôlent les libellés intégrés dans vos modèles d'e-mail :

* Libellés d'en-tête → Confirmed, Cancelled, Updated, On Hold, Declined, Waitlist
* Libellés d'action → Reschedule, Cancel
* Libellés de lien de calendrier → Add to Google Calendar, Add to Apple Calendar, Add to Outlook Calendar
* Libellés de section → Location, Order, Teammates

ℹ️ Ces libellés sont utilisés par les blocs d'e-mail prédéfinis. Le texte personnalisé que vous rédigez dans les sujets et corps de **Email Settings** (Paramètres des e-mails) n'est pas traduit automatiquement — il est envoyé exactement comme vous l'avez écrit.

Consultez la documentation **Email Notifications** (Notifications par e-mail) pour savoir comment personnaliser les modèles d'e-mail.

---

## **Liste d'attente**

Texte affiché lorsque les clients rejoignent ou interagissent avec la liste d'attente :

* Titre et description du formulaire
* Libellé du bouton **Join waitlist** (Rejoindre la liste d'attente)
* Texte du lien en ligne au-dessus de la liste des créneaux
* Message de confirmation après avoir rejoint
* Texte du bouton d'envoi

---

# **🛠️ Onglet Traductions par service**

Cet onglet vous permet de remplacer les traductions globales pour des services individuels.

ℹ️ Seuls les services pour lesquels **Advanced configuration** (Configuration avancée) est activée apparaissent ici. Si aucun service n'utilise la configuration avancée, une bannière d'information explique comment l'activer.

Pour chaque service répertorié, vous pouvez traduire :

* **Title** (Titre) → Le titre du service affiché aux clients
* **Description** (Description) → La description affichée aux clients
* **Floating action button label** (Libellé du bouton d'action flottant) → Si le service utilise un bouton flottant Book Now
* **Product page button label** (Libellé du bouton de page produit) → Remplacez le texte global du bouton uniquement pour ce service
* **Back button label**, **Confirm button label** (Libellé du bouton Retour, Libellé du bouton Confirmer)
* **Time needed text**, **Book text**, **Confirm booking text** (Texte Durée nécessaire, Texte Réserver, Texte Confirmer la réservation)

💡 Les traductions au niveau du service ont priorité sur les traductions globales du calendrier. Cela est utile lorsqu'un service nécessite un wording différent — par exemple, un bouton « Rent Now » pour les locations alors que tout le reste affiche « Book Now ».

L'onglet Service Translations n'inclut pas le panneau d'aperçu en direct car les remplacements sont liés à des services spécifiques.

---

# **🖥️ Comment les traductions s'affichent sur la boutique**

L'application détermine la langue à afficher selon la logique suivante :

1. Si **multiple languages are disabled** (les langues multiples sont désactivées), le widget utilise toujours la **Default Language** (langue par défaut)
2. Si **multiple languages are enabled** (les langues multiples sont activées) :
   * **Store language** (Langue de la boutique) → Utilise la langue active de la boutique Shopify
   * **Browser language** (Langue du navigateur) → Utilise la langue du navigateur du client
3. Si la langue détectée ne figure pas dans votre liste de langues activées, l'application revient à la **Default Language** (langue par défaut)
4. Si une clé de traduction spécifique est manquante, l'application revient à l'anglais

Où le texte traduit apparaît :

* Le bouton **Book Now** sur les pages produit
* Le calendrier du widget de réservation, le formulaire et les boutons
* Les pages de confirmation, d'attente, de reprogrammation et d'annulation
* Le formulaire de liste d'attente et les messages de confirmation
* Les libellés des blocs d'e-mail intégrés dans les e-mails de notification

---

# **🧮 Variables dynamiques**

Certains champs de traduction prennent en charge des espaces réservés dynamiques. Ne supprimez pas ces variables — elles sont remplacées automatiquement en fonction de la réservation.

### **Libellé de sélection minimum**

Utilisez `{count}` pour le nombre minimum et `{unit}` pour l'unité de jour ou de nuit.

Exemple :

`Minimum stay: {count} {unit}`

Devient :

`Minimum stay: 2 nights`

---

# **⚠️ Remarques importantes et limitations**

* **Ajoutez d'abord les langues dans Shopify.** Hoppy Appointments n'affiche que les langues déjà présentes dans les paramètres de votre boutique Shopify.

* **La détection par langue du navigateur est simplifiée.** Lorsque vous utilisez la détection **Browser language**, l'application utilise le code de langue principal. Par exemple, `pt-BR` devient `pt`. Si vous n'avez activé que `pt-BR`, la détection par navigateur risque de ne pas correspondre.

* **Les traductions par service nécessitent la configuration avancée.** Vous devez activer **Advanced configuration** sur un service avant qu'il n'apparaisse dans l'onglet Service Translations.

* **Le texte d'e-mail personnalisé n'est pas traduit automatiquement.** Le sujet et le corps que vous saisissez dans **Email Settings** sont envoyés exactement comme écrits, dans toutes les langues. Seuls les libellés des blocs intégrés sont traduits automatiquement.

* **La localisation de l'extension POS est limitée.** L'extension POS prend principalement en charge l'anglais. Les traductions multilingues de la boutique ne s'appliquent pas dans le flux de réservation POS.

* **L'interface d'administration est uniquement en anglais.** L'administration de Hoppy Appointments n'est actuellement disponible qu'en anglais, quelle que soit la langue de votre boutique.

* **Enregistrez après avoir modifié les langues.** Les modifications de traduction s'appliquent à la boutique dès qu'elles sont enregistrées.

* **Le retour à l'anglais est normal.** Si une traduction est vide ou manquante pour une langue, l'application affiche la version anglaise afin que les clients ne voient jamais de texte cassé.

---

# **💡 Cas d'usage courants**

## **Boutique en une seule langue avec wording personnalisé**

* Gardez **Enable multiple languages** (Activer les langues multiples) désactivé
* Définissez la **Default Language** (langue par défaut) sur la langue de votre boutique
* Modifiez les traductions du calendrier pour changer les libellés par défaut

Exemple : remplacez « Book Now » par « Reserve My Spot » dans tous les services.

---

## **Boutique multilingue**

* Ajoutez les langues dans **Shopify Admin → Settings → Languages** (Shopify Admin → Paramètres → Langues)
* Dans Hoppy Appointments, activez **Multiple languages** (Langues multiples)
* Choisissez la détection **Store language** (Langue de la boutique)
* Sélectionnez les langues que vous souhaitez prendre en charge
* Traduisez chaque langue dans l'onglet **Calendar Translations** (Traductions du calendrier)

Résultat : les clients qui réservent en français voient les libellés en français, tandis que ceux qui réservent en anglais voient les libellés en anglais.

---

## **Remplacement de bouton par service**

* Activez **Advanced configuration** (Configuration avancée) sur un service de location
* Allez dans **Service Translations** (Traductions par service)
* Modifiez le **Product page button label** (Libellé du bouton de page produit) de ce service pour « Rent Now »

Résultat : seul ce service affiche « Rent Now ». Tous les autres services conservent le libellé global « Book Now ».

---

# **🎉 Résultat final**

Une fois vos traductions configurées :

✅ Les clients voient les libellés de réservation dans la langue de leur boutique
✅ Le texte des boutons, les libellés des formulaires et le texte du calendrier correspondent à votre ton de marque
✅ Les boutiques multilingues changent automatiquement de langue en fonction des paramètres Shopify ou du navigateur
✅ Les remplacements au niveau du service permettent à chaque service d'utiliser un wording personnalisé
✅ Les libellés des blocs d'e-mail intégrés se traduisent automatiquement
✅ Les traductions manquantes reviennent en toute sécurité à votre langue par défaut ou à l'anglais

Avec les traductions configurées, votre expérience de réservation semble naturelle pour chaque client, quelle que soit sa langue 🌍

---