docs: FASES_IMPLEMENTADAS + MULTI_BRANCH + GLOBAL_INVOICE
- Actualiza FASES_IMPLEMENTADAS.md con Fase 7 (precios proveedor, multi-sucursal, factura global) - Agrega docs/MULTI_BRANCH.md con arquitectura y endpoints - Agrega docs/GLOBAL_INVOICE.md con requerimiento SAT y flujo de uso
This commit is contained in:
@@ -1,8 +1,9 @@
|
||||
# Nexus POS — Resumen de Fases Implementadas
|
||||
|
||||
**Fecha:** 2026-04-29
|
||||
**Versión DB:** v3.2
|
||||
**Fecha:** 2026-06-11
|
||||
**Versión DB:** v4.1
|
||||
**Tests:** 73/73 pasando (pytest)
|
||||
**Commit:** `2b73c2c`
|
||||
|
||||
---
|
||||
|
||||
@@ -200,6 +201,41 @@ METABASE_URL=http://localhost:3000
|
||||
| — | **nexus-pos.service systemd** | 2026-04-29 | `c766571` |
|
||||
| — | **QWEN 3.6 AI Vehicle Fitment** | 2026-04-29 | `623c57b` |
|
||||
|
||||
## FASE 7: Precios de Proveedor + Multi-sucursal + Factura Global
|
||||
|
||||
**Commit:** `2b73c2c` (2026-06-11)
|
||||
|
||||
### 7.1 Lista de Precios de Proveedor
|
||||
|
||||
| Feature | Archivos | Capacidades |
|
||||
|---------|----------|-------------|
|
||||
| **Precios por proveedor** | `supplier_catalog_prices` (master DB) | Precio, moneda, vigencia (effective_from/to), activo/inactivo |
|
||||
| **Upload masivo** | `supplier_catalog_bp.py` | CSV/Excel con supplier_name, sku, price, currency |
|
||||
| **Visualización** | `catalog.js`, `catalog_service.py` | `supplier_price` + `supplier_currency` en tarjetas y búsqueda |
|
||||
| **Endpoints** | `supplier_catalog_bp.py` | `GET/POST/PUT/DELETE /pos/api/supplier-catalog/prices/*` |
|
||||
|
||||
### 7.2 Multi-sucursal Completo
|
||||
|
||||
| Feature | Archivos | Capacidades |
|
||||
|---------|----------|-------------|
|
||||
| **Schema migration v4.0** | `v4.0_multi_branch.sql` | `inventory.branch_id=NULL` (catálogo compartido), tabla `inventory_stock` |
|
||||
| **Datos fiscales por sucursal** | `branches` (tenant DB) | `rfc`, `razon_social`, `regimen_fiscal`, `codigo_postal`, `serie_cfdi`, `folio_inicial`, `licencia_fiscal`, `certificado_pem`, `llave_pem`, `is_main` |
|
||||
| **Sincronización de stock** | Trigger `trg_update_inventory_stock` | `inventory_operations` → `inventory_stock` automático |
|
||||
| **Backend branches** | `config_bp.py` | CRUD completo con campos fiscales, validación de única sucursal `is_main` |
|
||||
| **Backend inventario** | `inventory_bp.py`, `inventory_engine.py`, `pos_bp.py` | Stock por sucursal vía `inventory_stock`, catálogo compartido, verificación de stock en POS |
|
||||
| **Backend facturación** | `invoicing_bp.py` | CFDI usa datos fiscales de la sucursal de la venta (`_get_issuer_config`) |
|
||||
| **Frontend config** | `config.html`, `config.js` | Modal de sucursal expandido con todos los campos fiscales, edición inline |
|
||||
|
||||
### 7.3 Factura Global Mensual
|
||||
|
||||
| Feature | Archivos | Capacidades |
|
||||
|---------|----------|-------------|
|
||||
| **Schema migration v4.1** | `v4.1_global_invoice.sql` | `global_invoice_sales`, `sales.global_invoiced_at` |
|
||||
| **Builder CFDI global** | `cfdi_builder.py` | `build_global_invoice_xml()` con `InformacionGlobal` SAT-compliant (`Periodicidad="04"`) |
|
||||
| **Servicio** | `global_invoice.py` | Agrupa ventas PUE ≤$2,000 sin CFDI individual del mes/año solicitado |
|
||||
| **Endpoints** | `invoicing_bp.py` | `POST /global-invoice`, `GET /global-invoice/<id>`, `GET /global-invoice/eligible-sales` |
|
||||
| **Frontend** | `invoicing.html`, `invoicing.js` | Botón "Factura Global" con modal de año/mes + vista previa de ventas elegibles |
|
||||
|
||||
---
|
||||
|
||||
## Mejoras Pendientes (Roadmap Actualizado)
|
||||
@@ -215,7 +251,7 @@ METABASE_URL=http://localhost:3000
|
||||
| 1 | **WhatsApp Business API (Meta Cloud) real** | Migrar de Baileys a Meta Cloud API. Requiere verificación de cuenta Meta, Business Manager, número de teléfono verificado. | 2-3 semanas | Stub creado (`whatsapp_cloud_bp.py`) |
|
||||
| 2 | **BNPL real** | Integrar APLAZO/Kueski/Clip con credenciales de sandbox/producción. | 2 semanas | Stub creado (`bnpl_bp.py`) |
|
||||
| 3 | **ERP Sync real** | Conectar Aspel/CONTPAQi/SAP/Odoo vía API o archivos de intercambio. | 2-3 semanas | Stub creado (`erp_bp.py`) |
|
||||
| 4 | **Mercado Libre / Amazon sync** | Publicar inventario de bodegas en marketplaces. API de ML Seller + Amazon SP-API. | 3 semanas | No iniciado |
|
||||
| 4 | **Mercado Libre / Amazon sync** | Publicar inventario de bodegas en marketplaces. API de ML Seller + Amazon SP-API. | 3 semanas | En progreso (ML Seller API vinculada) |
|
||||
|
||||
### 🟡 Medio — Diferenciadores
|
||||
|
||||
|
||||
Reference in New Issue
Block a user