Quand le code est la bonne réponse
Nous recourons au code sur mesure quand trois vérifications sont réunies : le workflow natif ne peut pas le faire, Make ou n8n ne peuvent pas le faire proprement, et la tâche est assez importante pour être maintenue pendant des années. Exemples typiques issus de comptes clients :
- Un calculateur de devis avec la vraie logique tarifaire de l'entreprise, intégré à un tunnel, qui écrit le résultat dans le contact.
- Une synchronisation bidirectionnelle avec un logiciel métier qui a une API mais pas de connecteur : logiciels de gestion de cabinet, outils de gestion d'interventions, CRM immobiliers.
- Des règles de réservation que le calendrier ne sait pas exprimer : « ne réserver une étude que si le code postal est à moins de 40 km et que la valeur du chantier dépasse un seuil ».
- Une génération de documents qui fusionne les données du CRM dans un PDF à votre charte et le classe sur le contact.
Quatre schémas qui fonctionnent
1. Récepteur de webhook
Les workflows GoHighLevel peuvent envoyer un webhook à n'importe quelle étape. Un petit service le reçoit, fait le travail (chercher une information, calculer, appeler une autre API) et réécrit le résultat via l'API GoHighLevel. Le workflow continue ensuite selon le champ renvoyé. Cela règle la plupart des cas « nous avons besoin d'une logique que le constructeur n'a pas ».
2. Widget intégré
Un calculateur, un configurateur ou un formulaire sur mesure construit comme un petit composant web et intégré à une page de tunnel GoHighLevel. Il envoie au CRM comme n'importe quel formulaire, si bien que le tagging et le placement dans le pipeline continuent de fonctionner.
3. Synchronisation planifiée
Une tâche qui s'exécute à intervalle régulier pour récupérer ou envoyer des enregistrements entre GoHighLevel et un autre système, avec traitement par lots, nouvelles tentatives et rapport de rapprochement. C'est ainsi que nous faisons s'accorder le logiciel d'une clinique et son CRM sur qui a rendez-vous demain.
4. Formulaire sur mesure avec validation
Quand un formulaire nécessite des recherches, une logique conditionnelle ou une gestion de fichiers au-delà de ce que les formulaires natifs offrent, nous construisons le formulaire et envoyons à GoHighLevel à la soumission. Le visiteur voit une page ; le CRM voit un contact normal.
Travailler avec l'API et les webhooks
Quelques habitudes garantissent la fiabilité des intégrations. Idempotence : chaque webhook reçu porte un identifiant et nous ignorons les doublons, car les plateformes réessaient. Limites de débit : écrire par lots et temporiser sur les réponses 429 plutôt que de marteler. Correspondance des champs à un seul endroit : une configuration unique qui dit quel champ personnalisé signifie quoi, pour qu'un champ renommé ne casse pas trois services. Et tout écrit une note : quand un service modifie un contact, il ajoute une courte note disant ce qu'il a fait et pourquoi, pour que l'équipe voie l'historique sans demander à un développeur.
Les services sur mesure ne doivent jamais détenir l'unique copie de l'état d'un client. Si le service disparaît demain, le CRM doit rester complet. Cette seule règle évite la plupart des catastrophes d'intégration.
Où vit le code
De petits services à usage unique sur une plateforme managée : une fonction serverless par webhook, une tâche planifiée pour chaque synchronisation, un widget hébergé en statique. Chacun fait quelques centaines de lignes, a ses propres journaux et peut être remplacé sans toucher aux autres. Nous évitons l'approche « une seule application sur mesure qui fait tout », car elle devient la chose que personne n'ose modifier.
Ce que nous évitons
Reconstruire des fonctions que GoHighLevel a déjà, parce que la plateforme les améliorera et pas notre copie. Stocker des données clients hors du CRM sans raison. Des services non documentés que seule une personne comprend. Et un code astucieux plutôt que clair : la personne qui le maintiendra dans deux ans doit pouvoir le lire en prenant un café.
L'essentiel à retenir
- Épuisez d'abord les fonctions natives et les outils d'intégration. Le code sert à combler le manque, pas à construire tout le parcours.
- Gardez GoHighLevel comme source de vérité ; les services sur mesure y lisent et y réécrivent.
- Quatre schémas couvrent l'essentiel des besoins : récepteurs de webhooks, widgets intégrés, synchronisations planifiées et formulaires sur mesure.
- De petits services à usage unique sur un hébergement managé valent mieux qu'une grosse application sur mesure.
- Journalisez tout ce que fait un service dans la chronologie du contact pour que l'équipe le voie sans ouvrir de code.