Métodos Servicio Emisión Web TFHKA - Indice del Manual Integración Directa HKA Documentos Equivalentes Electrónicos
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:
|
Class.FacturaGeneral
| Atributo | Tipo Dato | Formato | Requerido | Descripción |
|---|---|---|---|---|
| anticipos | Array <Anticipos> | - | NO |
|
| autorizado | Autorizado | - | NO |
|
| boletaIngreso | Array<BoletaIngreso> | - | NO |
|
| bolsaValores | Array<BolsaValores> | - | NO |
|
| cajaVenta | Array<CajaVenta> | - | NO |
|
| cantidadDecimales | String | N|1 | SI |
|
| cargosDescuentos | Array <CargosDescuentos> | - | NO |
|
| cliente | Cliente | - | SI |
|
| codigoCosto | String | - | NO |
|
| consecutivoDocumento | String | AN..14 | SI |
|
| detalleDeFactura | Array <FacturaDetalle> | - | SI |
|
| documentosReferenciados | Array <DocumentoReferenciado> | - | C/C |
|
| entregaMercancia | Entrega | - | NO |
|
| extras | Array <Extras> | - | NO |
|
| fabricantesoftware | Array<FabricanteSoftware> | - | SI |
|
| fechaEmision | String | AN|19 | SI |
|
| fechaFinPeriodoFacturacion | String | AN|19 | NO |
|
| fechaInicioPeriodoFacturacion | String | AN|19 | NO |
|
| fechaPagoImpuestos | String | AN|19 | NO |
|
| fechaVencimiento | String | AN|10 | NO |
|
| impuestosGenerales | Array <FacturaImpuestos> | - | SI |
|
| impuestosTotales | Array <ImpuestosTotales> | - | SI |
|
| informacionAdicional | Array <String> | AN|...10000 | NO |
|
| informacionBeneficiosComprador | Array <InformacionBeneficiosComprador> | - | NO |
|
| juegosLocalizados | Array<juegosLocalizados> | - | NO |
|
| mediosDePago | Array<MediosDePago> | - | NO |
|
| moneda | String | AN|3 | SI |
|
| propina | string | - | NO |
|
| ordenDeCompra | Array <OrdenDeCompra> | - | NO |
|
| rangoNumeracion | String | AN|20 | SI |
|
| redondeoAplicado | String | Ent: N|..15
Dec: N|0..6 |
SI |
|
| retencionesGenerales | Array <FacturaImpuestos> | - | SI |
|
| serviciosPublicos | Array<ServiciosPublicos> | - | NO |
|
| tasaDeCambio | Array<TasaDeCambio> | - | C/C |
|
| tasaDeCambioAlternativa | TasaDeCambioAlternativa | - | NO |
|
| terminosEntrega | TerminosEntrega | - | C/C |
|
| tipoDocumento | String | AN|2 | SI |
|
| tipoOperacion | String | AN|..4 | SI |
|
| totalAnticipos | String | Ent: N|..15
Dec: N|0..6 |
NO |
|
| totalBaseImponible | String | Ent: N|..15
Dec: N|0..6 |
SI |
|
| totalBrutoConImpuesto | String | Ent: N|..15
Dec: N|0..6 |
SI |
|
| totalCargosAplicados | String | Ent: N|..15
Dec: N|0..6 |
NO |
|
| totalDescuentos | String | Ent: N|..15
Dec: N|0..6 |
NO |
|
| totalMonto | String | Ent: N|..15
Dec: N|0..6 |
SI |
|
| totalProductos | String | AN|..5 | SI |
|
| totalSinImpuestos | String | Ent: N|..15
Dec: N|0..6 |
SI |
|
Class.Anticipos
| Atributo | Tipo Dato | Formato | Requerido | Descripción |
|---|---|---|---|---|
| extras | Array <Extensible> | - | NO |
|
| fechaDeRecibido | String | AN|10 | SI |
|
| fechadePago | String | AN|10 | NO |
|
| horaDePago | String | AN|8 | NO |
|
| id | String | A|..150 | SI |
|
| instrucciones | String | AN|15..500 | SI |
|
| montoPagado | String | Ent: N|..15
Dec: N|0..6 |
SI |
|
Class.Autorizado
| Atributo | Tipo Dato | Formato | Requerido | Descripción |
|---|---|---|---|---|
| direccion | Direccion | - | NO |
|
| String | AN|..50 | NO |
| |
| extras | Array <Extensible> | - | NO |
|
| nombreComercial | String | AN|..50 | NO |
|
| nombreContacto | String | AN|..50 | NO |
|
| nota | String | AN|..50 | NO |
|
| numeroDocumento | String | AN|..12 | SI |
|
| numeroDocumentoDV | String | AN|..2 | C/C |
|
| razonSocial | String | AN|..50 | NO |
|
| telefax | String | AN|..50 | NO |
|
| telefono | String | AN|..50 | NO |
|
| tipoIdentificacion | String | AN|..2 | SI |
|
Class.BoletaIngreso
| Atributo | Tipo Dato | Formato | Requerido | Descripción |
|---|---|---|---|---|
| nombreProductor | String | - | SI |
|
| numeroIdentificacionProductor | String | - | SI |
|
| codigoLEP | String | - | NO |
|
| nombreEvento | String | - | si |
|
| localidad | String | - | SI |
|
| codigoUnicoEvento | String | - | NO |
|
| tipoEvento | String | - | NO |
|
| etapa | String | - | NO |
|
| categoria | String | - | NO |
|
| departamento | String | - | NO |
|
| codigoDepartamento | String | - | NO |
|
| ciudad | String | - | NO |
|
| codigoCiudad | String | - | NO |
|
| direccion | String | - | NO |
|
| fechaEvento | String | - | NO |
|
| horaEvento | String | - | NO |
|
Class.bolsaValores
| Atributo | Tipo Dato | Formato | Requerido | Descripción |
|---|---|---|---|---|
| consecutivo | String | - | SI |
|
| fechaCumplimiento | String | - | SI |
|
| cantidadNominal | String | - | SI |
|
| precioCesionTotal | String | - | SI |
|
| PrecioRegistro | String | - | SI |
|
| montoderendimientos | String | - | SI |
|
| valor | String | - | SI |
|
| porcentajeComision | String | - | SI |
|
Class.CargosDescuentos
| Atributo | Tipo Dato | Formato | Requerido | Descripción |
|---|---|---|---|---|
| codigo | String | AN|2 | C/C |
|
| descripcion | String | AN|10..5000 | SI |
|
| extras | Array <Extensible> | - | NO |
|
| indicador | String | N|1 | SI |
|
| monto | String | Ent: N|..15
Dec: N|0..6 |
SI |
|
| montoBase | String | Ent: N|..15
Dec: N|0..6 |
SI |
|
| porcentaje | String | Ent: N|..6
Dec: N|2 |
SI |
|
| secuencia | String | N|..3 | SI |
|
Class.CajaVenta
| Atributo | Tipo Dato | Formato | Requerido | Descripción |
|---|---|---|---|---|
| placaCaja | String | - | SI |
|
| ubicacionCaja | String | - | SI |
|
| cajero | String | - | SI |
|
| tipoCaja | String | - | SI |
|
| codigoVenta | String | - | SI |
|
Class.CreditoInstrumentoJuego
| Atributo | Tipo Dato | Formato | Requerido | Descripción |
|---|---|---|---|---|
| numeroSerie | String | - | SI |
|
| valorCredito | String | - | SI |
|
| moneda | String | - | SI |
|
Class.Cliente
| Atributo | Tipo Dato | Formato | Requerido | Descripción |
|---|---|---|---|---|
| actividadEconomicaCIIU | String | AN|…4 | NO |
|
| apellido | String | AN|…50 | NO |
|
| destinatario | Array <Destinatario> | - | C/C |
|
| detallesTributarios | Array <Tributos> | - | SI |
|
| direccionCliente | Direccion | - | C/C |
|
| direccionFiscal | Direccion | - | C/C |
|
| String | AN|..50 | C/C |
| |
| extras | Array <Extensible> | - | NO |
|
| informacionLegalCliente | InformacionLegalCliente | - | C/C |
|
| nombreComercial | String | AN|5..450 | C/C |
|
| nombreContacto | String | AN|5..450 | NO |
|
| nombreRazonSocial | String | AN|5..450 | SI |
|
| nota | String | AN|..450 | NO |
|
| notificar | String | AN|2 | SI |
|
| numeroDocumento | String | AN|..12 | SI |
|
| numeroIdentificacionDV | String | AN|..2 | C/C |
|
| responsabilidadesRut | Array <Obligaciones> | - | SI |
|
| segundoNombre | String | AN|..50 | NO |
|
| telefax | String | N|..20 | NO |
|
| telefono | String | AN|..20 | NO |
|
| tipoIdentificacion | String | N|2 | SI |
|
| tipoPersona | String | N|1 | SI |
|
Class.DatosDelTransportista
| Atributo | Tipo Dato | Formato | Requerido | Descripción |
|---|---|---|---|---|
| detallesTributarios | Tributos | - | NO |
|
| direccionResponsableEntrega | Direccion | - | NO |
|
| String | AN|..50 | NO |
| |
| extras | Array <Extensible> | - | NO |
|
| indicadordeAtencion | String | AN|..50 | NO |
|
| indicadordeCuidado | String | AN|..50 | NO |
|
| nombreContacto | String | AN|..50 | NO |
|
| nombreResponsableEntrega | String | AN|..50 | NO |
|
| nota | String | - | NO |
|
| numeroIdentificacion | String | AN|…12 | NO |
|
| numeroIdentificacionDV | String | N|..2 | NO |
|
| numeroMatriculaMercantil | String | AN|..20 | NO |
|
| prefijoFacturacion | String | AN|..20 | NO |
|
| responsabilidadesRut | Array <Obligaciones> | - | NO |
|
| telefax | String | AN|..20 | NO |
|
| telefono | String | AN|..20 | NO |
|
| tipoIdentificacion | String | N|2 | NO |
|
| transportadorDireccion | Direccion | - | NO |
|
| transportadorNombre | String | AN|..50 | NO |
|
| transportadorNumeroDocumento | String | AN|..12 | NO |
|
| transportadorNumeroDocumentoDV | String | AN|..2 | NO |
|
| transportadorTipoIdentificacion | String | N|2 | NO |
|
Class.Destinatario
| Atributo | Tipo Dato | Formato | Requerido | Descripción |
|---|---|---|---|---|
| canalDeEntrega | String | - | SI |
|
| Array <String> | - | C/C |
| |
| extras | Array <Extensible> | - | NO |
|
| fechaProgramada | String | AN|19 | NO |
|
| mensajeProgramado | String | - | NO |
|
| nitProveedorReceptor | String | N|..12 | C/C |
|
| telefono | String | AN|..20 | C/C |
|
Class.detalleDeFactura
| Atributo | Tipo Dato | Formato | Requerido | Descripción |
|---|---|---|---|---|
| cantidadPorEmpaque | String | N|..3 | NO |
|
| cantidadReal | String | N|..6 | SI |
|
| cantidadRealUnidadMedida | String | AN|..6 | SI |
|
| cantidadUnidades | String | N|..6 | SI |
|
| cargosDescuentos | Array <CargosDescuentos> | - | C/C |
|
| codigoFabricante | String | - | NO |
|
| codigoIdentificadorPais | String | A|2 | NO |
|
| codigoProducto | String | AN|..50 | SI |
|
| codigoTipoPrecio | String | AN|..3 | C/C |
|
| descripcion | String | AN|..300 | C/C |
|
| descripcion2 | String | AN|..300 | C/C |
|
| descripcion3 | String | AN|..300 | C/C |
|
| descripcionTecnica | String | AN|..300 | NO |
|
| documentosReferenciados | Array <DocumentoReferenciado> | - | NO |
|
| estandarCodigo | String | AN | C/C |
|
| estandarCodigoID | String | AN | NO |
|
| estandarCodigoIdentificador | String | AN | NO |
|
| estandarCodigoNombre | String | AN | NO |
|
| estandarCodigoProducto | String | AN | C/C |
|
| estandarOrganizacion | String | - | NO |
|
| estandarSubCodigoProducto | String | - | NO |
|
| extras | Array <Extensible> | - | NO |
|
| impuestosDetalles | Array <FacturaImpuestos > | - | SI |
|
| impuestosTotales | Array <ImpuestosTotales> | - | SI |
|
| informacionAdicional | Array <LineaInformacionAdicional> | - | NO |
|
| mandatorioNumeroIdentificacion | String | N|..12 | C/C |
|
| mandatorioNumeroIdentificacionDV | String | N|..2 | C/C |
|
| mandatorioTipoIdentificacion | String | N|2 | C/C |
|
| marca | String | AN|..100 | C/C |
|
| modelo | String | AN|..100 | C/C |
|
| muestraGratis | String | N|1 | C/C |
|
| nombreFabricante | String | AN|..100 | NO |
|
| nota | String | AN|20..5000 | C/C |
|
| precioReferencia | String | Ent: N|..15
Dec: N|0..6 |
C/C |
|
| precioTotal | String | Ent: N|..15
Dec: N|0..6 |
C/C |
|
| precioTotalSinImpuestos | String | Ent: N|..15
Dec: N|0..6 |
SI |
|
| precioVentaUnitario | String | Ent: N|..15
Dec: N|0..6 |
SI |
|
| secuencia | String | AN|..4 | SI |
|
| seriales | String | AN|..500 | NO |
|
| subCodigoFabricante | String | AN|..50 | NO |
|
| subCodigoProducto | String | AN|..50 | NO |
|
| tipoAIU | String | AN|..50 | NO |
|
| unidadMedida | String | AN|..3 | SI |
|
Class.Direcciones
| Atributo | Tipo Dato | Formato | Requerido | Descripción |
|---|---|---|---|---|
| aCuidadoDe | String | AN|..50 | NO |
|
| aLaAtenciónDe | String | AN|..50 | NO |
|
| bloque | String | AN|..50 | NO |
|
| buzon | String | AN|..50 | NO |
|
| calle | String | AN|..50 | NO |
|
| calleAdicional | String | AN|..50 | NO |
|
| ciudad | String | AN|…50 | SI |
|
| codigoDepartamento | String | AN|…5 | SI |
|
| correccionHusoHorario | String | AN|6 | NO |
|
| departamento | String | AN|…50 | SI |
|
| departamentoOrg | String | AN|..50 | NO |
|
| direccion | String | AN|…100 | SI |
|
| distrito | String | AN|..50 | NO |
|
| extras | Array <Extensible> | - | NO |
|
| habitacion | String | AN|..50 | NO |
|
| lenguaje | String | A|2 ISO 639-1 | SI |
|
| localizacion | Array <Coordenadas> | AN|..50 | NO |
|
| municipio | String | AN|..50 | SI |
|
| nombreEdificio | String | AN|..50 | NO |
|
| numeroEdificio | String | AN|..50 | NO |
|
| numeroParcela | String | AN|..50 | NO |
|
| pais | String | A|2 | SI |
|
| piso | String | AN|..50 | NO |
|
| region | String | AN|..50 | NO |
|
| subDivision | String | AN|..40 | NO |
|
| ubicación | String | AN|..50 | NO |
|
| zonaPostal | String | AN|..10 | NO |
|
Class.DocumentoReferenciado
| Atributo | Tipo Dato | Formato | Requerido | Descripción |
|---|---|---|---|---|
| codigoEstatusDocumento | String | - | C/C | |
| codigoInterno | String | N|1 | SI |
|
| cufeDocReferenciado | String | AN|..90 | C/C |
|
| descripcion | Array <String> | AN|20..5000 | C/C |
|
| extras | Array <Extensible> | - | NO |
|
| fecha | String | AN|10 | C/C |
|
| fechaFinValidez | String | AN|10 | NO |
|
| fechaInicioValidez | String | AN|10 | NO |
|
| numeroDocumento | String | AN..20 | SI |
|
| tipoCUFE | String | AN|..11 | C/C |
|
| tipoDocumento | String | AN|..50 | NO |
|
| tipoDocumentoCodigo | String | AN|2 | C/C |
|
@IMPORTANTE: # Para referenciar facturas de venta al emitir una NC o ND, se deben enviar dos objetos de tipo DocumentosReferenciados indicando lo siguiente:
- Objeto 1: indicando los campos codigoEstatusDocumento; codigoInterno = ‘4’, numeroDocumento, ransferênc.
- Objeto 2: si el tipoOperacion es igual a 20 (para NC) ó 30 (para ND) y codigoInterno = ‘5’, se validan los campos: cufeDocReferenciado, fecha, y numeroDocumento.
- Al transmitir una Factura de Contingencia, se debe enviar un arreglo de tipo DocumentosReferenciados indicando los campos: codigoInterno = ‘1’, numeroDocumento, fecha, tipoDocumentoCodigo (correspondiente a Factura de Contingencia).
- Para referenciar Documentos de Despacho (codigoInterno = ’2’) o Documentos de Recepción (codigoInterno = ‘3’) se validan los campos: numeroDocumento y fecha.
Class.EntregaMercancia
| Atributo | Tipo Dato | Formato | Requerido | Descripción |
|---|---|---|---|---|
| datosTransportistas | DatoTransportistas | - | NO |
|
| direccionDespacho | Direccion | - | NO |
|
| direccionEntrega | Direccion | - | NO |
|
| extras | Array <Extensible> | - | NO |
|
| fechaEfectivaSalida | String | AN|19 | NO |
|
| fechaEstimada | String | AN|19 | NO |
|
| fechaReal | String | AN|19 | NO |
|
| fechaSolicitada | String | AN|19 | NO |
|
| identificacionTransporte | String | AN|..20 | NO |
|
| matriculaTransporte | String | AN|..20 | NO |
|
Class.Extras
| Atributo | Tipo Dato | Formato | Requerido | Descripción |
|---|---|---|---|---|
| controlInterno1 | String | AN|100 | C/C |
|
| controlInterno2 | String | Depende del Campo | C/C |
|
| nombre | String | Depende del Campo | SI |
|
| String | N|1 | SI |
| |
| valor | String | Depende del Campo | SI |
|
| xml | String | N|1 | SI |
|
Class.Extensible
| Atributo | Tipo Dato | Formato | Requerido | Descripción |
|---|---|---|---|---|
| controlInterno1 | String | AN|100 | C/C |
|
| controlInterno2 | String | Depende del Campo | C/C |
|
| nombre | String | Depende del Campo | SI |
|
| valor | String | Depende del Campo | SI |
|
Class.FacturaImpuestos
| Atributo | Tipo Dato | Formato | Requerido | Descripción |
|---|---|---|---|---|
| baseImponibleTOTALImp | String | Ent: N|..15
Dec: N|0..6 |
SI |
|
| codigoTOTALImp | String | AN|2 | SI |
|
| controlInterno | String | N|1 | C/C |
|
| extras | Array <Extensible> | - | NO |
|
| porcentajeTOTALImp | String | Ent: N|..2
Dec: N|2* |
SI |
|
| unidadMedida | String | AN|..5 | SI |
|
| unidadMedidaTributo | String | Ent: N|..2
Dec: N|2 |
C/C |
|
| valorTOTALImp | String | Ent: N|..15
Dec: N|0..6 |
SI |
|
| valorTributoUnidad | String | Ent: N|..15
Dec: N|0..6 |
C/C |
|
@IMPORTANTE: Para el caso del ICA y RETEICA en el cual el valor del porcentaje se maneja en base a mil, se debe informar el valor de dicho porcentaje en base a cien, es decir, si se desea informar un porcentaje de 11.04%mil para alguno de estos tributos, se debe indicar en el campo porcentajeTOTALImp como 1.104.
Class.FabricanteSoftware
| Atributo | Tipo Dato | Formato | Requerido | Descripción |
|---|---|---|---|---|
| NombreApellido | String | - | SI |
|
| RazonSocial | String | - | SI |
|
| nombreSoftware | String | - | SI |
|
Class.ImpuestosTotales
| Atributo | Tipo Dato | Formato | Requerido | Descripción |
|---|---|---|---|---|
| codigoTOTALImp | String | AN|2 | SI |
|
| extras | Array <Extensible> | - | NO |
|
| montoTotal | String | Ent: N|..15
Dec: N|0..6 |
SI |
|
| redondeoAplicado | String | - | SI |
|
Class.InformacionBeneficiosComprador
| Atributo | Tipo Dato | Formato | Requerido | Descripción |
|---|---|---|---|---|
| Codigo | String | - | SI |
|
| NombresApellidos | String | - | SI |
|
| Puntos | String | - | SI |
|
Class.informacionLegalCliente
| Atributo | Tipo Dato | Formato | Requerido | Descripción |
|---|---|---|---|---|
| codigoEstablecimiento | String | - | NO |
|
| nombreRegistroRUT | String | AN|..450 | SI |
|
| numeroIdentificacion | String | AN|..12 | SI |
|
| numeroIdentificacionDV | String | N|..2 | C/C |
|
| numeroMatriculaMercantil | String | N|9 | NO |
|
| prefijoFacturacion | String | - | NO |
|
| tipoIdentificacion | String | N|2 | SI |
|
Class.juegosLocalizados
| Atributo | Tipo Dato | Formato | Requerido | Descripción |
|---|---|---|---|---|
| direccionEstablecimiento | String | - | SI |
|
| montoDeposito | String | - | SI |
|
| tipoJuego | String | - | SI |
|
| numeroInstrumento | String | - | SI |
|
| creditoInstrumentoJuego | List<Class.CreditoInstrumentoJuego> | - | SI |
|
Class.LineaInformacionAdicional
| Atributo | Tipo Dato | Formato | Requerido | Descripción |
|---|---|---|---|---|
| cantidad | String | AN|..5 | NO |
|
| codigo | String | AN|..5 | NO |
|
| codigoInterno1 | String | - | NO |
|
| codigoInterno2 | String | - | NO |
|
| descripcion | String | AN|..450 | NO |
|
| fechaFin | String | AN|10 | NO |
|
| fechaInicio | String | AN|10 | NO |
|
| nombre | String | AN|..50 | NO |
|
| secuencia | String | AN|..3 | NO |
|
| tipo | String | N|1 | NO |
|
| valor | String | AN|..50 | NO |
|
Class.MediosDePago
| Atributo | Tipo Dato | Formato | Requerido | Descripción |
|---|---|---|---|---|
| codigoBanco | String | AN|..20 | NO |
|
| codigoCanalPago | String | AN|..20 | NO |
|
| codigoReferencia | String | AN|..20 | NO |
|
| extras | Array <Extensible> | - | NO |
|
| fechaDeVencimiento | String | AN|19 | C/C |
|
| medioPago | String | AN|..2 | SI |
|
| metodoDePago | String | AN|..2 | SI |
|
| nombreBanco | String | AN|..50 | NO |
|
| numeroDeReferencia | String | AN|..200 | NO |
|
| numeroDias | String | N|..3 | NO |
|
| numeroTransferencia | String | AN|..20 | NO |
|
Class.Obligaciones
| Atributo | Tipo Dato | Formato | Requerido | Descripción |
|---|---|---|---|---|
| extras | Array <Extensible> | - | NO |
|
| obligaciones | String | AN|7 | SI |
|
| regimen | String | AN|2 | NO |
|
Class.OrdenDeCompra
| Atributo | Tipo Dato | Formato | Requerido | Descripción |
|---|---|---|---|---|
| codigoCliente | String | AN|..20 | NO |
|
| documentoReferencia | DocumentoReferencia | - | NO |
|
| extras | Array <Extensible> | - | NO |
|
| fecha | String | AN|10 | NO |
|
| numeroOrden | String | AN|..20 | SI |
|
| numeroPedido | String | AN|..20 | C/C |
|
| tipoCUFE | String | AN|..20 | NO |
|
| tipoOrden | String | AN|..20 | NO |
|
| uuid | String | AN|..90 | NO |
|
NOTA: Al tratarse de una orden de entrega se debe informar la clase OrdenDeCompra, si es necesario indicar más de una orden se debe informar a través de la clase DocumentoReferenciado con codigoInterno =’1’, esto con el fin de enviar la información referente a las mismas en el grupo AdditionalDocumentReference.
Importante: En el caso del campo rangoNumeracion, éste valor siempre debe tener el siguiente formato (Pefijo-campoDesde), es decir, dicho campo es independiente de la modalidad de secuencial configurado en el portal (manual con prefijo o manual sin prefijo).
En el caso del campo consecutivoDocumento, este campo si depende de la modalidad de secuenciales configurados en el portal web.
- Si la modalidad asignada es “manual sin prefijo”, los valores para los campos rangoNumeracion y consecutivoDocumento’ deben ser por ejemplo:
- Factura #1: rangoNumeracion= "PRUE-1", consecutivoDocumento= "1"
- Factura #2: rangoNumeracion= "PRUE-1", consecutivoDocumento= "2"
- ...
- Factura #1000: rangoNumeracion= "PRUE-1", consecutivoDocumento= "1000"
- Si la modalidad asignada es “manual con prefijo”, los valores para los campos rangoNumeracion y consecutivoDocumento deben ser por ejemplo:
- Factura #1: rangoNumeracion= "PRUE-1", consecutivoDocumento= "PRUE1"
- Factura #2: rangoNumeracion= "PRUE-1", consecutivoDocumento= "PRUE2"
- ...
- Factura #1000: rangoNumeracion= "PRUE-1", consecutivoDocumento= "PRUE1000"
Class.serviciosPublicos
| Atributo | Tipo Dato | Formato | Requerido | Descripción |
|---|---|---|---|---|
| tipo | String | - | SI |
|
| consecutivo | String | - | SI |
|
| servicio | String | - | SI |
|
| nombreEmpresaEmite | String | - | SI |
|
| nombreEmpresaRecaudo | String | - | SI |
|
| numeroContrato | String | - | NO |
|
| peridodoConsumo | String | - | NO |
|
| notaServicio | String | - | NO |
|
| numeroDocumento | String | - | NO |
|
| tipoIdentificacion | String | - | NO |
|
| numeroDocumentoDV | String | - | CC |
|
| nombreEmpresaServicio | String | - | NO |
|
| nombreSuscriptor | String | - | NO |
|
| direccion | String | - | NO |
|
| direccionAdicional | String | - | NO |
|
| ciudad | String | - | NO |
|
| departamento | String | - | NO |
|
| estrato | String | - | NO |
|
| String | - | NO |
| |
| cicloFacturacion | String | - | NO |
|
| periodicidad | String | - | NO |
|
| notaDocumento | String | - | NO |
|
| cantidadUnidadTotal | String | - | NO |
|
| unidadmedida | String | - | NO |
|
Class.TasaDeCambio
| Atributo | Tipo Dato | Formato | Requerido | Descripción |
|---|---|---|---|---|
| baseMonedaDestino | String | Ent: N|..15
Dec: N|0..6 |
SI |
|
| baseMonedaOrigen | String | Ent: N|..15
Dec: N|0..6 |
SI |
|
| extras | Array <Extensible> | - | NO |
|
| fechaDeTasaDeCambio | String | AN|10 | SI |
|
| indicadorDeTasa | String | - | NO |
|
| monedaDestino | String | AN|3 | SI |
|
| monedaOrigen | String | AN|3 | SI |
PATH: ../cbc:SourceCurrencyCode |
| operadorCalculo | String | - | NO |
|
| tasaDeCambio | String | Ent: N|..15
Dec: N|0..6 |
SI |
|
Class.TasaDeCambioAlternativa
| Atributo | Tipo Dato | Formato | Requerido | Descripción |
|---|---|---|---|---|
| baseMonedaDestino | String | Ent: N|..15
Dec: N|0..6 |
SI |
|
| baseMonedaOrigen | String | Ent: N|..15
Dec: N|0..6 |
SI |
|
| extras | Array <Extensible> | - | NO |
|
| fechaDeTasaDeCambio | String | AN|10 | SI |
|
| indicadorDeTasa | String | - | NO |
|
| monedaDestino | String | AN|3 | SI |
|
| monedaOrigen | String | AN|3 | SI |
|
| operadorCalculo | String | - | NO |
|
| tasaDeCambio | String | Ent: N|..15
Dec: N|0..6 |
SI |
|
Class.TerminosEntrega
| Atributo | Tipo Dato | Formato | Requerido | Descripción |
|---|---|---|---|---|
| cargosDescuentos | Array <CargosDescuentos> | - | NO |
|
| codigoCondicionEntrega | String | AN|3 | C/C |
|
| costoTransporte | String | Por Definir | NO |
|
| direccionEntrega | Class.Direccion | - | NO |
|
| extras | Array <Extensible> | - | NO |
|
| identificacion | String | AN|..12 | NO |
|
| monto | String | Ent: N|..15
Dec: N|0..6 |
NO |
|
| responsableEntrega | String | AN|..50 | NO |
|
Class.Tributos
| Atributo | Tipo Dato | Formato | Requerido | Descripción |
|---|---|---|---|---|
| codigoImpuesto | String | AN|2 | SI |
|
| extras | Array <Extensible> | - | NO |
|
- RESPONSE
- Parámetros a Recibir
| Tipo | Identificación | Descripción |
|---|---|---|
| int | codigo | Indica el Estado de la operación retornado por el servicio, (Por definir catálogo) |
| String | consecutivoDocumento | Prefijo y Consecutivo del Documento concatenado sin separadores. Para el ejemplo anterior corresponde a: “PRUE980338337” |
| String | cufe | “Código Único de Factura Electrónica” correspondiente al documento consultado. |
| Bool | esValidoDian | “true” Si es válido |
| String | fechaAceptacionDIAN | Día y Hora en la que la DIAN aceptó el documento electrónico, en formato AAAA-MM-DD HH:MM:SS |
| String | fechaRespuesta | Día y Hora en la que se generó el documento electrónico, en formato AAAA-MM-DD HH:MM:SS |
| String | hash | Código de detección de errores |
| String | mensaje | Este mensaje está asociado al código de respuesta, útil para identificación de errores |
| Array | mensajesValidacion | Mensajes de validación en caso de notificación o rechazo |
| String | nombre | Nombre definido por la DIAN |
| String | qr | Concatenación cadena del código QR (elemento de control) |
| Array | reglasNotificacionDIAN | Reglas de validación en caso de notificación |
| Array | reglasValidacionDIAN | Reglas de validación en caso de rechazo |
| String | resultado | Resultado del consumo del método: Procesado” ó “Error” |
| String | tipoCufe | Algoritmo del tipo de CUFE. “CUFE-SHA384” ó “CUDE-SHA384” |
| String | xml | Archivo XML (tipo AttachedDocument) codificado en Base64 |
Una vez realizado el envío exitoso de la factura electrónica (código ‘200’ o ‘201’ en la respuesta), se procede a enviar los archivos adjuntos (a través del método CargarAdjuntos) consumiendo el Servicio Adjuntos Web SOAP, en el escenario de que el parámetro adjuntos se haya asignado en “1” u “11”, en caso contrario el Servicio Adjuntos Web SOAP retornará un error indicando que el documento NO admite adjuntos.
Método DescargaXMLResponse
Permite la descarga del documento XML (solo el documento electrónico Invoice, CreditNote y DebitNote), en caso que se requiera validar la información como la firma o la autenticidad de la misma o para efecto de manejo y almacenamiento local.
- REQUEST
- Parámetros a Enviar
| Tipo | Identificador | Descripción |
|---|---|---|
| String | tokenEmpresa | Suministrado por The Factory HKA Colombia |
| tokenPassword | ||
| Documento | Prefijo y Consecutivo del Documento electrónico concatenado sin separadores. Ejemplo “PRUE980338212 |
- RESPONSE
- Parámetros a Recibir
| Tipo | Identificador | Descripción |
|---|---|---|
| int | codigo | Indica el Estado de la operación retornado por el servicio |
| String | cufe | “Código Único de Factura Electrónica” correspondiente al documento consultado |
| String | documento | Documento XML (Documento equivalente) codificado en Base64 |
| String | hash | Código de detección de errores |
| String | mensaje | Este mensaje está asociado al codigo, útil para identificación de errores |
| String | nombre | Este mensaje está asociado al nombre |
| String | resultado | Resultado del consumo del método:
|
| String | tipoCufe | correspondiente al documento consultado |
Método GenerarContenedor
Un contendor es un tipo de documento AttachedDocument, la estructura de éste tiene por objetivo contener y transmitir en un único archivo XML un documento electrónico (Documento equivalente) y todos los eventos (ApplicationResponse) generados hasta la fecha.
- REQUEST
- Parámetros a Enviar
| Tipo | Identificador | Descripción |
|---|---|---|
| String | tokenEmpresa | Suministrado por The Factory HKA Colombia |
| tokenPassword | ||
| Documento | Prefijo y Consecutivo del Documento electrónico concatenado sin separadores. Ejemplo “PRUE980338212 |
- RESPONSE
- Parámetros a Recibir
| Tipo | Identificador | Descripción |
|---|---|---|
| int | Código | Indica el Estado de la operación retornado por el servicio |
| String | Contenedor | Documento XML (AttachedDocument) codificado en Base64 |
| String | Fecha | Fecha y Hora consumo del método, formato: AAAA-MM-DD HH:MM:SS |
| String | Hash | Código de detección de errores |
| String | Mensaje | Este mensaje está asociado al codigo, útil para identificación de errores. |
| String | Nombre | Este mensaje está asociado al nombre. |
| String | Resultado | Resultado del consumo del método:
|
- Para mayor información pude visitar la siguiente sección:
Tips Urls de Emisión