- Añadir campos PascalCase (CertName, CertFile, PasswordEncrypted) para compatibilidad con frontend - Metodos CertNameResolved(), CertFileResolved(), PasswordResolved() para resolver campos - Actualizar documentacion/api.md con ejemplos PascalCase, anulacion completa y errores AEAT - Actualizar documentacion/certificado_pruebas.md con solucion de problemas P12 legacy - Actualizar README.md con estado actual del proyecto |
||
|---|---|---|
| .github/workflows | ||
| api | ||
| documentacion | ||
| internal | ||
| test | ||
| verifactu | ||
| .gitignore | ||
| AGENTS.md | ||
| README.md | ||
| config.yml | ||
| go.mod | ||
| go.sum | ||
| main.go | ||
README.md
VeriFactu MidAPI
API intermediaria para enviar facturas a la AEAT a través del protocolo VeriFactu.
Recibe facturas en JSON, calcula el hash encadenado, genera el XML SOAP y lo envía a la AEAT. Si la AEAT no está disponible, guarda la factura localmente (fallback).
Documentación
| Requisitos y setup | Go, Python, OpenSSL, certificado, configuración |
| API Reference | Endpoints, requests, responses |
| Protocolo VeriFactu | Operaciones, hash, URLs AEAT, XML |
| Formato de datos | NIF, fechas, tipos factura, IVA, ejemplo JSON |
| Formatos de entrada | native, dolibarr, y cómo añadir nuevos |
| Arquitectura | Capas, flujo de datos, cifrado |
| Seguridad | Certificados, RSA, HTTPS |
| Certificados | Obtener y configurar certificado FNMT |
| Tokens | Sistema de autenticación por tokens |
| Configuración | config.yml, variables de entorno |
| Testing | Tests, depuración |
| Errores | Códigos de error |
Endpoints
| Método | Ruta | Descripción |
|---|---|---|
GET |
/api/v1/health |
Health check |
GET |
/api/v1/auth/public-key |
Clave pública RSA |
POST |
/api/v1/auth/register |
Registrar certificado .p12 |
GET |
/api/v1/formats |
Lista formatos disponibles |
POST |
/api/v1/facturas |
Alta de factura (formato auto-detectado) |
POST |
/api/v1/facturas/anular |
Anular factura |
Estado
- Alta de facturas con hash encadenado
- Fallback local
- Registro y validación de certificados
- Anulación de facturas
- Consultas
- Subsanación
- Soporte de campos PascalCase y snake_case en registro
- Documentación de errores AEAT y solución de problemas con certificados P12