Seur
====
Python API Seur carrier, Spain.
Features
--------
- Services
- Test connection
- Get cities by zip
- Create/Send shipments to Seur
- Get info delivery (shipment)
- Get list deliveries (shipments) from date
Usage Examples
--------------
Example API in test.py file
Services
--------
.. code-block:: python
from seur.utils import services
services()
Test connection
---------------
.. code-block:: python
with API(username, password, vat, franchise, seurid, ci, ccc, timeout, context) as seur_api:
print seur_api.test_connection()
Create/send shipment to Seur
----------------------------
.. code-block:: python
context['printer'] = 'ZEBRA'
context['printer_model'] = 'LP2844-Z'
context['ecb_code'] = '2C'
with Picking(username, password, vat, franchise, seurid, ci, ccc, context) as picking_api:
reference, label, error = picking_api.create(data)
To get PDF label file pass pdf value in context:
.. code-block:: python
context['pdf'] = True
with Picking(username, password, vat, franchise, seurid, ci, ccc, context) as picking_api:
reference, label, error = picking_api.create(data)
Get Picking Info
----------------
.. code-block:: python
with Picking(username_expedicion, password_expedicion, vat, franchise, seurid, ci, ccc, context) as picking_api:
data = {}
data['expedicion'] = 'S'
data['public'] = 'N'
data['reference'] = 'SEURREFERENCE'
info = picking_api.info(data)
Get Picking List
----------------
.. code-block:: python
with Picking(username_expedicion, password_expedicion, vat, franchise, seurid, ci, ccc, context) as picking_api:
data = {}
data['expedicion'] = 'S'
data['public'] = 'N'
data['from'] = '19-03-2014'
data['to'] = '19-03-2014'
shipments = picking_api.list(data)
If don't pass from or to values, get today date.
Get Label
---------
.. code-block:: python
context['pdf'] = True
with Picking(username, password, vat, franchise, seurid, ci, ccc, context) as picking_api:
print "Get Label PDF"
data = {}
data['servicio'] = '1'
data['product'] = '2'
data['total_bultos'] = '1'
#~ data['total_kilos'] =
data['observaciones'] = 'Testing Seur API - Get Label'
data['referencia_expedicion'] = 'S/OUT/0001'
data['ref_bulto'] = 'S/OUT/0001'
#~ data['clave_portes'] = '' # Add F to invoice
#~ data['clave_reembolso'] = '' # Add F to invoice
#~ data['valor_reembolso'] = ''
data['cliente_nombre'] = 'Zikzakmedia SL'
data['cliente_direccion'] = 'Sant Jaume, 9. Baixos 2'
#~ data['cliente_tipovia'] = 'CL'
#~ data['cliente_tnumvia'] = 'N'
#~ data['cliente_numvia'] = '93'
#~ data['cliente_escalera'] = 'A'
#~ data['cliente_piso'] = '3'
#~ data['cliente_puerta'] = '2'
data['cliente_poblacion'] = 'Vilafranca del Penedes' # Important city exist in Seur. Get Seur values from zip method
data['cliente_cpostal'] = '08720'
data['cliente_pais'] = 'ES'
data['cliente_email'] = 'zikzak@zikzakmedia.com'
data['cliente_telefono'] = '938902108'
data['cliente_atencion'] = 'Raimon Esteve'
label = picking_api.label(data)
with open("/tmp/seur-label.pdf","wb") as f:
f.write(decodestring(label))
print "Generated PDF label in /tmp/seur-label.pdf"
Get Manifiesto
--------------
.. code-block:: python
with Picking(username, password, vat, franchise, seurid, ci, ccc, context) as picking_api:
print "Get Manifiesto"
data = {}
manifiesto = picking_api.manifiesto(data)
with open("/tmp/seur-manifiesto.pdf","wb") as f:
f.write(decodestring(manifiesto))
print "Generated PDF label in /tmp/seur-manifiesto.pdf"
Get city or zip exist from Seur API
-----------------------------------
.. code-block:: python
with Picking(username, password, vat, franchise, seurid, ci, ccc, context) as picking_api:
city = 'Granollers' # or upper
options = picking_api.city(city)
zip = '08720'
options = picking_api.zip(zip)
Return dict values from seur.
These methods are important to call when create a new/send picking because Seur
validate city value and requires city exist in their system.