Étiquette : coliposte

  • 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
    37 lines
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    <?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;
    ?>
    XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX

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

    Grand maître L