diff --git a/bin/account-manager-client.pl b/bin/account-manager-client.pl
index 84dd2ad64c2729581346cac9d4c6663b4544cb47..945ea260236ca2625975c3d5e26f6b83de9d1747 100755
--- a/bin/account-manager-client.pl
+++ b/bin/account-manager-client.pl
@@ -159,13 +159,9 @@ sub parse_federation_metadata {
     };
     die "unable to load federation metadata: $EVAL_ERROR" if $EVAL_ERROR;
 
-    my $data;
-    eval {
-        $data = $federation_metadata->parse(
-            entity_id => $options{sp_entityid},
-        );
-    };
-    die "unable to parse federation metadata: $EVAL_ERROR\n" if $EVAL_ERROR;
+    my $data = $federation_metadata->parse(
+        entity_id => $options{sp_entityid},
+    );
 
     printf "Document %s parsed\n",
       $configuration->{federation_metadata_file_path};
diff --git a/lib/IdPAccountManager/WebRequest.pm b/lib/IdPAccountManager/WebRequest.pm
index 08677e8e34e99e3816ed929ee3f38b76f0823183..e0f53903e3f3ed48d7b38f3a6937d40ae0dca232 100755
--- a/lib/IdPAccountManager/WebRequest.pm
+++ b/lib/IdPAccountManager/WebRequest.pm
@@ -285,19 +285,9 @@ sub req_select_sp {
         return undef;
     }
 
-    eval {
-        $federation_metadata->parse(
-            filter_entity_id => $self->{in}->{sp_entityid}
-        );
-    };
-    if ($EVAL_ERROR) {
-        push @{ $self->{out}->{errors} }, "internal";
-        $self->{logger}->log(
-            level   => LOG_ERROR,
-            message => "Failed to parse federation metadata: $EVAL_ERROR"
-        );
-        return undef;
-    }
+    $federation_metadata->parse(
+        filter_entity_id => $self->{in}->{sp_entityid}
+    );
 
     ## Create a serviceprovider object to store major parameters for this SP in DB
     my $service_provider = IdPAccountManager::Data::ServiceProvider->new(