diff --git a/src/service/service/service_handlers/tapi_xr/TapiXrServiceHandler.py b/src/service/service/service_handlers/tapi_xr/TapiXrServiceHandler.py
index a1e1b8a6fff9436d6cdff13b95b0ecd43f6fa661..a79ebb82d6cb57967e96b70e0144fd410f8666b0 100644
--- a/src/service/service/service_handlers/tapi_xr/TapiXrServiceHandler.py
+++ b/src/service/service/service_handlers/tapi_xr/TapiXrServiceHandler.py
@@ -42,6 +42,13 @@ class TapiXrServiceHandler(_ServiceHandler):
     ) -> List[Union[bool, Exception]]:
 
         chk_type('endpoints', endpoints, list)
+
+        # When using regular mode where XR constellation is a single device, we get two endpoints.
+        # Convert that representation to a form that is understood by the service handler that
+        # expects constellation to be represented as multiple devices.
+        if len(endpoints) == 2:
+            endpoints = [None, endpoints[0], endpoints[1], None]
+
         if len(endpoints) != 4: return []
 
         service_uuid = self.__service.service_id.service_uuid.uuid
@@ -68,10 +75,17 @@ class TapiXrServiceHandler(_ServiceHandler):
                 raise Exception('Different Src-Dst devices not supported by now')
             controller = src_controller
 
+            # If the special mode that splits XR constellation to multiple modelled devices is used,
+            # add the device name to interface name. Otherwise use it as is (it will already contain pipe character
+            # end edge device name). This code should be refactored, as interface name structure is internal matter
+            # to XR driver and subject to change.
+            constellation_unique_src =  src_endpoint.name if "|" in src_endpoint.name else '|'.join([src_device.name, src_endpoint.name])
+            constellation_unique_dst =  dst_endpoint.name if "|" in dst_endpoint.name else '|'.join([dst_device.name, dst_endpoint.name])
+
             json_config_rule = json_config_rule_set('/services/service[{:s}]'.format(service_uuid), {
                 'uuid'           : service_uuid,
-                'input_sip_name' : '|'.join([src_device.name, src_endpoint.name]),
-                'output_sip_name': '|'.join([dst_device.name, dst_endpoint.name]),
+                'input_sip_name' : constellation_unique_src,
+                'output_sip_name': constellation_unique_dst,
                 'capacity_unit'  : capacity_unit,
                 'capacity_value' : capacity_value,
             })