Exemple #1
0
        public EntResultadoCancelacion CancelarComprobante(string emisorRFC, string uuid)
        {
            try
            {
                //Extraemos la configuración del archivo
                bool   ambienteProductivo = ConfigurationManager.AppSettings.GetValues("ambienteProductivo")[0].ToBoolean();
                string usuarioIntegrador  = ConfigurationManager.AppSettings.GetValues("usuarioIntegrador")[0];

                //Establecemos las credenciales para el permiso de conexión
                Conector conector = new Conector(ambienteProductivo);
                conector.EstableceCredenciales(usuarioIntegrador);

                //Cancelamos el comprobante a traves de una petición al PAC
                Profact.TimbraCFDI.ResultadoCancelacion resultadoCancelacion = conector.CancelaCFDI(emisorRFC, uuid);

                EntResultadoCancelacion resultado = new EntResultadoCancelacion()
                {
                    Exitoso = resultadoCancelacion.Exitoso,
                    Mensaje = resultadoCancelacion.Descripcion
                };
                return(resultado);
            }
            catch (Exception ex)
            {
                throw ex.GetBaseException();
            }
        }
Exemple #2
0
        private void btnCancelaCFDI_Click(object sender, EventArgs e)
        {
            //En este ejemplo se muestra como cancelar un comprobante xml, previamente timbrado

            //Inicializamos el conector el parámetro indica el ambiente en el que se utilizará
            //Fasle = Ambiente de pruebas
            //True = Ambiente de producción
            Conector conector = new Conector(false);

            //Establecemos las credenciales para el permiso de conexión
            //Ambiente de pruebas = mvpNUXmQfK8=
            //Ambiente de producción = Esta será asignado por el proveedor al salir a productivo
            conector.EstableceCredenciales("mvpNUXmQfK8=");

            //Rfc Emisor
            string rfcEmisor = txtRfcEmisorCancelacion.Text.Trim();

            //Folio Fiscal - UUID
            string folioFiscal = txtFolioFiscalCancelacion.Text.Trim();

            //Obtenemos el xml por medio del conector y guardamos resultado
            ResultadoCancelacion resultadoCancelacion;

            resultadoCancelacion = conector.CancelaCFDI(rfcEmisor, folioFiscal);

            //Verificamos el resultado
            if (resultadoCancelacion.Exitoso)
            {
                //El comprobante fue cancelado exitosamente
                MessageBox.Show("Cancelación exitosa " + resultadoCancelacion.Descripcion);
            }
            else
            {
                //No se pudo cancelar, mostramos respuesta
                MessageBox.Show(resultadoCancelacion.Descripcion);
            }
        }