diff --git a/oem/ibm/libpldmresponder/file_io_type_dump.cpp b/oem/ibm/libpldmresponder/file_io_type_dump.cpp
index cda9e16..40739d6 100644
--- a/oem/ibm/libpldmresponder/file_io_type_dump.cpp
+++ b/oem/ibm/libpldmresponder/file_io_type_dump.cpp
@@ -218,7 +218,7 @@
         {
             error("Failure in resource dump file ack");
             pldm::utils::reportError(
-                "xyz.openbmc_project.bmc.pldm.InternalFailure");
+                "xyz.openbmc_project.PLDM.Error.fileAck.ResourceDumpFileAckFail");
 
             PropertyValue value{
                 "xyz.openbmc_project.Common.Progress.OperationStatus.Failed"};
diff --git a/oem/ibm/requester/dbus_to_file_handler.cpp b/oem/ibm/requester/dbus_to_file_handler.cpp
index 26d3e32..30c344d 100644
--- a/oem/ibm/requester/dbus_to_file_handler.cpp
+++ b/oem/ibm/requester/dbus_to_file_handler.cpp
@@ -74,7 +74,7 @@
             error(
                 "Failed to decode new file available response or remote terminus returned error, response code '{RC}' and completion code '{CC}'",
                 "RC", rc, "CC", completionCode);
-            reportResourceDumpFailure();
+            reportResourceDumpFailure("DecodeNewFileResp");
         }
     };
     rc = handler->registerRequest(
@@ -85,13 +85,16 @@
         error(
             "Failed to send NewFileAvailable Request to Host, response code '{RC}'",
             "RC", rc);
-        reportResourceDumpFailure();
+        reportResourceDumpFailure("NewFileAvailableRequest");
     }
 }
 
-void DbusToFileHandler::reportResourceDumpFailure()
+void DbusToFileHandler::reportResourceDumpFailure(const std::string_view& str)
 {
-    pldm::utils::reportError("xyz.openbmc_project.bmc.pldm.InternalFailure");
+    std::string s = "xyz.openbmc_project.PLDM.Error.ReportResourceDumpFail.";
+    s += str;
+
+    pldm::utils::reportError(s.c_str());
 
     PropertyValue value{resDumpStatus};
     DBusMapping dbusMapping{resDumpCurrentObjPath, resDumpProgressIntf,
@@ -281,7 +284,7 @@
                 "Failed to decode new file available response for vmi or remote terminus returned error, response code '{RC}' and completion code '{CC}'",
                 "RC", rc, "CC", completionCode);
             pldm::utils::reportError(
-                "xyz.openbmc_project.bmc.pldm.InternalFailure");
+                "xyz.openbmc_project.PLDM.Error.DecodeNewFileResponseFail");
         }
     };
     rc = handler->registerRequest(
@@ -293,7 +296,7 @@
             "Failed to send NewFileAvailable Request to Host for vmi, response code '{RC}'",
             "RC", rc);
         pldm::utils::reportError(
-            "xyz.openbmc_project.bmc.pldm.InternalFailure");
+            "xyz.openbmc_project.PLDM.Error.NewFileAvailableRequestFail");
     }
 }
 
diff --git a/oem/ibm/requester/dbus_to_file_handler.hpp b/oem/ibm/requester/dbus_to_file_handler.hpp
index 3af116d..7a0e7fe 100644
--- a/oem/ibm/requester/dbus_to_file_handler.hpp
+++ b/oem/ibm/requester/dbus_to_file_handler.hpp
@@ -73,8 +73,9 @@
                                     const uint16_t type);
 
     /** @brief report failure that a resource dump has failed
+     *  @param[in] str - Resource dump failure type
      */
-    void reportResourceDumpFailure();
+    void reportResourceDumpFailure(const std::string_view& str);
 
     /** @brief method to get the acf file contents */
     std::string getAcfFileContent();
