diff --git a/ekms/internal/kms/kmsintercom.go b/ekms/internal/kms/kmsintercom.go
index 583b46a25fb7360910c5b3197c21fda9cec7ee68..bb35c92bea20712de617ddcc2a6e46c439038771 100644
--- a/ekms/internal/kms/kmsintercom.go
+++ b/ekms/internal/kms/kmsintercom.go
@@ -230,12 +230,10 @@ func (s *kmsTalkerServer) KeyForwarding(ctx context.Context, in *pb.KeyForwardin
 	log.Infof("%s received a payload: %s, from %s", s.eKMS.kmsName, decryptedPayload, route.Previous.tcpSocketStr)
 
 	if route.Next != nil {
-		log.Infof("%s is trying to forward payload to : %s", s.eKMS.kmsName, route.Next.tcpSocketStr)
-		err := route.Next.SendPayload(decryptedPayload, pathId)
-		if err != nil {
-			return nil, status.Errorf(codes.Internal, "%s", err)
-		}
-		log.Infof("%s forwarded the payload to : %s successfully", s.eKMS.kmsName, route.Next.tcpSocketStr)
+		log.Infof("%s forwards payload to : %s", s.eKMS.kmsName, route.Next.tcpSocketStr)
+		// TODO: find a better way of handling this; ignore the lint error for
+		// now.
+		go route.Next.SendPayload(decryptedPayload, pathId) //nolint:errcheck
 	} else {
 		log.Infof("%s received the final payload: %s", s.eKMS.kmsName, string(decryptedPayload))
 	}