Manual DLL hkafact21 - Emisión V4
Objetivo
El presente manual tiene como propósito dar a conocer los detalles de los cambios a nivel del consumo de la librería HKAFACT21 para validación previa respecto a la versión del modelo de facturación de validación posterior (HKAFACT).
Alcance
Nota: En el mismo se describen cada uno de los strings que constituyen el objeto factura. Para obtener mayor información sobre la obligatoriedad de los campos (requeridos/opcionales) ver MANUAL DE INTEGRACION DIRECTA (EMISIÓN - VAL. PREVIA)
Definiciones y Términos
- C++: lenguaje de programación diseñado para extender al lenguaje de programación C con mecanismos que permiten la manipulación de objetos. En ese sentido, desde el punto de vista de los lenguajes orientados a objetos, el C++ es un lenguaje híbrido, con la particularidad de poder redefinir los operadores, y de crear nuevos tipos que se comporten como tipos fundamentales.
- DLL: Biblioteca de enlace dinámico o más comúnmente DLL (sigla en inglés de dynamic-link library) es el término con el que se refiere a los archivos con código ejecutable que se cargan bajo demanda de un programa por parte del sistema operativo.
- SDK: Un kit de desarrollo de software es un conjunto de herramientas de desarrollo de software que le permite al programador o desarrollador de software crear una aplicación informática para un sistema concreto.
- Servicio Web de Integración: Servicio Web de The Factory HKA Colombia SAS puesto a disposición a propietarios de software administrativos o de gestión para la generación de factura electrónica.
Procedimiento
- Creamos una nueva carpeta.
- Descomprimimos el contenido del SDK en la capeta previamente creada.
- Copiamos la librería hkafact21.dll.
- Pegamos la librería en la carpeta System32 de Windows.
- Finalmente, declaramos las distintas funciones a utilizar de la librería.
@IMPORTANTE:
- En el caso de que al final de la cadena (Identificador), el campo se encuentre vacío se debe agregar un pipe “|” al final.
- Si el identificador no es obligatorio, este pueden enviarse con el identificador seguido de un pipe (Ejemplo: ID02A = "02A|").
- Si los identificadores son repetibles puede concatenarse con el separador “% “seguido del identificador con los campos correspondientes a la cadena que desea repetir.
MÉTODO ENVIAR
Función que permite generar el documento electrónico.
Declaración
INT Enviar (string URL, string tokenEmpresa, string tokenPassword, string DatosCliente, string FacturaGlobal, string AnticAutCargDesc, string CpDr, string EntMerc, string ImpuestosFactura, string MpOcTe, string TcTcaIa, string DetalleDeFactura , string Extras, string Adjuntos, string SectorSalud, bool debugMode)
String URL
- URL del servicio de emisión.
String tokenEmpresa
- Token asignado por la plataforma de TFHKA.
String tokenPassword
- Token asignado por la plataforma de TFHKA.
String datosCliente
- Datos que componen la información del adquiriente.
Cliente_DatosGenerales
(20 Campos, 19 pipes “|”):
ID01= "01" |nombreRazonSocial|tipoPersona|segundoNombre|apellido|numeroDocumento|tipoIdentificacion|email|telefono|notificar| actividadEconomicaCIIU|nombreComercial|nombreContacto|nota|numeroIdentificacionDV|telefax|Extensible1.controlInterno1| Extensible1.controlInterno2|Extensible1.nombre|Extensible1.valor
Nota: Si Extensible1.valor se debe enviar un pipe (|) al final de la cadena
Cliente_Destinatario
(11 Campos, 9 pipes “|”):
ID01B= "01A" |CanalDeEntrega|email|fechaProgramada|mensajePersonalizado|nitProveedorReceptor|telefono|Extensible1.controlInterno1 |Extensible1.controlInterno2|Extensible1.nombre|Extensible1.valor
Nota: Si Extensible1.valor se debe enviar un pipe (|) al final de la cadena
Cliente_DetallesTributarios
(6 Campos, 5 pipes “|”):
ID01B= "01B" |codigoImpuesto|Extensible1.controlInterno1|Extensible1.controlInterno2|Extensible1.nombre|Extensible1.valor
Nota: Si Extensible1.valor se debe enviar un pipe (|) al final de la cadena
Cliente_InformacionLegal
(8 Campos, 7 pipes “|”):
ID01E= "01E" |codigoEstablecimiento|nombreRegistroRUT|numeroIdentificacion|numeroIdentificacionDV|numeroMatriculaMercantil |prefijoFacturacion|tipoIdentificaci