Skip to content

Factura Electronica Python 3

Mariano Reingart edited this page Feb 20, 2019 · 9 revisions

Factura Electrónica mercado interno en Python 3

Ejemplo completo: factura_electronica.py

  • Obtención de CAE AFIP (webservices WSAA y WSFEv1)
  • Generación de PDF (con código de barra y demás consideraciones)

Para probarlo descargar la rama py3k:

git clone https://github.com/pyar/pyafipws.git -b py3k
cd pyafipws
mkvirtualenv py3k
pip install -r requirements.txt
python setup.py install

Si no tienen GIT, descargar:

NOTA: descomprimir e instalar con python setup.py install c/u

Es necesario un certificado de pruebas, pueden descargar reingart2017.zip y descomprimirlo en la carpeta de pyafipws.

No tiene muchos requerimientos externos (ver en los requirements, python3 compat):

  • m2crypto -> binding openssl (opcional, si no esta instalado lo usa directamente como programa externo)
  • httplib2
  • las bibliotecas custom para generar PDF y comunicación SOAP

Para más información ver Instalación

Para correr el ejemplo:

cd ejemplos
python factura_electronica.py

Como resultado se debería ver algo así (agregar --trace --debug para que loggue):

Factura autorizada 237 69073727604929
PDF generado /tmp/factura_237.pdf

El PDF es genérico, pueden revisarlo y cambiar las opciones de configuración en el mismo .py Se le puede cambiar el logo y obviamente todos los datos.

Este ejemplo es simple, lo único que hay que pasarle es una lista de dicts:

from factura_electronica import facturar

facturas = [{"dni": 12345678, "nombre": "Juan Perez", "domicilio": "Balcarce 50",
 "descripcion": "Cuota Enero", "precio": 300.00,
 "periodo_desde": "20190101", "periodo_hasta": "20190131",
}]
facturar(facturas)

Si son productos, no hace falta indicar el período.

Para un ejemplo genérico de los métodos de WSFEv1 ver Factura Electronica Python