diff --git a/src/test/java/de/ozgcloud/xta/client/XtaSchemaValidationITCase.java b/src/test/java/de/ozgcloud/xta/client/XtaSchemaValidationITCase.java
index 44679c30be202e455b972a1612a03d6578bf866f..542c12c9e3d3d6460f3af92777c765774a747cdc 100644
--- a/src/test/java/de/ozgcloud/xta/client/XtaSchemaValidationITCase.java
+++ b/src/test/java/de/ozgcloud/xta/client/XtaSchemaValidationITCase.java
@@ -1,15 +1,19 @@
 package de.ozgcloud.xta.client;
 
 import static com.github.tomakehurst.wiremock.client.WireMock.*;
-import static com.github.tomakehurst.wiremock.core.WireMockConfiguration.*;
+import static com.github.tomakehurst.wiremock.core.WireMockConfiguration.options;
 import static org.assertj.core.api.Assertions.*;
 
+import java.io.File;
+
+import org.apache.commons.io.FileUtils;
 import org.junit.jupiter.api.AfterEach;
 import org.junit.jupiter.api.BeforeEach;
 import org.junit.jupiter.api.DisplayName;
 import org.junit.jupiter.api.Test;
 
 import com.github.tomakehurst.wiremock.WireMockServer;
+import com.github.tomakehurst.wiremock.client.WireMock;
 
 import de.ozgcloud.xta.client.config.XtaClientConfig;
 import de.ozgcloud.xta.client.core.WrappedXtaService;
@@ -18,7 +22,6 @@ import de.ozgcloud.xta.client.factory.XtaMockServerResponseTestFactory;
 import de.ozgcloud.xta.client.model.XtaIdentifier;
 import lombok.SneakyThrows;
 
-
 class XtaSchemaValidationITCase {
 
 	WrappedXtaService xtaService;
@@ -32,16 +35,37 @@ class XtaSchemaValidationITCase {
 	@BeforeEach
 	@SneakyThrows
 	void setup() {
-		wireMockServer = new WireMockServer(options().port(8089));
+		wireMockServer = new WireMockServer(options()
+				.port(8088)
+				.httpsPort(8089)
+				.keystorePath("store/xta-test-server_keystore.p12")
+				.keystorePassword("password")
+				.keystoreType("PKCS12")
+				.caKeystorePath("store/xta-test_truststore.jks")
+				.caKeystorePassword("password")
+				.caKeystoreType("JKS")
+		);
 		wireMockServer.start();
 
+		WireMock.configureFor(8088);
+
 		xtaService = WrappedXtaServiceFactory.from(XtaClientConfig.builder()
 				.schemaValidation(true)
 				.logSoapResponses(true)
 				.logSoapRequests(true)
-				.managementServiceUrl(XTA_MOCK_SERVER_URL + "managementPort.svc")
-				.sendServiceUrl(XTA_MOCK_SERVER_URL + "sendPort.svc")
-				.msgBoxServiceUrl(XTA_MOCK_SERVER_URL + "msgBoxPort.svc")
+				.trustStore(XtaClientConfig.KeyStore.builder()
+						.content(FileUtils.readFileToByteArray(new File("src/test/resources/store/xta-test_truststore.jks")))
+						.password("password".toCharArray())
+						.type("JKS")
+						.build())
+				.clientCertKeystore(XtaClientConfig.KeyStore.builder()
+						.content(FileUtils.readFileToByteArray(new File("src/test/resources/store/xta-test-client-john-smith_keystore.p12")))
+						.password("password".toCharArray())
+						.type("PKCS12")
+						.build())
+				.managementServiceUrl(wireMockServer.baseUrl() + XTA_MOCK_SERVER_URL_PATH + "managementPort.svc")
+				.sendServiceUrl(wireMockServer.baseUrl() + XTA_MOCK_SERVER_URL_PATH + "sendPort.svc")
+				.msgBoxServiceUrl(wireMockServer.baseUrl() + XTA_MOCK_SERVER_URL_PATH + "msgBoxPort.svc")
 				.build()).create();
 	}
 
@@ -54,7 +78,7 @@ class XtaSchemaValidationITCase {
 	@Test
 	@SneakyThrows
 	void shouldThrowUnmarshallExceptionOnBadResponse() {
-		stubFor(post(XTA_MOCK_SERVER_URL_PATH + "msgBoxPort.svc")
+		wireMockServer.stubFor(post(XTA_MOCK_SERVER_URL_PATH + "msgBoxPort.svc")
 				.willReturn(
 						XtaMockServerResponseTestFactory.createGetMessageResponse(
 								"2f45a9e9-ed40-4e14-a082-de0d063e56e7_Geschaeftsgang.Geschaeftsgang.0201.zip")));
diff --git a/src/test/java/de/ozgcloud/xta/client/factory/XtaMockServerResponseTestFactory.java b/src/test/java/de/ozgcloud/xta/client/factory/XtaMockServerResponseTestFactory.java
index 4f34d702616dcf1eab1f3c02a388f2807295a63f..25c79eb22143d4946e1fb6dbb163a104a5e13618 100644
--- a/src/test/java/de/ozgcloud/xta/client/factory/XtaMockServerResponseTestFactory.java
+++ b/src/test/java/de/ozgcloud/xta/client/factory/XtaMockServerResponseTestFactory.java
@@ -30,7 +30,7 @@ public class XtaMockServerResponseTestFactory {
 	);
 
 	private static String generateMessageID(String xtaAttachmentFileName) {
-		return "urn:de:xta:messageid:dataport_xta_210:%s".formatted(UUID.fromString(xtaAttachmentFileName).toString());
+		return "urn:de:xta:messageid:dataport_xta_210:%s".formatted(UUID.nameUUIDFromBytes(xtaAttachmentFileName.getBytes()).toString());
 	}
 
 	public static ResponseDefinitionBuilder createEmptyGetStatusListResponse() {
diff --git a/src/test/resources/mock-responses/getMessage/stage-example/example2/example.xml b/src/test/resources/mock-responses/getMessage/stage-example/example2/example.xml
new file mode 100644
index 0000000000000000000000000000000000000000..73f9d6e53d25a650f48d1c0d5cddb9d8de610d1b
--- /dev/null
+++ b/src/test/resources/mock-responses/getMessage/stage-example/example2/example.xml
@@ -0,0 +1,59 @@
+<s:Envelope xmlns:s="http://www.w3.org/2003/05/soap-envelope" xmlns:a="http://www.w3.org/2005/08/addressing">
+	<s:Header>
+		<a:Action s:mustUnderstand="1">http://www.osci.eu/ws/2008/05/transport/urn/messageTypes/MsgBoxFetchRequest
+		</a:Action>
+		<h:MsgBoxResponse MsgBoxRequestID="urn:de:xta:messageid:dataport_xta_210:0b2d4796-7f31-40c3-b834-7f7c66c042c9"
+				xmlns:h="http://www.osci.eu/ws/2008/05/transport" xmlns="http://www.osci.eu/ws/2008/05/transport"
+		>
+			<ItemsPending>0</ItemsPending>
+		</h:MsgBoxResponse>
+		<h:MessageMetaData xmlns:h="http://www.osci.eu/ws/2014/10/transport"
+				xmlns="http://www.osci.eu/ws/2014/10/transport">
+			<DeliveryAttributes>
+				<Origin>2025-04-02T10:49:30.324</Origin>
+				<Delivery>2025-04-02T10:49:32.893</Delivery>
+			</DeliveryAttributes>
+			<Originators>
+				<Author>
+					<Identifier type="xoev">afmsh:WebMethod_Online-Dienste</Identifier>
+				</Author>
+			</Originators>
+			<Destinations>
+				<Reader>
+					<Identifier type="xoev">afmsh:ozg-cloud-stage-Utopia</Identifier>
+				</Reader>
+			</Destinations>
+			<MsgIdentification>
+				<MessageID xmlns="http://www.w3.org/2005/08/addressing">
+					urn:de:xta:messageid:dataport_xta_210:0b2d4796-7f31-40c3-b834-7f7c66c042c9
+				</MessageID>
+			</MsgIdentification>
+			<Qualifier>
+				<Service>urn:xdomea:AFM</Service>
+				<BusinessScenario>
+					<Defined listURI="urn:de:dataport:codeliste:business.scenario" listVersionID="1">
+						<code xmlns="">AFM_DATA</code>
+					</Defined>
+				</BusinessScenario>
+				<MessageType listURI="urn:de:payloadSchema:elementName" listVersionID="1.0"
+						payloadSchema="http://www.xdomea.de/V2.0.1">
+					<code xmlns="">Geschaeftsgang.Geschaeftsgang.0201</code>
+				</MessageType>
+			</Qualifier>
+			<MsgSize>57890</MsgSize>
+		</h:MessageMetaData>
+		<a:RelatesTo>urn:uuid:0cb6ed55-8ac9-492a-9e76-6235e41729ea</a:RelatesTo>
+	</s:Header>
+	<s:Body>
+		<GenericContentContainer xmlns="http://xoev.de/transport/xta/211">
+			<ContentContainer>
+				<Message contentType="application/zip"
+						filename="1088975e-5892-474e-a0e9-d3cef8ee61db_Geschaeftsgang.Geschaeftsgang.0201.zip"
+						id="1088975e-5892-474e-a0e9-d3cef8ee61db" size="57890">
+					<xop:Include href="cid:http://tempuri.org/1/638791906226975019"
+							xmlns:xop="http://www.w3.org/2004/08/xop/include" />
+				</Message>
+			</ContentContainer>
+		</GenericContentContainer>
+	</s:Body>
+</s:Envelope>
\ No newline at end of file
diff --git a/src/test/resources/store/xta-test-server_keystore.p12 b/src/test/resources/store/xta-test-server_keystore.p12
new file mode 100644
index 0000000000000000000000000000000000000000..4b01606dc5b1dd7424a6f100f63914ea3e506d70
Binary files /dev/null and b/src/test/resources/store/xta-test-server_keystore.p12 differ