Ayuda a desarrolladores para integrar Verifactu con Python: aprende a realizar peticiones REST, generar facturas con QR, firmar con certificado digital y crear XML de forma eficiente.

En Python, la librería más utilizada para realizar peticiones HTTP es requests. Para llamar a una API REST como la de Verifacti usando la librería requests se puede usar el siguiente código:
import requests
url = "https://api.verifacti.com/verifactu/create"
headers = {
"Authorization": "Bearer <API_KEY>",
"Content-Type": "application/json"
}
payload = {
"serie": "A",
"numero": "234634",
"fecha_expedicion": "02-12-2024",
"tipo_factura": "F1",
"descripcion": "Descripcion de la operacion",
"nif": "A15022510",
"nombre": "Nombre cliente",
"lineas": [{
"base_imponible": "200",
"tipo_impositivo": "21",
"cuota_repercutida": "42"
}],
"importe_total": "242"
}
response = requests.post(url, headers=headers, json=payload)
print(response.text)
Para incrustar un código QR en un PDF, se pueden usar las librerías:
Ejemplo con reportlab:
from reportlab.pdfgen import canvas
from reportlab.lib.utils import ImageReader
def agregar_qr_a_pdf():
c = canvas.Canvas("FacturaConQR.pdf")
qr_image = ImageReader("QRFactura.png")
c.drawImage(qr_image, 100, 100, 100, 100)
c.save()
agregar_qr_a_pdf()Para generar códigos QR en Python, se pueden usar:
Ejemplo con qrcode:
import qrcode
def generar_qr():
qr = qrcode.make("https://verifacti.com")
qr.save("QRFactura.png")
generar_qr()Obligatoriedad Verifactu. Quién está obligado al cumplimiento de VeriFactu. Obligatoriedad para sisemas informáticos de facturación, personas jurídicas y autónomos.
Explicación sobre el Real Decreto 1007/2023, conocido como el reglamento VeriFactu. Resumen e implicaciones del reglamento VeriFactu.
Ayuda a desarrolladores para integrar Verifactu con PHP: aprende a realizar peticiones REST, generar facturas con QR, firmar con certificado digital y crear XML de forma eficiente.