diff --git a/nachrichten-manager-server/src/main/java/de/ozgcloud/nachrichten/postfach/AttachedItemRemoteService.java b/nachrichten-manager-server/src/main/java/de/ozgcloud/nachrichten/postfach/AttachedItemRemoteService.java
index 5f0c072c1cf44b76fab4c529442cf47977f0da5b..e58d7ea789c085e33fdd534b0978aba34c8e7337 100644
--- a/nachrichten-manager-server/src/main/java/de/ozgcloud/nachrichten/postfach/AttachedItemRemoteService.java
+++ b/nachrichten-manager-server/src/main/java/de/ozgcloud/nachrichten/postfach/AttachedItemRemoteService.java
@@ -51,7 +51,7 @@ class AttachedItemRemoteService {
 	@Autowired
 	private PostfachNachrichtMapper postfachNachrichtMapper;
 
-	public Stream<PostfachNachricht> findPostfachNachrichts(String vorgangId) {
+	public Stream<PostfachNachricht> findReplyAllowedPostfachNachrichts(String vorgangId) {
 		return getVorgangAttachedItemServiceStub().find(buildFindRequest(vorgangId)).getVorgangAttachedItemsList().stream()
 				.filter(this::replyAllowed).map(postfachNachrichtMapper::fromAttachedItem);
 	}
diff --git a/nachrichten-manager-server/src/main/java/de/ozgcloud/nachrichten/postfach/PersistPostfachNachrichtServiceImpl.java b/nachrichten-manager-server/src/main/java/de/ozgcloud/nachrichten/postfach/PersistPostfachNachrichtServiceImpl.java
index 91d2c0ef798bb579c1763934c1fe95ec7247b528..378725d403ee2b8514352e30e1f4c519ed107b17 100644
--- a/nachrichten-manager-server/src/main/java/de/ozgcloud/nachrichten/postfach/PersistPostfachNachrichtServiceImpl.java
+++ b/nachrichten-manager-server/src/main/java/de/ozgcloud/nachrichten/postfach/PersistPostfachNachrichtServiceImpl.java
@@ -103,7 +103,7 @@ public class PersistPostfachNachrichtServiceImpl implements PersistPostfachNachr
 
 	@Override
 	public Stream<PostfachNachricht> findRueckfragen(String servicekontoType, String postfachId) {
-		return vorgangRemoteService.findVorgangIds(servicekontoType, postfachId).flatMap(attachedItemRemoteService::findPostfachNachrichts);
+		return vorgangRemoteService.findVorgangIds(servicekontoType, postfachId).flatMap(attachedItemRemoteService::findReplyAllowedPostfachNachrichts);
 	}
 
 	@Override
diff --git a/nachrichten-manager-server/src/test/java/de/ozgcloud/nachrichten/postfach/AttachedItemRemoteServiceTest.java b/nachrichten-manager-server/src/test/java/de/ozgcloud/nachrichten/postfach/AttachedItemRemoteServiceTest.java
new file mode 100644
index 0000000000000000000000000000000000000000..d06766d810ea307451dfa8a0ec1a70301d3b4a83
--- /dev/null
+++ b/nachrichten-manager-server/src/test/java/de/ozgcloud/nachrichten/postfach/AttachedItemRemoteServiceTest.java
@@ -0,0 +1,213 @@
+/*
+ * Copyright (C) 2024 Das Land Schleswig-Holstein vertreten durch den
+ * Ministerpräsidenten des Landes Schleswig-Holstein
+ * Staatskanzlei
+ * Abteilung Digitalisierung und zentrales IT-Management der Landesregierung
+ *
+ * Lizenziert unter der EUPL, Version 1.2 oder - sobald
+ * diese von der Europäischen Kommission genehmigt wurden -
+ * Folgeversionen der EUPL ("Lizenz");
+ * Sie dürfen dieses Werk ausschließlich gemäß
+ * dieser Lizenz nutzen.
+ * Eine Kopie der Lizenz finden Sie hier:
+ *
+ * https://joinup.ec.europa.eu/collection/eupl/eupl-text-eupl-12
+ *
+ * Sofern nicht durch anwendbare Rechtsvorschriften
+ * gefordert oder in schriftlicher Form vereinbart, wird
+ * die unter der Lizenz verbreitete Software "so wie sie
+ * ist", OHNE JEGLICHE GEWÄHRLEISTUNG ODER BEDINGUNGEN -
+ * ausdrücklich oder stillschweigend - verbreitet.
+ * Die sprachspezifischen Genehmigungen und Beschränkungen
+ * unter der Lizenz sind dem Lizenztext zu entnehmen.
+ */
+package de.ozgcloud.nachrichten.postfach;
+
+import static org.assertj.core.api.Assertions.*;
+import static org.mockito.Mockito.*;
+
+import java.util.Collections;
+
+import org.junit.jupiter.api.BeforeEach;
+import org.junit.jupiter.api.DisplayName;
+import org.junit.jupiter.api.Nested;
+import org.junit.jupiter.api.Test;
+import org.junit.jupiter.params.ParameterizedTest;
+import org.junit.jupiter.params.provider.EnumSource;
+import org.mockito.InjectMocks;
+import org.mockito.Mock;
+import org.mockito.Spy;
+
+import de.ozgcloud.nachrichten.common.grpc.NachrichtenCallContextAttachingInterceptor;
+import de.ozgcloud.nachrichten.postfach.osi.MessageTestFactory;
+import de.ozgcloud.vorgang.common.GrpcObject;
+import de.ozgcloud.vorgang.common.GrpcProperty;
+import de.ozgcloud.vorgang.vorgangAttachedItem.GrpcFindVorgangAttachedItemRequest;
+import de.ozgcloud.vorgang.vorgangAttachedItem.GrpcFindVorgangAttachedItemResponse;
+import de.ozgcloud.vorgang.vorgangAttachedItem.GrpcVorgangAttachedItem;
+import de.ozgcloud.vorgang.vorgangAttachedItem.VorgangAttachedItemServiceGrpc.VorgangAttachedItemServiceBlockingStub;
+
+class AttachedItemRemoteServiceTest {
+
+	@Spy
+	@InjectMocks
+	private AttachedItemRemoteService attachedItemRemoteService;
+
+	@Mock
+	private VorgangAttachedItemServiceBlockingStub vorgangAttachedItemServiceBlockingStub;
+
+	@Mock
+	private PostfachNachrichtMapper postfachNachrichtMapper;
+
+	@Nested
+	class TestFindReplyAllowedPostfachNachrichts {
+
+		private static final GrpcVorgangAttachedItem GRPC_VORGANG_ATTACHED_ITEM = GrpcVorgangAttachedItemTestFactory.create();
+
+		@Mock
+		private GrpcFindVorgangAttachedItemRequest grpcFindVorgangAttachedItemRequest;
+		@Mock
+		private GrpcFindVorgangAttachedItemResponse grpcFindVorgangAttachedItemResponse;
+		@Mock
+		private PostfachNachricht postfachNachricht;
+
+		@BeforeEach
+		void init() {
+			when(grpcFindVorgangAttachedItemResponse.getVorgangAttachedItemsList()).thenReturn(Collections.singletonList(GRPC_VORGANG_ATTACHED_ITEM));
+			when(vorgangAttachedItemServiceBlockingStub.find(any())).thenReturn(grpcFindVorgangAttachedItemResponse);
+			doReturn(vorgangAttachedItemServiceBlockingStub).when(attachedItemRemoteService).getVorgangAttachedItemServiceStub();
+		}
+
+		@Test
+		void testCallGetVorgangAttachedItemServiceStub() {
+			attachedItemRemoteService.findReplyAllowedPostfachNachrichts(MessageTestFactory.VORGANG_ID);
+
+			verify(attachedItemRemoteService).getVorgangAttachedItemServiceStub();
+		}
+
+		@Test
+		void shouldCallBuildFindRequest() {
+			attachedItemRemoteService.findReplyAllowedPostfachNachrichts(MessageTestFactory.VORGANG_ID);
+
+			verify(attachedItemRemoteService).buildFindRequest(MessageTestFactory.VORGANG_ID);
+		}
+
+		@Test
+		void shouldCallFind() {
+			doReturn(grpcFindVorgangAttachedItemRequest).when(attachedItemRemoteService).buildFindRequest(anyString());
+
+			attachedItemRemoteService.findReplyAllowedPostfachNachrichts(MessageTestFactory.VORGANG_ID);
+
+			verify(vorgangAttachedItemServiceBlockingStub).find(grpcFindVorgangAttachedItemRequest);
+		}
+
+		@Test
+		void shouldCallReplyAllowed() {
+			attachedItemRemoteService.findReplyAllowedPostfachNachrichts(MessageTestFactory.VORGANG_ID).toList();
+
+			verify(attachedItemRemoteService).replyAllowed(GRPC_VORGANG_ATTACHED_ITEM);
+		}
+
+		@Test
+		void shouldCallPostfachNachrichtMapper() {
+			doReturn(true).when(attachedItemRemoteService).replyAllowed(any());
+
+			attachedItemRemoteService.findReplyAllowedPostfachNachrichts(MessageTestFactory.VORGANG_ID).toList();
+
+			verify(postfachNachrichtMapper).fromAttachedItem(GRPC_VORGANG_ATTACHED_ITEM);
+		}
+
+		@Test
+		void shouldNotCallPostfachNachrichtMapper() {
+			doReturn(false).when(attachedItemRemoteService).replyAllowed(any());
+
+			attachedItemRemoteService.findReplyAllowedPostfachNachrichts(MessageTestFactory.VORGANG_ID).toList();
+
+			verify(postfachNachrichtMapper, never()).fromAttachedItem(GRPC_VORGANG_ATTACHED_ITEM);
+		}
+
+		@Test
+		void shouldReturnResult() {
+			doReturn(true).when(attachedItemRemoteService).replyAllowed(any());
+			doReturn(postfachNachricht).when(postfachNachrichtMapper).fromAttachedItem(any());
+
+			var result = attachedItemRemoteService.findReplyAllowedPostfachNachrichts(MessageTestFactory.VORGANG_ID);
+
+			assertThat(result).containsExactly(postfachNachricht);
+		}
+	}
+
+	@Nested
+	class TestReplyAllowed {
+
+		@DisplayName("should return true")
+		@ParameterizedTest(name = "when replyOption is {0}")
+		@EnumSource(value = PostfachNachricht.ReplyOption.class, names = { "FORBIDDEN" }, mode = EnumSource.Mode.EXCLUDE)
+		void shouldReturnTrue(PostfachNachricht.ReplyOption replyOption) {
+			var grpcVorgangAttachedItem = GrpcVorgangAttachedItemTestFactory.createBuilder().setItem(GrpcObject.newBuilder()
+					.addProperty(GrpcProperty.newBuilder().setName("replyOption").addValue(replyOption.name()))).build();
+
+			var result = attachedItemRemoteService.replyAllowed(grpcVorgangAttachedItem);
+
+			assertThat(result).isTrue();
+		}
+
+		@Test
+		void shouldReturnFalse() {
+			var grpcVorgangAttachedItem = GrpcVorgangAttachedItemTestFactory.createBuilder().setItem(GrpcObject.newBuilder()
+					.addProperty(GrpcProperty.newBuilder().setName("replyOption").addValue("FORBIDDEN"))).build();
+
+			var result = attachedItemRemoteService.replyAllowed(grpcVorgangAttachedItem);
+
+			assertThat(result).isFalse();
+		}
+	}
+
+	@Nested
+	class TestBuildFindRequest {
+
+		@Test
+		void shouldSetVorgangId() {
+			var result = attachedItemRemoteService.buildFindRequest(MessageTestFactory.VORGANG_ID);
+
+			assertThat(result.getVorgangId()).isEqualTo(MessageTestFactory.VORGANG_ID);
+		}
+
+		@Test
+		void shouldSetClient() {
+			var result = attachedItemRemoteService.buildFindRequest(MessageTestFactory.VORGANG_ID);
+
+			assertThat(result.getClient()).isEqualTo(AttachedItemRemoteService.CLIENT);
+		}
+
+		@Test
+		void shouldSetItemName() {
+			var result = attachedItemRemoteService.buildFindRequest(MessageTestFactory.VORGANG_ID);
+
+			assertThat(result.getItemName()).isEqualTo(AttachedItemRemoteService.ITEM_NAME);
+		}
+	}
+
+	@Nested
+	class TestGetVorgangAttachedItemServiceStub {
+
+		@Mock
+		private VorgangAttachedItemServiceBlockingStub stubWithInterceptor;
+
+		@Test
+		void shouldAddInterceptor() {
+			attachedItemRemoteService.getVorgangAttachedItemServiceStub();
+
+			verify(vorgangAttachedItemServiceBlockingStub).withInterceptors(any(NachrichtenCallContextAttachingInterceptor.class));
+		}
+
+		@Test
+		void shouldReturnStub() {
+			when(vorgangAttachedItemServiceBlockingStub.withInterceptors(any())).thenReturn(stubWithInterceptor);
+
+			var result = attachedItemRemoteService.getVorgangAttachedItemServiceStub();
+
+			assertThat(result).isSameAs(stubWithInterceptor);
+		}
+	}
+}
\ No newline at end of file
diff --git a/nachrichten-manager-server/src/test/java/de/ozgcloud/nachrichten/postfach/GrpcVorgangAttachedItemTestFactory.java b/nachrichten-manager-server/src/test/java/de/ozgcloud/nachrichten/postfach/GrpcVorgangAttachedItemTestFactory.java
new file mode 100644
index 0000000000000000000000000000000000000000..49dbefe72df4c240fc4ca8efeb0a9a0803e5a08e
--- /dev/null
+++ b/nachrichten-manager-server/src/test/java/de/ozgcloud/nachrichten/postfach/GrpcVorgangAttachedItemTestFactory.java
@@ -0,0 +1,52 @@
+/*
+ * Copyright (C) 2022 Das Land Schleswig-Holstein vertreten durch den
+ * Ministerpräsidenten des Landes Schleswig-Holstein
+ * Staatskanzlei
+ * Abteilung Digitalisierung und zentrales IT-Management der Landesregierung
+ *
+ * Lizenziert unter der EUPL, Version 1.2 oder - sobald
+ * diese von der Europäischen Kommission genehmigt wurden -
+ * Folgeversionen der EUPL ("Lizenz");
+ * Sie dürfen dieses Werk ausschließlich gemäß
+ * dieser Lizenz nutzen.
+ * Eine Kopie der Lizenz finden Sie hier:
+ *
+ * https://joinup.ec.europa.eu/collection/eupl/eupl-text-eupl-12
+ *
+ * Sofern nicht durch anwendbare Rechtsvorschriften
+ * gefordert oder in schriftlicher Form vereinbart, wird
+ * die unter der Lizenz verbreitete Software "so wie sie
+ * ist", OHNE JEGLICHE GEWÄHRLEISTUNG ODER BEDINGUNGEN -
+ * ausdrücklich oder stillschweigend - verbreitet.
+ * Die sprachspezifischen Genehmigungen und Beschränkungen
+ * unter der Lizenz sind dem Lizenztext zu entnehmen.
+ */
+package de.ozgcloud.nachrichten.postfach;
+
+import de.ozgcloud.vorgang.common.GrpcObject;
+import de.ozgcloud.vorgang.common.GrpcProperty;
+import de.ozgcloud.vorgang.vorgangAttachedItem.GrpcVorgangAttachedItem;
+
+public class GrpcVorgangAttachedItemTestFactory {
+
+	public static final String ID = "id";
+	public static final String CLIENT = "client";
+	public static final String ITEM_NAME = "itemName";
+
+	public static final String PROPERTY_NAME = "propertyName";
+	public static final String PROPERTY_NAME_VALUE = "propertyNameValue";
+	public static final GrpcObject OBJECT = GrpcObject.newBuilder()
+			.addProperty(GrpcProperty.newBuilder().setName(PROPERTY_NAME).addValue(PROPERTY_NAME_VALUE).build()).build();
+
+	static GrpcVorgangAttachedItem create() {
+		return createBuilder().build();
+	}
+
+	static GrpcVorgangAttachedItem.Builder createBuilder() {
+		return GrpcVorgangAttachedItem.newBuilder()
+				.setId(ID)
+				.setClient(CLIENT)
+				.setItemName(ITEM_NAME)
+				.setItem(OBJECT);
+	}
+}