diff --git a/SOL002/VNFPerformanceManagement-API/NotificationConsumer.robot b/SOL002/VNFPerformanceManagement-API/NotificationConsumer.robot
new file mode 100644
index 0000000000000000000000000000000000000000..ede8234f52d784b93aea1a6d4228cfa34e5670ca
--- /dev/null
+++ b/SOL002/VNFPerformanceManagement-API/NotificationConsumer.robot
@@ -0,0 +1,71 @@
+*** Settings ***
+Library           JSONSchemaLibrary    schemas/
+Resource          environment/variables.txt
+Library           JSONLibrary
+Library           OperatingSystem
+Library           String
+Library           REST    ${VNFM_SCHEMA}://${VNFM_HOST}:${VNFM_PORT}    ssl_verify=false
+Suite Setup    Check resource existence and get CallbackUri
+
+*** Test Cases ***
+VNF Performance Information Availability Notification
+    [Documentation]    Test ID: 6.3.3.9.1
+    ...    Test title: VNF Performance Information Availability Notification
+    ...    Test objective: The objective is to test the POST request to callbackUri trigger VNF Performance Information Availability Notification
+    ...    Pre-conditions: A VNF performance job is created, and a subscription for information availability notifications is available in the VNFM.
+    ...    Reference: Clause 6.4.9.3.1 - ETSI GS NFV-SOL 002 [2] v2.7.1
+    ...    Config ID: Config_prod_VNFM
+    ...    Applicability: none
+    ...    Post-Conditions: none 
+    Post VNF Performance Information Availability Notification
+    Check HTTP Response Status Code Is    204
+    
+VNF Threshold Crossed Notification
+    [Documentation]    Test ID: 6.3.3.9.2
+    ...    Test title: VNF Threshold Crossed Notification
+    ...    Test objective: The objective is to test the POST request to callbackUri trigger VNF Threshold Crossed Notification
+    ...    Pre-conditions: A VNF performance job is created, and a subscription for Threshold Crossed Notification is available in the VNFM.
+    ...    Reference: Clause 6.4.9.3.1 - ETSI GS NFV-SOL 002 [2] v2.7.1
+    ...    Config ID: Config_prod_VNFM
+    ...    Applicability: none
+    ...    Post-Conditions: none 
+    Post VNF Threshold Crossed Notification
+    Check HTTP Response Status Code Is    204
+    
+*** Keywords ***
+Check resource existence and get CallbackUri
+    Set Headers  {"Accept":"${ACCEPT_JSON}"}  
+    Set Headers  {"Content-Type": "${CONTENT_TYPE_JSON}"}
+    Run Keyword If    ${AUTH_USAGE} == 1    Set Headers    {"Authorization":"${AUTHORIZATION}"}
+    GET    ${apiRoot}/${apiName}/${apiMajorVersion}/pm_jobs/${pmJobId}	
+    Integer    response status    200
+    Validate Json    response body    PmJob.schema.json
+    Set Global Variable    ${callbackResp}    response body callbackUri
+    
+Check HTTP Response Status Code Is
+    [Arguments]    ${expected_status}
+    ${status}=    Convert To Integer    ${expected_status}    
+    Should Be Equal    ${response['status']}    ${status} 
+    Log    Status code validated
+    
+Post VNF Performance Information Availability Notification
+    log    Trying to perform a POST to get notification
+    Set Headers  {"Accept":"${ACCEPT_JSON}"}  
+    Set Headers  {"Content-Type": "${CONTENT_TYPE_JSON}"}
+    Run Keyword If    ${AUTH_USAGE} == 1    Set Headers    {"Authorization":"${AUTHORIZATION}"}
+    ${template} =    Get File    jsons/PerformanceInformationAvaliableNotification.json
+    ${body}=        Format String   ${template}    objectInstanceId=${objectInstanceId} 
+    Post    ${callbackResp}    ${body}
+    ${outputResponse}=    Output    response
+	Set Global Variable    ${response}    ${outputResponse}	
+
+Post VNF Threshold Crossed Notification
+    log    Trying to perform a POST to get notification
+    Set Headers  {"Accept":"${ACCEPT_JSON}"}  
+    Set Headers  {"Content-Type": "${CONTENT_TYPE_JSON}"}
+    Run Keyword If    ${AUTH_USAGE} == 1    Set Headers    {"Authorization":"${AUTHORIZATION}"}
+    ${template} =    Get File    jsons/ThresholdCrossedNotification.json
+    ${body}=        Format String   ${template}    thresholdId=${thresholdId}    objectInstanceId=${objectInstanceId} 
+    Post    ${callbackResp}    ${body}
+    ${outputResponse}=    Output    response
+	Set Global Variable    ${response}    ${outputResponse}	
diff --git a/SOL002/VNFPerformanceManagement-API/environment/variables.txt b/SOL002/VNFPerformanceManagement-API/environment/variables.txt
index 8636509cb4c456e8a6749016b58affd922af8839..b3453720a67c52a6a040ae8c4813cfe969a079cc 100644
--- a/SOL002/VNFPerformanceManagement-API/environment/variables.txt
+++ b/SOL002/VNFPerformanceManagement-API/environment/variables.txt
@@ -63,3 +63,6 @@ ${filter_ko}      erroneousFilter=erroneous
 ${total_polling_time}   2 min
 ${polling_interval}     10 sec
 
+${callbackResp}    localhost
+
+${objectInstanceId}    
\ No newline at end of file
diff --git a/SOL002/VNFPerformanceManagement-API/jsons/PerformanceInformationAvaliableNotification.json b/SOL002/VNFPerformanceManagement-API/jsons/PerformanceInformationAvaliableNotification.json
new file mode 100644
index 0000000000000000000000000000000000000000..5ac84f0a452c13051b8c18fbbd8942876ee6e315
--- /dev/null
+++ b/SOL002/VNFPerformanceManagement-API/jsons/PerformanceInformationAvaliableNotification.json
@@ -0,0 +1,12 @@
+{{
+	"id":"",
+	"notificationType":"PerformanceInformationAvailableNotification",
+	"timeStamp":"",
+	"objectType":"",
+	"objectInstanceId":"{objectInstanceId}",
+	"_links":{{
+		"objectInstance":"",
+		"pmJob":"",
+		"performanceReport":""
+	}}
+}}
diff --git a/SOL002/VNFPerformanceManagement-API/jsons/ThresholdCrossedNotification.json b/SOL002/VNFPerformanceManagement-API/jsons/ThresholdCrossedNotification.json
new file mode 100644
index 0000000000000000000000000000000000000000..cb963a1011d257c4741ed9d2f84e136ad14ef9d4
--- /dev/null
+++ b/SOL002/VNFPerformanceManagement-API/jsons/ThresholdCrossedNotification.json
@@ -0,0 +1,15 @@
+{{
+	"id":"",
+	"notificationType":"ThresholdCrossedNotification",
+	"timeStamp":"",
+	"thresholdId":"{thresholdId}",
+	"crossingDirection":"UP",
+	"objectType":"",
+	"objectInstanceId":"{objectInstanceId}",
+	"performanceMetric":"",
+	"performanceValue":"",
+	"_links":{{
+		"objectInstance":"",
+		"threshold":""
+	}}
+}}