diff --git a/xos/synchronizer/steps/sync_vepcserviceinstance.py b/xos/synchronizer/steps/sync_vepcserviceinstance.py
new file mode 100644
index 0000000..91d3c54
--- /dev/null
+++ b/xos/synchronizer/steps/sync_vepcserviceinstance.py
@@ -0,0 +1,48 @@
+
+# Copyright 2017-present Open Networking Foundation
+#
+# Licensed under the Apache License, Version 2.0 (the "License");
+# you may not use this file except in compliance with the License.
+# You may obtain a copy of the License at
+#
+# http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# See the License for the specific language governing permissions and
+# limitations under the License.
+
+
+import os
+import sys
+from synchronizers.new_base.syncstep import SyncStep
+from synchronizers.new_base.modelaccessor import *
+from xosconfig import Config
+from multistructlog import create_logger
+
+log = create_logger(Config().get('logging'))
+
+class SyncVEpcServiceInstance(SyncStep):
+
+    provides = [VEpcServiceInstance]
+
+    observes = VEpcServiceInstance
+
+    requested_interval = 0
+
+    # template_name = "vepcserviceinstance_playbook.yaml"
+
+    # service_key_name = "/opt/xos/synchronizers/vepcservicenew/vepcservice_private_key"
+
+    def __init__(self, *args, **kwargs):
+        super(SyncVEpcServiceInstance, self).__init__(*args, **kwargs)
+
+    def sync_record(self, o):
+        # There's nothing to do at this time. Configuration of VEpcServiceInstance is handled by Kubernetes
+        # through config maps, and that all happens in the model policy.
+        #
+        # TODO(smbaker): Consider deleting this sync step
+        # Note from Gopi: This method exists as the code is copied from Simple Example Service. Please
+        # discuss with smbaker if this function is necessary.
+        pass
