Diferencia entre revisiones de «Métodos Servicio Emisión Web TFHKA - Indice del Manual Integración Directa HKA Documentos Equivalentes Electrónicos»

De tfhkacolwiki
Ir a la navegación Ir a la búsqueda
(Página creada con «===<font color="blue">Método EnviarRequest</font>=== La función encargada de construir y enviar los documentos electrónicos al proveedor tecnológico. ; REQUEST: Paráme…»)
 
Línea 27: Línea 27:
 
: “10” No se admiten adjuntos. Se genera sólo XML sin representación Gráfica estándar por The Factory HKA
 
: “10” No se admiten adjuntos. Se genera sólo XML sin representación Gráfica estándar por The Factory HKA
 
: “11” Admite archivos adjuntos. Se genera sólo XML sin representación gráfica estándar por The Factory HKA  
 
: “11” Admite archivos adjuntos. Se genera sólo XML sin representación gráfica estándar por The Factory HKA  
 +
|}
 +
 +
====<font color="blue">Class.FacturaGeneral</font>====
 +
{| class="mw-collapsible mw-collapsed wikitable"
 +
! style="background:#f2f2f2; text-align:center;"|Atributo
 +
! style="background:#f2f2f2; text-align:center;"|Tipo Dato
 +
! style="background:#f2f2f2; text-align:center;"|Formato
 +
! style="background:#f2f2f2; text-align:center;"|Requerido
 +
! style="background:#f2f2f2; text-align:center;"|Descripción
 +
|-
 +
|anticipos
 +
|Array <Anticipos>
 +
| -
 +
|NO
 +
|
 +
: Informaciones relacionadas con anticipos
 +
: '''PATH''': /root/cac:PrepaidPayment
 +
: (ver detalle en [[#Class.Anticipos|Class.Anticipos]])
 +
|-
 +
|autorizado
 +
|Autorizado
 +
| -
 +
|NO
 +
|
 +
: Informaciones de la persona autorizada para descargar documentos
 +
: '''PATH''': /root/cac:TaxRepresentativeParty
 +
: (ver detalle en [[#Class.Autorizado|Class.Autorizado]])
 +
|-
 +
|boletaIngreso
 +
|Array<BoletaIngreso>
 +
| -
 +
|NO
 +
|
 +
: Información referente a boleta de ingreso
 +
: (ver detalle en [[#Class.BoletaIngreso]])
 +
|-
 +
|bolsaValores
 +
|Array<BolsaValores>
 +
| -
 +
|NO
 +
|
 +
: Información referente a bolsa de valores
 +
: (ver detalle en [[#Class.BolsaValores]])
 +
|-
 +
|cajaVenta
 +
|Array<CajaVenta>
 +
| -
 +
|NO
 +
|
 +
: Información referente a caja de venta
 +
: (ver detalle en [[#Class.CajaVenta]])
 +
|-
 +
|cantidadDecimales
 +
|String
 +
| <nowiki>N|1</nowiki>
 +
|SI
 +
|
 +
: Se envía la cantidad de decimales a utilizar (mínimo 0, máximo 6)
 +
: <span style="color:#FFFF; background:#FF0000"><b>Rechazo</b></span> Si se reciben más decimales en los montos a los indicados en este campo
 +
: '''PATH''': No aplica
 +
|-
 +
|cargosDescuentos
 +
|Array <CargosDescuentos>
 +
| -
 +
|NO
 +
|
 +
: Informaciones relacionadas con un cargo o un descuento a escala de factura que no afecte a la base gravable
 +
: '''PATH''': /root/cac:AllowanceCharge
 +
: (ver detalle en [[#Class.CargosDescuentos|Class.CargosDescuentos]])
 +
|-
 +
|cliente
 +
|Cliente
 +
| -
 +
|SI
 +
|
 +
: Información del adquiriente
 +
: Para Documento Soporte en adquisiciones a No Obligados a Facturar se debe utiliza para registrar los datos del proveedor o del no obligado
 +
: '''PATH''':/root/cac:AccountingCustomerParty
 +
: (ver detalle en [[#Class.Cliente|Class.Cliente]])
 +
|-
 +
|codigoCosto
 +
|String
 +
| -
 +
|NO
 +
|
 +
: Código de para centro de costos
 +
 +
: '''PATH''': ../cbc:
 +
|-
 +
|consecutivoDocumento
 +
|String
 +
| AN..14
 +
|SI
 +
|
 +
: Correlativo/consecutivo del documento electrónico
 +
: Concatenación del prefijo (<nowiki>AN|..4</nowiki>) + el consecutivo DIAN,
 +
: según la configuración en portal web:
 +
:: Manual con prefijo: prefijo requerido (Sin guion). Ejemplo: “PREF2147483647”
 +
:: Manual sin prefijo: prefijo no requerido. Ejemplo: “2147483647”
 +
: <span style="color:#FFFF; background:#FF0000"><b>Rechazo</b></span> No se permiten caracteres adicionales como espacios o guiones
 +
: <span style="color:#FFFF; background:#FF0000"><b>Rechazo</b></span> Número de consecutivo debe ser igual o superior al valor inicial del rango de numeración otorgado por la DIAN
 +
: <span style="color:#FFFF; background:#FF0000"><b>Rechazo</b></span> Número de consecutivo debe ser igual o inferior al valor final del rango de numeración otorgado por la DIAN
 +
: '''PATH''': /root/cbc:ID
 +
|-
 +
|detalleDeFactura
 +
|Array <FacturaDetalle>
 +
| -
 +
|SI
 +
|
 +
: Información de detalles o productos
 +
: '''PATH''': /root/cac:InvoiceLine
 +
: (ver detalle en [[#Class.FacturaDetalle|Class.FacturaDetalle]])
 +
|-
 +
|documentosReferenciados
 +
|Array <DocumentoReferenciado>
 +
| -
 +
|C/C
 +
|
 +
: Informaciones que describen un documento referenciado
 +
: '''Obligatorio''' en facturas tipoDocumento contingencia (AdditionalDocumentReference), en facturas que afecten una nota (BillingReference), en Notas de Crédito y Débito (DiscrepancyResponse y BillingReference)
 +
: '''PATH''': /root/cac:DiscrepancyResponse,
 +
:: /root/cac:BillingReference,
 +
:: /root/cac: AdditionalDocumentReference,
 +
:: /root/cac: DespatchDocumentReference,
 +
:: /root/cac: ReceiptDocumentReference
 +
:(ver detalle en [[#Class.DocumentoReferenciado|Class.DocumentoReferenciado]])
 +
|-
 +
|entregaMercancia
 +
|Entrega
 +
| -
 +
|NO
 +
|
 +
: Información de entrega (Delivery) de bienes
 +
: '''PATH''': /root/cac:Delivery
 +
: (ver detalle en [[#Class.Entrega|Class.Entrega]])
 +
|-
 +
|extras
 +
|Array <Extras>
 +
| -
 +
|NO
 +
|
 +
: Campos o información opcional para el modelo de negocio del emisor
 +
: '''PATH''': No definido
 +
: (ver detalle en [[#Class.Extras|Class.Extras]])
 +
|-
 +
|fabricantesoftware
 +
|Array<FabricanteSoftware>
 +
| -
 +
|SI
 +
|
 +
: Código de para centro de costos
 +
: (ver detalle en [[#Class.fabricanteSoftware]])
 +
|-
 +
|fechaEmision
 +
|String
 +
| <nowiki>AN|19</nowiki>
 +
|SI
 +
|
 +
: Fecha y hora de emisión del documento, en formato: YYYY-MM-DD HH:MM:SS
 +
: <span style="color:#FFFF; background:#FF0000"><b>Notificación</b></span> Si la fecha de emisión es anterior a cinco (5) días de la fecha calendario
 +
: <span style="color:#FFFF; background:#FF0000"><b>Rechazo</b></span> Si la fecha de emisión es posterior a diez días calendario
 +
: '''PATH''': /root/cbc:IssueDate, root/cbc:IssueTime
 +
|-
 +
|fechaFinPeriodoFacturacion
 +
|String
 +
| <nowiki>AN|19</nowiki>
 +
|NO
 +
|
 +
: Fecha/Hora de fin del periodo de facturación (Intervalo de fechas a las que referencia la factura por ejemplo en servicios públicos), en formato: YYYY-MM-DD HH:MM:SS
 +
: '''PATH''': /root/cac:InvoicePeriod/cbc:EndDate, /root/cac:InvoicePeriod/cbc:EndTime
 +
|-
 +
|fechaInicioPeriodoFacturacion
 +
|String
 +
| <nowiki>AN|19</nowiki>
 +
|NO
 +
|
 +
: Fecha/Hora de inicio del periodo de facturación, en formato: YYYY-MM-DD HH:MM:SS 
 +
: '''PATH''':
 +
: /root/cac:InvoicePeriod/cbc:StartDate, /root/cac:InvoicePeriod/cbc:StartTime
 +
|-
 +
|fechaPagoImpuestos
 +
|String
 +
| <nowiki>AN|19</nowiki>
 +
|NO
 +
|
 +
: Fecha de pago de impuestos, en formato: YYYY-MM-DD HH:MM:SS 
 +
: '''PATH''': root/cbc:TaxPointDate
 +
|-
 +
|fechaVencimiento
 +
|String
 +
| <nowiki>AN|10</nowiki>
 +
|NO
 +
|
 +
: Fecha vencimiento de la factura, en formato: YYYY-MM-DD
 +
: '''PATH''': /root/cbc:DueDate
 +
|-
 +
|impuestosGenerales
 +
|Array <FacturaImpuestos>
 +
| -
 +
|SI
 +
|
 +
: Información de impuestos generales o globales
 +
: <span style="color:#FFFF; background:#FF0000"><b>Rechazo</b></span> Si los impuestos/retenciones reportados en este arreglo no corresponden con lo reportado en los detalles
 +
: '''PATH''': /root/cac:TaxTotal (impuestos),
 +
: /root/cac: WithholdingTaxTotal (retenciones),
 +
: (ver detalle en [[#Class.FacturaImpuestos|Class.FacturaImpuestos]])
 +
|-
 +
|impuestosTotales
 +
|Array <ImpuestosTotales>
 +
| -
 +
|SI
 +
|
 +
: Sumatoria de los impuestos/retenciones generales por tipo de impuesto/retención
 +
:  <span style="color:#FFFF; background:#FF0000"><b>Rechazo</b></span> Si el valor total del impuesto/retención indicado es diferente a la sumatoria de los reportado en el arreglo  impuestosGenerales
 +
: '''PATH''': /root/cac:TaxTotal/cbc:TaxAmount (impuestos),
 +
: /root/cac: WithholdingTaxTotal/cbc:TaxAmount (retenciones),
 +
: (ver detalle en [[#Class.ImpuestosTotales|Class.ImpuestosTotales]])
 +
|-
 +
|informacionAdicional
 +
|Array <String>
 +
| <nowiki>AN|...10000</nowiki>
 +
|NO
 +
|
 +
: Información adicional o texto libre relativo al documento
 +
: '''PATH''': root/cbc:Note
 +
|-
 +
|informacionBeneficiosComprador
 +
|Array <InformacionBeneficiosComprador>
 +
| -
 +
|NO
 +
|
 +
: Información relacionada con beneficios del comprador
 +
: '''PATH''': /root/cac:PaymentMeans
 +
: (ver detalle en [[#Class.InformacionBeneficiosComprador]])
 +
|-
 +
|juegosLocalizados
 +
|Array<juegosLocalizados>
 +
| -
 +
|NO
 +
|
 +
: Información referente a juegos localizados
 +
: (ver detalle en [[#Class.juegosLocalizados]])
 +
|-
 +
|mediosDePago
 +
|Array<MediosDePago>
 +
| -
 +
|NO
 +
|
 +
: '''PATH''': /root/cac:PaymentMeans
 +
: (ver detalle en [[#Class.MediosDePago]])
 +
|-
 +
|moneda
 +
|String
 +
| <nowiki>AN|3</nowiki>
 +
|SI
 +
|
 +
: Moneda o divisa del documento
 +
: Usar códigos ISO 4217 (Ejemplo Pesos Colombianos “COP”)
 +
:  <span style="color:#FFFF; background:#FF0000"><b>Rechazo</b></span> Si el valor no corresponde a uno de los códigos ISO 4217
 +
: '''PATH''': /root/cbc:DocumentCurrencyCode
 +
|-
 +
|propina
 +
|string
 +
| -
 +
|NO
 +
|
 +
: Información relacionada a propina
 +
|-
 +
|ordenDeCompra
 +
|Array <OrdenDeCompra>
 +
| -
 +
|NO
 +
|
 +
: Información relacionada a la orden de compra
 +
: '''PATH''': /root/cac:OrderReference
 +
: (ver detalle en [[#Class.OrdenDeCompra|Class.OrdenDeCompra]])
 +
|-
 +
|rangoNumeracion
 +
|String
 +
| <nowiki>AN|20</nowiki>
 +
|SI
 +
|
 +
: Consecutivo desde el que comienza la serie para el documento a emitir, siempre debe colocarse el prefijo (con guión) independientemente de la modalidad de secuencial.
 +
: Ejemplo:  ‘PREF-1123456’
 +
: <span style="color:#FFFF; background:#FF0000"><b>Rechazo</b></span> Si el valor del campo desde (Inicio del rango) supera el valor '''2.147.483.647'''.
 +
: '''PATH''':
 +
: /root/ext:UBLExtensions/ext:UBLExtension/ext:ExtensionContent/
 +
: sts:DianExtensions/sts:InvoiceControl/sts:AuthorizedInvoices/(sts:Prefix, sts:From)
 +
|-
 +
|redondeoAplicado
 +
|String
 +
| Ent: <nowiki>N|..15</nowiki>
 +
Dec: <nowiki>N|0..6</nowiki>
 +
|SI
 +
|
 +
: Redondeo aplicado para llegar a totalMonto
 +
: <span style="color:#FFFF; background:#FF0000"><b>Rechazo</b></span> Si redondeo es superior al mayor valor entre 500 pesos o 0,1% del valor total de la factura
 +
: '''PATH''': /root/cac:LegalMonetaryTotal/cbc:PayableRoundingAmount
 +
|-
 +
|retencionesGenerales
 +
|Array <FacturaImpuestos>
 +
| -
 +
|SI
 +
|
 +
: Información de impuestos generales o globales
 +
: <span style="color:#FFFF; background:#FF0000"><b>Rechazo</b></span> Si los impuestos/retenciones reportados en este arreglo no corresponden con lo reportado en los detalles
 +
: '''PATH''': /root/cac:TaxTotal (impuestos),
 +
: /root/cac: WithholdingTaxTotal (retenciones),
 +
: (ver detalle en [[#Class.FacturaImpuestos|Class.FacturaImpuestos]])
 +
|-
 +
|serviciosPublicos
 +
|Array<ServiciosPublicos>
 +
| -
 +
|NO
 +
|
 +
: Información referente a servicios publicos
 +
: (ver detalle en [[#Class.ServiciosPublicos]])
 +
|-
 +
|tasaDeCambio
 +
|Array<TasaDeCambio>
 +
| -
 +
|C/C
 +
|
 +
: Información relacionada con la tasa de cambio de moneda extranjera a peso colombiano (COP)
 +
: '''Obligatorio''' Si tipoDocumento es de exportación/internacional o si la divisa base es diferente a “COP”
 +
: '''PATH''': /root/cac:PaymentExchangeRate
 +
: (ver detalle en [[#Class.TasaDeCambio|Class.TasaDeCambio]])
 +
|-
 +
|tasaDeCambioAlternativa
 +
|TasaDeCambioAlternativa
 +
| -
 +
|NO
 +
|
 +
: Información utilizada como método alternativo para informar conversiones a otras divisas
 +
: '''PATH''': /root/cac:PaymentAlternativeExchangeRate
 +
: (ver detalle en [[#Class.TasaDeCambioAlternativa|Class.TasaDeCambioAlternativa]])
 +
|-
 +
|terminosEntrega
 +
|TerminosEntrega
 +
| -
 +
|C/C
 +
|
 +
: Información relacionada con la entrega
 +
: '''Obligatorio''' Si tipoDocumento es de exportación/internacional
 +
: '''PATH''': /root/cac:DeliveryTerms
 +
: (ver detalle en [[#Class.TerminosEntrega|Class.TerminosEntrega]])
 +
|-
 +
|tipoDocumento
 +
|String
 +
| <nowiki>AN|2</nowiki>
 +
|SI
 +
|
 +
: Tipo de documento
 +
: '''PATH''': Invoice, CreditNote, DebitNote
 +
: <span style="color:#FFFF; background:#FF0000"><b>Rechazo</b></span> Si el contenido de este atributo no corresponde a uno de los valores de la  [[Tablas de códigos de propiedades para emisión de documentos - Indice Manual Integración Directa#Tabla 1|Tabla 1]]
 +
|-
 +
|tipoOperacion
 +
|String
 +
| <nowiki>AN|..4</nowiki>
 +
|SI
 +
|
 +
: Indicador del tipo de operación
 +
: <span style="color:#FFFF; background:#FF0000"><b>Rechazo</b></span> Si el contenido de este atributo no corresponde a uno de los valores de la  [[Tablas de códigos de propiedades para emisión de documentos - Indice Manual Integración Directa#Tabla 2|Tabla 2]]
 +
: '''PATH''': /root/cbc:CustomizationID
 +
|-
 +
|totalAnticipos
 +
|String
 +
| Ent: <nowiki>N|..15</nowiki>
 +
Dec: <nowiki>N|0..6</nowiki>
 +
|NO
 +
|
 +
: Suma de todos los pagos anticipados
 +
: <span style="color:#FFFF; background:#FF0000"><b>Rechazo</b></span> Si totalAnticipos no corresponde a la suma de los atributos Anticipos.montoPagado en el arreglo anticipos
 +
: '''PATH''': /root/LegalMonetaryTotal/cbc:PrepaidAmount
 +
|-
 +
|totalBaseImponible
 +
|String
 +
| Ent: <nowiki>N|..15</nowiki>
 +
Dec: <nowiki>N|0..6</nowiki>
 +
|SI
 +
|
 +
: Total Valor Base Imponible: Suma de Bases imponibles para el cálculo de los tributos a nivel de factura
 +
: <span style="color:#FFFF; background:#FF0000"><b>Rechazo</b></span> Si totalBaseImponible no es igual a la suma de ocurrencias FacturaImpuestos.baseImponibleTOTALImp
 +
: '''PATH''':  /root/LegalMonetaryTotal/cbc:TaxExclusiveAmount 
 +
|-
 +
|totalBrutoConImpuesto
 +
|String
 +
| Ent: <nowiki>N|..15</nowiki>
 +
Dec: <nowiki>N|0..6</nowiki>
 +
|SI
 +
|
 +
: Total del valor bruto con tributos
 +
: <span style="color:#FFFF; background:#FF0000"><b>Rechazo</b></span> Si totalBrutoConImpuesto no es igual a la suma: totalSinImpuestos + sum(ImpuestosTotales.montoTotal)
 +
: '''PATH''':  /root/LegalMonetaryTotal/cbc:TaxInclusiveAmount
 +
|-
 +
|totalCargosAplicados
 +
|String
 +
| Ent: <nowiki>N|..15</nowiki>
 +
Dec: <nowiki>N|0..6</nowiki>
 +
|NO
 +
|
 +
: Cargo Total: Suma de todos los cargos aplicados a nivel de la factura
 +
: <span style="color:#FFFF; background:#FF0000"><b>Rechazo</b></span> Si totalCargosAplicados no corresponde a la suma de ocurrencias CargosDescuentos.monto cuando CargosDescuentos.indicador es “true”
 +
: '''PATH''': /root/LegalMonetaryTotal/cbc:ChargeTotalAmount
 +
|-
 +
|totalDescuentos
 +
|String
 +
| Ent: <nowiki>N|..15</nowiki>
 +
Dec: <nowiki>N|0..6</nowiki>
 +
|NO
 +
|
 +
: Descuento Total: Suma de todos los descuentos aplicados a nivel de la factura
 +
: <span style="color:#FFFF; background:#FF0000"><b>Rechazo</b></span> Si totalDescuentos no corresponde a la suma de ocurrencias CargosDescuentos.monto cuando CargosDescuentos.indicador es “false”
 +
: '''PATH''': /root/LegalMonetaryTotal/cbc:AllowanceTotalAmount
 +
|-
 +
|totalMonto
 +
|String
 +
| Ent: <nowiki>N|..15</nowiki>
 +
Dec: <nowiki>N|0..6</nowiki>
 +
|SI
 +
|
 +
: Valor a pagar del documento: Valor total de ítems (incluyendo cargos y descuentos a nivel de ítems) + valor de tributos + valor de cargos – valor de descuentos – valor anticipos
 +
: <span style="color:#FFFF; background:#FF0000"><b>Rechazo</b></span> Si totalMonto no es consistente con el valor total de ítems + valor de tributos + valor de cargos – valor de descuentos – valor anticipos + redondeo aplicado
 +
: '''PATH''': /root/LegalMonetaryTotal/cbc:PayableAmount
 +
|-
 +
|totalProductos
 +
|String
 +
| <nowiki>AN|..5</nowiki>
 +
|SI
 +
|
 +
: Número o cantidad de líneas de productos (renglones) presentes en el documento
 +
: <span style="color:#FFFF; background:#FF0000"><b>Rechazo</b></span> Si el valor de totalProductos es diferente al número de ocurrencias de  rans en el arreglo detalleDeFactura
 +
: '''PATH''': /root/cbc:LineCountNumeric
 +
|-
 +
|totalSinImpuestos
 +
|String
 +
| Ent: <nowiki>N|..15</nowiki>
 +
Dec: <nowiki>N|0..6</nowiki>
 +
|SI
 +
|
 +
: Total Valor Bruto antes de tributos:  Suma de los valores brutos de las líneas de la factura
 +
: <span style="color:#FFFF; background:#FF0000"><b>Rechazo</b></span> Si totalSinImpuestos no corresponde a la suma de los atributos precioTotalSinImpuestos en el arreglo detalleDeFactura
 +
: '''PATH''': /root/LegalMonetaryTotal/cbc:LineExtensionAmount
 
|}
 
|}

Revisión del 14:16 24 may 2024

Método EnviarRequest

La función encargada de construir y enviar los documentos electrónicos al proveedor tecnológico.

REQUEST
Parámetros a EnviarRequest
Tipo Identificador Descripción
String tokenEmpresa Suministrado por el proveedor tecnológico
tokenPassword
FacturaGeneral factura Ver el detalle del Objeto Factura más abajo
String adjuntos

Posibles valores:

“0” No se admiten adjuntos. Se genera XML y representación Gráfica estándar por The Factory HKA
“1” Admite archivos adjuntos. Se genera XML y representación Gráfica estándar por The Factory HKA
“10” No se admiten adjuntos. Se genera sólo XML sin representación Gráfica estándar por The Factory HKA
“11” Admite archivos adjuntos. Se genera sólo XML sin representación gráfica estándar por The Factory HKA

Class.FacturaGeneral

Atributo Tipo Dato Formato Requerido Descripción
anticipos Array <Anticipos> - NO
Informaciones relacionadas con anticipos
PATH: /root/cac:PrepaidPayment
(ver detalle en Class.Anticipos)
autorizado Autorizado - NO
Informaciones de la persona autorizada para descargar documentos
PATH: /root/cac:TaxRepresentativeParty
(ver detalle en Class.Autorizado)
boletaIngreso Array<BoletaIngreso> - NO
Información referente a boleta de ingreso
(ver detalle en #Class.BoletaIngreso)
bolsaValores Array<BolsaValores> - NO
Información referente a bolsa de valores
(ver detalle en #Class.BolsaValores)
cajaVenta Array<CajaVenta> - NO
Información referente a caja de venta
(ver detalle en #Class.CajaVenta)
cantidadDecimales String N|1 SI
Se envía la cantidad de decimales a utilizar (mínimo 0, máximo 6)
Rechazo Si se reciben más decimales en los montos a los indicados en este campo
PATH: No aplica
cargosDescuentos Array <CargosDescuentos> - NO
Informaciones relacionadas con un cargo o un descuento a escala de factura que no afecte a la base gravable
PATH: /root/cac:AllowanceCharge
(ver detalle en Class.CargosDescuentos)
cliente Cliente - SI
Información del adquiriente
Para Documento Soporte en adquisiciones a No Obligados a Facturar se debe utiliza para registrar los datos del proveedor o del no obligado
PATH:/root/cac:AccountingCustomerParty
(ver detalle en Class.Cliente)
codigoCosto String - NO
Código de para centro de costos
PATH: ../cbc:
consecutivoDocumento String AN..14 SI
Correlativo/consecutivo del documento electrónico
Concatenación del prefijo (AN|..4) + el consecutivo DIAN,
según la configuración en portal web:
Manual con prefijo: prefijo requerido (Sin guion). Ejemplo: “PREF2147483647”
Manual sin prefijo: prefijo no requerido. Ejemplo: “2147483647”
Rechazo No se permiten caracteres adicionales como espacios o guiones
Rechazo Número de consecutivo debe ser igual o superior al valor inicial del rango de numeración otorgado por la DIAN
Rechazo Número de consecutivo debe ser igual o inferior al valor final del rango de numeración otorgado por la DIAN
PATH: /root/cbc:ID
detalleDeFactura Array <FacturaDetalle> - SI
Información de detalles o productos
PATH: /root/cac:InvoiceLine
(ver detalle en Class.FacturaDetalle)
documentosReferenciados Array <DocumentoReferenciado> - C/C
Informaciones que describen un documento referenciado
Obligatorio en facturas tipoDocumento contingencia (AdditionalDocumentReference), en facturas que afecten una nota (BillingReference), en Notas de Crédito y Débito (DiscrepancyResponse y BillingReference)
PATH: /root/cac:DiscrepancyResponse,
/root/cac:BillingReference,
/root/cac: AdditionalDocumentReference,
/root/cac: DespatchDocumentReference,
/root/cac: ReceiptDocumentReference
(ver detalle en Class.DocumentoReferenciado)
entregaMercancia Entrega - NO
Información de entrega (Delivery) de bienes
PATH: /root/cac:Delivery
(ver detalle en Class.Entrega)
extras Array <Extras> - NO
Campos o información opcional para el modelo de negocio del emisor
PATH: No definido
(ver detalle en Class.Extras)
fabricantesoftware Array<FabricanteSoftware> - SI
Código de para centro de costos
(ver detalle en #Class.fabricanteSoftware)
fechaEmision String AN|19 SI
Fecha y hora de emisión del documento, en formato: YYYY-MM-DD HH:MM:SS
Notificación Si la fecha de emisión es anterior a cinco (5) días de la fecha calendario
Rechazo Si la fecha de emisión es posterior a diez días calendario
PATH: /root/cbc:IssueDate, root/cbc:IssueTime
fechaFinPeriodoFacturacion String AN|19 NO
Fecha/Hora de fin del periodo de facturación (Intervalo de fechas a las que referencia la factura por ejemplo en servicios públicos), en formato: YYYY-MM-DD HH:MM:SS
PATH: /root/cac:InvoicePeriod/cbc:EndDate, /root/cac:InvoicePeriod/cbc:EndTime
fechaInicioPeriodoFacturacion String AN|19 NO
Fecha/Hora de inicio del periodo de facturación, en formato: YYYY-MM-DD HH:MM:SS
PATH:
/root/cac:InvoicePeriod/cbc:StartDate, /root/cac:InvoicePeriod/cbc:StartTime
fechaPagoImpuestos String AN|19 NO
Fecha de pago de impuestos, en formato: YYYY-MM-DD HH:MM:SS
PATH: root/cbc:TaxPointDate
fechaVencimiento String AN|10 NO
Fecha vencimiento de la factura, en formato: YYYY-MM-DD
PATH: /root/cbc:DueDate
impuestosGenerales Array <FacturaImpuestos> - SI
Información de impuestos generales o globales
Rechazo Si los impuestos/retenciones reportados en este arreglo no corresponden con lo reportado en los detalles
PATH: /root/cac:TaxTotal (impuestos),
/root/cac: WithholdingTaxTotal (retenciones),
(ver detalle en Class.FacturaImpuestos)
impuestosTotales Array <ImpuestosTotales> - SI
Sumatoria de los impuestos/retenciones generales por tipo de impuesto/retención
Rechazo Si el valor total del impuesto/retención indicado es diferente a la sumatoria de los reportado en el arreglo impuestosGenerales
PATH: /root/cac:TaxTotal/cbc:TaxAmount (impuestos),
/root/cac: WithholdingTaxTotal/cbc:TaxAmount (retenciones),
(ver detalle en Class.ImpuestosTotales)
informacionAdicional Array <String> AN|...10000 NO
Información adicional o texto libre relativo al documento
PATH: root/cbc:Note
informacionBeneficiosComprador Array <InformacionBeneficiosComprador> - NO
Información relacionada con beneficios del comprador
PATH: /root/cac:PaymentMeans
(ver detalle en #Class.InformacionBeneficiosComprador)
juegosLocalizados Array<juegosLocalizados> - NO
Información referente a juegos localizados
(ver detalle en #Class.juegosLocalizados)
mediosDePago Array<MediosDePago> - NO
PATH: /root/cac:PaymentMeans
(ver detalle en #Class.MediosDePago)
moneda String AN|3 SI
Moneda o divisa del documento
Usar códigos ISO 4217 (Ejemplo Pesos Colombianos “COP”)
Rechazo Si el valor no corresponde a uno de los códigos ISO 4217
PATH: /root/cbc:DocumentCurrencyCode
propina string - NO
Información relacionada a propina
ordenDeCompra Array <OrdenDeCompra> - NO
Información relacionada a la orden de compra
PATH: /root/cac:OrderReference
(ver detalle en Class.OrdenDeCompra)
rangoNumeracion String AN|20 SI
Consecutivo desde el que comienza la serie para el documento a emitir, siempre debe colocarse el prefijo (con guión) independientemente de la modalidad de secuencial.
Ejemplo: ‘PREF-1123456’
Rechazo Si el valor del campo desde (Inicio del rango) supera el valor 2.147.483.647.
PATH:
/root/ext:UBLExtensions/ext:UBLExtension/ext:ExtensionContent/
sts:DianExtensions/sts:InvoiceControl/sts:AuthorizedInvoices/(sts:Prefix, sts:From)
redondeoAplicado String Ent: N|..15

Dec: N|0..6

SI
Redondeo aplicado para llegar a totalMonto
Rechazo Si redondeo es superior al mayor valor entre 500 pesos o 0,1% del valor total de la factura
PATH: /root/cac:LegalMonetaryTotal/cbc:PayableRoundingAmount
retencionesGenerales Array <FacturaImpuestos> - SI
Información de impuestos generales o globales
Rechazo Si los impuestos/retenciones reportados en este arreglo no corresponden con lo reportado en los detalles
PATH: /root/cac:TaxTotal (impuestos),
/root/cac: WithholdingTaxTotal (retenciones),
(ver detalle en Class.FacturaImpuestos)
serviciosPublicos Array<ServiciosPublicos> - NO
Información referente a servicios publicos
(ver detalle en #Class.ServiciosPublicos)
tasaDeCambio Array<TasaDeCambio> - C/C
Información relacionada con la tasa de cambio de moneda extranjera a peso colombiano (COP)
Obligatorio Si tipoDocumento es de exportación/internacional o si la divisa base es diferente a “COP”
PATH: /root/cac:PaymentExchangeRate
(ver detalle en Class.TasaDeCambio)
tasaDeCambioAlternativa TasaDeCambioAlternativa - NO
Información utilizada como método alternativo para informar conversiones a otras divisas
PATH: /root/cac:PaymentAlternativeExchangeRate
(ver detalle en Class.TasaDeCambioAlternativa)
terminosEntrega TerminosEntrega - C/C
Información relacionada con la entrega
Obligatorio Si tipoDocumento es de exportación/internacional
PATH: /root/cac:DeliveryTerms
(ver detalle en Class.TerminosEntrega)
tipoDocumento String AN|2 SI
Tipo de documento
PATH: Invoice, CreditNote, DebitNote
Rechazo Si el contenido de este atributo no corresponde a uno de los valores de la Tabla 1
tipoOperacion String AN|..4 SI
Indicador del tipo de operación
Rechazo Si el contenido de este atributo no corresponde a uno de los valores de la Tabla 2
PATH: /root/cbc:CustomizationID
totalAnticipos String Ent: N|..15

Dec: N|0..6

NO
Suma de todos los pagos anticipados
Rechazo Si totalAnticipos no corresponde a la suma de los atributos Anticipos.montoPagado en el arreglo anticipos
PATH: /root/LegalMonetaryTotal/cbc:PrepaidAmount
totalBaseImponible String Ent: N|..15

Dec: N|0..6

SI
Total Valor Base Imponible: Suma de Bases imponibles para el cálculo de los tributos a nivel de factura
Rechazo Si totalBaseImponible no es igual a la suma de ocurrencias FacturaImpuestos.baseImponibleTOTALImp
PATH: /root/LegalMonetaryTotal/cbc:TaxExclusiveAmount
totalBrutoConImpuesto String Ent: N|..15

Dec: N|0..6

SI
Total del valor bruto con tributos
Rechazo Si totalBrutoConImpuesto no es igual a la suma: totalSinImpuestos + sum(ImpuestosTotales.montoTotal)
PATH: /root/LegalMonetaryTotal/cbc:TaxInclusiveAmount
totalCargosAplicados String Ent: N|..15

Dec: N|0..6

NO
Cargo Total: Suma de todos los cargos aplicados a nivel de la factura
Rechazo Si totalCargosAplicados no corresponde a la suma de ocurrencias CargosDescuentos.monto cuando CargosDescuentos.indicador es “true”
PATH: /root/LegalMonetaryTotal/cbc:ChargeTotalAmount
totalDescuentos String Ent: N|..15

Dec: N|0..6

NO
Descuento Total: Suma de todos los descuentos aplicados a nivel de la factura
Rechazo Si totalDescuentos no corresponde a la suma de ocurrencias CargosDescuentos.monto cuando CargosDescuentos.indicador es “false”
PATH: /root/LegalMonetaryTotal/cbc:AllowanceTotalAmount
totalMonto String Ent: N|..15

Dec: N|0..6

SI
Valor a pagar del documento: Valor total de ítems (incluyendo cargos y descuentos a nivel de ítems) + valor de tributos + valor de cargos – valor de descuentos – valor anticipos
Rechazo Si totalMonto no es consistente con el valor total de ítems + valor de tributos + valor de cargos – valor de descuentos – valor anticipos + redondeo aplicado
PATH: /root/LegalMonetaryTotal/cbc:PayableAmount
totalProductos String AN|..5 SI
Número o cantidad de líneas de productos (renglones) presentes en el documento
Rechazo Si el valor de totalProductos es diferente al número de ocurrencias de rans en el arreglo detalleDeFactura
PATH: /root/cbc:LineCountNumeric
totalSinImpuestos String Ent: N|..15

Dec: N|0..6

SI
Total Valor Bruto antes de tributos: Suma de los valores brutos de las líneas de la factura
Rechazo Si totalSinImpuestos no corresponde a la suma de los atributos precioTotalSinImpuestos en el arreglo detalleDeFactura
PATH: /root/LegalMonetaryTotal/cbc:LineExtensionAmount