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
Laisser un commentaire