diff --git a/.gitignore b/.gitignore
index 5224ca6b7f08eb7734745f69e8bd1cf18cc2eb9b..066616748b31fb0e83632325c7ed857b30402e1b 100644
--- a/.gitignore
+++ b/.gitignore
@@ -34,3 +34,4 @@ build/
 .vscode/
 
 application-sec.yml
+xta-adapter/KOP_SH_KIEL_DEV.p12
diff --git a/common/src/main/resources/META-INF/additional-spring-configuration-metadata.json b/common/src/main/resources/META-INF/additional-spring-configuration-metadata.json
index d135ce00a6e4d882a6ebdb920769d21387a8cff7..625980f8393f69927238961461f815b9fe835042 100644
--- a/common/src/main/resources/META-INF/additional-spring-configuration-metadata.json
+++ b/common/src/main/resources/META-INF/additional-spring-configuration-metadata.json
@@ -1,5 +1,22 @@
-{"properties": [{
-  "name": "ozgcloud.xta.actions.status-list",
-  "type": "java.lang.String",
-  "description": "A description for 'ozgcloud.xta.actions.status-list'"
-}]}
\ No newline at end of file
+{"properties": [
+  {
+    "name": "ozgcloud.xta.actions.status-list",
+    "type": "java.lang.String",
+    "description": "A description for 'ozgcloud.xta.actions.status-list'"
+  },
+  {
+    "name": "ozgcloud.xta.identifier",
+    "type": "java.lang.String",
+    "description": "XTA Identifier for SOAP Request Header (f.e. 'gae:firstname.lastname@mgm-tp.com')"
+  },
+  {
+    "name": "ozgcloud.xta.keystore.file",
+    "type": "java.lang.String",
+    "description": "Location of the keyfile for xta accesss"
+  },
+  {
+    "name": "ozgcloud.xta.keystore.password",
+    "type": "java.lang.String",
+    "description": "Password of the keyfile for xta accesss"
+  }
+]}
\ No newline at end of file
diff --git a/xta-adapter/readme.md b/xta-adapter/readme.md
index e5541a8c2d6463b3fe7f426ba12f5e3d22d25661..7b8043c167847b60c3b1a7d160cdac60203f8586 100644
--- a/xta-adapter/readme.md
+++ b/xta-adapter/readme.md
@@ -10,12 +10,16 @@ ozgcloud:
       
 Den Dienst dann mit dem Spring-Profile 'sec' starten.
 
-# Ceritifcade chain
+# Certificate chain
 
 lokal das Root CA in keystore laden:
 
     sudo keytool -trustcacerts -keystore /lib/jvm/java-1.17.0-openjdk-amd64/lib/security/cacerts -storepass changeit -importcert -alias dataportRoot -file DataportRootCA02.crt
-    
+   
+Alternativ p12 Datei lokal erzeugen:
+
+    keytool -importkeystore -srckeystore KOP_SH_KIEL_DEV.pfx -srcstoretype pkcs12 -destkeystore KOP_SH_KIEL_DEV2.p12 -deststoretype PKCS12
+
 # Port forwarding
 Um eine Verbindung zum Nachrichtenbroker aufbauen zu können, muss diese über den Hetzner-Server geroutet werden:
 
diff --git a/xta-adapter/src/main/java/de/ozgcloud/eingang/xta/WsHeaderAddingInterceptor.java b/xta-adapter/src/main/java/de/ozgcloud/eingang/xta/WsHeaderAddingInterceptor.java
index 9bc9f906346a3bb6b893bedb7b5c1ed416c32175..113f4f976d8d2db64c2473cf65d1cd1b48b9ba64 100644
--- a/xta-adapter/src/main/java/de/ozgcloud/eingang/xta/WsHeaderAddingInterceptor.java
+++ b/xta-adapter/src/main/java/de/ozgcloud/eingang/xta/WsHeaderAddingInterceptor.java
@@ -1,9 +1,6 @@
 package de.ozgcloud.eingang.xta;
 
-import jakarta.xml.bind.JAXBContext;
-import jakarta.xml.bind.JAXBElement;
-import jakarta.xml.bind.JAXBException;
-
+import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.stereotype.Component;
 import org.springframework.ws.client.WebServiceClientException;
 import org.springframework.ws.client.support.interceptor.ClientInterceptor;
@@ -14,10 +11,18 @@ import de.itvsh.kop.eingangsadapter.common.errorhandling.TechnicalException;
 import eu.osci.ws._2014._10.transport.OriginatorsType;
 import eu.osci.ws._2014._10.transport.PartyIdentifierType;
 import eu.osci.ws._2014._10.transport.PartyType;
+import jakarta.validation.Valid;
+import jakarta.xml.bind.JAXBContext;
+import jakarta.xml.bind.JAXBElement;
+import jakarta.xml.bind.JAXBException;
 
 @Component
 class WsHeaderAddingInterceptor implements ClientInterceptor {
 
+	@Autowired
+	@Valid
+	private XtaProperties properties;
+
 	@Override
 	public boolean handleRequest(MessageContext messageContext) throws WebServiceClientException {
 		var soapMessage = (SoapMessage) messageContext.getRequest();
@@ -39,7 +44,7 @@ class WsHeaderAddingInterceptor implements ClientInterceptor {
 
 		PartyType partyType = new PartyType();
 		PartyIdentifierType identifier = new PartyIdentifierType();
-		identifier.setValue("gae:noreply@ozg-sh.de");
+		identifier.setValue(properties.getIdentifier());
 		partyType.setIdentifier(identifier);
 
 		var origin = new OriginatorsType();
diff --git a/xta-adapter/src/main/java/de/ozgcloud/eingang/xta/XtaProperties.java b/xta-adapter/src/main/java/de/ozgcloud/eingang/xta/XtaProperties.java
index d2fc40448ce2faf23b698ac43d97e911c841aab1..4f06606c7e0c450823f6221ef46e4bbd163225bf 100644
--- a/xta-adapter/src/main/java/de/ozgcloud/eingang/xta/XtaProperties.java
+++ b/xta-adapter/src/main/java/de/ozgcloud/eingang/xta/XtaProperties.java
@@ -3,15 +3,14 @@ package de.ozgcloud.eingang.xta;
 import java.math.BigInteger;
 import java.net.URI;
 
-import jakarta.validation.constraints.NotEmpty;
-import jakarta.validation.constraints.NotNull;
-
 import org.springframework.boot.context.properties.ConfigurationProperties;
 import org.springframework.context.annotation.Configuration;
 import org.springframework.core.io.Resource;
 import org.springframework.stereotype.Component;
 import org.springframework.validation.annotation.Validated;
 
+import jakarta.validation.constraints.NotEmpty;
+import jakarta.validation.constraints.NotNull;
 import lombok.Getter;
 import lombok.Setter;
 import lombok.ToString;
@@ -30,6 +29,8 @@ class XtaProperties {
 
 	private KeyStore keyStore;
 	private Actions actions;
+
+	private String identifier;
 }
 
 @Validated
diff --git a/xta-adapter/src/main/resources/application.yml b/xta-adapter/src/main/resources/application.yml
index 51517476824eed83eee84c8b59e888dbae89251b..0755b52ae97ab62272675394cab490d3601747d6 100644
--- a/xta-adapter/src/main/resources/application.yml
+++ b/xta-adapter/src/main/resources/application.yml
@@ -12,4 +12,4 @@ ozgcloud:
       type: PKCS12
     actions:
       status-list: "http://www.osci.eu/ws/2008/05/transport/urn/messageTypes/MsgBoxStatusListRequest"
-      fetch-request: "http://www.osci.eu/ws/2008/05/transport/urn/messageTypes/MsgBoxFetchRequest"
\ No newline at end of file
+      fetch-request: "http://www.osci.eu/ws/2008/05/transport/urn/messageTypes/MsgBoxFetchRequest"
diff --git a/xta-adapter/src/test/java/de/ozgcloud/eingang/xta/XtaRemoteServiceITCase.java b/xta-adapter/src/test/java/de/ozgcloud/eingang/xta/XtaRemoteServiceITCase.java
index f805f22c9c6f8a3ece0a20835402618178812d04..d79c47c4ff74ae2fb9e0167e2b1a13be204ac66a 100644
--- a/xta-adapter/src/test/java/de/ozgcloud/eingang/xta/XtaRemoteServiceITCase.java
+++ b/xta-adapter/src/test/java/de/ozgcloud/eingang/xta/XtaRemoteServiceITCase.java
@@ -2,8 +2,6 @@ package de.ozgcloud.eingang.xta;
 
 import static org.assertj.core.api.Assertions.*;
 
-import jakarta.validation.Valid;
-
 import org.junit.jupiter.api.Disabled;
 import org.junit.jupiter.api.Nested;
 import org.junit.jupiter.api.Test;
@@ -12,6 +10,7 @@ import org.springframework.boot.test.context.SpringBootTest;
 import org.springframework.test.context.ActiveProfiles;
 
 import de.itvsh.kop.eingangsadapter.Application;
+import jakarta.validation.Valid;
 
 @Disabled("real live test - do only activate for manual testing")
 @ActiveProfiles({ "itcase", "local" })
diff --git a/xta-adapter/src/test/resources/application-itcase.yml b/xta-adapter/src/test/resources/application-itcase.yml
index 3507852f0b2455e004e8ae452e19f9b5de411218..fa5c5d86fbded8b86eaf4361fee63b6e16e199c1 100644
--- a/xta-adapter/src/test/resources/application-itcase.yml
+++ b/xta-adapter/src/test/resources/application-itcase.yml
@@ -2,4 +2,5 @@ ozgcloud:
   xta:
     keystore:
       file: classpath:xtaTestStore.p12
-      password: <geheim>
\ No newline at end of file
+      password: <geheim>
+    identifier: gae:noreply@ozg-sh.de
\ No newline at end of file