02. Arquitectura del Software
Estilo Arquitectónico
El proyecto sigue una Arquitectura en Capas (Layered Architecture), con elementos de Clean Architecture y estructuración típica de Spring Boot, dividida en:
- Capa Web: Controladores REST (ej.
SQLController,PayrollCancellationController,BillingController,OnlineInvoiceController,AddendaController). - Capa de Configuración: Interceptores, Providers, y Async (
ChannelAdapter,InterceptorConfig,ModelMapperConfig). - Capa de Vistas: Uso de Thymeleaf para ciertas páginas (ej.
index.html,template.html). - Capa de Modelo/VO: Value Objects y DTOs ubicados en
com.alpura.facturacion.common.vo.*.
Diagrama C4 (Contexto)
Espacios de Nombres (Namespaces) del SAT y Addendas
Durante la generación de comprobantes y comunicación (XML), el sistema utiliza namespaces estáticos. Esto asegura la conformidad con los estándares fiscales y comerciales oficiales.
Namespaces Oficiales del SAT
| Namespace | Uso / Descripción |
|---|---|
http://www.sat.gob.mx/cfd/4 | Espacio de nombres principal para la estructura del CFDI versión 4.0. |
http://www.sat.gob.mx/nomina12 | Complemento para emitir recibos de nómina versión 1.2. |
http://www.sat.gob.mx/Pagos20 | Complemento para Recepción de Pagos versión 2.0 (REP). |
http://www.sat.gob.mx/CartaPorte31 | Complemento Carta Porte (para el traslado de mercancías) versión 3.1. |
http://www.sat.gob.mx/ComercioExterior20 | Complemento para operaciones de Comercio Exterior versión 2.0. |
Addendas (Clientes / Socios Comerciales)
| Namespace / Identificador | Uso Comercial |
|---|---|
http://www.tiendasneto.com/ap | Addenda requerida para integración y facturación con Tiendas Neto. |
http://www.gmodelo.com.mx/CFD/Addenda/Receptor | Addenda estructurada requerida para facturar a Grupo Modelo. |
http://www.sat.gob.mx/detallista | Complemento estándar del sector retail (Detallista) utilizado por grandes cadenas y supermercados. |