meta data de esta página
  •  

Método EnviarLiquidacion()

El request del método es el siguiente:

Request: Parámetro a enviar
Tipo Identificador Descripción
String RUC Proporcionado por el cliente.
String Usuario Proporcionado por The Factory HKA.
String Password Proporcionado por The Factory HKA.
Object Documento xml siguiente

OBJETO EJEMPLO

(Solo rellenar los nodos que consideren necesarios y que apliquen para su modelo de Factura)

<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:tem="http://tempuri.org/" xmlns:wsec="http://schemas.datacontract.org/2004/07/WSEcuadorService.Request" xmlns:ecu="http://schemas.datacontract.org/2004/07/EcuadorLibraryObject" xmlns:ecu1="http://schemas.datacontract.org/2004/07/EcuadorLibraryObject.Other" xmlns:ecu2="http://schemas.datacontract.org/2004/07/EcuadorLibraryObject.Common.Detail" xmlns:ecu3="http://schemas.datacontract.org/2004/07/EcuadorLibraryObject.Common.Body" xmlns:ecu4="http://schemas.datacontract.org/2004/07/EcuadorLibraryObject.Common.Other">
   <soapenv:Header/>
   <soapenv:Body>
      <tem:EnviarLiquidacion>
         <!--Optional:-->
         <tem:data>
            <!--Optional:-->
            <wsec:Clave>?</wsec:Clave>
            <!--Optional:-->
            <wsec:RUC>?</wsec:RUC>
            <!--Optional:-->
            <wsec:Usuario>?</wsec:Usuario>
            <!--Optional:-->
            <wsec:Documento>
               <!--Optional:-->
               <ecu:CPCliente>?</ecu:CPCliente>
               <!--Optional:-->
               <ecu:CampoAdicional>
                  <!--Zero or more repetitions:-->
                  <ecu1:infoAdicional>
                     <!--Optional:-->
                     <ecu2:Nombre>?</ecu2:Nombre>
                     <!--Optional:-->
                     <ecu2:Valor>?</ecu2:Valor>
                  </ecu1:infoAdicional>
               </ecu:CampoAdicional>
               <!--Optional:-->
               <ecu:CorreoNegociable>?</ecu:CorreoNegociable>
               <!--Optional:-->
               <ecu:CorreoNotificar>?</ecu:CorreoNotificar>
               <!--Optional:-->
               <ecu:Detalles>
                  <!--Zero or more repetitions:-->
                  <ecu2:Detalle>
                     <!--Optional:-->
                     <ecu2:Cantidad>?</ecu2:Cantidad>
                     <!--Optional:-->
                     <ecu2:CodigoAuxiliar>?</ecu2:CodigoAuxiliar>
                     <!--Optional:-->
                     <ecu2:CodigoPrincipal>?</ecu2:CodigoPrincipal>
                     <!--Optional:-->
                     <ecu2:Descripcion>?</ecu2:Descripcion>
                     <!--Optional:-->
                     <ecu2:Descuento>?</ecu2:Descuento>
                     <!--Optional:-->
                     <ecu2:DetAdicional>
                        <!--Zero or more repetitions:-->
                        <ecu2:DetAdicional>
                           <!--Optional:-->
                           <ecu2:Nombre>?</ecu2:Nombre>
                           <!--Optional:-->
                           <ecu2:Valor>?</ecu2:Valor>
                        </ecu2:DetAdicional>
                     </ecu2:DetAdicional>
                     <!--Optional:-->
                     <ecu2:Impuestos>
                        <!--Zero or more repetitions:-->
                        <ecu2:ImpuestoDetalle>
                           <!--Optional:-->
                           <ecu2:BaseImponible>?</ecu2:BaseImponible>
                           <!--Optional:-->
                           <ecu2:Codigo>?</ecu2:Codigo>
                           <!--Optional:-->
                           <ecu2:CodigoPorRet>?</ecu2:CodigoPorRet>
                           <!--Optional:-->
                           <ecu2:Valor>?</ecu2:Valor>
                           <!--Optional:-->
                           <ecu2:Tarifa>?</ecu2:Tarifa>
                        </ecu2:ImpuestoDetalle>
                     </ecu2:Impuestos>
                     <!--Optional:-->
                     <ecu2:PrecioSinSubsidio>?</ecu2:PrecioSinSubsidio>
                     <!--Optional:-->
                     <ecu2:PrecioTotalSinImpuesto>?</ecu2:PrecioTotalSinImpuesto>
                     <!--Optional:-->
                     <ecu2:PrecioUnitario>?</ecu2:PrecioUnitario>
                     <!--Optional:-->
                     <ecu2:UnidadMedida>?</ecu2:UnidadMedida>
                  </ecu2:Detalle>
               </ecu:Detalles>
               <!--Optional:-->
               <ecu:DirCliente>?</ecu:DirCliente>
               <!--Optional:-->
               <ecu:InfoLiquidacion>
                  <!--Optional:-->
                  <ecu3:CodDocReembolso>?</ecu3:CodDocReembolso>
                  <!--Optional:-->
                  <ecu3:ContribuyenteEspecial>?</ecu3:ContribuyenteEspecial>
                  <!--Optional:-->
                  <ecu3:DirEstablecimiento>?</ecu3:DirEstablecimiento>
                  <!--Optional:-->
                  <ecu3:DireccionProveedor>?</ecu3:DireccionProveedor>
                  <!--Optional:-->
                  <ecu3:FechaEmision>?</ecu3:FechaEmision>
                  <!--Optional:-->
                  <ecu3:IdentificacionProveedor>?</ecu3:IdentificacionProveedor>
                  <!--Optional:-->
                  <ecu3:ImporteTotal>?</ecu3:ImporteTotal>
                  <!--Optional:-->
                  <ecu3:Moneda>?</ecu3:Moneda>
                  <!--Optional:-->
                  <ecu3:ObligadoContabilidad>?</ecu3:ObligadoContabilidad>
                  <!--Optional:-->
                  <ecu3:Pagos>
                     <!--Zero or more repetitions:-->
                     <ecu3:Pago>
                        <!--Optional:-->
                        <ecu3:FormaPago>?</ecu3:FormaPago>
                        <!--Optional:-->
                        <ecu3:Plazo>?</ecu3:Plazo>
                        <!--Optional:-->
                        <ecu3:Total>?</ecu3:Total>
                        <!--Optional:-->
                        <ecu3:UnidadTiempo>?</ecu3:UnidadTiempo>
                     </ecu3:Pago>
                  </ecu3:Pagos>
                  <!--Optional:-->
                  <ecu3:RazonSocialProveedor>?</ecu3:RazonSocialProveedor>
                  <!--Optional:-->
                  <ecu3:TipoIdentificacionProveedor>?</ecu3:TipoIdentificacionProveedor>
                  <!--Optional:-->
                  <ecu3:TotalBaseImponibleReembolso>?</ecu3:TotalBaseImponibleReembolso>
                  <!--Optional:-->
                  <ecu3:TotalComprobantesReembolso>?</ecu3:TotalComprobantesReembolso>
                  <!--Optional:-->
                  <ecu3:TotalConImpuestos>
                     <!--Zero or more repetitions:-->
                     <ecu3:ImpuestoTotalLiquidacion>
                        <!--Optional:-->
                        <ecu3:BaseImponible>?</ecu3:BaseImponible>
                        <!--Optional:-->
                        <ecu3:Codigo>?</ecu3:Codigo>
                        <!--Optional:-->
                        <ecu3:CodigoPorcentaje>?</ecu3:CodigoPorcentaje>
                        <!--Optional:-->
                        <ecu3:Valor>?</ecu3:Valor>
                        <!--Optional:-->
                        <ecu3:DescuentoAdicional>?</ecu3:DescuentoAdicional>
                        <!--Optional:-->
                        <ecu3:Tarifa>?</ecu3:Tarifa>
                     </ecu3:ImpuestoTotalLiquidacion>
                  </ecu3:TotalConImpuestos>
                  <!--Optional:-->
                  <ecu3:TotalDescuento>?</ecu3:TotalDescuento>
                  <!--Optional:-->
                  <ecu3:TotalImpuestoReembolso>?</ecu3:TotalImpuestoReembolso>
                  <!--Optional:-->
                  <ecu3:TotalSinImpuestos>?</ecu3:TotalSinImpuestos>
               </ecu:InfoLiquidacion>
               <!--Optional:-->
               <ecu:InfoTributaria>
                  <!--Optional:-->
                  <ecu3:AgenteRetencion>?</ecu3:AgenteRetencion>
                  <!--Optional:-->
                  <ecu3:CodigoNumerico>?</ecu3:CodigoNumerico>
                  <!--Optional:-->
                  <ecu3:DirMatriz>?</ecu3:DirMatriz>
                  <!--Optional:-->
                  <ecu3:Estab>?</ecu3:Estab>
                  <!--Optional:-->
                  <ecu3:NombreComercial>?</ecu3:NombreComercial>
                  <!--Optional:-->
                  <ecu3:PtoEmi>?</ecu3:PtoEmi>
                  <!--Optional:-->
                  <ecu3:RazonSocial>?</ecu3:RazonSocial>
                  <!--Optional:-->
                  <ecu3:RegimenMicroempresas>?</ecu3:RegimenMicroempresas>
                  <!--Optional:-->
                  <ecu3:Secuencial>?</ecu3:Secuencial>
               </ecu:InfoTributaria>
               <!--Optional:-->
               <ecu:MaquinaFiscal>
                  <!--Optional:-->
                  <ecu1:marca>?</ecu1:marca>
                  <!--Optional:-->
                  <ecu1:modelo>?</ecu1:modelo>
                  <!--Optional:-->
                  <ecu1:serie>?</ecu1:serie>
               </ecu:MaquinaFiscal>
               <!--Optional:-->
               <ecu:Negociable>
                  <!--Optional:-->
                  <ecu1:Correo>?</ecu1:Correo>
               </ecu:Negociable>
               <!--Optional:-->
               <ecu:Notificar>?</ecu:Notificar>
               <!--Optional:-->
               <ecu:Reembolsos>
                  <!--Zero or more repetitions:-->
                  <ecu4:ReembolsoDetalle>
                     <!--Optional:-->
                     <ecu4:CodDocReembolso>?</ecu4:CodDocReembolso>
                     <!--Optional:-->
                     <ecu4:CodPaisPagoProveedorReembolso>?</ecu4:CodPaisPagoProveedorReembolso>
                     <!--Optional:-->
                     <ecu4:CompensacionesReembolso>
                        <!--Zero or more repetitions:-->
                        <ecu3:Compensacion>
                           <!--Optional:-->
                           <ecu3:Codigo>?</ecu3:Codigo>
                           <!--Optional:-->
                           <ecu3:Tarifa>?</ecu3:Tarifa>
                           <!--Optional:-->
                           <ecu3:Valor>?</ecu3:Valor>
                        </ecu3:Compensacion>
                     </ecu4:CompensacionesReembolso>
                     <!--Optional:-->
                     <ecu4:DetalleImpuestos>
                        <!--Zero or more repetitions:-->
                        <ecu2:ImpuestoDetalle>
                           <!--Optional:-->
                           <ecu2:BaseImponible>?</ecu2:BaseImponible>
                           <!--Optional:-->
                           <ecu2:Codigo>?</ecu2:Codigo>
                           <!--Optional:-->
                           <ecu2:CodigoPorRet>?</ecu2:CodigoPorRet>
                           <!--Optional:-->
                           <ecu2:Valor>?</ecu2:Valor>
                           <!--Optional:-->
                           <ecu2:Tarifa>?</ecu2:Tarifa>
                        </ecu2:ImpuestoDetalle>
                     </ecu4:DetalleImpuestos>
                     <!--Optional:-->
                     <ecu4:EstabDocReembolso>?</ecu4:EstabDocReembolso>
                     <!--Optional:-->
                     <ecu4:FechaEmisionDocReembolso>?</ecu4:FechaEmisionDocReembolso>
                     <!--Optional:-->
                     <ecu4:IdentificacionProveedorReembolso>?</ecu4:IdentificacionProveedorReembolso>
                     <!--Optional:-->
                     <ecu4:NumeroautorizacionDocReemb>?</ecu4:NumeroautorizacionDocReemb>
                     <!--Optional:-->
                     <ecu4:PtoEmiDocReembolso>?</ecu4:PtoEmiDocReembolso>
                     <!--Optional:-->
                     <ecu4:SecuencialDocReembolso>?</ecu4:SecuencialDocReembolso>
                     <!--Optional:-->
                     <ecu4:TipoIdentificacionProveedorReembolso>?</ecu4:TipoIdentificacionProveedorReembolso>
                     <!--Optional:-->
                     <ecu4:TipoProveedorReembolso>?</ecu4:TipoProveedorReembolso>
                  </ecu4:ReembolsoDetalle>
               </ecu:Reembolsos>
               <!--Optional:-->
               <ecu:TelefonoCliente>?</ecu:TelefonoCliente>
               <!--Optional:-->
               <ecu:Version>?</ecu:Version>
            </wsec:Documento>
         </tem:data>
      </tem:EnviarLiquidacion>
   </soapenv:Body>
</soapenv:Envelope>

Proceso para consumo EnviarLiquidacion

  • Se inicializa un objeto ServiceClient o Servicio
  • Se inicializa un objeto PeticionLiquidacion donde se ingresan el RUC, el usuario de Integración ,clave de Integración y Documento
  • Se hace consumo del método EnviarLiquidacion contenido en el objeto serviceClient y se coloca como parámetro la petición anterior, la respuesta estará contenida en un objeto llamado RepuestaPeticion, la respuesta tendrá los parámetros Código, Mensaje y Archivo
Codigo Ejemplo .NET
         try
            {
               ServiceClient servicio = new ServiceClient();            
                servicio.Endpoint.Address = new System.ServiceModel.EndpointAddress(Url());
                PeticionLiquidacion pet = new PeticionLiquidacion
                {
                Clave = "claveintegracion",
                RUC = "0992109876543",
                Usuario = "usuariointegracion"
                };
 
                pet.Documento = new Liquidacion();
                Liquidacion liq = new Liquidacion();
 
 
 
                //***************************************INFOTRIBUTARIA************************************
                liq.InfoTributaria = new InfoTributaria();
                liq.InfoTributaria = InformacionTrib();
                liq.Version = "1.1.0";
                liq.CorreoNotificar = textBox76.Text;
                liq.DirCliente = "Direccion del cliente";
 
 
 
                //*********************************************INFOLIQUIDACION*****************************
                liq.InfoLiquidacion = new InfoLiquidacionCompra();
                InfoLiquidacionCompra info = new InfoLiquidacionCompra
                {
                    CodDocReembolso = "00",
                    ContribuyenteEspecial = "CONTRIBUYENTE",
                    DireccionProveedor = "direccion proveedor",
                    DirEstablecimiento = "dir establecimineto",
                    FechaEmision = textBox1.Text,
                    IdentificacionProveedor = "0993264032001",
                    TipoIdentificacionProveedor = "04",
                    RazonSocialProveedor = "INDYANAPOLIS C.A",
                    ObligadoContabilidad = "SI",
                    Moneda = "USD",
                    ImporteTotal = "112.00",
                    TotalSinImpuestos = "100.00",
                    TotalBaseImponibleReembolso = "10.00",
                    TotalComprobantesReembolso = "10.00",
                    TotalDescuento = "0.00",
                    TotalImpuestoReembolso = "0.00"
 
                };
 
                info.Pagos = new List<Pago>();
                Pago pago = new Pago
                {
                    FormaPago = textBox63.Text,
                    Total = textBox64.Text,
                    Plazo = textBox65.Text,
                    UnidadTiempo = textBox66.Text
                };
                info.Pagos.Add(pago);
 
 
                info.TotalConImpuestos = new List<ImpuestoTotalLiquidacion>();
                ImpuestoTotalLiquidacion imp = new ImpuestoTotalLiquidacion
                {
                    BaseImponible = textBox35.Text,
                    Codigo = textBox36.Text,
                    CodigoPorcentaje = textBox37.Text,
                    Tarifa = textBox39.Text,
                    Valor = textBox40.Text,
                    DescuentoAdicional="0.00"
                };
 
                info.TotalConImpuestos.Add(imp);
                liq.InfoLiquidacion = info;
 
 
                //******************************************+DETALLES*************************
                liq.Detalles = new List<Detalle>();
                Detalle det = new Detalle
                {
                    CodigoPrincipal = textBox67.Text,
                    CodigoAuxiliar = textBox68.Text,
                    Descripcion = textBox69.Text,
                    Cantidad = textBox70.Text,
                    PrecioUnitario = textBox71.Text,
                    UnidadMedida = textBox72.Text,
                    Descuento = textBox73.Text,
                    PrecioSinSubsidio = textBox74.Text,
                    PrecioTotalSinImpuesto = textBox75.Text,
 
 
                };
 
                det.Impuestos = new List<ImpuestoDetalle>();
                det.Impuestos.Add(ImpuestDet());
                liq.Detalles.Add(det);
 
 
 
                liq.CorreoNotificar = textBox76.Text;
                liq.CampoAdicional = new List<infoAdicional>();
                infoAdicional inf = new infoAdicional
                {
                    Nombre = "nombre adicional",
                    Valor = "1876543"
                };
                liq.CampoAdicional.Add(inf);
 
                liq.Reembolsos = new List<ReembolsoDetalle>();
                ReembolsoDetalle rem = new ReembolsoDetalle
                {
                    CodDocReembolso = "00",
                    CodPaisPagoProveedorReembolso = "345",
                    EstabDocReembolso = "001",
                    PtoEmiDocReembolso = "002",
                    SecuencialDocReembolso = "000000887",
                    FechaEmisionDocReembolso = "05/08/2021",
                    IdentificacionProveedorReembolso = "0993264032001",
                    TipoIdentificacionProveedorReembolso = "04",                                    
                    TipoProveedorReembolso = "01",
                    NumeroautorizacionDocReemb= "1108202101179204823000120010010000047837000070019"
 
                };
 
                rem.DetalleImpuestos = new List<ImpuestoDetalle>();
                rem.DetalleImpuestos.Add(ImpuestDet());
                liq.Reembolsos.Add(rem);
                pet.Documento = liq;
 
                var resp = servicio.EnviarLiquidacion(pet);
                servicio.Close();
 
 
                richTextBox1.Text = "Codigo: " + resp.Codigo + "\n\r" + "Mensaje: " + resp.Mensaje + "\r\n" + resp.Archivo;
 
 
 
 
 
 
            }
            catch (Exception ex)
            {
 
                MessageBox.Show("Mensaje error: " + ex);
            }
 
 
ARCHIVOS FACTURA XML/XSD

En este enlace se encuentran disponibles los xml y xsd de factura en sus distintas versiones

xml_y_xsd_factura.zip