Escenarios del sandbox
El sandbox (sk_sandbox_) simula la DIAN sin efecto fiscal. Un documento pide un escenario con uno de estos disparadores, en este orden de precedencia; sin ninguno, se valida localmente y se acepta si pasa.
header Foliios-Sandbox-Scenarionotes[]: [sandbox:<id>]customer.identification.number: 999000NNN
Escenarios
Sección titulada «Escenarios»accepted
Sección titulada «accepted»Aceptado por la DIAN simulada (pasa la validación local), con las notificaciones que da la DIAN real a un documento aceptado: RUT01 en todo documento; CBF04 en una nota crédito; en una nota débito, DAK07 si el comprador no tiene dirección y DAJ39 si el régimen del emisor es ZZ (No aplica).
- Aplica a:
document - Resultado:
accepted - Cabecera:
Foliios-Sandbox-Scenario: accepted - Nota:
[sandbox:accepted] - Número del comprador:
999000000
accepted_with_notifications
Sección titulada «accepted_with_notifications»Aceptado con notificaciones (advertencias que no rechazan): además de las que ya da una aceptación (RUT01 y las de las notas), FAJ40 y FAK26 en una factura; CBF04 en una nota crédito; DAK07 y DAJ39 en toda nota débito, sin repetir ninguna.
- Aplica a:
document - Resultado:
accepted_with_notifications - Cabecera:
Foliios-Sandbox-Scenario: accepted_with_notifications - Nota:
[sandbox:accepted_with_notifications] - Número del comprador:
999000001
| Regla | Tipo | Mensaje | Documento |
|---|---|---|---|
FAJ40 |
notification | EL contenido de este elemento no corresponde a un contenido válido según lista correspondiente | invoice |
FAK26 |
notification | Responsabilidad informada para receptor no válido según lista | invoice |
CBF04 |
notification | La Descripción informada no se encuentra en la lista | credit_note |
DAK07 |
notification | No se encuentra el grupo PhysicalLocation con información con respecto a la localización física del adquiriente. | debit_note |
DAJ39 |
notification | No se encuentra el grupo TaxScheme del emisor | debit_note |
rejected_fad06
Sección titulada «rejected_fad06»Rechazado con la regla FAD06: Valor del CUFE no está calculado correctamente
- Aplica a:
document - Resultado:
rejected - Cabecera:
Foliios-Sandbox-Scenario: rejected_fad06 - Nota:
[sandbox:rejected_fad06] - Número del comprador:
999000101
| Regla | Tipo | Mensaje | Documento |
|---|---|---|---|
FAD06 |
rejection | Valor del CUFE no está calculado correctamente | todos |
rejected_fad05c
Sección titulada «rejected_fad05c»Rechazado con la regla FAD05c: Número de factura es superior al número final del rango de numeración autorizado
- Aplica a:
document - Resultado:
rejected - Cabecera:
Foliios-Sandbox-Scenario: rejected_fad05c - Nota:
[sandbox:rejected_fad05c] - Número del comprador:
999000102
| Regla | Tipo | Mensaje | Documento |
|---|---|---|---|
FAD05c |
rejection | Número de factura es superior al número final del rango de numeración autorizado | todos |
rejected_fad07
Sección titulada «rejected_fad07»Rechazado con la regla FAD07: @schemeID no indica un valor válido para ambiente de destino del documento (1= Producción; 2= Prueba)
- Aplica a:
document - Resultado:
rejected - Cabecera:
Foliios-Sandbox-Scenario: rejected_fad07 - Nota:
[sandbox:rejected_fad07] - Número del comprador:
999000103
| Regla | Tipo | Mensaje | Documento |
|---|---|---|---|
FAD07 |
rejection | @schemeID no indica un valor válido para ambiente de destino del documento (1= Producción; 2= Prueba) | todos |
rejected_fad09a
Sección titulada «rejected_fad09a»Rechazado con la regla FAD09a: Fecha de emisión anterior a la fecha de inicio de la autorización de la numeración
- Aplica a:
document - Resultado:
rejected - Cabecera:
Foliios-Sandbox-Scenario: rejected_fad09a - Nota:
[sandbox:rejected_fad09a] - Número del comprador:
999000104
| Regla | Tipo | Mensaje | Documento |
|---|---|---|---|
FAD09a |
rejection | Fecha de emisión anterior a la fecha de inicio de la autorización de la numeración | todos |
rejected_fad09b
Sección titulada «rejected_fad09b»Rechazado con la regla FAD09b: Fecha de emisión posterior a la fecha final de la autorización de la numeración
- Aplica a:
document - Resultado:
rejected - Cabecera:
Foliios-Sandbox-Scenario: rejected_fad09b - Nota:
[sandbox:rejected_fad09b] - Número del comprador:
999000105
| Regla | Tipo | Mensaje | Documento |
|---|---|---|---|
FAD09b |
rejection | Fecha de emisión posterior a la fecha final de la autorización de la numeración | todos |
rejected_fad09e
Sección titulada «rejected_fad09e»Rechazado con la regla FAD09e: La fecha de generación de la factura es diferente a la fecha de firma de la factura
- Aplica a:
document - Resultado:
rejected - Cabecera:
Foliios-Sandbox-Scenario: rejected_fad09e - Nota:
[sandbox:rejected_fad09e] - Número del comprador:
999000106
| Regla | Tipo | Mensaje | Documento |
|---|---|---|---|
FAD09e |
rejection | La fecha de generación de la factura es diferente a la fecha de firma de la factura | todos |
rejected_fab27b
Sección titulada «rejected_fab27b»Rechazado con la regla FAB27b: Huella no corresponde a un software autorizado para este OFE
- Aplica a:
document - Resultado:
rejected - Cabecera:
Foliios-Sandbox-Scenario: rejected_fab27b - Nota:
[sandbox:rejected_fab27b] - Número del comprador:
999000107
| Regla | Tipo | Mensaje | Documento |
|---|---|---|---|
FAB27b |
rejection | Huella no corresponde a un software autorizado para este OFE | todos |
rejected_faj24b
Sección titulada «rejected_faj24b»Rechazado con la regla FAJ24b: El DV del NIT no es correcto
- Aplica a:
document - Resultado:
rejected - Cabecera:
Foliios-Sandbox-Scenario: rejected_faj24b - Nota:
[sandbox:rejected_faj24b] - Número del comprador:
999000108
| Regla | Tipo | Mensaje | Documento |
|---|---|---|---|
FAJ24b |
rejection | El DV del NIT no es correcto | todos |
rejected_faj43b
Sección titulada «rejected_faj43b»Rechazado con la regla FAJ43b: Nombre informado No corresponde al registrado en el RUT con respecto al Nit suministrado.
- Aplica a:
document - Resultado:
rejected - Cabecera:
Foliios-Sandbox-Scenario: rejected_faj43b - Nota:
[sandbox:rejected_faj43b] - Número del comprador:
999000109
| Regla | Tipo | Mensaje | Documento |
|---|---|---|---|
FAJ43b |
rejection | Nombre informado No corresponde al registrado en el RUT con respecto al Nit suministrado. | todos |
rejected_faj44b
Sección titulada «rejected_faj44b»Rechazado con la regla FAJ44b: Nit o Documento de Identificación informado No corresponde al registrado en el RUT con respecto a la razón social o nombre comercial suministrado.
- Aplica a:
document - Resultado:
rejected - Cabecera:
Foliios-Sandbox-Scenario: rejected_faj44b - Nota:
[sandbox:rejected_faj44b] - Número del comprador:
999000110
| Regla | Tipo | Mensaje | Documento |
|---|---|---|---|
FAJ44b |
rejection | Nit o Documento de Identificación informado No corresponde al registrado en el RUT con respecto a la razón social o nombre comercial suministrado. | todos |
rejected_faj71
Sección titulada «rejected_faj71»Rechazado con la regla FAJ71: No corresponde al correo electrónico para la recepción de documentos e instrumentos electrónicos no informado
- Aplica a:
document - Resultado:
rejected - Cabecera:
Foliios-Sandbox-Scenario: rejected_faj71 - Nota:
[sandbox:rejected_faj71] - Número del comprador:
999000111
| Regla | Tipo | Mensaje | Documento |
|---|---|---|---|
FAJ71 |
rejection | No corresponde al correo electrónico para la recepción de documentos e instrumentos electrónicos no informado | todos |
rejected_fak24
Sección titulada «rejected_fak24»Rechazado con la regla FAK24: No está informado el DV del NIT
- Aplica a:
document - Resultado:
rejected - Cabecera:
Foliios-Sandbox-Scenario: rejected_fak24 - Nota:
[sandbox:rejected_fak24] - Número del comprador:
999000112
| Regla | Tipo | Mensaje | Documento |
|---|---|---|---|
FAK24 |
rejection | No está informado el DV del NIT | todos |
rejected_fak20
Sección titulada «rejected_fak20»Rechazado con la regla FAK20: Nombre o razón social no informado
- Aplica a:
document - Resultado:
rejected - Cabecera:
Foliios-Sandbox-Scenario: rejected_fak20 - Nota:
[sandbox:rejected_fak20] - Número del comprador:
999000113
| Regla | Tipo | Mensaje | Documento |
|---|---|---|---|
FAK20 |
rejection | Nombre o razón social no informado | todos |
rejected_fau04
Sección titulada «rejected_fau04»Rechazado con la regla FAU04: Base Imponible es distinto a la suma de los valores de las bases imponibles de todas líneas de detalle.
- Aplica a:
document - Resultado:
rejected - Cabecera:
Foliios-Sandbox-Scenario: rejected_fau04 - Nota:
[sandbox:rejected_fau04] - Número del comprador:
999000114
| Regla | Tipo | Mensaje | Documento |
|---|---|---|---|
FAU04 |
rejection | Base Imponible es distinto a la suma de los valores de las bases imponibles de todas líneas de detalle. | todos |
rejected_fau14
Sección titulada «rejected_fau14»Rechazado con la regla FAU14: Valor a Pagar de Factura es distinto de la Suma de Valor Bruto más tributos - Valor del Descuento Total + Valor del Cargo Total
- Aplica a:
document - Resultado:
rejected - Cabecera:
Foliios-Sandbox-Scenario: rejected_fau14 - Nota:
[sandbox:rejected_fau14] - Número del comprador:
999000115
| Regla | Tipo | Mensaje | Documento |
|---|---|---|---|
FAU14 |
rejection | Valor a Pagar de Factura es distinto de la Suma de Valor Bruto más tributos - Valor del Descuento Total + Valor del Cargo Total | todos |
rejected_zd07
Sección titulada «rejected_zd07»Rechazado con la regla ZD07: El certificado no contiene los atributos para realizar la firma digital con no repudio.
- Aplica a:
document - Resultado:
rejected - Cabecera:
Foliios-Sandbox-Scenario: rejected_zd07 - Nota:
[sandbox:rejected_zd07] - Número del comprador:
999000116
| Regla | Tipo | Mensaje | Documento |
|---|---|---|---|
ZD07 |
rejection | El certificado no contiene los atributos para realizar la firma digital con no repudio. | todos |
note_reference_not_found
Sección titulada «note_reference_not_found»Solo notas: rechazada porque la factura que referencia no existe o no fue validada por la DIAN, con CBG04a (nota crédito) o DBG04a (nota débito): Documento referenciado no existe. En una factura no aplica: se valida y se acepta.
- Aplica a:
note - Resultado:
rejected - Cabecera:
Foliios-Sandbox-Scenario: note_reference_not_found - Nota:
[sandbox:note_reference_not_found] - Número del comprador:
999000117
| Regla | Tipo | Mensaje | Documento |
|---|---|---|---|
CBG04a |
rejection | Documento referenciado no existe | credit_note |
DBG04a |
rejection | Documento referenciado no existe | debit_note |
dian_unavailable
Sección titulada «dian_unavailable»La DIAN no responde: tres reintentos de 5 s (12.2), contingencia tipo 04, transmisión posterior simulada y aceptación.
- Aplica a:
document - Resultado:
contingency - Cabecera:
Foliios-Sandbox-Scenario: dian_unavailable - Nota:
[sandbox:dian_unavailable] - Número del comprador:
999000201
timeout
Sección titulada «timeout»La primera transmisión vence por tiempo (12.4); el reintento a los 2 minutos se acepta.
- Aplica a:
document - Resultado:
accepted_after_retry - Cabecera:
Foliios-Sandbox-Scenario: timeout - Nota:
[sandbox:timeout] - Número del comprador:
999000202
delayed
Sección titulada «delayed»El documento queda en sending unos 8 segundos y después se acepta (aceptación diferida).
- Aplica a:
document - Resultado:
accepted_after_delay - Cabecera:
Foliios-Sandbox-Scenario: delayed - Nota:
[sandbox:delayed] - Número del comprador:
999000203
duplicate_after_timeout
Sección titulada «duplicate_after_timeout»La primera transmisión vence por tiempo (12.4) pero la DIAN la procesó; el reenvío recibe la regla 90 (documento procesado anteriormente) y la verificación por GetStatus encuentra el documento aceptado. Nunca se rechaza ni se libera el número.
- Aplica a:
document - Resultado:
accepted_after_duplicate - Cabecera:
Foliios-Sandbox-Scenario: duplicate_after_timeout - Nota:
[sandbox:duplicate_after_timeout] - Número del comprador:
999000204
delivery_rejected
Sección titulada «delivery_rejected»Aceptado; el servicio de correo rechaza el envío al comprador de forma permanente: la entrega termina en failed con mailer_rejected y sale document.delivery_failed, como con un rechazo del servicio de correo.
- Aplica a:
document - Resultado:
delivery_mailer_rejected - Cabecera:
Foliios-Sandbox-Scenario: delivery_rejected - Nota:
[sandbox:delivery_rejected] - Número del comprador:
999000301
delivery_transient
Sección titulada «delivery_transient»Aceptado; el servicio de correo falla de forma temporal en cada envío: seis envíos con reintentos cada 10 segundos (en test y live, de 1 minuto a 3 horas) y la entrega termina en failed con retries_exhausted.
- Aplica a:
document - Resultado:
delivery_retries_exhausted - Cabecera:
Foliios-Sandbox-Scenario: delivery_transient - Nota:
[sandbox:delivery_transient] - Número del comprador:
999000302
test_set_accepted
Sección titulada «test_set_accepted»En validación (código 98) unos segundos y después aceptado: el camino normal.
- Aplica a:
test_set - Resultado:
passed - Nota:
[sandbox:test_set_accepted]
test_set_validating
Sección titulada «test_set_validating»Código 0, «En proceso de validación», durante varias consultas; después aceptado.
- Aplica a:
test_set - Resultado:
passed - Nota:
[sandbox:test_set_validating]
test_set_already_accepted
Sección titulada «test_set_already_accepted»Código 2: el set de prueba ya está aceptado; el intento queda aprobado sin enviar más documentos.
- Aplica a:
test_set - Resultado:
passed - Nota:
[sandbox:test_set_already_accepted]
test_set_rejected
Sección titulada «test_set_rejected»Código 99: rechazado con una regla de rechazo (FAD06) y una notificación (FAJ40).
- Aplica a:
test_set - Resultado:
failed - Nota:
[sandbox:test_set_rejected]
| Regla | Tipo | Mensaje | Documento |
|---|---|---|---|
FAD06 |
rejection | Valor del CUFE no está calculado correctamente | todos |
FAJ40 |
notification | EL contenido de este elemento no corresponde a un contenido válido según lista correspondiente | todos |
test_set_not_found
Sección titulada «test_set_not_found»Código 66 (no encontrado) en cada consulta: a los 10 minutos el documento queda sin respuesta y el intento falla.
- Aplica a:
test_set - Resultado:
failed - Nota:
[sandbox:test_set_not_found]
test_set_note_reference_not_found
Sección titulada «test_set_note_reference_not_found»Las facturas se aceptan; cada nota recibe el código 99 con CBG04a (nota crédito) o DBG04a (nota débito), «Documento referenciado no existe», y el intento falla.
- Aplica a:
test_set - Resultado:
failed - Nota:
[sandbox:test_set_note_reference_not_found]
| Regla | Tipo | Mensaje | Documento |
|---|---|---|---|
CBG04a |
rejection | Documento referenciado no existe | credit_note |
DBG04a |
rejection | Documento referenciado no existe | debit_note |
Reglas que el sandbox valida
Sección titulada «Reglas que el sandbox valida»- ZB01 estructura del XML (raíz, extensiones DIAN, totales)
- FAD01 UBLVersionID
- FAD06 CUFE/CUDE recalculado (SHA-384)
- FAD07 ambiente de destino (@schemeID y ProfileExecutionID = 2)
- FAD08 algoritmo del CUFE
- FAB27b SoftwareSecurityCode
- FAD05b/FAD05c rango de la resolución
- FAD09a/FAD09b vigencia de la resolución
- FAD09e fecha de emisión = fecha de firma
- FAD10 hora en UTC-05:00 (notificación)
- FAJ24b DV del NIT del emisor
- FAJ71 correo de recepción del emisor
- FAK20 nombre del comprador
- FAK24/FAK25 DV del NIT del comprador
- FAU02, FAU04, FAU06, FAU14 totales
- ZD06 certificado de prueba del sandbox
- ZE02 firma XAdES-EPES
Reglas que no puede reproducir
Sección titulada «Reglas que no puede reproducir»- FAJ43b/FAJ44b nombre y NIT del emisor contra el RUT
- FAJ44a NIT habilitado para facturar
- FAB27b contra el software registrado del emisor (se valida contra el software del sandbox)
- ZD01-ZD07 cadena de confianza ONAC, revocación y no repudio
- XSD completo del anexo y reglas de catálogo de la hoja de validación (la estructura la garantiza el escritor UBL, probado contra el XSD oficial)
Límites
Sección titulada «Límites»| Límite | Valor |
|---|---|
Lotes por empresa y minuto (batches_per_minute) |
2 |
Documentos por empresa y mes (monthly_documents) |
1000 |
Días que viven los datos (retention_days) |
30 |
Horas de vida de una clave temporal (temporary_key_hours) |
24 |
Claves temporales vivas por cuenta (temporary_keys) |
10 |
Webhooks de prueba por empresa y minuto (test_events_per_minute) |
10 |
Webhooks enviados por empresa y minuto (webhooks_per_minute) |
300 |
Escrituras por empresa y minuto (writes_per_minute) |
60 |
Ensayo del set de pruebas
Sección titulada «Ensayo del set de pruebas»| Documento | Cantidad |
|---|---|
| Facturas | 8 |
| Notas crédito | 1 |
| Notas débito | 1 |