diff --git a/internal/mock/grpc_server.go b/internal/mock/grpc_server.go
index 3863406223e394f30b8711a4169007ef4e701b83..f38b1e07471ff02e033d5c889b9959c9f7765966 100644
--- a/internal/mock/grpc_server.go
+++ b/internal/mock/grpc_server.go
@@ -43,15 +43,15 @@ type registrationServer struct {
 
 func (s *registrationServer) Register(ctx context.Context, in *pb.GrpcFachstelleRegistrationRequest) (*pb.GrpcFachstelleRegistrationResponse, error) {
 	if in.Fachstelle == nil {
-		return nil, status.Error(codes.InvalidArgument, "Fachstelle is missing")
+		return nil, status.Error(codes.InvalidArgument, "fachstelle is missing")
 	}
 
 	if in.Fachstelle.MukId == "conflictMukId" {
-		return nil, status.Error(codes.AlreadyExists, "Conflict MukId")
+		return nil, status.Error(codes.AlreadyExists, "conflict MukId")
 	} else if in.Fachstelle.MukId == "unavailableMukId" {
-		return nil, status.Error(codes.Unavailable, "Unavailable MukId")
+		return nil, status.Error(codes.Unavailable, "unavailable MukId")
 	} else if in.Fachstelle.MukId == "erroneousMukId" {
-		return nil, status.Error(codes.Internal, "Erroneous MukId")
+		return nil, status.Error(codes.Internal, "erroneous MukId")
 	}
 
 	return &pb.GrpcFachstelleRegistrationResponse{}, nil
@@ -63,11 +63,11 @@ type collaborationServer struct {
 
 func (s *collaborationServer) FindVorgang(ctx context.Context, in *pb.GrpcFindVorgangRequest) (*pb.GrpcFindVorgangResponse, error) {
 	if in.VorgangId == "" {
-		return nil, status.Error(codes.InvalidArgument, "VorgangId is missing")
+		return nil, status.Error(codes.InvalidArgument, "vorgangId is missing")
 	}
 
 	if in.SamlToken == "" {
-		return nil, status.Error(codes.InvalidArgument, "SamlToken is missing")
+		return nil, status.Error(codes.InvalidArgument, "samlToken is missing")
 	}
 
 	return &pb.GrpcFindVorgangResponse{Vorgang: &pb.GrpcVorgang{Id: "testVorgangId"}}, nil
diff --git a/internal/server/grpc_router.go b/internal/server/grpc_router.go
index 3b9006e9410885f0229c6f0f9a37161a0c5734c3..a0437cd9c32040fdeed1005bd534d2578e88c7e8 100644
--- a/internal/server/grpc_router.go
+++ b/internal/server/grpc_router.go
@@ -49,16 +49,20 @@ type collaborationRouter struct {
 
 func (s *collaborationRouter) FindVorgang(ctx context.Context, in *pb.GrpcFindVorgangRequest) (*pb.GrpcFindVorgangResponse, error) {
 	if in.VorgangId == "" {
-		return nil, status.Error(codes.InvalidArgument, "VorgangId is missing")
+		return nil, status.Error(codes.InvalidArgument, "vorgangId is missing")
 	}
 
 	collaborationInfo, decodeErr := DecodeCollaborationInfo(in.VorgangId)
 	if decodeErr != nil {
-		return nil, status.Error(codes.InvalidArgument, "VorgangId has invalid format, expected base64 encoded 'collaborationServerAddress/vorgangId'")
+		return nil, status.Error(codes.InvalidArgument, decodeErr.Error())
 	}
 
-	client, connCleanUp := createCollaborationClient(collaborationInfo.CollaborationServerAddress)
+	client, connCleanUp, err := createCollaborationClient(collaborationInfo.CollaborationServerAddress)
+	if err != nil {
+		return nil, status.Error(codes.Internal, err.Error())
+	}
 	defer connCleanUp()
+
 	updatedRequest := &pb.GrpcFindVorgangRequest{VorgangId: collaborationInfo.Attribute, SamlToken: in.SamlToken}
 
 	return client.FindVorgang(context.Background(), updatedRequest)
@@ -86,11 +90,13 @@ func DecodeCollaborationInfo(encodedCollaborationInfo string) (*CollaborationInf
 	}, nil
 }
 
-func createCollaborationClient(collaborationServerAddress string) (pb.CollaborationServiceClient, func()) {
+func createCollaborationClient(collaborationServerAddress string) (pb.CollaborationServiceClient, func(), error) {
 	target := GetCollaborationServerUrl(collaborationServerAddress, conf)
 	conn, err := grpc.NewClient(target, grpc.WithTransportCredentials(insecure.NewCredentials()))
 	if err != nil {
-		logger.Fatal("collaboration router failed to route: %v", err)
+		logger.Error("collaboration router failed to route: %v", err)
+
+		return nil, nil, errors.New("collaboration router failed to route")
 	}
 
 	client := pb.NewCollaborationServiceClient(conn)
@@ -98,7 +104,7 @@ func createCollaborationClient(collaborationServerAddress string) (pb.Collaborat
 		conn.Close()
 	}
 
-	return client, connCleanUp
+	return client, connCleanUp, nil
 }
 
 func GetCollaborationServerUrl(collaborationServerAddress string, c config.Config) string {
diff --git a/internal/server/grpc_router_test.go b/internal/server/grpc_router_test.go
index 1875306130838b6233f09e96f75a7137d630c87a..4401e582040ffe0c833cd1cd96ad73dd73426997 100644
--- a/internal/server/grpc_router_test.go
+++ b/internal/server/grpc_router_test.go
@@ -82,7 +82,7 @@ func TestStartCollaborationRouter(t *testing.T) {
 		resp, err := client.FindVorgang(context.Background(), &pb.GrpcFindVorgangRequest{VorgangId: "bG9jYWxob3N0L3Rlc3RWb3JnYW5nSWQ="})
 
 		assert.Error(t, err)
-		assert.Contains(t, err.Error(), "SamlToken is missing")
+		assert.Contains(t, err.Error(), "samlToken is missing")
 		assert.Nil(t, resp)
 	})
 
@@ -93,7 +93,7 @@ func TestStartCollaborationRouter(t *testing.T) {
 		resp, err := client.FindVorgang(context.Background(), &pb.GrpcFindVorgangRequest{})
 
 		assert.Error(t, err)
-		assert.Contains(t, err.Error(), "VorgangId is missing")
+		assert.Contains(t, err.Error(), "vorgangId is missing")
 		assert.Nil(t, resp)
 	})
 }
@@ -106,7 +106,7 @@ func TestDecodeCollaborationInfo(t *testing.T) {
 		assert.NotNil(t, result)
 	})
 
-	t.Run("should have collaboration server dddress", func(t *testing.T) {
+	t.Run("should have collaboration server address", func(t *testing.T) {
 		result, err := DecodeCollaborationInfo("bG9jYWxob3N0L3Rlc3RWb3JnYW5nSWQ=")
 
 		assert.NoError(t, err)