Recepción de pedidos
...
Desde SeQura necesitamos conocer cuando se envían los productos al cliente para poder hacerle llegar las instrucciones de pago. Para que esto pueda ocurrir es necesario que el comercio marque como Enviado aquellos pedidos que haya enviado.
Es importante que esto se haga cuando se envía el pedido y que éste refleje de antemano cualquier variación que se haya podido producir antes de su envío, tanto en cuanto a productos enviados como a datos del cliente, direcciones de envío, facturación…
La forma más sencilla de hacerlo en creando el envío del pedido en el backoffice de Magento en Ventas → Pedidos → Detalle del pedido → Enviar
y en la siguiente página que se muestra hacer clic en "Enviar el envio".
Si el cron de Magento está funcionando, a diario, se enviará un informe a SeQura con los pedidos que han sido enviados. Si hubiese cualquier problema es posible forzar el envío de este informe a SeQura a tavés de Ventas → Pedidos → Botón "Enviar informe a SeQura".
...
Comunicación de envío mediante herramientas de terceros
...
- Crear credenciales de acceso para la aplicación
- Acceder a Sistema → Servicios web → SOAP/XML-RPC Funciones y hacer clic en "Añadir nuevo papel".
- En Información de la función → Recursos de la función se debe marcar, como mínimo, con permisos para Ventas → Pedido → Envío de pedidos → Crear y pulsar "Guardar función".
- Acceder a Sistema → Servicios web → SOAP/XML-RPC Usuarios y hacer clic en "Añadir Nuevo Usuario".
- En Información de usuario → Profesión del usuario seleccionar la función creada anteriormente y pulsar el botón "Guardar usuario".
- Acceder a Sistema → Servicios web → SOAP/XML-RPC Funciones y hacer clic en "Añadir nuevo papel".
Usando la función sales_order_shipment.create crear el envío. El código de ejemplo en php sencillo pero suficiente para que se comunique el envío a SeQura sería:
Code Block language php <?php $orderIncrementId = ‘100000003’; $client = new SoapClient('http://tienda.com/magento/api/v2_soap/?wsdl'); $sessionId = $client->login('TestSeQura', 'soapass'); $client->salesOrderShipmentCreate($sessionId,$orderIncrementId,array(),'Shipment Created', true, true);
Estás 4 línea serían suficientes. Es suficiente con indicar en la primera el número de pedido que se va a enviar; en la segunda el dominio y ruta de magento + '/api/v2_soap/?wsdl' y en la tercera el usuario y contraseña que se haya creado para el usuario SOAP.
Paso anterior anterior | Paso siguiente