Préparer la journée
Vos adresses entrent comme elles sont, fichier bancal compris
Un fichier CSV, une liste d'adresses en texte, ou l'API de votre boutique. Les adresses françaises sont reconnues au numéro près, et les douteuses sont signalées avant le départ.
- 112 rue Bourgelat, 69002 Lyon
- 28 avenue Jean Jaurès, 69007 Lyon
- 3Le Grand Pré, 69390 Vourlesà préciser
- 424 rue de la République, 69002 Lyon
- 53 place Bellecour, 69002 Lyon
- 6Zone artisanale, 69630 Chaponostintrouvable
Aujourd'hui
Un fichier de terrain n'est jamais propre - et un import qui le refuse vous renvoie à la saisie à la main.
Avec Route Planner
Comment ça se passe.
Ce que vous faites, et ce que le logiciel fait à votre place.
L'import lit ce qu'il peut
Les colonnes sont reconnues même dans le désordre, et les adresses sont cherchées dans la base officielle française.
Chaque ligne dit son état
Ce qui n'est pas localisé au numéro près est marqué, reste modifiable, et ne bloque pas la journée.
Ou personne ne touche à rien
L'API dépose les livraisons du jour depuis votre boutique. Le même appel rejoué met à jour au lieu de dupliquer.
Le périmètre, dit dans les deux sens.
Ce que la fonction fait aujourd'hui, et ce qu'elle ne fera pas - pour que personne ne le découvre au bout d'un mois.
Ce que ça fait
Dans le produit, aujourd'hui.
- Fichier CSV, fichier texte à une adresse par ligne, ou appel d'API
- Adresses reconnues par la Base Adresse Nationale, au numéro près
- Les douteuses passent en « à préciser », les introuvables en rouge
- Le même appel d'API rejoué met à jour au lieu de créer un doublon
- Cinq cents arrêts par appel d'API, cinq mille adresses par lot de géocodage
Ce que ça ne fait pas
Hors périmètre, volontairement.
- Le fichier est dans toutes les formules ; l'API et ses clés font partie de la formule Terrain.
- Pas de lecteur Excel : le fichier doit être enregistré en CSV, et un modèle prêt est téléchargeable dans l'application.
- Pas de connecteur officiel chez Shopify, WooCommerce ou PrestaShop - c'est une API à appeler. Hors de France, les adresses sont acceptées mais moins bien reconnues.
Le fichier du lundi matin
Les colonnes que l'import reconnaît, écrites en entier.
Les accents, les majuscules et l'ordre des colonnes n'ont aucune importance. Les voici tous, plutôt qu'une documentation que personne n'ouvre.
| Ce que la colonne dit | En-têtes acceptés, au choix |
|---|---|
| L'adresse. La seule colonne dont l'import ne peut pas se passer. | adresseaddresslieudestinationlibelle |
| Le destinataire : il suit sa livraison et signe la preuve. | clientnomcontactdestinatairesociete |
| Minutes passées sur place. La virgule décimale est acceptée. | dureeduree_minservicetempsminutes |
| Ce que la commande occupe dans le véhicule. | chargecolisquantitepoidsloadqty |
| Le début du créneau promis au client. | debutcreneau_debutdefromstartouverture |
| Sa fin. Les deux se laissent vides. | fincreneau_finatoendfermeture |
| Pour prévenir de l'heure de passage. | telephonetelportablemobilephone |
| Même chose, par écrit. | emailmaile-mailcourriel |
| Ce que le chauffeur doit lire : digicode, étage, chien. | notesnotecommentaireremarque |
| Livraison ou collecte. « 1 », « reprise » ou « pickup » valent collecte. | senstypeoperationnature |
| Équipements exigés, séparés par un point-virgule ou une virgule. | equipementequipementsmaterielexigerequis |
ObligatoireFacultative, se laisse videLe modèle téléchargeable porte le premier en-tête de chaque ligne, en point-virgule, pour qu'Excel l'ouvre sans écran d'import.
Et quand le fichier ne ressemble à rien.
Aucun en-tête reconnu
La première colonne est prise pour l'adresse. Un export sans ligne de titre entre quand même.
Une colonne inconnue
Ignorée, en silence. Une colonne « n° facture » ne fait échouer ni sa ligne, ni le fichier.
Deux fois la même adresse
La seconde est écartée, sans regarder la casse : « 12 RUE DE LA PAIX » est la même porte.
Une ligne sans adresse
Sautée. C'est le sort de la ligne de total en bas du tableau, et des lignes vides du milieu.
Après l'import
Cinq résultats possibles. Trois ne vous demandent rien.
Un avertissement qui se déclenche à tort finit par ne plus se lire, et c'est alors le vrai qu'on manque. L'écran ne signale que ce sur quoi vous pouvez agir.
| L'état de la ligne | Ce qui s'est passé | Ce que vous faites |
|---|---|---|
| Au numéro près | La Base Adresse Nationale porte ce numéro. Le point est posé devant la porte. | Rien. |
| Position estimée | Le numéro manque, mais ses voisins y sont : le point est calculé entre eux, du bon côté de la voie. | Rien. |
| Au milieu de la rue | Ni le numéro ni ses voisins n'existent. Le point tombe au centre de la voie - quelques dizaines de mètres. | Rien : personne ne corrige une base publique. |
| À préciser | Seuls le lieu-dit ou la commune ont été reconnus. Le point peut tomber à des kilomètres. | Complétez l'adresse : là, ça change tout. |
| Introuvable | Rien ne correspond. Le plus souvent : un code postal manquant, ou une adresse hors de France. | Corrigez, ou sortez-la du jour. Les autres partent. |
Une position estimée vaut mieux qu'un centre de rue
« 8 Rue Cler, 75007 Paris » n'existe dans aucune base, alors que le 2, le 6 et le 20 y sont. Le centre de la voie posait le point à 141 mètres de la porte : on interpole entre les voisins.
Un bon score ne suffit pas
« 4 boulevard Jean Moulin » ressort en « 4 Boulevard Jean Mermoz » : une autre rue, avec un score honorable. Dès qu'un mot de votre saisie a disparu du résultat, la ligne passe à préciser.
Hors de France, dites-le tout de suite
La base nationale ne couvre que la France ; le reste repart vers OpenStreetMap, limité à une requête par seconde. Une tournée frontalière passe, un carnet belge entier non.
Brancher une boutique
Aucun connecteur. Une clé, et l'API fait le reste.
Les pages d'intégrations alignent des logos ; celle-ci montre l'appel entier, parce que c'est lui que votre développeur va écrire.
/api/v1/stopsDépose les livraisons dans le plan d'une date. Sans serviceDate, c'est aujourd'hui.curl -X POST https://app.route-planner.fr/api/v1/stops \
-H "Authorization: Bearer trn_votre_cle" \
-H "Content-Type: application/json" \
-d '{
"stops": [
{
"external_ref": "CMD-1042",
"label": "12 Rue de la Republique, 69002 Lyon",
"customer_name": "Mme Dubois",
"window_start": "09:00",
"window_end": "12:00",
"load": 2
}
]
}'201 | Déposé. Rend le plan, la date, et le nombre d'arrêts écrits. |
400 | JSON invalide, tableau vide, date mal formée, ou plus de 500 arrêts. |
401 | En-tête Authorization absent, clé inconnue ou révoquée. |
402 | Clé valide, mais la formule n'ouvre pas l'API. |
Le même appel rejoué ne duplique pas
Deux envois portant la même external_ref mettent l'arrêt à jour. Un webhook qui part deux fois est la règle, pas l'exception.
La clé n'est affichée qu'une fois
Ensuite, seule son empreinte est gardée. Une clé par intégration, révocable à l'unité : couper la boutique n'arrête pas l'ERP.
Une adresse suffit, des coordonnées vont plus vite
Sans lat et lon, l'adresse est géocodée à l'arrivée. Cinq cents arrêts au maximum par appel ; au-delà, on découpe.
Ce que la clé ouvre d'autre
GET /stopsles arrêts d'une journée, avec ce qui n'a pas été localiséPATCH /stopscorrige sans jamais créer ; les références inconnues ressortentDELETE /stopsannule - sauf ce qu'un chauffeur a déjà pointéGET · POST · DELETE /plansles journées, y compris préparées à l'avancePOST /plans/optimizecalcule la tournée, et l'envoie si vous le demandezGET /deliveriesce que le terrain a fait : pointages, échecs, signataire… /depots · /vehicles · /sectorsvos points de départ, votre flotte, vos zones
Calculer et envoyer restent deux gestes : un calcul ne prévient personne, dispatch: true engage la journée d'un chauffeur. Et rien de tout cela ne touche aux personnes - ni invitation, ni rôle, ni suppression de compte : une clé qui fuit ne doit pas pouvoir toucher à une équipe.
Il n'y a pas d'application à installer dans Shopify, pas de module PrestaShop : quelqu'un doit appeler cette URL depuis le webhook de commande. Le CSV, lui, ne demande personne et se trouve dans toutes les formules ; l'API s'ouvre à partir de la formule Terrain, et pendant les quatorze jours d'essai.
Questions
Ce qu'on nous demande sur import d'adresses et api.
Mon fichier vient d'Excel, ça marche ?
Enregistrez-le en CSV, c'est le format que l'import lit. Un modèle est téléchargeable dans l'application, déjà réglé en point-virgule pour qu'Excel l'ouvre sans écran d'import.
Que se passe-t-il si une adresse est introuvable ?
Elle ressort en rouge avant le départ, pas pendant. Vous la corrigez en deux mots, ou vous la sortez du jour ; les autres lignes du fichier ne sont jamais retenues en otage pour autant.
Faut-il un développeur ?
Pas pour un fichier : personne n'écrit une ligne de code. Pour brancher une boutique, il faut quelqu'un capable d'appeler une URL - la documentation est visible dans l'application avant même d'avoir la formule, et l'API s'ouvre à partir de Terrain.
Essayez sur vos vraies adresses.
14 jours avec tout, sans carte bancaire. Dix minutes suffisent pour voir ce que donne votre tournée de demain.
À lire ensuite
ce que devient un fichier une fois calculé
Continuerdéposer un export et voir ce qu'il donne
Continuerà partir de quelle formule l'API est ouverte
ContinuerLes autres fonctionnalités