Configuration Square

Connectez Square dans Réglages → Square Booking → Square. Utilisez le sandbox avant les réservations réelles.

Où configurer

Tous les identifiants Square se trouvent dans Réglages → Square Booking → Square. Les autres onglets regroupent le reste : Appearance, Booking flow, Payments, Analytics, Webhooks, Diagnostics, Advanced et License.

Réglages → Square Booking : un onglet par sujet.
Réglages → Square Booking : un onglet par sujet.

Mode de connexion

Choisissez l'un des deux :

  • Personal Access Token — recommandé pour Square Appointments Plus et Premium. Collez un jeton depuis Square Developer → Applications → Production ou Sandbox dans le champ Access Token.
  • OAuth — your own Square application — obligatoire sur le plan gratuit, où les réservations PAT au niveau vendeur sont bloquées. Créez une application sur le tableau de bord développeur Square, collez l'Redirect URL du plugin dans les réglages OAuth de l'app (exactement telle qu'affichée), enregistrez l'Application ID et l'Application Secret, puis cliquez Connect to Square.

Changer sandbox/production en OAuth impose de reconnecter. En OAuth, le téléphone client est obligatoire dans le widget (réservations buyer-level Square).

Onglet Square : mode de connexion, jeton d'accès, Location ID et sandbox.
Onglet Square : mode de connexion, jeton d'accès, Location ID et sandbox.

OAuth sandbox

Activez le mode sandbox, basculez le tableau de bord développeur Square en Sandbox, ouvrez un compte vendeur de test, laissez cet onglet ouvert, puis cliquez Connect to Square. Sans compte vendeur de test ouvert, Square affiche une page blanche.

Location ID

  1. Dans le tableau de bord développeur Square, ouvrez la même application.
  2. Allez dans Locations (activez le bascule sandbox pour les tests).
  3. Copiez l'ID de l'emplacement qui propose Appointments.
  4. Collez-le dans Location ID.

Seuls les services, le personnel et les disponibilités de cet emplacement apparaissent dans le widget.

Plusieurs emplacements

Le tableau Locations liste les emplacements actifs de votre compte Square. Cochez Enabled pour chaque emplacement réservable : à partir de deux, le widget commence par le choix du lieu, puis les services, l'équipe et les créneaux suivent ce lieu. Un emplacement Hidden n'est pas listé mais reste réservable avec [square_booking location_id="…"] ou un lien. L'emplacement par défaut est toujours le Location ID ci-dessus. Cliquez Refresh from Square après avoir ajouté un emplacement dans Square.

Locations : activez plusieurs emplacements Square, masquez-en certains de la liste.
Locations : activez plusieurs emplacements Square, masquez-en certains de la liste.

Mode sandbox

Le sandbox est activé par défaut. Décochez Enable sandbox (disable in production) pour la production. Ne mélangez jamais un jeton sandbox avec un Location ID production, ni l'inverse.

Tester la connexion

En bas de l'onglet Square, cliquez Test Square Connection. Un avis de succès confirme que le jeton, l'emplacement et l'API Appointments sont joignables.

Résultat de Test Square Connection.
Résultat de Test Square Connection.

Erreurs courantes

  • 401 Unauthorized — jeton expiré ou mal copié ; régénérez-le dans le tableau de bord développeur Square.
  • Location not found — le Location ID ne correspond pas à l'environnement du jeton (sandbox vs production).
  • Appointments non activé — activez Appointments pour cet emplacement dans votre compte Square.
  • Plan gratuit avec PAT — passez en OAuth. L'onglet Diagnostics affiche alors support_seller_level_writes à false.

Paiements

Optionnel. Dans l'onglet Payments :

  • Disabled — book without a card (défaut).
  • Card on file — Square Web Payments enregistre la carte pour le rendez-vous. Rien n'est débité aujourd'hui.
  • Pay in full now — débite le prix du service à la création de la réservation.

Le formulaire carte exige un Square Application ID (Square Developer → Applications → Application ID). Les ID sandbox et production sont différents. En OAuth, reconnectez après avoir activé les paiements pour que Square accorde PAYMENTS_WRITE.

Le champ Cancellation policy s'affiche au checkout avec une case obligatoire. Laissez-le vide pour utiliser le texte des réglages Square Appointments lorsqu'il est disponible.

Onglet Payments : carte enregistrée ou paiement complet avec Square Web Payments.
Onglet Payments : carte enregistrée ou paiement complet avec Square Web Payments.

Options d'affichage

Dans l'onglet Booking flow (Widget Content) : descriptions, images, nom du membre de l'équipe dans le récapitulatif. Décochez Show the All services link pour masquer le fil d'Ariane vers la liste des services ; le bouton Back y ramène toujours.

Onglet Booking flow : textes du widget, libellés des étapes et options d'affichage.
Onglet Booking flow : textes du widget, libellés des étapes et options d'affichage.

Questions d'accueil

Laissez Custom Intake Questions vide pour charger le formulaire Square (Appointments → Settings → Intake Form). Un JSON dans ce champ a priorité. Types : TEXT, DROPDOWN, CHECKBOX, TEXT_CONDITIONAL. Excluded Intake Fields masque des clés Square, une par ligne.

Questions d'accueil personnalisées (onglet Booking flow).
Questions d'accueil personnalisées (onglet Booking flow).

Voir Dépannage en cas d'échec répété.