CODFamilia
Fonctionnalités Comment ça marche Tarifs Blog FAQ Academy S'inscrire Se connecter

L'API REST : piloter ses commandes COD depuis son code

Créer et suivre des commandes en paiement à la livraison depuis son propre code : clé API, lecture du catalogue et des villes, limites et codes d'erreur.

L'essentiel

Qu'est-ce que c'est ?
C'est une interface REST en JSON, authentifiée par clé, qui expose ce dont une intégration a besoin : le catalogue commandable, les villes livrées et leurs frais, la création d'un lead, et le suivi de ses propres leads. Elle sert la même logique que l'interface vendeur, avec les mêmes contrôles.
Pour qui ?
Les vendeurs qui ont un développeur, ou qui en sont un : une boutique développée sur mesure, une application mobile, un back-office interne, un tunnel de vente maison. Un vendeur qui n'écrit pas de code n'a aucun besoin de l'API — la connexion d'une boutique ou une feuille de calcul fait le même travail.
Comment ça marche ?
Chaque appel porte une clé API dans son en-tête d'autorisation. Le vendeur est déduit de la clé, jamais d'un paramètre : il est donc impossible d'agir au nom d'un autre compte. Les réponses sont en JSON, les erreurs nomment le champ fautif, et chaque appel est consigné pour que le développeur puisse voir ce qu'il a réellement envoyé.
À quoi ça sert ?
Parce qu'une intégration maison a besoin de deux choses qu'aucun import ne donne : écrire une commande au moment exact où le client valide, et lire l'état de ses commandes pour alimenter son propre affichage. C'est le seul chemin quand la source des commandes est un programme que vous avez écrit.
Comment s'en servir ?
On crée une clé depuis l'espace vendeur, on vérifie qu'elle fonctionne par un premier appel sans effet, puis on lit les villes et le catalogue avant d'envoyer son premier lead. La référence complète, avec les champs et les codes d'erreur, se trouve dans la documentation développeurs, publique et sans compte.

L'API est l'interface qui permet à un programme — boutique sur mesure, application mobile, outil interne — de créer et de suivre des commandes en paiement à la livraison sans passer par une interface humaine.

À quoi sert l'API — et quand elle ne sert à rien

L'API répond à trois situations, et à peu près seulement trois. La première est une boutique développée sur mesure : au moment où le client valide son panier, votre code crée le lead et reçoit immédiatement sa référence, qu'il peut afficher au client. La deuxième est une application mobile, qui n'a pas de page web à faire appeler. La troisième est un outil interne — un tableau de bord, un rapprochement comptable, un script de reporting — qui a besoin de lire l'état des commandes pour le combiner à ses propres données.

En dehors de ces trois cas, elle ne sert pas à grand-chose, et il vaut mieux le dire avant que quelqu'un y passe une semaine. Si vos commandes viennent d'une boutique existante, la connexion de la boutique les fait entrer sans code et avec une relecture de secours que vous n'auriez pas écrite. Si elles viennent d'un formulaire ou d'une page d'atterrissage, la feuille de calcul est plus courte à mettre en place et plus facile à corriger. Si vous voulez simplement être prévenu quand un colis est livré, c'est un webhook sortant qu'il faut, pas une boucle d'appels à l'API.

La règle utile est celle-ci : l'API est justifiée quand c'est un programme que vous contrôlez qui produit la commande. Dans tous les autres cas, une des trois autres voies d'entrée fait le même travail pour moins d'effort et moins de maintenance.

La clé API, et ce qu'elle vaut

L'authentification tient en une ligne : chaque appel porte une clé dans son en-tête d'autorisation. Il n'y a ni identifiant à transmettre, ni paramètre de compte, ni session à maintenir. Le vendeur est déduit de la clé, et c'est une décision de sécurité autant que de simplicité : aucun appel ne peut porter sur les données d'un autre compte, même en modifiant les paramètres.

Une clé se crée depuis l'espace vendeur, avec un nom qui dit à quoi elle sert. Elle n'est affichée qu'une seule fois, à sa création : seule son empreinte est conservée, et personne — pas même le support — ne peut vous la relire. Si elle est perdue, on en crée une autre. Si elle est révoquée, elle ne redevient jamais valide.

  • Une clé par intégration — Une clé pour l'application mobile, une autre pour le script de reporting. Révoquer l'une n'arrête pas l'autre, et le journal des appels dit laquelle a fait quoi.
  • Une clé peut être rattachée à une boutique — Les leads créés avec cette clé portent alors automatiquement la boutique correspondante, sans que votre code ait à l'indiquer.
  • La clé est un secret de serveur — Elle ne doit jamais partir dans une page web, une application mobile distribuée ou un dépôt de code : quiconque la lit peut créer des commandes à votre nom.
  • La dernière utilisation est visible — Une clé qui n'a plus servi depuis longtemps est une clé à révoquer.
  • Le journal des appels est à vous — Méthode, adresse appelée, code de réponse : c'est ce qui permet de répondre à « pourquoi ça ne marche pas » sans deviner.

Ce qui se lit, ce qui s'écrit, ce qui ne se touche pas

Le périmètre est volontairement étroit : l'API sert à faire entrer des commandes et à savoir où elles en sont. Tout ce qui engage de l'argent ou modifie un parcours reste dans l'interface, parce qu'une erreur de programme y coûterait plus cher qu'un clic humain.

  • Deux réponses possibles à la création — Un lead accepté répond « créé ». Un lead douteux — référence inconnue, ville non reconnue, total incohérent, doublon récent — répond « accepté » avec la liste des anomalies : il existe, en lead endommagé, et attend une correction. Il n'est jamais refusé en silence.
  • Pagination par curseur — La liste des leads se parcourt en reprenant l'identifiant renvoyé par la page précédente, pas par un numéro de page. Un numéro de page se décalerait à chaque nouveau lead, et l'intégration sauterait des commandes sans le voir.
  • Votre propre référence est conservée — Le champ de référence externe est repris tel quel et réaffiché dans l'interface : c'est ce qui permet de rapprocher un lead de la commande d'origine dans votre système.
  • Ce que l'API ne fait pas — Elle ne change pas un statut, n'annule pas une commande, ne déclenche pas de retrait et ne lit rien d'un autre vendeur. Ces actions existent dans l'interface, où elles sont tracées.
Adresse Ce qu'elle fait
GET /v1/me Vérifie que la clé fonctionne et à quel compte elle appartient. Le premier appel à faire.
GET /v1/products Le catalogue que ce vendeur peut commander : produits publics et produits privés, avec le prix plateforme, la disponibilité et les variantes.
GET /v1/cities Les villes livrées et leurs frais de livraison. À lire avant d'envoyer un lead.
POST /v1/leads Crée un lead. Les mêmes contrôles que partout ailleurs s'appliquent.
GET /v1/leads Vos leads, du plus récent au plus ancien, avec filtre par statut et par date.

Limites de débit et codes d'erreur

Une limite de débit s'applique par clé et par minute. Elle existe pour une raison simple : une boucle mal écrite chez un vendeur ne doit pas ralentir la plateforme pour tous les autres. La valeur en vigueur n'est pas une constante à recopier dans votre code — elle est renvoyée par l'appel de vérification de clé, ce qui permet de l'adapter sans attendre une annonce.

Quand la limite est atteinte, la réponse le dit explicitement et indique combien de temps attendre. Un client correctement écrit respecte ce délai plutôt que de réessayer immédiatement ; réessayer tout de suite ne fait que consommer la minute suivante.

Réponse Ce qu'elle signifie Conduite à tenir
400 Le corps n'est pas du JSON valide Vérifier l'en-tête de type de contenu et la virgule de trop
401 Clé absente, invalide ou révoquée Renvoyer la clé dans l'en-tête d'autorisation ; une clé révoquée ne redevient jamais valide
404 Ressource inexistante, ou appartenant à un autre vendeur Les deux cas donnent la même réponse, volontairement
422 Champ obligatoire manquant ou invalide La réponse nomme le champ fautif
429 Trop d'appels sur la dernière minute Attendre le délai indiqué, puis reprendre
500 Incident de notre côté Réessayer, et signaler au support avec l'heure exacte de l'appel

Où se trouve la référence complète

Cette page explique à quoi sert l'API et ce qu'elle permet ; elle ne remplace pas la référence. Celle-ci vit dans la documentation développeurs, qui est publique et ne demande aucun compte — le développeur d'un vendeur n'a pas ses identifiants, et exiger une inscription pour lire un contrat d'API ne protégerait rien.

On y trouve le guide de démarrage, la référence des adresses avec tous les champs attendus, la page des webhooks sortants, la liste des erreurs et des limites, et le journal des versions. La description est écrite une seule fois et sert à tout : la page lue par un humain, un fichier OpenAPI que votre outil importe pour engendrer un client, et une collection prête à essayer. C'est ce qui garantit que la page et le fichier ne disent pas deux choses différentes au bout de six mois.

Le numéro de version de l'API est renvoyé dans l'en-tête de chaque réponse, et le journal des versions dit ce qui a changé. Les ajouts de champs sont courants et ne cassent rien : un client bien écrit ignore un champ qu'il ne connaît pas plutôt que d'échouer dessus.

Questions fréquentes sur l'API

Je ne programme pas — l'API est-elle pour moi ?
Non, et c'est une bonne nouvelle : les trois autres voies d'entrée font le même travail sans code. Une boutique se connecte en quelques clics, une feuille de calcul se relie en quelques minutes, et un webhook se colle dans l'outil d'origine. L'API s'adresse à quelqu'un qui écrit du code.
Où trouver la liste complète des champs ?
Dans la documentation développeurs, publique et accessible sans compte. Elle contient la référence des adresses, les champs attendus, les codes d'erreur, un fichier OpenAPI importable dans votre outil et une collection prête à essayer.
Comment vérifier qu'une clé fonctionne ?
Par un appel de vérification sans effet de bord, qui confirme que la clé est valide, à quel compte elle appartient, quelle version de l'API répond et quelle limite de débit s'applique. C'est le premier appel à faire, avant d'écrire quoi que ce soit.
Que se passe-t-il si j'envoie un lead incomplet ?
Il n'est pas perdu. La réponse indique qu'il a été accepté avec des anomalies, et les nomme : référence inconnue, ville non reconnue, total incohérent. Le lead existe alors en lead endommagé et attend une correction, exactement comme s'il venait d'un import.
Puis-je modifier ou annuler une commande par l'API ?
Non. L'API crée des leads et permet de les suivre ; elle ne change pas de statut, n'annule pas une commande et ne déclenche aucun mouvement d'argent. Ces actions se font dans l'interface, où elles laissent une trace attribuable à une personne.
Y a-t-il une limite au nombre d'appels ?
Oui, par clé et par minute, pour qu'une boucle accidentelle ne pénalise pas les autres vendeurs. La valeur en vigueur est renvoyée par l'appel de vérification de clé, et un dépassement répond par une erreur explicite indiquant le délai à attendre.
Comment éviter de créer deux fois la même commande ?
En envoyant votre propre référence de commande dans le champ prévu : elle est conservée et réaffichée, ce qui permet de rapprocher un lead de sa commande d'origine. Un contrôle de doublon s'applique par ailleurs sur le téléphone et le produit, et signale le lead plutôt que de le dupliquer silencieusement.
Puis-je lire les prix d'achat de la plateforme ?
Non. Le catalogue renvoie le prix auquel vous achetez le produit, c'est-à-dire ce qui entre dans votre calcul de profit. Rien d'autre n'est exposé, et c'est le même périmètre que dans l'interface.
L'API peut-elle me prévenir d'une livraison ?
Ce n'est pas son rôle : interroger une adresse en boucle pour guetter un changement est lent et coûteux. Pour être prévenu d'une confirmation, d'une expédition, d'une livraison ou d'un retour, enregistrez un webhook sortant.

À lire aussi

Une clé, quatre appels, et vos commandes entrent

Catalogue de 1 produits et 65 villes lisibles par l'API, leads créés depuis votre code, documentation développeurs publique.

S'inscrire