Preguntas Frecuentes de Integración con servicio Web (Val. Previa)

De tfhkacolwiki
Ir a la navegación Ir a la búsqueda

Sumario

Historial de versiones

Versión Fecha lanzamiento Descripción
0 07/05/2019
  • Versión Preliminar.

Cómo obtener soporte

  • Soporte de 1er nivel:
Soporte telefónico / email / chat o tele-conferencias en horario 5x8 para atención de consultas y fallas de usuario.
  • Soporte de 2do nivel:
Soporte resolución remota de incidencias en el sistema en horario 5x8
Llame a nuestro CENTRO DE ATENCIÓN +(57) 1 311.31.12
Escriba a soporte@thefactoryhka.com.co

Visítenos el sitio Web: https://www.thefactoryhka.com/co

Ambiente de HABILITACIÓN

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>
				<fechaEmision>2020-01-08 00:00:00</fechaEmision>
				<impuestosGenerales>
					<FacturaImpuestos>
						<baseImponibleTOTALImp>1003.00</baseImponibleTOTALImp>
						<codigoTOTALImp>01</codigoTOTALImp>
						<porcentajeTOTALImp>19.00</porcentajeTOTALImp>
						<unidadMedida>WSD</unidadMedida>
						<valorTOTALImp>190.57</valorTOTALImp>
					</FacturaImpuestos>
				</impuestosGenerales>
				<impuestosTotales>
					<ImpuestosTotales>
						<codigoTOTALImp>01</codigoTOTALImp>
						<montoTotal>190.57</montoTotal>
					</ImpuestosTotales>
				</impuestosTotales>
				<mediosDePago>
					<MediosDePago>
						<medioPago>10</medioPago>
						<metodoDePago>1</metodoDePago>
						<numeroDeReferencia>01</numeroDeReferencia>
					</MediosDePago>
				</mediosDePago>
				<moneda>COP</moneda>
				<rangoNumeracion>PREFIJO-RANGODESDE</rangoNumeracion>
				<redondeoAplicado>0.00</redondeoAplicado>
				<tipoDocumento>03</tipoDocumento>
				<tipoOperacion>10</tipoOperacion>
				<totalBaseImponible>1003.00</totalBaseImponible>
				<totalBrutoConImpuesto>1193.57</totalBrutoConImpuesto>
				<totalMonto>1193.57</totalMonto>
				<totalProductos>1</totalProductos>
				<totalSinImpuestos>1003.00</totalSinImpuestos>
			</tem:factura>
			<tem:adjuntos>0</tem:adjuntos>
		</tem:Enviar>
	</soapenv:Body>
</soapenv:Envelope>


@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:

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>NO</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>
				<fechaEmision>2020-01-08 00:00:00</fechaEmision>
				<impuestosGenerales>
					<FacturaImpuestos>
						<baseImponibleTOTALImp>1003.00</baseImponibleTOTALImp>
						<codigoTOTALImp>01</codigoTOTALImp>
						<porcentajeTOTALImp>19.00</porcentajeTOTALImp>
						<unidadMedida>WSD</unidadMedida>
						<valorTOTALImp>190.57</valorTOTALImp>
					</FacturaImpuestos>
				</impuestosGenerales>
				<impuestosTotales>
					<ImpuestosTotales>
						<codigoTOTALImp>01</codigoTOTALImp>
						<montoTotal>190.57</montoTotal>
					</ImpuestosTotales>
				</impuestosTotales>
				<mediosDePago>
					<MediosDePago>
						<medioPago>10</medioPago>
						<metodoDePago>1</metodoDePago>
						<numeroDeReferencia>01</numeroDeReferencia>
					</MediosDePago>
				</mediosDePago>
				<moneda>COP</moneda>
				<rangoNumeracion>PREFIJO-RANGODESDE</rangoNumeracion>
				<redondeoAplicado>0.00</redondeoAplicado>
				<tipoDocumento>03</tipoDocumento>
				<tipoOperacion>10</tipoOperacion>
				<totalBaseImponible>1003.00</totalBaseImponible>
				<totalBrutoConImpuesto>1193.57</totalBrutoConImpuesto>
				<totalMonto>1193.57</totalMonto>
				<totalProductos>1</totalProductos>
				<totalSinImpuestos>1003.00</totalSinImpuestos>
			</tem:factura>
			<tem:adjuntos>0</tem:adjuntos>
		</tem:Enviar>
	</soapenv:Body>
</soapenv:Envelope>

Campos extensibles en R.G estándar

El valor de estos campos es texto plano, por lo tanto el formato es gestionado desde el ERP.

  • TOTAL Descuento Detalle (Campo Extensible 5170001).
  • Total Base Excluida (Campo Extensible 5170000)
  • TOTAL Retenciones (Campo Extensible 5170002)
  • TOTAL a Pagar (Campo Extensible 5170003)
  • TOTAL A PAGAR en Letras (Campo Extensible 5170004)

Ejemplo sobre la estructura de los campos:

<extras>
          <Extras>
            <controlInterno1>Total Base Excluida</controlInterno1>
            <controlInterno2/>
            <nombre>5170000</nombre>
            <pdf>1</pdf>
            <valor>10000.25</valor>
            <xml>1</xml>
          </Extras>

          <Extras>
            <controlInterno1>TOTAL Descuento Detalle</controlInterno1>
            <controlInterno2/>
            <nombre>5170001</nombre>
            <pdf>1</pdf>
            <valor>10000.25</valor>
            <xml>1</xml>
          </Extras>

          <Extras>
            <controlInterno1>TOTAL Retenciones</controlInterno1>
            <controlInterno2/>
            <nombre>5170002</nombre>
            <pdf>1</pdf>
            <valor>10000.25</valor>
            <xml>1</xml>
          </Extras>

          <Extras>
            <controlInterno1>TOTAL a Pagar</controlInterno1>
            <controlInterno2/>
            <nombre>5170003</nombre>
            <pdf>1</pdf>
            <valor>10000.25</valor>
            <xml>1</xml>
          </Extras>
 </extras>

En la Representación Gráfica se visualizará de la siguiente manera:

Campos extensibles en representación grpafica estándar

Estructura del QR de acuerdo al Anexo 1.8

Para la representación gráfica de las facturas electrónicas, es requisito la generación de un código QR con la siguiente información:

Detalle XPath
NumFac: [NUMERO_FACTURA] /Invoice/cbc:ID
FecFac: [FECHA_FACTURA] /Invoice/cbc:IssueDate
HorFac: [HORA_FACTURA(con GMT)] /Invoice/cbc:IssueTime
NitFac: [NIT FACTURADOR] /Invoice/cac:AccountingSupplierParty/cac:Party/cac:PartyTaxScheme/cbc:CompanyID
DocAdq: [NUMERO_ID_ADQUIRENTE] /Invoice/cac:AccountingCustomerParty/cac:Party/cac:PartyTaxScheme/cbc:CompanyID
ValFac: [VALOR_FACTURA] /Invoice/cac:LegalMonetaryTotal/cbc:LineExtensionAmount
ValIva: [VALOR_IVA] /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
ValTolFac: [VALOR_TOTAL_FACTURA /Invoice/cac:LegalMonetaryTotal/cbc:PayableAmount
CUFE /Invoice/cbc:UUID
QRCode /Invoice/ext:UBLExtensions[1]/ext:UBLExtension[1]/ext:ExtensionContent[1]/sts:DianExtensions[1]/sts:QRCode

Debe tener las siguientes consideraciones:

NitFac: sin puntos ni guiones
DocAdq: sin puntos ni guiones
ValFac: con punto decimal, con decimales a dos (2) dígitos, sin separadores de miles, ni símbolo pesos.
ValIva: con punto decimal, con decimales a dos (2) dígitos, sin separadores de miles, ni símbolo pesos.
ValOtroIm: con punto decimal, con decimales a dos (2) dígitos, sin separadores de miles, ni símbolo pesos.
ValTolFac: con punto decimal, con decimales a dos (2) dígitos, sin separadores de miles, ni símbolo pesos.
QRCode: URL disponible por la DIAN

Ejemplo sobre la estructura de los campos:

Teniendo en cuenta los datos de entrada, se presenta el código QR que se incluye en la representación gráfica de la factura electrónica:

<a:qr>
NumFac: VAF472
FecFac: 2019-12-20
HorFac: 00:00:00-05:00
NitFac: 900390126
DocAdq: 901041710
ValFac: 2006.00
ValIva: 381.14
ValOtroIm: 0.00
ValTolFac: 2387.14
CUFE: 95d062a141ff0f1a55f9f684167e00544617f4ed714b283934ad939fc056c6fb2ae6ab34ad8ba9a9db94aa2c253d3c05
https://catalogo-vpfe-hab.dian.gov.co/document/searchqr?documentkey=95d062a141ff0f1a55f9f684167e00544617f4ed714b283934ad939fc056c6fb2ae6ab34ad8ba9a9db94aa2c253d3c05
</a:qr>

Campos de direcciones mínimos para evitar rechazo FAK08

Esto se debe a que la DIAN está validando que se envíen obligatoriamente los campos ciudad, codigoDepartamento, departamento, dirección, municipio y país en la dirección del cliente.

Configuración de direcciones en el portal para evitar rechazo FAJ09, FAJ16, FAJ12.

1. Deben validar que en nuestro portal web en la sección Catálogos->Establecimientos, la dirección física del establecimiento se encuentre correctamente configurada:
Catálogos->Establecimientos
2. Validar que la dirección fiscal o dirección física del receptor está correctamente construida mínimo con lo siguiente:
Campos mínimos en dirección fiscal y dirección física

Concatenación de nombre + apellido en campo nombreRazonSocial

En este caso, se recomienda enviar el nombre completo (Nombres y apellidos) en el atributo nombreRazonSocial del objeto factura y dejar vacíos los campos apellido y segundoNombre.

Documentos Referenciados en Notas de previa que afecten a facturas de validación previa

Para la emisión de Notas de Crédito y Débito deben enviarse obligatoriamente dos arreglos de documentos referenciados, el primero indicando el codigoInterno = '4' el cual corresponde a los motivos por los cuales se genera la NC/ND (DiscrepancyResponse) y un segundo arreglo, indicando el codigoInterno = '5' en el cual se reflejan los datos de la factura afectada por la NC/NC (BillingReference). Como se muestra a continuación:

<a:documentosReferenciados>
    <a:DocumentoReferenciado>
	<a:codigoEstatusDocumento>2</a:codigoEstatusDocumento>
	<a:codigoInterno>4</a:codigoInterno>			
	<a:cufeDocReferenciado>85ea749b18ee5bd251b87442935650e30b4e0e4cd662bef1EkRoFzzvJqHhKqk5JpLSqtJ99pRMd32g40baab6b59cdc8b3</a:cufeDocReferenciado>
	<a:descripción>
	   <b:string>Anulación de factura electrónica</b:string>
	</a:descripción>
	<a:extras i:nil="true"/>
	<a:fecha>2019-10-07</a:fecha>
	<a:fechaFinValidez i:nil="true"/>
	<a:fechaInicioValidez i:nil="true"/>
	<a:numeroDocumento>F4PM3</a:numeroDocumento>
	<a:tipoCUFE i:nil="true"/>
	<a:tipoDocumento i:nil="true"/>
	<a:tipoDocumentoCodigo i:nil="true"/>
	</a:DocumentoReferenciado>
	<DocumentoReferenciado>
	<codigoInterno>5</codigoInterno>		
	<cufeDocReferenciado>85ea749b18ee5bd251b87442935650e30b4e0e4cd662bef1KqmCLKgxPpH6u5LiKrJvTb6FEyfVuoCcV0baab6b59cdc8b3</cufeDocReferenciado>
	<fecha>2019-10-07</fecha>					
	<numeroDocumento>F4PM3</numeroDocumento>
    </DocumentoReferenciado>
</a:documentosReferenciados>

En el caso de la dll, basta con enviar cada arreglo separado por el carácter "%", por ejemplo:

ID02E = "02E|2|4|4191110db1f3c8060a4ce34e40c6ec6541ac1bd248264624bfe1b60fdf02aea7e15c5a49969cc08f498b938a9e3cd954||||ASFF10|||01|||||¬02E1|Prueba NC Campos Minimos con Anulación de factura electrónica"+ "%" +"02E||5|4191110db1f3c8060a4ce34e40c6ec6541ac1bd248264624bfe1b60fdf02aea7e15c5a49969cc08f498b938a9e3cd954|2019-07-29|||ASFF10|CUFE-SHA384||01|||||"

Esto se visualiza en la representación gráfica de la siguiente forma:

Documentos referenciados en representación gráfica

Documentos Referenciados en Notas de previa que afecten a facturas de validación posterior

Tener en cuenta que para cada escenario se debe indicar correctamente el campo tipoOperacion:

  • Código 23 para Notas Crédito.
  • Código 33 para Notas Débito.

De acuerdo a lo descrito en el Anexo Técnico versión 1.8

Campo FacturaGeneral.tipoOperacion que afectan facturas de validación posterior

Para la emisión de Notas de Crédito y Débito deben enviarse obligatoriamente dos arreglos indicando el DiscrepancyResponse y el BillingReference.

Documentos Referenciados en Notas de previa que no afecten a facturas

Tener en cuenta que para cada escenario se debe indicar correctamente el campo tipoOperacion:

  • Código 22 para Notas Crédito.
  • Código 32 para Notas Débito.

De acuerdo a lo descrito en el Anexo Técnico versión 1.8

Campo FacturaGeneral.tipoOperacion que no afectan facturas

@IMPORTANTE: La clase Documentos Referenciados debe enviarse en null.

Error 101 token emisor inválido

El código de Error 101 hace referencia a un inconveniente en la configuración de los tokens y URL en su sistema. Por favor, validar en la configuración del ERP que se encuentran configurados correctamente estos dos puntos dependiendo del ambiente en el cual desean realizar las emisiones de documentos:

URL Ambiente Demo (ambiente de pruebas en el cual las emisiones no son transmitidas a la DIAN):

Servicio Emisión:
http://demoemision21.thefactoryhka.com.co/ws/v1.0/Service.svc?wsdl

Servicio Adjuntos:
http://demoemision21.thefactoryhka.com.co/ws/adjuntos/Service.svc?wsd

Servicio Reportes:
http://demoemision21.thefactoryhka.com.co/ws/reportes/Service.svc?wsdl

URL Ambiente Productivo (ambiente en el cual se realizan las emisiones correspondientes al set de habilitación y posteriormente la emisión de documentos en operación):

Servicio Emisión (HTTPS):
URL compartida por el área de proyectos.
Servicio Adjuntos (HTTPS):
URL compartida por el área de proyectos.
Servicio Reportes (HTTPS)
URL compartida por el área de proyectos.

Mostrar dirección completa en la representación gráfica

Dicha información se debe enviar a través del atributo DireccionCliente

Clase direccionCliente

Los campos necesarios para que se muestre en la representación gráfica son los siguientes:

Campos necesarios para representación gráfica

En la representación gráfica se mostraría de la siguiente manera:

Representación gráfica con campos los necesarios

Regla: FAW01, Rechazo: Línea de factura informado con LineExtensionAmount en cero y grupo cac:PricingReference no informado

Este error surge cuando la DIAN recibe un UBL indicando que la base imponible de un elemento a nivel de línea es 0 y la validación rechaza el documento. En el caso de estar enviando una muestra se deben enviar los campos obligatoriamente: codigoTipoPrecio, muestraGratis, precioReferencia, precioTotal, precioTotalSinImpuestos.

Envío de representación gráfica personalizada

La emisión con adjuntos se realiza en dos pasos. El primero consiste en generar el UBL fiscal a través de la url de emisión (http://demoemision21.thefactoryhka.com.co/ws/v1.0/Service.svc?wsdl en ambiente Demo)

En este caso, se debe indicar en el método Enviar el parámetro adjunto en 11 para indicarle al servicio que no se genere nuestra representación gráfica estándar y adicionalmente que el documento no se envíe por correo hasta que no se realice la carga de adjuntos.

Descripción de parámetros a Enviar

Posteriormente, debe consumirse el método CargarArchivo a traves de la url de adjunto (http://demoemision21.thefactoryhka.com.co/ws/adjuntos/Service.svc?wsdl en ambiente Demo)

Este método presenta los siguientes campos

Descripción de campos en parámetros a Enviar

Dónde Class.Adjunto contiene la siguiente información:

Descripción de Class.Adjunto

RESPONSE: Parámetros a Recibir

Descripción de parámetros a Recibir

@IMPORTANTE: Si un documento queda a la espera de adjuntos, no se enviará el correo de notificación hasta que no se realice el cargue de los archivos anexos.

Correo electrónico personalizado

El objeto “extras” también permite manejar algunas funcionalidades especiales de la plataforma, como la de correo electrónico personalizado. Para que esta información no aparezca en la representación gráfica, el parámetro pdf del objeto “extras” debe ir en “0”.

La funcionalidad de correo electrónico personalizado permite configurar transacción a transacción el asunto, la dirección de respuesta y el cuerpo del correo electrónico. La vía para exponer esta información será a través de campos extensibles.

Descripción de campos extensibles para correo electrónico personalizado

Ejemplo de uso de Campos Extensibles 11,13 y 14 para personalizar el Correo Electrónico:

Ejemplo XML

Tomando el ejemplo dado el correo se visualizará de la siguiente manera:

Factura electrónica en bandeja de correo

Radicar documentos electrónicos en plataformas de recepción

Aclaramos la situación, indicando que el el XML que se debe radicar en las plataformas de recepción es el que nuestro servicio envía en la notificación de correo llamado AttachedDocument (Contenedor de Documentos), la estructura de este documento tiene por objetivo contener en un único archivo XML un documento electrónico (Invoice, CreditNote ó DebitNote) y todos los eventos (ApplicationResponse) registrados hasta la fecha, este XML también puede ser descargado a través del método GenerarContenedor

Documentos electrónicos en plataformas de recepción

Nota: Si usted es cliente final, por favor comunicar lo anterior a su casa de software o proveedor de ERP.

Regla [FAJ26], Rechazo: No indica un valor autorizado

En el catálogo/cliente y en datos fiscales de la empresa, valide que en el campo de responsabilidades no se encuentre seleccionada las siguientes opciones:

  1. O-47 Régimen Simple de Tributación – SIMPLE.
  2. O-48 Impuesto sobre las ventas.
  3. O-49 No responsable de IVA.
  4. O-52 Facturador electrónico.

Ya que el error de validación que está presentando es debido a que la DIAN no ha actualizado los catálogos donde se incluyen estos nuevos elementos, y por eso están siendo rechazados. Se recomienda retirarlos temporalmente hasta que la DIAN permita su uso.

Dicha modificación la puede realizar en nuestro portal de la siguiente manera:

En la opción de Datos fiscales/ Información Adicional/Responsabilidades debe tener configurado la responsabilidad Responsabilidad sobre las ventas(O-48)

Opción de edición de Responsabilidades en portal

Debe destildar esa opción en la sección Responsabilidades:

Modificación de Responsabilidades en portal

Posteriormente seleccione la opción de guardar para que dicha modificación se realice satisfactoriamente.

Rechazo: NIT XXXXXXXXX no autorizado a enviar documentos para emisor con NIT XXXXXXXXX

De acuerdo al error que presenta es posible que la asociación del proveedor tecnológico en el portal de habilitación de la DIAN puedo tener un problema.

Se recomienda que ingrese al portal de habilitación, elimine los modos de operación, y vuelva a agregar el modo de operación Proveedor tecnológico - TFHKA en el portal de la Dian; luego actualice el TestSetID en los rangos de numeración en nuestro portal.

Luego de realizar las configuraciones antes mencionadas en el portal HKA, intente emitir los documentos nuevamente.

Se adjunta un video de asesoría NUEVO donde se explican las diferencias entre los ambiente DEMO y PRODUCCIÓN que entrega The Factory HKA a sus clientes.

Adicional a esto, el video explica paso a paso a seguir para tener acceso al ambiente DEMO su posterior pase a PRODUCCIÓN, y los pasos necesarios ante la DIAN para actualizar el REGISTRO y PRUEBAS DE HABILITACIÓN, y en qué ambiente deben ser realizados en nuestros sistemas.

Link video de asesoría: https://drive.google.com/file/d/1tslrefpqizIVnuYha8QAXUeGCgje5hbS/view

Configuración de secuenciales

En esta sección se muestran todos sus secuenciales configurados, los establecimientos a los que han sido agregados e información como fechas de vigencia y tipo de servicio.

De igual forma podrá gestionar sus secuenciales, consultar la información configurada y si lo desea podrá inactivar secuenciales que ya no tendrán uso.

Además podrá agregar secuenciales según el tipo de documento que desee emitir.

En la pantalla Agregar Numeración Secuencial, el portal realizará una consulta a la DIAN con su número de identificación para la carga de sus secuenciales disponibles según el número de resolución, el mismo cargará los rangos de numeración, vigencia, prefijo y clave técnica.

Gestión de secuenciales en portal

Agregar un secuencial

Presionando Agregar secuencial emergerá otra pantalla. Ver imagen 306. Los datos disponibles para el registro del secuencial son:

  • Tipo de servicio: Tipo de servicio de emisión de documentos (Habilitación o Producción 2.1).
  • Tipo de Documento: Tipos de documentos (Factura, Nota de crédito, Nota de débito).
  • Tipo de Operación: Operación que se va asociar al tipo documento (Venta/Exportación y Contingencia).
  • Tipo de servicio: Servicio por donde se va gestionar el documento (Portal, Servicio de integración, App Móvil).
  • Modalidad de Uso para Secuencial: Modo de uso, (Automático, Manual sin prefijo, Manual con prefijo).
  • Establecimiento: Se listaran los establecimientos registrados en Catálogo Establecimiento.
  • Número de la resolución: es el número obtenido cuando se solicita la numeración de factura electrónica. El portal deberá realizar la consulta a la DIAN, si se estableció la conexión se debe mostrar todas las resoluciones asociadas al cliente en un combo lista. Si no se pudo establecer la conexión debe ser ingresado manualmente
  • Prefijo: se listara según la resolución seleccionada, siendo éste una serie de un máximo de 6 caracteres alfabética, numérica o alfanumérica que llevará en el inicio al número consecutivo del documento, es recomendable no duplicar la serie por otra ya existente con mismo o diferente tipo servicio.
  • El Valor del rango desde y el valor del rango hasta: Es la numeración que debe ser válida otorgada por la DIAN.
nota: cuando se haya agotado el rango de numeración que le fue asignado y se deba solicitar la autorización de uno nuevo este debe ser la continuación de un rango ya autorizado.
  • El Valor del rango inicial: Es el valor inicial de facturas del secuencial seleccionado, este valor debe ser igual o mayor al valor del rango desde y menor al valor del rango hasta.
nota: si se requiere los secuenciales se puede configurar de forma compartido por varios tipos de servicio, es decir; si dispone 200 secuenciales puede registrar para Portal 100, Servicio de integración 50, APP Móvil 50. Esto depende de las aplicaciones disponibles del cliente.
  • La fecha inicio y fecha fin: Es el rango de fecha valida otorgado por la DIAN.
  • Clave técnica: Es generada por la DIAN en caso de fallas de comunicación debe ser solicitada a The Factory HKA Colombia SAS y solo su Proveedor Tecnológico la puede consultar.
  • SetTestID (Solo Habilitación): Es generada por la DIAN. Esta información se encuentra disponible en el Portal de Habilitación de la DIAN (dian.gov.co) en la sección "Tablero".
Agregar numeración secuencial

Transmisión de Documentos de prueba a la DIAN en ambiente DEMO

En estos momentos se encuentra funcional la emisión de documentos de pruebas (ambiente DEMO) directamente contra la DIAN, es decir, poder realizar pruebas de integración desde su ERP con el 100% de validaciones DIAN sin pasar por el XSLT local.

Para reproducir este escenario de pruebas se debe tener en cuenta la siguiente configuración en el portal web DEMO:

https://demofactura.thefactoryhka.com.co/auth/login --> URL Portal DEMO

Configuración en el portal web:

Paso 1: El cliente Emisor debe verificar que en los Datos Fiscales se encuentre configurado su NIT, independientemente si posee cargado el certificado propio o el de The factory HKA:
Validación de NIT
Paso 2: Se debe tener solicitado la resolución de habilitación otorgada por la DIAN (resolución para set de pruebas de habilitación), esta resolución debe ser configurada en el portal web DEMO como se muestra en la siguiente imagen (tener en cuenta que la modalidad puede ser 'Manual con Prefijo' o 'Manual sin Prefijo', esto depende del ERP):
Configuración y validación de resolución para set de pruebas

@Importante: El secuencial debe estar configurado con tipo de ambiente Producción2.1, por lo tanto no se deberá ingresar el campo setTestID.

Paso 3: Solicitar a través de correo al equipo de Integración ó Soporte la activación del secuencial creado previamente en en portal DEMO con la opción de envió a la DIAN:
  • integracion_fel_co@thefactoryhka.com
  • soporte_fel_co@thefactoryhka.com

En el correo se deberá indicar NIT del Emisor y prefijo configurado, que pueden ser SETT o SETP dependiendo del prefijo que la DIAN otorgó al Emisor para su habilitación.

Generar código QR en documentos en el documento en papel generado desde el ERP durante la contingencia tipo '03'

Para la generación del Código de respuesta rápido – Código QR, en los casos que la factura de venta de talonario o de papel se genere a través de sistemas informáticos electrónicos deberán corresponder a la siguiente tabla:

Detalle de Código QR
Ejemplo: 
NumFac: CTG2 
FecFac: 2020-06-16 
HorFac: 00:00:00-05:00 
NitFac: 900390126 
DocAdq: 901041710 
ValFac: 1003.00 
ValIva: 190.57 
ValOtroIm: 0.00 
ValTolFac: 1193.57

Generación de documentos electrónicos para 'Consumidor final'

En estos momentos TFHKA_CO se encuentra implementado el nodo PartyIdentification en UBL, por lo cual para facturas generadas a personas naturales se retorna la regla FAK61 como notificación.

Documentos Electrónicos para Consumidor Final

Los ejemplos para este escenario se encuentran en los Request-SOAP, a continuación:

https://drive.google.com/drive/folders/1lT0TnDhigCpMx5xsQHcHLWNkiQIN45Pc

Nota: Este ajuste debe generarse desde TFHKA. Lo anterior es el ejemplo sobre cómo manejar el escenario de consumidor final desde el ERP, y de esta forma cuando TFHKA informe a la DIAN el nodo PartyIdentification este ajuste sea un cambio silente para las integraciones. Este cambio debe estar funcional en producción por parte de TFHKA antes del 1 de agosto de 2020.

Uso de archivos .ZIP en Correos

Por defecto se enviará en el correo como adjunto un archivo .Zip que contiene el xml-AttachedDocument (obligatorio), PDF de la representación gráfica (obligatorio), .Zip con adjuntos (opcional). Ejemplo:

Uso de .Zip en correos

Contenido del .Zip con adjuntos

Con Adjuntos

Contenido del .Zip sin adjuntos

Sin Adjuntos

Como enviar el correo con el método tradicional

Se podrá optar como segunda opción continuar enviando el correo con el método tradicional actual, para esto desde la integración con el ERP se deberá indicar a través del campo Extra 100500, ejemplo:

Enviar el correo con el método tradicional

@Importante1: El tamaño máximo de todos los adjuntos que se carguen al documento no debe superar los 2 MB.

@Importante2: El nombre del xml-AttachedDocument y PDF de la representación gráfica deben ser iguales, por lo tanto para las integraciones que generan R.G de manera local (adjuntos = 11) pueden leer este nombre de la respuesta del método Enviar->parámetro nombre.

Consideraciones sobre Uso del .ZIP en el correo con adjuntos en 11

Al momento de sincronizar o cargar el adjunto, se contemplan dos tipos de anexos:

CargarAdjunto.tipo = 1:

Indica al web services de adjuntos que es una representación gráfica, estos hará que nuestra plataforma renombre y coloque en él .Zip principal el PDF de la R.G local, de lo contario estará colocando el PDF en él .Zip de adjuntos y esto puede tener complicaciones al momento de la recepción.

Ejemplo:

Ejemplo para tipo 1

CargarAdjunto.tipo = 2:

Indicar al web services de adjuntos que es un anexo común.

Ejemplo:

Ejemplo para tipo 2

Informar direcciones del adquiriente o receptor del documento electrónico

Para este escenario, recomendamos revisar los ejemplos Request-SOAP asociados a direcciones, en los que se detalla cómo no reportar direcciones y en caso de que se reporten cuáles son los campos mínimos obligatorios para clientes nacionales y del extranjero (tipo exportación).

La zona postal pasará a ser opcional, es decir este campo debe ser null o enviarse vació en caso de que no se conozca, ejemplo direccionCliente.zonaPostal = null o direccionCliente.zonaPostal = , si a partir del 1 de agosto se envía la zona postal en '000000' o un código fuera del catálogo será motivo de rechazo en la DIAN.

Responsabilidades Fiscales y Tipos de operación

A partir del 1 de agosto deberá informarse en responsabilidadesRut.Obligaciones.obligaciones y FacturaGeneral.tipoOperacion solo los siguientes códigos (cualquier otro código informado puede ser motivo de rechazo en la DIAN):

Responsabilidades Fiscales y Tipos de operación