Introducción
Las series son códigos alfanuméricos que identifican el tipo de comprobante y el punto de emisión. Cada comprobante electrónico en Perú debe tener una serie única y un número correlativo secuencial.¿Qué es una Serie?
Una serie es un código de 4 caracteres que identifica:- El tipo de comprobante (primera letra)
- El punto de emisión o sucursal (números)
LNNN
- L: Letra que identifica el tipo de documento
- NNN: Tres dígitos numéricos (generalmente
001)
F001-00000123
- Serie:
F001 - Número correlativo:
00000123
Tipos de Series SUNAT
Series para Comprobantes de Venta
Facturas - Serie F
Facturas - Serie F
- Formato:
F001,F002,F003… - Primera letra: Siempre
F - Uso: Facturas electrónicas a clientes con RUC
- Código SUNAT:
01 - Numeración: Correlativa desde 1
- Ejemplo:
F001-00000001,F001-00000002,F001-00000003…
Boletas - Serie B
Boletas - Serie B
- Formato:
B001,B002,B003… - Primera letra: Siempre
B - Uso: Boletas de venta a consumidores finales (DNI/CE)
- Código SUNAT:
03 - Numeración: Correlativa desde 1
- Ejemplo:
B001-00000001,B001-00000002,B001-00000003… - Observación: Requieren Resumen Diario para validación SUNAT
Notas de Crédito - Series FC y BC
Notas de Crédito - Series FC y BC
- Formato:
FC01,FC02,FC03… - Primera letra:
FC(4 caracteres en total) - Código SUNAT:
07 - Uso: Anulación o corrección de facturas
- Formato:
BC01,BC02,BC03… - Primera letra:
BC - Código SUNAT:
07 - Uso: Anulación o corrección de boletas
FC01-00000001 (nota de crédito de la factura F001-00000050)Notas de Débito - Series FD y BD
Notas de Débito - Series FD y BD
- Formato:
FD01,FD02,FD03… - Código SUNAT:
08 - Uso: Incremento en el monto de facturas
- Formato:
BD01,BD02,BD03… - Código SUNAT:
08 - Uso: Incremento en el monto de boletas
Guías de Remisión - Serie T
Guías de Remisión - Serie T
- Formato:
T001,T002,T003… - Primera letra:
T(de “Traslado”) - Código SUNAT:
09 - Uso: Guías de remisión remitente
- Numeración: Correlativa desde 1
- Ejemplo:
T001-00000001
Guías de Remisión Transportista - Serie V
Guías de Remisión Transportista - Serie V
- Formato:
V001,V002,V003… - Primera letra:
V(de “Vehículo”) - Código SUNAT:
31 - Uso: Guías de remisión del transportista
- Ejemplo:
V001-00000001
Series Internas (No SUNAT)
Notas de Venta - Serie NV
Notas de Venta - Serie NV
- Formato:
NV01,NV02,NV03… - Código interno:
06(en el sistema Santo Domingo,id_tido=6) - Uso: Documento interno sin valor tributario
- No se envía a SUNAT
- Descuenta stock del Almacén 2 (Kardex Real)
- Puede convertirse en Boleta o Factura después
- Ejemplo:
NV01-00000001
Numeración Correlativa
¿Qué es el Correlativo?
El correlativo es el número secuencial que se asigna a cada comprobante dentro de una serie. Características:- Empieza en
1(o el número que configures) - Se incrementa en
1por cada nuevo comprobante - No puede haber saltos ni duplicados
- Se formatea con ceros a la izquierda:
00000001,00000002, etc.
Formato del Correlativo
- Longitud: Generalmente 8 dígitos con padding de ceros
- Ejemplos:
00000001- Primer comprobante00000099- Comprobante 9900001234- Comprobante 1,23400012345- Comprobante 12,345
Configuración en Santo Domingo
Tabla: documentos_empresas
El sistema usa la tabladocumentos_empresas para gestionar series y correlativos:
| id_empresa | id_tido | serie | numero |
|---|---|---|---|
| 1 | 2 | F001 | 125 |
| 1 | 1 | B001 | 543 |
| 1 | 6 | NV01 | 89 |
| 1 | 9 | T001 | 45 |
- La próxima factura será
F001-00000126 - La próxima boleta será
B001-00000544 - La próxima nota de venta será
NV01-00000090 - La próxima guía será
T001-00000046
Flujo de Asignación de Correlativo
Cuando creas una nueva venta, el sistema:Calcula el próximo número
- El último número usado en ventas
- El número base configurado
app/Http/Controllers/VentasController.php, líneas 181-198
Endpoint: Obtener Próximo Número
El sistema tiene un endpoint para consultar el siguiente correlativo sin crear una venta: Request:app/Http/Controllers/VentasController.php, líneas 604-634
Cómo Configurar una Nueva Serie
Decidir el código de serie
- Facturas:
F001,F002,F003… - Boletas:
B001,B002,B003… - Guías:
T001,T002,T003… - Notas de venta:
NV01,NV02,NV03…
- Sucursal 1:
F001,B001 - Sucursal 2:
F002,B002 - Sucursal 3:
F003,B003
Insertar en documentos_empresas
1= Boleta2= Factura6= Nota de Venta7= Nota de Crédito8= Nota de Débito9= Guía de Remisión31= Guía de Remisión Transportista
- Usa
0si quieres empezar desde00000001 - Usa
1000si quieres empezar desde00001001(útil si migras de otro sistema)
Verificar en el sistema
- Ve al módulo de Ventas
- Haz clic en Nueva Venta
- Selecciona el tipo de comprobante (Boleta, Factura, etc.)
- El sistema debe mostrar automáticamente:
- La serie correcta (
F001,B001, etc.) - El próximo número disponible
- La serie correcta (
documentos_empresas tenga el id_tido correcto.Cambiar el Número de Inicio
Si necesitas iniciar la numeración desde un número específico (ej. al migrar de otro sistema):Series para Múltiples Puntos de Venta
Si tu negocio tiene varias sucursales o cajas:Asignar series diferentes
- Sucursal 1 - Caja 1:
F001,B001 - Sucursal 1 - Caja 2:
F002,B002 - Sucursal 2 - Caja 1:
F003,B003 - Sucursal 2 - Caja 2:
F004,B004
Anulación y Comunicación de Baja
Cuando anulas un comprobante:El correlativo NO se reutiliza
F001-00000050, ese número queda “quemado”.
La siguiente factura será F001-00000051, no F001-00000050.Se envía Comunicación de Baja a SUNAT
- La Comunicación de Baja es un documento especial que agrupa todas las anulaciones del día
- Se envía usando el servicio
comunicacionBaja()de SunatService - Tiene su propio correlativo, formato:
RC-YYYYMMDD-001 - Ejemplo:
RC-20240315-001(Primera comunicación de baja del 15/03/2024)
app/Http/Controllers/VentasController.php, método anular(), líneas 410-483
Resumen Diario (Solo Boletas)
Las boletas requieren un proceso adicional:Emitir la boleta
- Se guarda en la base de datos
- Se genera el XML
- Estado inicial:
estado_sunat = 0(pendiente)
Generar Resumen Diario
- Al final del día (o cuando decidas), agrupas todas las boletas del día
- Generas un Resumen Diario (documento especial de SUNAT)
- Formato del resumen:
RC-YYYYMMDD-001 - Ejemplo:
RC-20240315-001(Primer resumen del 15/03/2024)
app/Services/SunatService.php, método resumenDiario(), líneas 1125-1227
Nomenclatura de Archivos XML
Cuando el sistema genera archivos XML para SUNAT, sigue esta nomenclatura: Formato:{RUC}-{CODIGO_SUNAT}-{SERIE}-{NUMERO}.xml
Ejemplos:
- Factura:
20612706702-01-F001-00000123.xml - Boleta:
20612706702-03-B001-00000456.xml - Guía:
20612706702-09-T001-00000789.xml - Nota de Crédito:
20612706702-07-FC01-00000012.xml
- Formato:
R-{RUC}-{CODIGO_SUNAT}-{SERIE}-{NUMERO}.zip - Ejemplo:
R-20612706702-01-F001-00000123.zip
app/Services/SunatService.php, líneas 259-261
Validaciones del Sistema
Validación en VentasController
Validación en Cliente según Tipo de Documento
app/Http/Controllers/VentasController.php, líneas 129-148
Errores Comunes y Soluciones
Error 2324: Número correlativo duplicado
Error 2324: Número correlativo duplicado
- No reenvíes el mismo comprobante
- Si cometiste un error, anula el comprobante erróneo
- Crea un nuevo comprobante con el siguiente correlativo
- Verifica que
documentos_empresastenga el numero correcto
Serie no configurada en el sistema
Serie no configurada en el sistema
documentos_empresas.Solución:id_tido y serie según tu necesidad.Correlativo no incrementa correctamente
Correlativo no incrementa correctamente
documentos_empresas y la tabla ventas.Solución:- Consulta el último número en ventas:
- Actualiza
documentos_empresas:
Serie rechazada por SUNAT
Serie rechazada por SUNAT
- Verifica que la serie tenga el formato correcto:
- Facturas:
F+ 3 dígitos - Boletas:
B+ 3 dígitos - Guías:
T+ 3 dígitos
- Facturas:
- Confirma que la serie esté habilitada en SUNAT SOL:
- Ingresa a SUNAT SOL
- Ve a Comprobantes Electrónicos → Gestionar series
- Habilita la serie que necesitas
Buenas Prácticas
Usar series diferentes por punto de venta
Usar series diferentes por punto de venta
- Facilita la identificación de qué sucursal o caja emitió el comprobante
- Permite auditorías por punto de venta
- Evita conflictos en sistemas multi-usuario
No saltar correlativos
No saltar correlativos
- SUNAT puede rechazar comprobantes si detecta saltos en la numeración
- El sistema de Santo Domingo evita esto automáticamente
- Si necesitas anular, hazlo correctamente con Comunicación de Baja
Respaldar documentos_empresas
Respaldar documentos_empresas
- Es la tabla crítica para la numeración
- Si se pierde, puedes tener conflictos de correlativos
- Haz respaldos regulares
Iniciar desde 1 en nuevas series
Iniciar desde 1 en nuevas series
- A menos que migres de otro sistema, empieza en
numero = 0 - El sistema generará automáticamente
00000001como primer comprobante - Más fácil de auditar
Documentar el uso de cada serie
Documentar el uso de cada serie
- Sucursal
- Caja
- Usuario
- Turno
Consultas SQL Útiles
Ver todas las series configuradas
Ver últimas ventas por serie
Detectar huecos en la numeración
Sincronizar documentos_empresas con ventas
Próximos Pasos
Primera Venta
Configurar Empresa
Notas de Crédito
API de Ventas
Resumen
- Serie: Código de 4 caracteres que identifica tipo de comprobante y punto de emisión
- Correlativo: Número secuencial que se incrementa automáticamente
- Formato completo:
SERIE-CORRELATIVO(ej:F001-00000123) - Gestión: Tabla
documentos_empresasalmacena último correlativo usado - Validación: Sistema previene duplicados y saltos automáticamente
- SUNAT: Cada tipo de comprobante requiere serie específica (F, B, T, etc.)
- No reutilizar: Correlativos anulados no se pueden usar nuevamente