Si en tu ecommerce necesitas generar las etiquetas del pedido con la empresa SEUR este código te puede ser de ayuda.
Comenzaremos con los datos de conexión que se necesita:
Estos datos los facilitará SEUR en el momento de contratar sus servicios.
//PRUEBAS
$usu = ‘wsecxxxxxx’;
$pass = ‘wsxxxxxx’;
$dni = ‘xxxxxxx’;
$ci = ‘xxxx’;
$ccc = ‘xxxxx’;
Indicamos la url donde dirigiremos la conexión, el tipo de conexión y el tipo de llamada que realizaremos:
//ENLACE AL WSDL
$wsdl = «http://cit.seur.com/CIT-war/services/ImprimirECBWebService?WSDL»;
$client = new SoapClient($wsdl); //CONEXION MEDIANTE SOAP AL WSDL
$tipoLlamada = ‘impresionIntegracionPDFConECBWS’;
Generamos en formato XML los datos de la llamada:
$xml = array(
//ARRAY DE DATOS QUE ENVIAMOS AL WSDL PARA GENERAR LA ETIQUETA
«in0» => $usu, //USUARIO DEL WSDL
«in1» => $pass, //CONTRASEÑA DEL WSDL
«in2″ => utf8_encode(‘<?xml version=»1.0″ encoding=»ISO-8859-1»?>
<root><exp><bulto>
<ci>’.$ci.'</ci>
<nif>’.$dni.'</nif>
<ccc>’.$ccc.'</ccc>
<servicio>1</servicio>
<producto>2</producto>
<total_bultos>1</total_bultos>
<total_kilos>1</total_kilos>
<pesoBulto>1</pesoBulto>
<observaciones></observaciones> <referencia_expedicion>REF-</referencia_expedicion>
<ref_bulto>REF-XXXXX</ref_bulto>
<clavePortes>F</clavePortes>
<clavePod></clavePod>
<claveReembolso>Indicaremos D queremos activar este servicio de lo contrario indicaremos F</claveReembolso>
<valorReembolso>0</valorReembolso>
<libroControl></libroControl>
<nombre_consignatario>Nombre del destinatario</nombre_consignatario>
<direccion_consignatario></direccion_consignatario>
<tipoVia_consignatario>CL</tipoVia_consignatario>
<tNumVia_consignatario>N</tNumVia_consignatario>
<numVia_consignatario>.</numVia_consignatario>
<escalera_consignatario>.</escalera_consignatario>
<piso_consignatario>.</piso_consignatario>
<puerta_consignatario>.</puerta_consignatario>
<poblacion_consignatario>.</poblacion_consignatario>
<codPostal_consignatario>.</codPostal_consignatario>
<pais_consignatario>ES</pais_consignatario>
<email_consignatario>.</email_consignatario>
<sms_consignatario>.</sms_consignatario>
<test_sms>S</test_sms>
<test_preaviso>S</test_preaviso>
<test_reparto>S</test_reparto>
<test_email>S</test_email>
<eci>N</eci>
<et>N</et>
<telefono_consignatario>.</telefono_consignatario>
<atencion_de></atencion_de>
</bulto></exp></root>’),
//XML CON LOS DATOS DEL PEDIDO
«in3» => «comunicacion.xml»,
«in4» => «».$dni.»»,
«in5» => «3»,
«in6» => «-1»,
«in7» => «INVOKER»);
Realizamos la llamada con el xml que hemos creado:
try {
//LLAMADA AL WSDL
$respuesta = $client->__soapCall($tipoLlamada, array($xml));
$estado = $respuesta->out->mensaje;
$numeroenvio = $respuesta->out->ECB->string;
$mensaje = $respuesta->out->refExped->string;
$traza = $respuesta->out->PDF;
//Si es correcto preparamos el mail de envio
if ($estado==»OK»)
{
//DEVOLVEMOS EL NOMBRE DEL ARCHIVO PDF CON LA RUTA
}
else
{
//INDICAMOS EL ERROR QUE NOS PROPORCIONA SEUR
}
$contenido = $contenido.»</table>»;
} catch (Exception $e) {
Controlamos si la llamada a generado algún error.
}
Con esto podemos utilizarlo en una función y automatizar la generación de las etiquetas en el momento que necesitemos.