diff --git a/src/test/cord-api/MCORD-Tests/EPCInstanceTest.txt b/src/test/cord-api/MCORD-Tests/EPCInstanceTest.txt
new file mode 100644
index 0000000..218e32b
--- /dev/null
+++ b/src/test/cord-api/MCORD-Tests/EPCInstanceTest.txt
@@ -0,0 +1,62 @@
+*** Settings ***
+Documentation     Test suite for EPC Creation
+Suite Setup       Read InputFile
+Test Template     Verify EPC Instance Functionality
+Library           Collections
+Library           String
+Library           OperatingSystem
+Library           XML
+Library           RequestsLibrary
+Library           ../Framework/utils/utils.py
+Library           ../Framework/restApi.py
+
+*** Variables ***
+${USER}           admin
+${PASSWORD}       admin
+${PATHFILE}       ${CURDIR}/data/EPCInstance.json
+
+*** Test Cases ***    TYPE                 LISTINDEX
+Test Create EPC       EPC_CREATE           0
+
+Test Instance creation validation
+                      INSTANCE_VALIDATE    0
+
+*** Keywords ***
+Read InputFile
+    ${subscriberList} =    utils.jsonToList    ${PATHFILE}    EPCInfo
+    Set Suite Variable    ${slist}    ${subscriberList}
+    @{instanceList}=    Create List
+    Set Suite Variable    @{instanceList}
+
+Verify Single Instance functionality
+    [Arguments]    ${type}    ${listIndex}
+    Run Keyword If    "${type}" == "EPC_CREATE"    Test Post EPC Create    ${listIndex}
+    Run Keyword If    "${type}" == "INSTANCE_VALIDATE"    Test Instance Validation    ${listIndex}
+
+Test Post EPC Create
+    [Arguments]    ${listIndex}
+    ${EPCList} =    Get Variable Value    ${elist}
+    ${InputDict}=    utils.listToDict    ${EPCList}    ${listIndex}
+    ${api_result}=    restApi.ApiPost    EPC_INSTANCES    ${InputDict}
+    ${service_specific_id}=    utils.getFieldValueFromDict    ${InputDict}    site_id
+    ${json_result}=    restApi.ApiGet    EPC_INSTANCES
+    Log    ${json_result}
+    ${json_result_list}=    Get From Dictionary    ${json_result}    items
+    ${getJsonDict}=    utils.getDictFromListOfDict    ${json_result_list}    site_id    ${site_id}
+    ${result}=    utils.compare_dict    ${InputDict}    ${getJsonDict}
+    Should Be True    ${result}
+    ${instanceList}    Create List
+
+Test Instance Validation
+    [Arguments]    ${listIndex}
+    ${get_result}=    restApi.ApiGet    CORE_INSTANCES
+    Should Be True    ${get_result}
+    ${get_result_List}=    Get From Dictionary    ${get_result}    items
+    ${instanceFinalList}=    Remove Duplicates    ${instanceList}
+    Log    ${instanceFinalList}
+    ${instanceCount}=    Get Length    ${instanceFinalList}
+    Log    ${instanceCount}
+    Should Be True    ${instanceCount} == 1
+    ${instance_id}=    Get From List    ${instanceFinalList}    0
+    ${get_CoreInstanceresult}=    restApi.ApiChameleonGet    CORE_INSTANCES    ${instance_id}
+    Should Be True    ${get_CoreInstanceresult}
