/// <summary> /// Se genera la cancelacion de los UUID por medio del certificado /// </summary> /// <param name="Peticion"></param> /// <param name="Certificado"></param> /// <param name="LlavePrivada"></param> /// <param name="ContraseñaCertificado"></param> /// <returns></returns> public bool CancelarCFDI(CancelarCFDIPeticion Peticion, Stream Certificado, Stream LlavePrivada, string ContraseñaCertificado) { AdministradorArchivos = new Archivos(); var arregloCertificado = AdministradorArchivos.ConvertirStreamToByte(Certificado); var arregloLlavePrivada = AdministradorArchivos.ConvertirStreamToByte(LlavePrivada); return(CancelarCFDI(Peticion, arregloCertificado, arregloLlavePrivada, ContraseñaCertificado)); }
/// <summary> /// Se genera la cancelacion de los UUID por medio del certificado /// </summary> /// <param name="Peticion"></param> /// <param name="RutaCertificado"></param> /// <param name="RutaLlavePrivada"></param> /// <param name="ContraseñaCertificado"></param> /// <returns></returns> public bool CancelarCFDI(CancelarCFDIPeticion Peticion, string RutaCertificado, string RutaLlavePrivada, string ContraseñaCertificado) { AdministradorArchivos = new Archivos(); var Certificado = AdministradorArchivos.ConvertirStreamToByte(AdministradorArchivos.Abrir(RutaCertificado)); var LlavePrivada = AdministradorArchivos.ConvertirStreamToByte(AdministradorArchivos.Abrir(RutaLlavePrivada)); return(CancelarCFDI(Peticion, Certificado, LlavePrivada, ContraseñaCertificado)); }
public bool CancelarCFDI(CancelarCFDIPeticion Peticion, Byte[] Certificado, Byte[] LlavePrivada, string ContraseñaCertificado) { #region "Variables" MensajeError = string.Empty; Mensaje = string.Empty; Resultado = false; AdministradorArchivos = new Archivos(); Utilerias utilerias = new Utilerias(); #endregion "Variables" #region "Valores Predeterminados" Resultado = utilerias.ValidaRFC(Peticion.RFC); if (Resultado == false) { Mensaje = "Ingrese el RFC correctamente"; return(false); } var configuracion = new Configuracion(); Resultado = configuracion.CargaCertificado(Certificado, LlavePrivada, ContraseñaCertificado, Peticion.RFC); if (Resultado == true) { FacturoPorTi.Api.Cfdi.Seguridad.Certificado certifica = new FacturoPorTi.Api.Cfdi.Seguridad.Certificado(); Peticion.PFX = AdministradorArchivos.ConvertirByteToBase64(certifica.GeneraPFX(Certificado, LlavePrivada, ContraseñaCertificado)); Peticion.PFXPassword = ContraseñaCertificado; } else { Mensaje = configuracion.Mensaje; } #endregion "Valores Predeterminados" Resultado = false; WebServiceFacturoPorTi Api = new WebServiceFacturoPorTi(SandBox); Cancelaciones = Api.ConsumeServicio <CancelarCFDIPeticion, CancelarCFDIRespuesta>("ApiCancelarCFDI", FacturoPorTi.Api.Cfdi.Genericos.TipoVerboHttp.Post, Peticion); if (Cancelaciones != null) { MensajeError = Api.MensajeError; if (Cancelaciones.Estatus.Codigo == "000") { Resultado = true; Mensaje = Cancelaciones.Estatus.Descripcion; } else { Mensaje = Cancelaciones.Estatus.Descripcion + Environment.NewLine + Environment.NewLine + Cancelaciones.Estatus.InformacionTecnica; } } else { MensajeError = Api.MensajeError; Mensaje = "No se pudo realizar la cancelación si el problema persiste comuniquese a [email protected]"; } return(Resultado); }