El proceso en el ambiente de habilitación es asíncrono por lo que primero es recibido por The Factory HKA y luego en una tarea secundaria buscando las condiciones óptimas de conexión con la DIAN los mismos son enviados a la entidad tributaria.
Secuencia del servicio asíncrono:
El software cliente realiza la conexión, autenticación por medio de certificado digital, enviando la solicitud (Request) al servicio de la DIAN.
El WS DIAN recibe la solicitud y responde con un mensaje de aprobación o rechazo, según las primeras validaciones y entrega un trackId.
El software cliente, al obtener la respuesta, cierra la conexión.
Con el trackId obtenido en el método, se consume otro método de consulta para obtener el resultado de la transacción anterior.
Transmisión de documentos de contingencia tipo 03 (path additionaldocumentreference)
Los inconvenientes tecnológicos por parte del facturador electrónico implican que la facturación electrónica tenga las siguientes características:
Generar la facturación con numeración de contingencia en papel o por computador.
El facturador tendrá 30 días (48 horas en la última resolución) a partir de la fecha en que supera la contingencia para transmitir las facturas electrónicas en formato XML a la DIAN.
Las facturas electrónicas generadas y emitidas en contingencia pasarán la malla de validaciones de anexo, es decir, la DIAN responderá con un Application Response de Documento Validado por la DIAN, que informará las notificaciones a que haya lugar.
Una vez el facturador electrónico salga de contingencia deberá proceder al proceso de generación normal.
Para los documentos de notas crédito y notas débito, el facturador NO debe usar la numeración de contingencia, sino el consecutivo propio normal. Las notas enviadas a la DIAN se validarán de manera normal en la DIAN. Por lo anterior, no existe el concepto de nota en contingencia, por lo que debe cuidarse enviar primeramente las Facturas de Contingencia antes de generar notas sobre las mismas y se recomienda generarlas en un ambiente de operación normal.
¿Cómo transmitir un documento de contingencia Tipo 03?
La transmisión del documento se realiza por medio del método Enviar del Web Service de Emisión que brinda The Factory HKA, indicando el atributo tipoDocumento del objeto FacturaGeneral igual a ‘03’ y enviar en la sección de documentosReferenciados un objeto de tipo DocumentosReferenciados indicando lo siguiente:
codigoInterno = ‘1’
fecha = ‘Fecha de emisión del documento de contingencia’
numeroDocumento = ‘número del consecutivo del documento de contingencia emitido’
tipoCodigoDocumento = ‘Tipo de documento de soporte del proceso de facturación por contingencias atribuibles al facturador electrónico a transmitir, según lo estipulado en el numeral 12.1.4 de la versión 1.8 del Anexo Técnico de la DIAN ’.
Tipos de documentos de soporte del proceso de facturación por contingencias atribuibles al facturador electrónico
Código
Descripción
FTC
Factura Talonario Contingencia
FTP
Factura Talonario Papel
FTPC
Factura Talonario por Computador
¿Cuál será el código de respuesta de transmisión exitosa que retornará el WS de TFHKA?
El método Enviar retornará código 201 ó 208 ante la recepción exitosa del documento en nuestra plataforma, con el siguiente mensaje: “El documento se recibió como Documento Electrónico de Contingencia Tipo 03, este se entregará de manera asíncrona a la DIAN, para más información favor consumir EstadoDocumento luego de 48 horas.” En dicho Response se contará con CUDE y UBL.
¿Cuándo puedo consultar el resultado de la transmisión del documento hacia la DIAN?
Pasadas 48 horas luego de la radicación del documento en la plataforma, pueden consultar el estatus del mismo para conocer el resultado de la transacción ante la DIAN.
Ejemplo SOAP Request de Factura de Contingencia Tipo 03:
Ver ejemplo:
<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:tem="http://tempuri.org/" xmlns:arr="http://schemas.microsoft.com/2003/10/Serialization/Arrays">
<soapenv:Header/>
<soapenv:Body>
<tem:Enviar>
<tem:tokenEmpresa>xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx</tem:tokenEmpresa>
<tem:tokenPassword>xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx</tem:tokenPassword>
<tem:factura xmlns="http://schemas.datacontract.org/2004/07/ServiceSoap.UBL2._0.Models.Object">
<cantidadDecimales>2</cantidadDecimales>
<cliente>
<destinatario>
<Destinatario>
<canalDeEntrega>0</canalDeEntrega>
<email>
<arr:string>email1@thefactoryhka.com</arr:string>
<arr:string>email2@thefactoryhka.com</arr:string>
</email>
</Destinatario>
</destinatario>
<detallesTributarios>
<Tributos>
<codigoImpuesto>ZY</codigoImpuesto>
</Tributos>
</detallesTributarios>
<!--direccionCliente es la que se pinta en la R.G estandar-->
<direccionCliente>
<ciudad>BOGOTÁ, D.C.</ciudad>
<codigoDepartamento>11</codigoDepartamento>
<departamento>Bogotá</departamento>
<direccion>Direccion</direccion>
<lenguaje>es</lenguaje>
<municipio>11001</municipio>
<pais>CO</pais>
</direccionCliente>
<direccionFiscal>
<ciudad>BOGOTÁ, D.C.</ciudad>
<codigoDepartamento>11</codigoDepartamento>
<departamento>Bogotá</departamento>
<direccion>Direccion</direccion>
<lenguaje>es</lenguaje>
<municipio>11001</municipio>
<pais>CO</pais>
</direccionFiscal>
<email>email@thefactoryhka.com</email>
<!--informacionLegalCliente condicionado cuando tipoPersona='1'-->
<informacionLegalCliente>
<nombreRegistroRUT>CONSORCIO ALIANZA SAN CRISTOBAL 4</nombreRegistroRUT>
<numeroIdentificacion>901041710</numeroIdentificacion>
<numeroIdentificacionDV>5</numeroIdentificacionDV>
<tipoIdentificacion>31</tipoIdentificacion>
</informacionLegalCliente>
<nombreRazonSocial>The Factory HKA Colombia</nombreRazonSocial>
<notificar>SI</notificar>
<numeroDocumento>901041710</numeroDocumento>
<numeroIdentificacionDV>5</numeroIdentificacionDV>
<responsabilidadesRut>
<Obligaciones>
<obligaciones>R-99-PN</obligaciones>
<regimen>49</regimen>
</Obligaciones>
</responsabilidadesRut>
<tipoIdentificacion>31</tipoIdentificacion>
<tipoPersona>1</tipoPersona>
</cliente>
<consecutivoDocumento>PREFIJOCONSECUTIVO</consecutivoDocumento>
<detalleDeFactura>
<FacturaDetalle>
<cantidadPorEmpaque>1</cantidadPorEmpaque>
<cantidadReal>1.00</cantidadReal>
<cantidadRealUnidadMedida>WSD</cantidadRealUnidadMedida>
<cantidadUnidades>1.00</cantidadUnidades>
<codigoProducto>P000001</codigoProducto>
<descripcion>Impresora HKA80</descripcion>
<descripcionTecnica>Impresora térmica de punto de venta, ideal para puntos de venta con alto rendimiento</descripcionTecnica>
<estandarCodigo>999</estandarCodigo>
<estandarCodigoProducto>PHKA80</estandarCodigoProducto>
<impuestosDetalles>
<FacturaImpuestos>
<baseImponibleTOTALImp>1003.00</baseImponibleTOTALImp>
<codigoTOTALImp>01</codigoTOTALImp>
<porcentajeTOTALImp>19.00</porcentajeTOTALImp>
<valorTOTALImp>190.57</valorTOTALImp>
</FacturaImpuestos>
</impuestosDetalles>
<impuestosTotales>
<ImpuestosTotales>
<codigoTOTALImp>01</codigoTOTALImp>
<montoTotal>190.57</montoTotal>
</ImpuestosTotales>
</impuestosTotales>
<marca>HKA</marca>
<muestraGratis>0</muestraGratis>
<precioTotal>1193.57</precioTotal>
<precioTotalSinImpuestos>1003.00</precioTotalSinImpuestos>
<precioVentaUnitario>1003.00</precioVentaUnitario>
<secuencia>1</secuencia>
<unidadMedida>WSD</unidadMedida>
</FacturaDetalle>
</detalleDeFactura>
<documentosReferenciados>
<!-- SOLO CONSIDERAR LOS SIGUIENTES ATRIBUTOS -->
<DocumentoReferenciado>
<codigoInterno>1</codigoInterno>
<fecha>2020-01-01</fecha>
<numeroDocumento>CTG12</numeroDocumento>
<!-- CODIGOS DEL ATRIBUTO tipoDocumentoCodigo
CORRESPONDIENTES AL NUMERAL 12.1.4 DEL ANEXO TECNICO V1.8 -->
<tipoDocumentoCodigo>FTC</tipoDocumentoCodigo>
</DocumentoReferenciado>
</documentosReferenciados>
@IMPORTANTE: No es requerido que se notifique a los adquirientes los documentos de contingencia transmitidos a la DIAN, ya que el documento entregado físicamente al mismo durante el período en que mantuvo la contingencia, corresponde al documento legal de la transacción realizada. La transmisión de dicha información a la DIAN es con el fin de notificar al ente regulador las transacciones realizadas durante dicho periodo. Por lo anteriormente descrito, se recomienda enviar el campo notificar = ‘NO’ y no realizar el envío de la información correspondiente al Destinatario:
/Invoice/cac:TaxTotal/cbc:TaxAmount Donde /Invoice/cac:TaxTotal/cac:TaxSubtotal/cac:TaxCategory/cac:TaxScheme/cbc:ID = 01
ValOtroIm: [VALOR_OTROS_IMPUESTOS]
Sumatoria de /Invoice/cac:TaxTotal[X]/cbc:TaxAmount[X] Donde /Invoice/cac:TaxTotal[X]/cac:TaxSubtotal[X]/cac:TaxCategory[X]/cac:TaxScheme[X]/cbc:ID[X] sea diferente a 01