Guides

Géocoder en masse des adresses issues d'un export CRM

Un export de CRM est généralement un fichier plat de fiches clients avec un champ d'adresse et rien d'autre en matière de localisation : ni coordonnées, ni composants vérifiés. Pour en faire quelque chose que vous pouvez cartographier ou segmenter par région, il faut géocoder l'export entier.

Préparer l'export

Extrayez la colonne d'adresses de votre export de CRM sous forme de simple tableau, en gardant l'identifiant client aligné par position avec chaque adresse, car vous devrez ensuite faire correspondre les résultats aux fiches.

POST /v1/forward
Content-Type: application/json

["1600 Pennsylvania Avenue, Washington", "221B Baker Street, London"]
{
  "status": "ok",
  "results": [
    {"formatted": "1600 Pennsylvania Avenue NW, Washington, DC 20500", "lat": 38.8977, "lon": -77.0365, "type": "address", "precision": "house", "confidence": 0.97, "place_id": "def456", "components": {}},
    {"formatted": "221B Baker Street, London, UK", "lat": 51.5237, "lon": -0.1585, "type": "address", "precision": "house", "confidence": 0.95, "place_id": "abc123", "components": {}}
  ]
}

Réécrire les résultats dans le CRM

Associez chaque résultat à son client grâce à la position que vous avez suivie avant d'envoyer la requête, puis réécrivez les coordonnées et les composants dans votre CRM, via sa propre API ou un import en masse, selon ce que votre CRM prend en charge. Enregistrez aussi les champs confidence et precision, afin que toute correspondance faible puisse être signalée pour nettoyage plutôt que considérée comme vérifiée.

Un second exemple : une clientèle internationale

Un CRM dont les clients sont répartis dans plusieurs pays gagne à transmettre le paramètre countries avec le lot de chaque région, ce qui limite les correspondances candidates au pays attendu et réduit le cas rare où un nom de rue courant dans plusieurs pays est résolu vers le mauvais. Découper l'export en lots par pays avant d'envoyer chacun comme une requête groupée distincte est un moyen raisonnable d'appliquer cela sans rien changer d'autre au flux de travail.

Une erreur courante à éviter

Ne dédoublonnez pas et ne réordonnez pas le tableau d'adresses avant de l'envoyer sans conserver une correspondance séparée vers les identifiants clients d'origine. Les résultats reviennent dans le même ordre que le tableau envoyé, et une fois cet ordre dissocié de vos fiches clients sans index sauvegardé, il n'existe plus aucun moyen fiable de rattacher ensuite une paire de coordonnées au bon client. Gardez la correspondance position vers identifiant en mémoire ou dans une colonne temporaire pendant toute la durée de la tâche.

Ne relancer que sur les nouvelles fiches

Une fois l'export initial géocodé, inutile de retraiter plus tard toute la base clients. Suivez les fiches qui ont déjà des coordonnées et n'envoyez à l'endpoint, lors des exécutions suivantes, que les fiches nouvelles ou dont l'adresse a changé, afin que votre consommation de requêtes reste proportionnelle à la nouvelle activité plutôt qu'à votre nombre total de clients.

Gérer les fiches mal résolues

Une fiche avec un score de confiance faible ou à laquelle manquent plusieurs composants attendus mérite d'être signalée dans une file de vérification plutôt que d'être enregistrée discrètement à côté de vos fiches entièrement vérifiées. Cela évite qu'une mauvaise adresse ne contamine en silence un rapport régional ou une vue cartographique construite à partir des données complétées.

Ce que cela coûte

Compléter en une fois un CRM existant coûte une requête par fiche client dotée d'une adresse, en un seul appel groupé ou en quelques blocs. Un CRM de quelques milliers de clients peut dépasser les 2 500 requêtes gratuites par jour en une seule fois : c'est le moment d'étaler la tâche sur quelques jours ou de passer au crédit prépayé pour cette opération ponctuelle.

Une fois le rattrapage terminé, le géocodage courant des nouveaux clients est faible et régulier plutôt qu'une tâche groupée récurrente. Consultez la documentation du géocodage direct pour la structure complète de la requête et de la réponse.