Para conectar con Dolibarr otras aplicaciones, como un carrito de la compra, puede ser muy interesante utilizar los "Web Services" que nos ofrece Dolibarr.
Para activarlos tenemos que ir a Configuración-> Módulos-> Módulos Interfaz y poner a ON los WebServices. También hay que configurar la clave para usar los Web Services (parámetro "dolibarrkey" en webservices). Indicamos una palabra clave que se nos ocurra como por ejemplo: $5x8Cd45Cadec_f?K y pulsamos salvar.
A continuación muestro un ejemplo con Python y la librería suds para obtener una factura:
from suds.client import Client
client = Client('http://www.midominio.es/dolibarr/webservices/server_invoice.php?wsdl')
auth = client.factory.create('authentication')
auth.dolibarrkey='$5x8Cd45Cadec_f?K'
auth.sourceapplication=''
auth.login='usuario'
auth.password='clave'
auth.entity=''
result = client.service.getInvoice(auth,'1')
print result
Otro ejemplo para la creación de un factura:
from suds.client import Client
import datetime
client = Client('http://www.midominio.es/dolibarr/webservices/server_invoice.php?wsdl')
auth = client.factory.create('authentication')
auth.dolibarrkey='$5x8Cd45Cadec_f?K'
auth.sourceapplication=''
auth.login='usuario'
auth.password='clave'
auth.entity=''
invoice = client.factory.create('invoice')
invoice.date = datetime.datetime.now()
invoice.type=0
invoice.note=''
invoice.note_public='nota publica'
invoice.thirdparty_id=1 # Cliente
invoice.ref_ext=''
invoice.project_id=''
lineas = client.factory.create('LinesArray2')
line = client.factory.create('line')
line.desc='descripcin'
line.type=1
line.product_id=''
line.vat_rate=21
line.qty=1
line.total_net=25
line.total_vat=5.25
line.total=27.5
lineas.line.append(line)
invoice.lines=lineas
result = client.service.createInvoice(auth,invoice)
print result
Para activarlos tenemos que ir a Configuración-> Módulos-> Módulos Interfaz y poner a ON los WebServices. También hay que configurar la clave para usar los Web Services (parámetro "dolibarrkey" en webservices). Indicamos una palabra clave que se nos ocurra como por ejemplo: $5x8Cd45Cadec_f?K y pulsamos salvar.
A continuación muestro un ejemplo con Python y la librería suds para obtener una factura:
from suds.client import Client
client = Client('http://www.midominio.es/dolibarr/webservices/server_invoice.php?wsdl')
auth = client.factory.create('authentication')
auth.dolibarrkey='$5x8Cd45Cadec_f?K'
auth.sourceapplication=''
auth.login='usuario'
auth.password='clave'
auth.entity=''
result = client.service.getInvoice(auth,'1')
print result
Otro ejemplo para la creación de un factura:
from suds.client import Client
import datetime
client = Client('http://www.midominio.es/dolibarr/webservices/server_invoice.php?wsdl')
auth = client.factory.create('authentication')
auth.dolibarrkey='$5x8Cd45Cadec_f?K'
auth.sourceapplication=''
auth.login='usuario'
auth.password='clave'
auth.entity=''
invoice = client.factory.create('invoice')
invoice.date = datetime.datetime.now()
invoice.type=0
invoice.note=''
invoice.note_public='nota publica'
invoice.thirdparty_id=1 # Cliente
invoice.ref_ext=''
invoice.project_id=''
lineas = client.factory.create('LinesArray2')
line = client.factory.create('line')
line.desc='descripcin'
line.type=1
line.product_id=''
line.vat_rate=21
line.qty=1
line.total_net=25
line.total_vat=5.25
line.total=27.5
lineas.line.append(line)
invoice.lines=lineas
result = client.service.createInvoice(auth,invoice)
print result
Comentarios