Aller au contenu

Intégrations API et systèmes WordPress

WordPress relié aux CRM, aux systèmes de membres, aux plateformes de paiement et aux flux de données que vous utilisez déjà, pour que le site reste exact et que personne ne tienne la même fiche à deux endroits.

  • Sur des API documentées, dans un code qui vous appartient
  • Une seule source qui fait autorité pour chaque donnée
  • Mise en cache, et un plan pour quand l’autre système est hors service
  • Comptes de service et jetons, jamais d’identifiants dans la base de données
Ce que nous relions

Des intégrations API WordPress que nous avons réalisées

Cette liste vient de mandats livrés. La même approche s’applique ailleurs : si un système a une API documentée, il peut être intégré correctement.

  • CRM et plateformes clientes

    Fiches de courtiers, de bureaux et de franchises et taux hypothécaires en vigueur, lus dans le CRM d’un client, mis en cache et tenus à jour sur le site public sans ressaisie.

  • Paiements

    Des paiements Stripe pour du commerce et des abonnements sur mesure, sans pile d’extensions de commerce générique derrière.

  • Calendriers

    Google Calendar affiché dans une vue de calendrier complète pour un portail de membres, avec le détail des événements, des liens vers Google Calendar et l’export ICS.

  • Cartes et localisation

    Google Maps avec géocodage pour des répertoires et des localisateurs, chargé de façon à ne pas ralentir la page ni bloquer la navigation au clavier.

  • Flux de données externes

    Des données de tiers récupérées à intervalles réguliers par WP-Cron et affichées dans l’interface, comme les conditions météo dans un portail de membres.

  • API Google Search Console

    Search Console lue par un compte de service, pour que les rédacteurs voient la performance de chaque page dans WordPress, avec une gestion des balises et du consentement que l’analytique respecte.

  • Points d’accès REST sur mesure

    Quand une autre application doit lire ou écrire, un espace de noms sur mesure avec authentification, validation et versionnage, plutôt que d’exposer les routes par défaut.

  • Génération de documents

    Des factures PDF produites à la demande à partir des données de commande, plutôt que tenues à la main ou assemblées hors de la plateforme.

Le principe

Un seul propriétaire pour chaque donnée

Les intégrations échouent habituellement par la duplication. On copie des données dans WordPress pour gagner en vitesse, quelqu’un modifie la copie, et au bout d’un an plus personne ne sait quelle version est la bonne.

  • Quel système possède chaque donnée, décidé et écrit en premier
  • WordPress met en cache et présente ce qu’il lit dans ce système
  • Là où WordPress possède le contenu, il écrit vers l’extérieur selon les mêmes règles
  • Ce qui se passe quand l’autre système tombe, décidé pour chaque intégration

Tout système externe sera un jour hors service, lent, limité en débit ou renverra quelque chose d’inattendu. Une intégration qui se dégrade de façon prévisible garde la page utile quand cela arrive.

Exemple de plateforme : qui possède quoi
Courtiers, bureaux, franchises     Le CRM, synchronisé par une API authentifiée
Taux hypothécaires                 CRM, affichés dans des blocs mis en cache
Demandes des formulaires           Envoyées de WordPress vers le CRM
Synchronisation manuelle           Mise à jour forcée sur chaque fiche
Recherche de courtiers             Google Maps avec géocodage
Consentement                       Didomi, que l’analytique respecte
Pages et blocs                     WordPress, édités par l’équipe
Notre façon de les construire

Tout ce qui entoure la requête API

Faire fonctionner la première requête est la partie facile. Voici ce qui garde une intégration en marche des années plus tard.

  • Des API documentées plutôt que des connecteurs

    Un connecteur prêt à l’emploi par système finit en enchevêtrement de dépendances et en risque de sécurité. Nous écrivons sur l’API publiée, dans un code qui se lit, se teste et se débogue.

  • Une mise en cache avec un plan pour la vider

    Décidée pour chaque type de donnée : ce qui est mis en cache, pour combien de temps et ce qui le vide. Au Doolittle Lake Club, le widget météo passe par un cache de deux minutes, pour qu’une panne chez OpenWeatherMap ne puisse pas ralentir la page.

  • Des pannes visibles

    Des erreurs journalisées avec assez de contexte pour les diagnostiquer, de nouvelles tentatives là où c’est sans risque, et une page qui se rabat sur un affichage sensé plutôt que sur un bloc vide.

  • Des identifiants bien gérés

    Comptes de service et échange de jetons, comme l’authentification JWT pour la synchronisation d’un CRM. Les secrets restent dans la configuration, hors de la base de données et du dépôt, avec le minimum d’accès dont chaque connexion a besoin.

  • Des tâches planifiées qui laissent une trace

    Des synchronisations avec journal, historique d’exécution et alertes. Les infolettres du Doolittle Lake Club partent par WP-Cron en lots de 25, avec régulation du débit, journal d’envoi et prévention des doublons.

  • De la documentation pour le prochain développeur

    Ce qui est relié à quoi, dans quel sens, à quelle fréquence, avec quels identifiants, et ce qui arrive en cas de panne. Consigné par écrit comme un livrable.

Démarrer un projet

WordPress doit échanger avec un autre système ?

Dites-nous quels systèmes sont en jeu, lequel possède les données et ce qui doit se passer quand l’un d’eux est indisponible. Ces trois réponses donnent généralement sa forme à tout le projet.

Remplir la fiche de projet
Preuves

Des intégrations que nous avons livrées

Toutes les études de cas

Ce site lit lui aussi l’API Search Console. Comme la plateforme iAmEvolving®, il lit Google Search Console par un compte de service et montre aux rédacteurs la performance de chaque page là où ils travaillent. iAmEvolving® utilise aussi Stripe PaymentIntents et Subscriptions dans deux devises, produit ses factures PDF à la demande et envoie ses courriels par une file d’attente pilotée par tâches planifiées.

Questions

Les intégrations WordPress, en réponses

Et si le système dont nous avons besoin n’a pas d’API ?

Nous vous le disons avant que cela devienne une ligne dans une proposition. Les options réalistes sont un échange de fichiers planifié, une lecture directe dans la base de données si l’autre système le permet, ou la construction de l’interface manquante si son propriétaire collabore. Les trois sont plus fragiles qu’une API et coûtent plus cher à entretenir, et il vaut mieux le savoir au moment de fixer le budget.

Que se passe-t-il quand l’autre système tombe ?

Nous le prévoyons, parce que cela arrivera. Les données en cache continuent d’être servies, la panne est journalisée avec assez de contexte pour la diagnostiquer, de nouvelles tentatives se font là où c’est sans risque, et la page se rabat sur un affichage sensé plutôt que sur une erreur ou une zone vide. Cela se décide pour chaque intégration pendant la construction.

WordPress peut-il écrire dans notre CRM, ou seulement lire ?

Les deux, si l’API de l’autre système le permet. La décision la plus importante porte sur la propriété : quel système fait autorité pour chaque donnée. Nous l’écrivons dès le départ pour que WordPress ne devienne jamais, sans que personne le remarque, une deuxième source de vérité.

Utilisez-vous des extensions de connexion ou des services comme Zapier ?

Rarement, et jamais comme colonne vertébrale d’une plateforme. Un connecteur par système finit en dépendances que personne n’arrive à suivre, en coût récurrent et en risque de sécurité. Nous écrivons sur l’API publiée, dans un code qui se lit, se teste, se journalise et se débogue, et qui vous appartient.

Comment les identifiants sont-ils gérés ?

Comptes de service et échange de jetons plutôt que le mot de passe d’une personne, secrets dans la configuration plutôt que dans la base de données ou le dépôt, et accès limité à ce dont chaque connexion a besoin. Chaque connexion est documentée : ce qui est relié à quoi, dans quel sens, à quelle fréquence et avec quels identifiants.

Comment savoir si une synchronisation fonctionne encore ?

Les tâches planifiées sont journalisées, avec historique d’exécution et alertes. La synchronisation à craindre est celle qui s’est arrêtée sans bruit il y a trois semaines et qu’un client a remarquée le premier.

WordPress peut-il afficher nos données Google Search Console ?

Oui. Ce site et la plateforme iAmEvolving® lisent l’API Search Console par un compte de service et montrent aux rédacteurs la performance de chaque page directement dans WordPress.