diff --git a/bmc/buildjson.cpp b/bmc/buildjson.cpp
index 60575db..0be61be 100644
--- a/bmc/buildjson.cpp
+++ b/bmc/buildjson.cpp
@@ -91,9 +91,17 @@
             {
                 const auto& path = verify.at("path");
                 const auto& unit = verify.at("unit");
-                const std::string mode = "replace";
+
+                /* the mode parameter is optional. */
+                std::string systemdMode = "replace";
+                const auto& mode = verify.find("mode");
+                if (mode != verify.end())
+                {
+                    systemdMode = verify.at("mode").get<std::string>();
+                }
+
                 pack->verification = SystemdVerification::CreateVerification(
-                    sdbusplus::bus::new_default(), path, unit, mode);
+                    sdbusplus::bus::new_default(), path, unit, systemdMode);
             }
             else
             {
diff --git a/bmc/test/firmware_json_unittest.cpp b/bmc/test/firmware_json_unittest.cpp
index 8b4f130..70676bf 100644
--- a/bmc/test/firmware_json_unittest.cpp
+++ b/bmc/test/firmware_json_unittest.cpp
@@ -433,7 +433,7 @@
     EXPECT_THAT(updater->getMode(), "replace");
 }
 
-TEST(FirmwareJsonTest, VerifyValidUpdateWithMode)
+TEST(FirmwareJsonTest, VerifyValidWithModes)
 {
     auto j2 = R"(
         [{
@@ -450,7 +450,8 @@
                 "verification" : {
                     "type" : "fileSystemdVerify",
                     "unit" : "phosphor-ipmi-flash-bmc-verify.target",
-                    "path" : "/tmp/bmc.verify"
+                    "path" : "/tmp/bmc.verify",
+                    "mode" : "replace-nope"
                 },
                 "update" : {
                     "type" : "systemd",
@@ -467,6 +468,9 @@
     EXPECT_FALSE(h[0].actions == nullptr);
     EXPECT_FALSE(h[0].actions->preparation == nullptr);
     EXPECT_FALSE(h[0].actions->verification == nullptr);
+    auto verifier = reinterpret_cast<SystemdVerification*>(
+        h[0].actions->verification.get());
+    EXPECT_THAT(verifier->getMode(), "replace-nope");
     EXPECT_FALSE(h[0].actions->update == nullptr);
     auto updater =
         reinterpret_cast<SystemdUpdateMechanism*>(h[0].actions->update.get());
