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 |
<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:EnviarRetencionATS> <!--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:DirCliente>?</ecu:DirCliente> <!--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:Notificar>?</ecu:Notificar> <!--Optional:--> <ecu:TelefonoCliente>?</ecu:TelefonoCliente> <!--Optional:--> <ecu:Version>?</ecu:Version> <!--Optional:--> <ecu:docsSustento> <!--Zero or more repetitions:--> <ecu4:DocSustento> <!--Optional:--> <ecu4:AplicConvDobTrib>?</ecu4:AplicConvDobTrib> <!--Optional:--> <ecu4:CodDocSustento>?</ecu4:CodDocSustento> <!--Optional:--> <ecu4:CodSustento>?</ecu4:CodSustento> <!--Optional:--> <ecu4:FechaEmisionDocSustento>?</ecu4:FechaEmisionDocSustento> <!--Optional:--> <ecu4:FechaRegistroContable>?</ecu4:FechaRegistroContable> <!--Optional:--> <ecu4:ImporteTotal>?</ecu4:ImporteTotal> <!--Optional:--> <ecu4:ImpuestoDocSustento> <!--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:ImpuestoDocSustento> <!--Optional:--> <ecu4:NumAutDocSustento>?</ecu4:NumAutDocSustento> <!--Optional:--> <ecu4:NumDocSustento>?</ecu4:NumDocSustento> <!--Optional:--> <ecu4:PagExtSujRetNorLeg>?</ecu4:PagExtSujRetNorLeg> <!--Optional:--> <ecu4:PagoLocExt>?</ecu4:PagoLocExt> <!--Optional:--> <ecu4:PagoRegFis>?</ecu4:PagoRegFis> <!--Optional:--> <ecu4:Pagos> <!--Zero or more repetitions:--> <ecu4:PagoRetencionATS> <!--Optional:--> <ecu4:FormaPago>?</ecu4:FormaPago> <!--Optional:--> <ecu4:Total>?</ecu4:Total> </ecu4:PagoRetencionATS> </ecu4:Pagos> <!--Optional:--> <ecu4:PaisEfecPago>?</ecu4:PaisEfecPago> <!--Optional:--> <ecu4: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> </ecu4:Reembolsos> <!--Optional:--> <ecu4:Retenciones> <!--Zero or more repetitions:--> <ecu4:RetencionesATS> <!--Optional:--> <ecu4:Codigo>?</ecu4:Codigo> <!--Optional:--> <ecu4:CodigoPorcentaje>?</ecu4:CodigoPorcentaje> <!--Optional:--> <ecu4:Tarifa>?</ecu4:Tarifa> <!--Optional:--> <ecu4:Valor>?</ecu4:Valor> <!--Optional:--> <ecu4:BaseImponible>?</ecu4:BaseImponible> <!--Optional:--> <ecu4:CompraCajBan> <!--Optional:--> <ecu4:NumCajBan>?</ecu4:NumCajBan> <!--Optional:--> <ecu4:PrecCajBan>?</ecu4:PrecCajBan> </ecu4:CompraCajBan> <!--Optional:--> <ecu4:Dividendos> <!--Optional:--> <ecu4:EjerFisUtDiv>?</ecu4:EjerFisUtDiv> <!--Optional:--> <ecu4:FechaPagoDiv>?</ecu4:FechaPagoDiv> <!--Optional:--> <ecu4:ImRentaSoc>?</ecu4:ImRentaSoc> </ecu4:Dividendos> <!--Optional:--> <ecu4:PorcentajeRetener>?</ecu4:PorcentajeRetener> </ecu4:RetencionesATS> </ecu4:Retenciones> <!--Optional:--> <ecu4:TipoRegi>?</ecu4:TipoRegi> <!--Optional:--> <ecu4:TotalBaseImponibleReembolso>?</ecu4:TotalBaseImponibleReembolso> <!--Optional:--> <ecu4:TotalComprobantesReembolso>?</ecu4:TotalComprobantesReembolso> <!--Optional:--> <ecu4:TotalImpuestoReembolso>?</ecu4:TotalImpuestoReembolso> <!--Optional:--> <ecu4:TotalSinImpuestos>?</ecu4:TotalSinImpuestos> </ecu4:DocSustento> </ecu:docsSustento> <!--Optional:--> <ecu:infoRetencionATS> <!--Optional:--> <ecu3:ContribuyenteEspecial>?</ecu3:ContribuyenteEspecial> <!--Optional:--> <ecu3:DirEstablecimiento>?</ecu3:DirEstablecimiento> <!--Optional:--> <ecu3:FechaEmision>?</ecu3:FechaEmision> <!--Optional:--> <ecu3:IdentificacionSujetoRetenido>?</ecu3:IdentificacionSujetoRetenido> <!--Optional:--> <ecu3:ObligadoContabilidad>?</ecu3:ObligadoContabilidad> <!--Optional:--> <ecu3:ParteRel>?</ecu3:ParteRel> <!--Optional:--> <ecu3:PeriodoFiscal>?</ecu3:PeriodoFiscal> <!--Optional:--> <ecu3:RazonSocialSujetoRetenido>?</ecu3:RazonSocialSujetoRetenido> <!--Optional:--> <ecu3:TipoIdentificacionSujetoRetenido>?</ecu3:
try { ServiceClient servicio = new ServiceClient(); PeticionRetencionATS pet = new PeticionRetencionATS { Clave = "ClaveIntegracion", RUC = "1792433738481", Usuario = "usuarioIntegracion" }; pet.Documento = new RetencionATS(); RetencionATS ret = new RetencionATS() { DirCliente = "direccion del cliente", CorreoNotificar = "sam@gmail.com", Notificar = "SI", }; ret.InfoTributaria = new InfoTributaria() { RazonSocial="Razon social empresa emisora", NombreComercial = "NOmbre comercial", Estab ="001", PtoEmi="001", Secuencial="000000321", DirMatriz="Direccion matriz", AgenteRetencion="1245", CodigoNumerico="12345678", RegimenMicroempresas="12345" }; ret.infoRetencionATS = new InfoCompRetencionATS(); InfoCompRetencionATS inforet = new InfoCompRetencionATS { FechaEmision = "16/03/2022", DirEstablecimiento = "DIR ESTABLECIMIENTO", ObligadoContabilidad="SI", TipoIdentificacionSujetoRetenido = "08", ParteRel ="SI", RazonSocialSujetoRetenido = "RAZON SOCIALES SUJETO RETENIDO", IdentificacionSujetoRetenido= "1234567891234", PeriodoFiscal ="01/2022", }; ret.infoRetencionATS = inforet; ret.docsSustento = new List<DocSustento>(); DocSustento doc = new DocSustento { CodDocSustento = "01", CodSustento="10", AplicConvDobTrib="SI", FechaEmisionDocSustento="11/03/2022", FechaRegistroContable="11/03/2023", ImporteTotal="10.00", NumAutDocSustento= "1503202207179243373800110010029000032160000000111", NumDocSustento="001002000888777", PagExtSujRetNorLeg="NO", PagoLocExt= "02", PagoRegFis="SI", PaisEfecPago="597", TipoRegi="01", TotalBaseImponibleReembolso="90.00", TotalComprobantesReembolso="100.00", TotalImpuestoReembolso="10.00", TotalSinImpuestos="90.00", }; doc.Pagos = new List<PagoRetencionATS>(); PagoRetencionATS pago = new PagoRetencionATS { FormaPago = "01", Total="10.00" }; doc.Pagos.Add(pago); doc.ImpuestoDocSustento = new List<ImpuestoDetalle>(); doc.ImpuestoDocSustento.Add(new ImpuestoDetalle {BaseImponible="50.00",Codigo="2",CodigoPorRet="0",Tarifa="10",Valor="5.00" }); ret.docsSustento.Add(doc); doc.Retenciones = new List<RetencionesATS>(); RetencionesATS retATS = new RetencionesATS() { Codigo = "1", BaseImponible = "50.00", CodigoPorcentaje = "303", PorcentajeRetener = "10", Tarifa = "0.00", Valor = "5.00", Dividendos = new Dividendo() { EjerFisUtDiv = "1900", FechaPagoDiv = "01/03/2023", ImRentaSoc = "50.00" }, CompraCajBan=new CompraCajBanano() { NumCajBan="0", PrecCajBan="50.00" } }; doc.Retenciones.Add(retATS); ret.Version = "2.0.0"; ret.CorreoNotificar = "SI"; pet.Documento = ret; var resp = servicio.EnviarRetencionATS(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); }