diff --git a/src/main/java/de/ozgcloud/nachrichten/postfach/muk/transfer/ElsterTransferRemoteService.java b/src/main/java/de/ozgcloud/nachrichten/postfach/muk/transfer/ElsterTransferRemoteService.java
index a15cc77ef67b28a92b84309856aef6f3e4aea9d3..37b776c5e0946c6b4dc1a09d211be3906b38b5ac 100644
--- a/src/main/java/de/ozgcloud/nachrichten/postfach/muk/transfer/ElsterTransferRemoteService.java
+++ b/src/main/java/de/ozgcloud/nachrichten/postfach/muk/transfer/ElsterTransferRemoteService.java
@@ -40,6 +40,7 @@ import java.util.Set;
 import java.util.UUID;
 import java.util.stream.Stream;
 
+import org.apache.commons.collections.CollectionUtils;
 import org.apache.commons.lang3.StringUtils;
 import org.bson.types.ObjectId;
 import org.springframework.boot.autoconfigure.condition.ConditionalOnProperty;
@@ -104,6 +105,19 @@ public class ElsterTransferRemoteService {
 		  .contentType(downloadAnhangDetails.getMimeType()).build();
 	}
 
+	private static String getVorgangId(final DownloadAnhangDetails downloadAnhangDetails) {
+		try {
+			if (Objects.nonNull(downloadAnhangDetails) && StringUtils.isNotEmpty(downloadAnhangDetails.getDateiBezeichnung())) {
+				var dateiBezeichnung = downloadAnhangDetails.getDateiBezeichnung();
+				return dateiBezeichnung.substring(VORGANG_ID_REFIX.length(), VORGANG_ID_REFIX.length() + ObjectId.get().toHexString().length());
+			}
+		} catch (Exception e) {
+			LOG.error("Error extracting VorgangId from Dateibezeichnung. Returning null");
+		}
+
+		return null;
+	}
+
 	public AuftragAngelegt send(PostfachNachricht nachricht) {
 		var auftrag = createBereitstellungsAuftrag(nachricht);
 
@@ -186,7 +200,7 @@ public class ElsterTransferRemoteService {
 		var antworten = loadAntworten();
 
 		return antworten.getDatensaetze().stream()
-		  .map(this::getAntwort);
+		  .map(this::getAntwort).filter(nachricht -> nachricht.getVorgangId() != null);
 	}
 
 	public AntwortDetailsList loadAntworten() {
@@ -200,13 +214,19 @@ public class ElsterTransferRemoteService {
 		  .direction(PostfachNachricht.Direction.IN)
 		  .mailBody(postfachProperties.getBody());
 
-		if (Objects.nonNull(antwortDetails.getZuordnungskriterium())) {
-			var nachrichtId = ObjectIdToUUIDConverter.toObjectId(antwortDetails.getZuordnungskriterium());
-
+		if (Objects.nonNull(antwortDetails.getZuordnungskriterium()) && CollectionUtils.isNotEmpty(antwortDetails.getAnhaenge())) {
 			nachrichtBuilder
-			  .referencedNachricht(nachrichtId.toHexString())
-			  .replyOption(PostfachNachricht.ReplyOption.POSSIBLE)
-			  .attachments(getAttachmentIds(antwortDetails, nachrichtId));
+			  .replyOption(PostfachNachricht.ReplyOption.POSSIBLE);
+
+			var nachrichtId = ObjectIdToUUIDConverter.toObjectId(antwortDetails.getZuordnungskriterium());
+			// TODO update to new API as soon the new api is available.
+			var vorgangId = getVorgangId(antwortDetails.getAnhaenge().getFirst());
+			if (Objects.nonNull(vorgangId)) {
+				nachrichtBuilder.vorgangId(vorgangId).attachments(getAttachmentIds(antwortDetails, new ObjectId(vorgangId)));
+			} else {
+				LOG.warn("This nachricht with AntwortDetails {} will be ignored right now. FIXME when new api is available", antwortDetails);
+				nachrichtBuilder.referencedNachricht(nachrichtId.toHexString()).attachments(getAttachmentIds(antwortDetails, nachrichtId));
+			}
 		}
 
 		return nachrichtBuilder.build();
@@ -241,13 +261,12 @@ public class ElsterTransferRemoteService {
 		if (Objects.nonNull(data)) {
 			// TODO update to new API as soon the new api is available. Save to file here and then upload attachment
 			try (var dataIn = new ByteArrayInputStream(data)) {
-				if (Objects.isNull(nachrichtId) && Objects.nonNull(downloadAnhangDetails) && StringUtils.isNotEmpty(
-				  downloadAnhangDetails.getDateiBezeichnung())) {
+				if (Objects.isNull(nachrichtId)) {
 					// can be removed when new api is available
-					var dateiBezeichnung = downloadAnhangDetails.getDateiBezeichnung();
-					var vorgangId = dateiBezeichnung.substring(VORGANG_ID_REFIX.length(),
-					  VORGANG_ID_REFIX.length() + ObjectId.get().toHexString().length());
-					fileIdOptional = storeToOzgCloud(downloadAnhangDetails, vorgangId, dataIn);
+					var vorgangId = getVorgangId(downloadAnhangDetails);
+					if (Objects.nonNull(vorgangId)) {
+						fileIdOptional = storeToOzgCloud(downloadAnhangDetails, vorgangId, dataIn);
+					}
 				} else {
 					// use new api here
 					// fileIdOptional = storeToOzgCloud(downloadAnhangDetails, nachrichtId, dataIn);
diff --git a/src/test/java/de/ozgcloud/nachrichten/postfach/muk/MukPostfachRemoteServiceITCase.java b/src/test/java/de/ozgcloud/nachrichten/postfach/muk/MukPostfachRemoteServiceITCase.java
index a42340e3ef765f70acf21c244deb6f825e991c80..e67e915f9683517c259e886eed79f5013d724c10 100644
--- a/src/test/java/de/ozgcloud/nachrichten/postfach/muk/MukPostfachRemoteServiceITCase.java
+++ b/src/test/java/de/ozgcloud/nachrichten/postfach/muk/MukPostfachRemoteServiceITCase.java
@@ -51,15 +51,12 @@ import de.ozgcloud.nachrichten.postfach.muk.transfer.ElsterTransferRemoteService
 @ITCase
 public class MukPostfachRemoteServiceITCase {
 	private static final String DOWNLOAD_URL = "/rest/abholauftrag/12345/download/be123456789011122233301234567890?anhang=3";
-
+	private static WireMockServer wireMockServer;
 	@Autowired
 	private MukPostfachRemoteService mukPostfachRemoteService;
-
 	@Autowired
 	private MukPostfachProperties properties;
 
-	private static WireMockServer wireMockServer;
-
 	@BeforeAll
 	static void startWireMockServer() {
 		wireMockServer = new WireMockServer();
@@ -132,12 +129,20 @@ public class MukPostfachRemoteServiceITCase {
 		}
 
 		@Test
+		void shouldNotLoadAntwortenBecauseNoVorgangIdInDateibezeichnung() {
+			var antworten = mukPostfachRemoteService.getAllMessages();
+
+			verify(getRequestedFor(urlEqualTo(ANTWORTEN_ENDPOINT)));
+			assertThat(antworten).isEmpty();
+		}
+
+		@Test
+		@Disabled("Need to be fixed when new API is available")
 		void shouldLoadAntworten() {
 			var antworten = mukPostfachRemoteService.getAllMessages();
 
 			verify(getRequestedFor(urlEqualTo(ANTWORTEN_ENDPOINT)));
 			assertThat(antworten).isNotEmpty();
-
 		}
 
 		@Test