Saltar al contenido principal

Documento soporte

Estructura de todos los campos posibles a usar en un documento soporte en adquisiciones a no obligados a facturar.

SoftwareSeguridad (SeguridadSoftwareType)​

Estos datos serán usados para que el sistema valide la identificación y autorización del sistema que se está integrando.

Ocurrencia: 1-1 (Obligatorio)

CampoDescripciónObligatorioObservaciones
TipoDocumentoCódigo del tipo de documento enviado.SíDocumento Soporte: DSP.
GuidEmpresaCódigo de identificación de la empresa que genera los datos.SíCódigo asignado al momento de la implementación para identificar la empresa de donde provienen los datos.
GuidOrigenCódigo de identificación del origen de los datos.SíCódigo asignado al momento de la implementación para identificar el origen de donde provienen los datos.
HashSeguridadCódigo de seguridad.SíClave de seguridad asignada al momento de la implementación.
GuidSistemaIntegradoCódigo de identificación del sistema integrado asociado.SíCódigo asignado al momento de la implementación para identificar el sistema integrado de donde proviene el documento.
ClaveTecnicaClave técnica del rango de documentoción.No
CodigoErpCódigo del documento en el ERP.SíCódigo único de identificación del documento en el ERP de origen.
NumeroDocumentoNúmero del documento (incluye prefijo).SíNúmero del documento relacionado.

EmisorData (EmisorType)​

Estos datos son usados por el sistema para identificar y extraer la información del emisor de la documento.

Ocurrencia: 1-1 (Obligatorio)

CampoDescripciónObligatorioObservaciones
EmiTipoPersonaTipo de persona del emisor.SíVer lista
EmiTipoIdentificacionTipo de identificación del emisor.SíDebe ser siempre el valor 31.
EmiIdentificacionNúmero de identificación del emisor.SíNúmero de identificación registrado en el RUT.
EmiDVIdentificacionDígito de verificación del emisor.SíDígito de verificación registrado en el RUT.

CompradorFactura (CompradorType)​

Información completa solicitada por la DIAN relacionada con el adquiriente o comprador del documento.

Ocurrencia: 1-1 (Obligatorio)

CampoDescripciónObligatorioObservaciones
CompradorTipoPersonaCódigo del tipo de persona del comprador.SíVer lista
CompradorIdentProcedenciaIdentificador de procedencia de la organización.SíVer lista
CompradorTipoIdentificacionCódigo del tipo de identificación del comprador.SíVer lista
CompradorIdentificacionNúmero de identificación del comprador.Sí
CompradorDVIdentificacionDígito de verificación del comprador.CondicionalObligatorio solo si CompradorTipoPersona = 1.
CompradorTipoRegimenCódigo del tipo de régimen del comprador.NoVer lista
CompradorRespFiscalCódigo de la obligación fiscal del comprador.NoVer lista
CompradorImpuestoCódigos del detalle tributario del comprador.NoSi debe agregar más de uno, sepárelos con ;. Ver lista
CompradorRazonSocialRazón social del comprador.CondicionalObligatorio solo si CompradorTipoPersona = 1.
CompradorPrimerNombrePrimer nombre del comprador.CondicionalObligatorio solo si CompradorTipoPersona = 2.
CompradorSegundoNombreSegundo nombre del comprador.CondicionalPuede usarse solo si CompradorTipoPersona = 2.
CompradorApellidosApellidos del comprador.CondicionalObligatorio solo si CompradorTipoPersona = 2.
CompradorNombreCompletoNombres completos del comprador.SíNombres completos o razón social del comprador.
CompradorPaisCódigo del país de la dirección del comprador.NoVer códigos ISO 3166-1 (Alpha-2). Ejemplo: CO = Colombia.
CompradorNombrePaisNombre del país de la dirección del comprador.No
CompradorDepartamentoDepartamento de residencia del comprador.No
CompradorCodDepartamentoCódigo DANE del departamento del comprador.NoVer tabla de códigos DANE.
CompradorCiudadCiudad de residencia del comprador.No
CompradorCodCiudadCódigo DANE de la ciudad del comprador.NoVer tabla de códigos DANE.
CompradorCodPostalCódigo postal del comprador.No
CompradorDireccionDirección de residencia del comprador.No
CompradorEnviarCorreoIndicador de si se debe enviar un correo electrónico de notificación.Sí- True: sí se envía correo electrónico al comprador
- False: no se envía correo electrónico al comprador
CompradorTelefonoContTeléfono de contacto del comprador.No
CompradorNotaContNota de contacto del comprador.No
CompradorCorreoElectronicoCorreo electrónico del comprador.CondicionalObligatorio si CompradorEnviarCorreo = True. Pueden indicarse varios correos separados por punto y coma (;), máximo 5.

EncabezadoData (EncabezadoType)​

Datos generales de la documento.

Ocurrencia: 1-1 (Obligatorio)

CampoDescripciónObligatorioObservaciones
FacTipodocumentoCódigo del tipo de documento que se está emitiendo.Sí- Documento Soporte No obligado: 05
FacCodOperacionCódigo del tipo de operación.SíVer lista
FacFechaHoradocumentoFecha y hora de la emisión de la documento.SíFormato: aaaa-mm-dd hh:mm:ss
Ejemplo: 2019-08-01 17:40:25
FacFechaVencimientoFecha de vencimiento de la documento.CondicionalObligatorio si el documento es a crédito.
Formato: aaaa-mm-dd. Ejemplo: 2019-08-01

InfoMonetarioData (InfoMonetarioType)​

Datos de la información monetaria y los totales de la documento.

Ocurrencia: 1-1 (Obligatorio)

CampoDescripciónObligatorioObservaciones
FacCodMonedaCódigo de la moneda del documento.SíSiempre COP (pesos colombianos).
FacTotalImporteBrutoTotal del importe bruto antes de impuestos.SíSuma de los importes brutos de las líneas de la documento.
FacTotalCargosTotal de los cargos aplicados a nivel de documento.CondicionalSumatoria del campo FacCargoTotal de la lista LsCargos cuando FacCargoTipo sea true. Si no existen Cargos, el valor debe ser 0.
FacTotalDescuentosTotal de los descuentos aplicados a nivel de documento.CondicionalSumatoria del campo FacCargoTotal de la lista LsCargos cuando FacCargoTipo sea false. Si no existen Descuentos, el valor debe ser 0.
FacTotalBaseImponibleTotal de la base imponible para el cálculo de impuestos.SíResultado de: importe bruto + cargos - descuentos.
FacTotalBrutoMasImpTotal del valor bruto más impuestos.SíResultado de: importe bruto + impuestos.
FacTotalAnticiposTotal de todos los anticipos presentes.CondicionalSumatoria de FacAnticipoTotal de la lista LsAnticipos. Si no existen anticipos, el valor debe ser 0.
FacTotaldocumentoTotal de la documento (valor a pagar).SíResultado de: valor total de los ítems (incluyendo cargos y descuentos a nivel de ítem) + valor de tributos + valor de cargos - valor de descuentos.
Los anticipos y las retenciones no deben afectar el valor total de la documento.

LsAnticipos (List<AnticipoType>)​

Listado de los anticipos relacionados con la documento.

Ocurrencia: 0-N (Opcional)

CampoDescripciónObligatorioObservaciones
FacAnticipoSecNúmero de secuencia del anticipo.Sí
FacAnticipoTotalTotal del anticipo.Sí
FacAnticipoFechaFecha en que se realizó el pago del anticipo.SíFormato: aaaa-mm-dd.

LsCargos (List<CargosType>)​

Descuentos o cargos a nivel de documento, es decir, descuentos o cargos que no afectan las bases gravables.

Ocurrencia: 0-N (Opcional)

CampoDescripciónObligatorioObservaciones
FacCargoSecuenciaNúmero de secuencia del cargo o descuento.SíEjemplo: consecutivo 1, 2, 3…
FacCargoTipoIndica si es un cargo o un descuento.Sí- True: cargo
- False: descuento
FacCodDescuentoCódigo del descuento aplicado.CondicionalObligatorio si FacCargoTipo = False. Ver lista
FacCargoTotalTotal del cargo o del descuento.Sí
FacCargoRazonTexto libre para informar la razón del cargo o del descuento.Sí
FacCargoPorcPorcentaje a aplicar en el cargo o el descuento.Sí
FacCargoBaseValor base para calcular el cargo o el descuento.Sí

LsFormaPago (List<FormaPagoType>)​

Listado de las formas de pago asociadas a la documento.

Ocurrencia: 1-N (Obligatorio, mínimo un registro)

CampoDescripciónObligatorioObservaciones
FacMetodoPagoMétodo de pago.SíVer lista
FacFormaPagoForma de pago de la documento.SíVer lista
FacVencimientoFacFecha de vencimiento de la documento.CondicionalObligatorio solo si FacMetodoPago = 2.
Formato: aaaa-mm-dd. Ejemplo: 2019-08-01

LsImpuestos (List<ImpuestoType>)​

Listado de impuestos totales o agrupados aplicados a la documento.

Ocurrencia: 0-N (Opcional)

CampoDescripciónObligatorioObservaciones
CodigoImpuestoCódigo del tipo de impuesto registrado.SíVer lista
NombreImpuestoNombre del impuesto registrado.CondicionalObligatorio si CodigoImpuesto = ZZ.
Ver notas 1 y 2 al final de la tabla.
EsRetencionImpuestoIndicador de si se trata de una retención de impuesto o de un impuesto.Sí- True: es una retención de impuesto
- False: es un impuesto
BaseImponibleBase imponible para el cálculo del impuesto.Sí
PorcentajePorcentaje aplicable a la base imponible.CondicionalSi aplica tributos por porcentaje
ValorImpuestoMonto del impuesto.SíCorresponde al (BaseImponible * Porcentaje) o (UnidadPrecio * UnidadBase)
UnidadCodCódigo de la unidad de medida.CondicionalObligatorio cuando CodigoImpuesto = 02 o 22 (IC o impuesto a las bolsas). Podría ser el valor 94 (unidad).
UnidadBaseCantidad de artículos a los que se les aplica el impuesto (el mismo valor de la base).CondicionalObligatorio cuando CodigoImpuesto = 02 o 22 (IC o impuesto a las bolsas).
UnidadPrecioPrecio unitario del impuesto a aplicar.CondicionalObligatorio cuando CodigoImpuesto = 02 o 22 (IC o impuesto a las bolsas).
RedondeoRedondeo agregado al total del impuesto.CondicionalValor obligatorio, resultante de la siguiente operación:
- (BaseImponible * Porcentaje) - ValorImpuesto
- O (UnidadPrecio * UnidadBase) - ValorImpuesto
Notas sobre los impuestos
  1. Cuando el tributo no esté en el listado de CodigoImpuesto, se debe usar el código ZZ para informar el tributo, tasa, contribución o similar, y el contribuyente debe indicar la información que corresponda.
  2. El nombre de la figura tributaria lo asigna el documentodor y no es causal de rechazo.
  3. ICA y ReteICA: el porcentaje se informa con dos (2) decimales. La operación se divide por cien (100) y el producto se divide nuevamente por diez (10); ese es el valor que se informa en el XML.
  4. IBUA: la operación se realiza entre los valores de los campos PerUnitAmount * BaseUnitMeasure con dos (2) decimales, y el resultado se divide por cien (100); ese es el valor que se informa en el elemento TaxAmount del XML.
  5. ICUI: la operación se realiza entre los valores de los campos Percent * TaxableAmount con dos (2) decimales, y el resultado se divide por cien (100); ese es el valor que se informa en el elemento TaxAmount del XML.

LsDetalle (List<DetalleType>)​

Listado de los productos incluidos en el documento soporte.

Ocurrencia: 1-N (Obligatorio, mínimo un registro)

CampoDescripciónObligatorioObservaciones
DetFacConsecutivoNúmero de secuencia del detalle.SíNúmero consecutivo para identificar el detalle: 1, 2, 3…
CodigoCódigo del producto o servicio.Sí
CodigoEstandarCódigo adicional del producto o servicio, de acuerdo con un estándar.Sí
CodificacionCódigo del estándar.SíVer lista
DescripcionDescripción del producto o servicio.No
CantidadCantidad del producto o servicio.Sí
UnidadMedidaUnidad de medida de la cantidad.SíEjemplo: ZZ.
PrecioUnitarioValor unitario del producto o servicio.Sí
TamañoPaqueteCantidad de producto en un paquete.NoCampo opcional que contiene la cantidad de productos incluidos en un paquete. Ejemplo: si el producto es un sixpack, en este campo se incluye el valor 6, pero en Cantidad únicamente se informa la cantidad de sixpacks que se incluyen en la documento.
MarcaMarca del producto.No
ModeloModelo del producto.No
VencimientoFecha de vencimiento del producto.NoFormato: aaaa-mm-dd. Ejemplo: 2019-08-01
PrecioSinImpuestosValor de la línea, sin impuestos.SíResultado de: cantidad x precio unitario - descuentos a nivel de línea + recargos que apliquen para la línea.
PrecioTotalValor total de la línea de detalle.SíResultado de: cantidad x precio unitario - descuentos a nivel de línea + recargos que apliquen para la línea + impuestos a nivel de línea.
FechaCompraFecha de compra, para las compras con reporte semanal.SíFormato: aaaa-mm-dd. Ejemplo: 2019-08-01
Se rechaza si el elemento FechaCompra es menor a 6 días calendario.
CodDescripcionGenTraCódigo que indica la forma de generación y transmisión.SíVer lista
DescripcionGenTraDescripción que indica la forma de generación y transmisión.SíVer lista

LsDetalleCargos (List<DetalleCargosType>)​

Listado con los cargos o descuentos aplicados a las líneas de la documento.

Ocurrencia: 0-N (Opcional)

CampoDescripciónObligatorioObservaciones
DetSecuenciaCódigo de la secuencia del detalle.SíSe relaciona con DetFacConsecutivo.
Código del detalle (producto o servicio) al que se aplica este cargo o descuento.
DetCargoSecuenciaNúmero de secuencia del cargo o descuento.SíConsecutivo 1, 2, 3…
DetCargoTipoIndica si es un cargo o un descuento.Sí- True: cargo
- False: descuento
DetCargoTotalTotal del cargo o del descuento.Sí
DetCargoRazonTexto libre para informar la razón del cargo o del descuento.Sí
DetCargoPorcPorcentaje a aplicar en el cargo o el descuento.Sí
DetCargoBaseValor base para calcular el cargo o el descuento.Sí

LsDetalleImpuesto (List<ImpuestoDetalleType>)​

Datos de los impuestos aplicados a cada una de las líneas del detalle de la documento.

Ocurrencia: 0-N (Opcional)

CampoDescripciónObligatorioObservaciones
SecuenciaCódigo de la secuencia del detalle.SíSe relaciona con DetFacConsecutivo.
Código del detalle (producto o servicio) al que se aplica este impuesto.
CodigoImpuestoCódigo del tipo de impuesto registrado.SíVer lista
NombreImpuestoNombre del impuesto.CondicionalObligatorio si CodigoImpuesto = ZZ.
EsRetencionImpuestoIndicador de si se trata de una retención de impuesto.Sí- True: es una retención de impuesto
- False: es un impuesto
BaseImponibleBase imponible para el cálculo del impuesto.SíDebe ser el valor total de la línea sin impuesto.
PorcentajePorcentaje aplicable a la base imponible.NoSi el artículo no tiene impuesto, este valor debe ser 0.
ValorImpuestoMonto del impuesto.Sí
UnidadCodCódigo de la unidad de medida.CondicionalObligatorio cuando CodigoImpuesto = 02 o 22 (IC o impuesto a las bolsas). Podría ser el valor 94 (unidad).
UnidadBaseCantidad de artículos a los que se les aplica el impuesto (el mismo valor de la base).CondicionalObligatorio cuando CodigoImpuesto = 02 o 22 (IC o impuesto a las bolsas).
UnidadPrecioPrecio unitario del impuesto a aplicar.CondicionalObligatorio cuando CodigoImpuesto = 02 o 22 (IC o impuesto a las bolsas).
RedondeoRedondeo agregado al total del impuesto.SíValor obligatorio, resultante de la siguiente operación:
- (BaseImponible * Porcentaje) - ValorImpuesto
- o (UnidadPrecio * UnidadBase) - ValorImpuesto

lsDetalleNotas (List<DetalleNotaType>)​

Notas adicionales asociadas a las líneas del detalle de la documento.

Ocurrencia: 0-N (Opcional)

CampoDescripciónObligatorioObservaciones
DetSecuenciaCódigo de la secuencia del detalle.SíSe relaciona con DetFacConsecutivo.
Código del detalle (producto o servicio) al que se inserta la nota.
SecuenciaSecuencia de orden de las notas.SíOrden de las notas.
NotaNota.SíTexto adicional de la línea de detalle.

LsNotas (List<NotaType>)​

Texto libre que se agregará al documento electrónico. Pueden existir una o varias de estas líneas. Su uso es opcional.

Ocurrencia: 0-N (Opcional)

CampoDescripciónObligatorioObservaciones
DescripcionCabeceraLínea de descripción para la cabecera.Sí

AutorizacioFactura (AutorizacionType)​

Información de la resolución y autorización de la DIAN.

Ocurrencia: 1-1 (Obligatorio)

CampoDescripciónObligatorioObservaciones
AutFechaInicioFecha de inicio de la autorización de la secuencia del documento.SíFormato: aaaa-mm-dd. Ejemplo: 2019-08-01
AutFechaFinalFecha de fin de la autorización de la secuencia del documento.SíFormato: aaaa-mm-dd. Ejemplo: 2019-08-01
AutNumAutorizacionNúmero de autorización de la secuencia del documento.Sí
AutPrefijoPrefijo de la secuencia del documento.Sí
AutSecuenciaInicioNúmero inicial de la secuencia del documento.Sí
AutSecuenciaFinalNúmero final de la secuencia del documento.Sí