pyfiscal

Pyfiscal calculation of tax data.


Keywords
RFC, CURP, NSS, fiscal, tax, SAT, python
License
MIT
Install
pip install pyfiscal==2.1.2

Documentation

Calculation of tax data in México

License: MIT Python 3.8+ Code style: black

Installation

Install pyfiscal.

pip install pyfiscal

CURP

The Clave Única de Registro de Población (CURP) is a unique 18 character alphanumeric identity code for both Mexican residents and citizens.

alt picture

RFC

The Federal Taxpayer Registry is a code used in Mexico to distinguish each individual or company required to pay taxes. The people or organizations that have their RFC are called contributors.

1.- Physical person:

alt picture

This homoclave will be designated by the SAT, reviewing the request through already designated official paper.

NSS

The Social Security Number (NSS) is unique, permanent and nontransferable and is assigned to keep a record of workers and insured.

alt picture

Validation:

  • Only 11 digits will be validated.
  • Validation by the Luhn algorithm.
  • Calculate the last digit.

Getting Started with Docker

If you want to install the dependencies and work using Docker, you can simply follow this steps.

Clone the project repository

git clone https://github.com/roottsantiago/pyfiscal.git
cd pyfiscal

Usage

There are several ways to use the project because there are those using docker-compose.yml and Dockerfile. Here's how to use it:

This is for the install part with docker-compose

# Build
docker-compose build
# Run
docker-compose up -d

Unit Tests

python -m unittest tests/data_fiscal_test.py
python -m unittest tests/validator_test.py

Testing with docker

docker exec pyfiscal python -m unittest tests/data_fiscal_test.py
docker exec pyfiscal python -m unittest tests/validator_test.py

License

See LICENSE for more details (The MIT License).

References

https://es.wikipedia.org/wiki/Algoritmo_de_Luhn