Métodos Servicio Emisión Web TFHKA - Indice del Manual Integración Directa HKA Documentos Equivalentes Electrónicos
Sumario
- 1 Método EnviarRequest
- 1.1 Class.FacturaGeneral
- 1.2 Class.Anticipos
- 1.3 Class.Autorizado
- 1.4 Class.BoletaIngreso
- 1.5 Class.bolsaValores
- 1.6 Class.CargosDescuentos
- 1.7 Class.CajaVenta
- 1.8 Class.CreditoInstrumentoJuego
- 1.9 Class.Cliente
- 1.10 Class.DatosDelTransportista
- 1.11 Class.Destinatario
- 1.12 Class.detalleDeFactura
- 1.13 Class.Direcciones
- 1.14 Class.DocumentoReferenciado
- 1.15 Class.EntregaMercancia
- 1.16 Class.Extras
- 1.17 Class.Extensible
- 1.18 Class.FacturaImpuestos
- 1.19 Class.FabricanteSoftware
- 1.20 Class.ImpuestosTotales
- 1.21 Class.InformacionBeneficiosComprador
- 1.22 Class.informacionLegalCliente
- 1.23 Class.juegosLocalizados
- 1.24 Class.LineaInformacionAdicional
- 1.25 Class.MediosDePago
- 1.26 Class.Obligaciones
- 1.27 Class.OrdenDeCompra
- 1.28 Class.serviciosPublicos
- 1.29 Class.TasaDeCambio
- 1.30 Class.TasaDeCambioAlternativa
- 1.31 Class.TerminosEntrega
- 1.32 Class.Tributos
- 2 Método DescargaXML
- 3 Método GenerarContenedor
- 4 Método EnvioCorreo
- 5 Método EstadoDocumento
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 DescargaXML
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
Método EnvioCorreo
Permite reenviar a una o varias direcciones de correos el documento indicado.
- 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”. Permite enviar múltiples destinatarios (máximo 5) separados por coma el carácter coma ‘,’ | |
correo | Correo electrónico al que se enviará el documento. Ejemplo nombre@empresa.com | |
adjuntos |
|
- RESPONSE
- Parámetros a Recibir
Tipo | Identificador | Descripción |
---|---|---|
int | codigo | Indica el Estado de la operación retornado por el servicio |
String | mensaje | Este mensaje está asociado al código, útil para identificación de errores |
resultado | Resultado del consumo del método:
|
@Importante: Si durante la emisión del documento (método Enviar) el parámetro adjuntos se asignó en “10” u “11”, la plataforma The Factory HKA - DFACTURE no generará representación gráfica (PDF) estándar, por lo tanto solo será reenviado a los destinatarios los documentos alojados en la plataforma (AttachedDocument). Para realizar un reenvío de correo (con el AttachedDocument y adjuntos) a una dirección de email diferente a la utilizada durante la emisión se puede consumir nuevamente el método CargarAdjuntos del Servicio Adjuntos Web SOAP.
Método EstadoDocumento
Permite consultar el estado del documento indicado ante el Adquiriente, ante la DIAN, el tipo de entrega y si la misma fue exitosa, la lista de eventos (ApplicationResponse) asociados y otros parámetros de interés que puedes ser útil en los procesos de control del software de facturación (ERP) o para el modelo de negocio del cliente emisor.
- 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 |
---|---|---|
Bool | aceptacionFisica | Indica si el documento posee aceptación física (entregado físicamente): “true” o “false” |
String | acuseComentario | Comentario informado por el adquiriente al realizar el acuse |
String | acuseEstatus | 0: Acuse no realizado ; 1: Acuse realizado |
String | acuseResponsable | Email del responsable de realizar el acuse |
String | acuseRespuesta | 0: Respuesta no enviada ; 1: Respuesta enviada |
String | ambiente | Tipo de ambiente de generación del documento:
|
String | cadenaCodigoQR | Concatenación cadena del código QR (elemento de control) |
String | cadenaCufe | Concatenación cadena del código CUFE previo al cálculo por el algoritmo correspondiente del servicio |
int | Codigo | Indica el estado de la operación retornado por el servicio |
String | consecutivo | Consecutivo del Documento TFHKA/DIAN |
String | cufe | “Código Único de Factura Electrónica” correspondiente al documento consultado, calculado por el algoritmo correspondiente del servicio |
String | descripcionDocumento | Identificador del tipo de documento de referencia,
|
String | descripcionEstatusDocumento | Descripción correspondiente al estatusDocumento ante la DIAN: “Procesado Correctamente” |
String | entregaMetodoDIAN | Indica el método de Entrega a la DIAN
|
Bool | esValidoDIAN |
|
String | estatusDocumento | Código obtenido en la respuesta correspondiente al estado del documento ante la DIAN (Por definir catálogo) |
Array <Evento> | eventos | Lista de eventos del Documento Electrónico |
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 | fechaDocumento | Fecha en la que se generó el documento, en formato: AAAA-MM-DD |
Array <HistorialDeEntregas> | historialDeEntregas | Histórico de las entregas del documento |
String | mensaje | Este mensaje está asociado al codigo, útil para identificación de errores |
String | mensajeDocumento | Entrega una descripción del error de cada una de las validaciones iniciales. Si no hay errores no entrega descripción |
Bool | poseeAdjuntos | Indica si el documento posee adjuntos:
|
Bool | poseeRepresentacionGrafica | Indica si el documento posee representación gráfica:
|
Array <String> | reglasValidacionDIAN | Mensajes de validación por parte de la DIAN |
String | resultado | Resultado del consumo del método:
|
String | tipoCufe | Algoritmo utilizado para calcular CUFE:
|
String | tipoDocumento | Identificador del tipo de documento de referencia
|
String | trackID | Este elemento corresponde al TrackId del documento procesado |