diff --git a/nachrichten-manager-postfach-interface/src/main/java/de/ozgcloud/nachrichten/postfach/PostfachAddressIdentifier.java b/nachrichten-manager-postfach-interface/src/main/java/de/ozgcloud/nachrichten/postfach/PostfachAddressIdentifier.java
index 5d60cfbd4c5550d249fb6701571e058249dffa38..5afe5cf937829278c87d48deccddef99841da044 100644
--- a/nachrichten-manager-postfach-interface/src/main/java/de/ozgcloud/nachrichten/postfach/PostfachAddressIdentifier.java
+++ b/nachrichten-manager-postfach-interface/src/main/java/de/ozgcloud/nachrichten/postfach/PostfachAddressIdentifier.java
@@ -2,4 +2,7 @@ package de.ozgcloud.nachrichten.postfach;
 
 public interface PostfachAddressIdentifier {
 
+	default boolean isStringBasedIdentifier() {
+		return false;
+	}
 }
diff --git a/nachrichten-manager-server/src/main/java/de/ozgcloud/nachrichten/info/InfoManagerService.java b/nachrichten-manager-server/src/main/java/de/ozgcloud/nachrichten/info/InfoManagerService.java
index 3eb6f3919cb8d1c5456bc0d232b1c2d30c02d3ab..0d6397bf4323f5195060a06b219b984bb3019144 100644
--- a/nachrichten-manager-server/src/main/java/de/ozgcloud/nachrichten/info/InfoManagerService.java
+++ b/nachrichten-manager-server/src/main/java/de/ozgcloud/nachrichten/info/InfoManagerService.java
@@ -7,10 +7,12 @@ import org.springframework.stereotype.Service;
 
 import de.ozgcloud.nachrichten.NachrichtenManagerProperties;
 import de.ozgcloud.nachrichten.antragraum.AntragraumProperties;
+import de.ozgcloud.nachrichten.postfach.PostfachAddress;
 import de.ozgcloud.nachrichten.postfach.PostfachException;
 import de.ozgcloud.nachrichten.postfach.PostfachMessageCode;
 import de.ozgcloud.nachrichten.postfach.PostfachNachricht;
 import de.ozgcloud.nachrichten.postfach.StringBasedIdentifier;
+import lombok.NonNull;
 import lombok.RequiredArgsConstructor;
 import lombok.extern.log4j.Log4j2;
 
@@ -40,14 +42,18 @@ public class InfoManagerService {
 		return InfoManagerRequest.builder()
 				.nachrichtId(postfachNachricht.getId())
 				.vorgangId(postfachNachricht.getVorgangId())
-				.postfachId(getPostfachId(postfachNachricht))
+				.postfachId(getPostfachId(postfachNachricht.getPostfachAddress()))
 				.nachrichtenManagerUrl(nachrichtenManagerProperties.getAddress())
 				.build();
 	}
 
-	String getPostfachId(PostfachNachricht nachricht) {
-		// FIXME - wie gehen wir mit anderen Typen um?
-		var identifier = (StringBasedIdentifier) nachricht.getPostfachAddress().getIdentifier();
-		return identifier.getPostfachId();
+	String getPostfachId(@NonNull PostfachAddress address) {
+		var postfachIdentifier = address.getIdentifier();
+
+		if (postfachIdentifier.isStringBasedIdentifier()) {
+			return ((StringBasedIdentifier) postfachIdentifier).getPostfachId();
+		} else {
+			throw new IllegalStateException("Illegal Type of Postfach Identifier: " + postfachIdentifier.getClass().getName());
+		}
 	}
 }
diff --git a/nachrichten-manager-server/src/main/java/de/ozgcloud/nachrichten/postfach/StringBasedIdentifier.java b/nachrichten-manager-server/src/main/java/de/ozgcloud/nachrichten/postfach/StringBasedIdentifier.java
index da37d0e5d7c1c788f3a9ab2a4af4b1f0215d2a51..841dfd17adb9931bb68a87a3f0855bc20057429b 100644
--- a/nachrichten-manager-server/src/main/java/de/ozgcloud/nachrichten/postfach/StringBasedIdentifier.java
+++ b/nachrichten-manager-server/src/main/java/de/ozgcloud/nachrichten/postfach/StringBasedIdentifier.java
@@ -8,4 +8,9 @@ import lombok.Getter;
 public class StringBasedIdentifier implements PostfachAddressIdentifier {
 
 	private String postfachId;
+
+	@Override
+	public boolean isStringBasedIdentifier() {
+		return true;
+	}
 }
diff --git a/nachrichten-manager-server/src/test/java/de/ozgcloud/nachrichten/info/InfoManagerServiceTest.java b/nachrichten-manager-server/src/test/java/de/ozgcloud/nachrichten/info/InfoManagerServiceTest.java
index d7d149a4ca821b59cfa2db7566b1e6077b6d8511..ca6c910141e2ebbba0e3dee44fc398417411e56c 100644
--- a/nachrichten-manager-server/src/test/java/de/ozgcloud/nachrichten/info/InfoManagerServiceTest.java
+++ b/nachrichten-manager-server/src/test/java/de/ozgcloud/nachrichten/info/InfoManagerServiceTest.java
@@ -12,6 +12,8 @@ import org.mockito.Mock;
 import org.mockito.Spy;
 
 import de.ozgcloud.nachrichten.NachrichtenManagerProperties;
+import de.ozgcloud.nachrichten.postfach.PostfachAddressIdentifier;
+import de.ozgcloud.nachrichten.postfach.PostfachAddressTestFactory;
 import de.ozgcloud.nachrichten.postfach.PostfachException;
 import de.ozgcloud.nachrichten.postfach.PostfachMessageCode;
 import de.ozgcloud.nachrichten.postfach.PostfachNachricht;
@@ -99,6 +101,26 @@ class InfoManagerServiceTest {
 				return service.builInfomanagerRequest(postfachNachricht);
 			}
 		}
+	}
+
+	@Nested
+	class TestGetPostfachId {
+		@Test
+		void shouldReturnId() {
+			var address = PostfachAddressTestFactory.create();
+
+			var id = service.getPostfachId(address);
 
+			assertThat(id).isEqualTo(PostfachAddressTestFactory.STRING_BASED_IDENTIFIER_POSTFACH_ID_VALUE);
+		}
+
+		@Test
+		void shouldThrowExceptionForUnkownIdentifer() {
+			var identifier = new PostfachAddressIdentifier() {
+			};
+			var address = PostfachAddressTestFactory.createBuilder().identifier(identifier).build();
+
+			assertThatThrownBy(() -> service.getPostfachId(address)).isInstanceOf(IllegalStateException.class);
+		}
 	}
 }