Read and verify CFDI bills via SAT's web service
Project description
cfdibills
Utility to parse CFDI (Mexican invoice) versions 3.3 and 4.0 and validate their status against the SAT.
Features
- Load a CFDI in XML format into a pydantic object
- CFDIs are validated against the XSD schema, but a thorough check (i.e. conditional values) is not performed.
- Query the status of a CFDI via SAT's web service
- DOESN'T REQUIRE additional dependencies to read the XML like libxml2-dev, libxslt-dev
Installation
Run:
pip install cfdibills
Examples
You can load and verify a bill directly from its XML:
import cfdibills
cfdi = cfdibills.read_xml("path/to/bill.xml")
status = cfdibills.verify(cfdi)
Or you can verify it manually:
import cfdibills
status = cfdibills.verify(uuid="folio fiscal", rfc_emisor="re", rfc_receptor="rr", total_facturado=150.00)
In both cases, status
would look something like this:
SATConsultaResponse(
codigo_estatus='S - Comprobante obtenido satisfactoriamente.',
es_cancelable='Cancelable con aceptación',
estado='Vigente',
estatus_cancelacion=None,
validacion_efos='200',
)
Contributing
This repository uses pre-commit to help developers perform almost the same validations as in the CI pipeline but before having to wait for a Pull-Request. You can set it up using:
pip install -r requirements_dev.txt
pre-commit install
License
Licensed under the GNU LGPLv3 License.
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
cfdibills-0.3.0.tar.gz
(25.4 kB
view details)
File details
Details for the file cfdibills-0.3.0.tar.gz
.
File metadata
- Download URL: cfdibills-0.3.0.tar.gz
- Upload date:
- Size: 25.4 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/4.0.1 CPython/3.9.13
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | e94a0f95e09e5ed7fe8ef5bb9173fa748436531c2b3cd4a3f7002914b3baeceb |
|
MD5 | 807cbfc0ca819c427cb3ceedd7bcc473 |
|
BLAKE2b-256 | 81e8f77cc8cb8807f5f0bb76544d9a4a06a28a6c2c471faa17632649eb7a4d48 |