https://github.com/crisboleda/facturas-fast-api
Sistema de facturación con FastAPI
https://github.com/crisboleda/facturas-fast-api
desing-patterns fastapi good-practices python python3 testing
Last synced: about 1 month ago
JSON representation
Sistema de facturación con FastAPI
- Host: GitHub
- URL: https://github.com/crisboleda/facturas-fast-api
- Owner: crisboleda
- Created: 2024-12-21T16:07:55.000Z (over 1 year ago)
- Default Branch: main
- Last Pushed: 2025-01-29T00:22:47.000Z (over 1 year ago)
- Last Synced: 2025-05-22T23:11:41.618Z (about 1 year ago)
- Topics: desing-patterns, fastapi, good-practices, python, python3, testing
- Language: Python
- Homepage:
- Size: 7.81 KB
- Stars: 0
- Watchers: 1
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
README
# API Creación de facturas
Sistema para la creación de facturas y calculo de IVA según los productos de la factura.
- En el proyecto se usaron patrones de diseño: **(Factory, Strategy)** los cuales nos permiten la creación de los tipos de facturas y su comportamiento propio para el calculo del IVA para los productos de la factura.
## ¿Como usar?
1. `Clone repository`
2. `python3 -m venv .env`
3. `source .env/bin/activate`
4. `pip install requirements.txt`
5. `python main.py`
### Documentación API:
http://127.0.0.1:8083/docs
### Ejecutar tests
`cd src/`
`python -m unittest`
## Endpoints
```
POST -> /invoices/
```
##### Body de entrada:
```
{
"type": "A",
"details": [
{"product": "Product X", "quantity": 2, "unit_price": 250.0},
{"product": "Service Y", "quantity": 1, "unit_price": 500.0}
]
}
```
##### Respuesta con los calculos
```
{
"type": "A",
"subtotal": 1000,
"applied_tax": {
"percentage": 21,
"amount": 210
},
"total": 1210,
"details": [
{
"product": "Product X",
"quantity": 2,
"unit_price": 250
},
{
"product": "Service Y",
"quantity": 1,
"unit_price": 500
}
]
}
```