Réaliser un suivi des paquets Coliposte / Colissimo dans votre site internet

Super Edit :

J’ai des infos de la poste, ils sont en train de mettre en place une API Officielle.
Pour cela il faut avoir un compte Inet-Expeditor et le service sera proposé en janvier 2014.
Il répondra au jolis nom de « colis view ». Je vous conseille de vous rapprocher de votre commercial car l’ancienne API sera supprimée.

Edit : Apres de nombreuses années sans problèmes, laposte.fr à apparemment fermé son WebService, au jour où j’écris ces lignes (25/04/2013), il ne fonctionne plus.

Edit 2 : LA poste à mis en place un véritable webService, voici le lien de la documentation :

https://www.coliposte.fr/pro/docs/docutheque/divers/socolissimo/integrationwsshipping.pdf

Edit 3 : Tout est revenu dans l’ordre…

Grâce à ce code très simple on va récupérer sur notre page l’information de suivi Coliposte de votre client sans se connecter au site coliposte.fr.

<?php
  $ch = curl_init();
  $agent = "Mozilla/4.0 (compatible; MSIE 7.0; Windows NT 5.1)";
  $ref = "http://www.laposte.fr";
  $url_de_colissimo_suivi = "www.laposte.fr/outilsuivi/web/suiviInterMetiers.php?method=xml&key=null&code=".$code_colissimo."&width=190&font=Arial&t=1253811351937" ;
    curl_setopt($ch, CURLOPT_USERAGENT, $agent);
    curl_setopt($ch, CURLOPT_HEADER, 0);
    curl_setopt($ch, CURLOPT_URL, $url_de_colissimo_suivi);
    curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
    curl_setopt($ch, CURLOPT_REFERER, $ref);
    $data = curl_exec($ch);

   /* cURL va renvoyer du xml qui sera formaté de cette manière :

	< ?xml version='1.0' ?>

	< ![CDATA[1]]>
	< ![CDATA[9A00092239388]]>
	< ![CDATA[Particulier]]>
	< ![CDATA[22/07/2010]]>
	< ![CDATA[Votre colis est livré]]>
	<base_label>< ![CDATA[Coliposte]]>
								< ![CDATA[http://www.coliposte.net/particulier/suivi_particulier.jsp?colispart=xxxxxxxxxxxxxxxxxxxx]]>
	< ![CDATA[]]>
*/

// ça sera de l'UTF-8, utiliser utf8_decode si votre page est en ISO*/

$sxml = simplexml_load_string($data);
$message_du_xml = $sxml->message;
$date_du_xml = $sxml->date;
$colissimo_message = utf8_decode($message_du_xml);
$colissimo_date = utf8_decode($date_du_xml) ;
echo $colissimo_date;
echo $colissimo_message;

?>

ce code vous sera très utile pour un site de e-commerce.

Grand maître L

23 thoughts to “Réaliser un suivi des paquets Coliposte / Colissimo dans votre site internet”

    1. Je suis en train de travailler sur un module me permettant tout les jours de mettre à jour les status de mes commandes, mais je me pose deux question.

      – Controler l’état (livré)
      Je suis surpris de ne pas voir un champ permettant directement de savoir si le colis a été livré ou non.
      La seuls manière que je vois étant un controle de la chaine « message » afin de vois si elle comprend « distribué » ou « remis à un gardien ou un voisin »?

      – Control d’un lot
      La deuxième interrogation que j’ai est que si je dois controler une dizaine de paquet compte tenu du tenu de résponse je suis un peu inquiet du résultat.
      vouyez vous une solution?

        1. merci.
          Malheureusement après différent test, il semble que l’ip de mon serveur ai été blacklisté
          la moindre requete aboutit à un 410

  1. Salut a tous !! Moi aussi, j’utilisé ce super script php pour mon business et je devais me taper la gestion de suivi a la main depuis quelques jours (avant noël, merci la poste).

    J’ai donc chercher une solution sur internet pour refaire fonctionner le script et je suis tombé il y a quelques minutes sur cette page : https://gist.github.com/sandavid/6351779 qui est aussi un script de tracking colissimo mais en pearl et j’ai remarqué que celui indiqué comme referrer le fichier de la poste dans la requête curl. J’ai donc ajouter une ligne au script si dessous dans le parametre curl : curl_setopt($ch, CURLOPT_REFERER, « http://www.laposte.fr »); et miracle : ça fonctionne !!

    amusez-vous bien et f..k la poste !

  2. Bon… Il aura suffit que je post hier pour que cela refonctionne ce matin !… Pour combien de temps mystère… Je vais me renseigner pour l’API officielle. Merci de l’info.

  3. Effectivement, cela ne fonctionne à nouveau plus depuis quelques jours… Le WebService renvoi systématiquement un document vide…

    1. Bon j’ai des infos de la poste, ils sont en train de mettre en place une API Officielle.
      Pour cela il faut avoir un compte Inet-Expeditor et le service sera proposé en janvier 2014.
      Il répondra au jolis nom de « colis view ». Je vous conseille de vous rapprocher de votre commercial car l’ancienne API sera supprimée.

  4. La documentation concerne la création de l’étiquette ? Est-ce qu’il existe aussi une doc pour le suivi des expéditions ?

  5. Par contre le comportement est différent avec key=null et une key trouvée sur internet. Le résultat est le même mais avec une key différente de null, j’arrive à une page erreur non disponible … Peut être un soucis avec leur serveur ….

  6. Pareil, le suivi ne fonctionne plus depuis plusieurs jours.
    Par contre, avec des suivis Chronopost ça marche mais avec des suivis Colissimo plus rien : ça tourne dans le vide (erreur en retour).
    C’est dommage …

  7. Hélas, après plusieurs années de fonctionnement, cela semble être HS depuis 2 ou 3 jours. Le WebService ne répond plus rien (retour vide).

Laisser un commentaire

Ce site utilise Akismet pour réduire les indésirables. En savoir plus sur comment les données de vos commentaires sont utilisées.