diff --git a/pass/routes/admin/index.js b/pass/routes/admin/index.js
index 91a1a21ce6378d89372830a689f25470c24f6402..2e4a801409e34d263e6c6d6474b219444426e259 100644
--- a/pass/routes/admin/index.js
+++ b/pass/routes/admin/index.js
@@ -128,9 +128,9 @@ router.get(
           let hasher = crypto.createHash("sha256");
           hasher.update(
             reqData.company +
-              res.locals.name +
-              res.locals.email +
-              res.locals.address
+            res.locals.name +
+            res.locals.email +
+            res.locals.address
           );
           res.locals.datahash = hasher.digest("hex");
           res.render("admin/payments/receipt");
@@ -333,16 +333,29 @@ router.get("/key", (req, res) => {
 
 router.post("/key", (req, res) => {
   if (req.body.payment_id.length > 0) {
-    return PaymentReference.LOAD_FROM_PUBLIC_ID(req.body.payment_id)
-      .then((payment_reference) => {
-        return res.redirect(
-          `${res.baseDir}/admin/key/${payment_reference.key.get_key()}`
-        );
-      })
-      .catch((reason) => {
-        console.error(reason);
-        return res.redirect(`${res.baseDir}/admin/key`);
-      });
+    // Either Payment ID or PaymentReference ID can be Supplied
+    if (req.body.payment_id.indexOf("A") == 0) {
+      return Payment.LOAD_FROM_PUBLIC_ID(req.body.payment_id)
+        .then(payment => {
+          return PaymentReference.LOAD_FROM_ID(payment.payment_reference_id)
+            .then(payment_reference => {
+              return res.redirect(
+                `${res.baseDir}/admin/key/${payment_reference.key.get_key()}`
+              );
+            })
+        });
+    } else {
+      return PaymentReference.LOAD_FROM_PUBLIC_ID(req.body.payment_id)
+        .then((payment_reference) => {
+          return res.redirect(
+            `${res.baseDir}/admin/key/${payment_reference.key.get_key()}`
+          );
+        })
+        .catch((reason) => {
+          console.error(reason);
+          return res.redirect(`${res.baseDir}/admin/key`);
+        });
+    }
   } else {
     return Key.GET_KEY(req.body.key, false).then((key) => {
       return res.redirect(`${res.baseDir}/admin/key/${key.get_key()}`);
@@ -424,8 +437,7 @@ router.post(
       .then((payment_reference) => payment_reference.chargeKey())
       .then(() => {
         res.redirect(
-          `${
-            res.baseDir
+          `${res.baseDir
           }/admin/key/${res.locals.key.get_key()}?charge_success=true`
         );
       });
@@ -440,8 +452,7 @@ router.post(
     const errors = validationResult(req);
     if (!errors.isEmpty()) {
       return res.redirect(
-        `${
-          res.baseDir
+        `${res.baseDir
         }/admin/key/${res.locals.key.get_key()}?charge_success=true`
       );
     }
@@ -459,8 +470,7 @@ router.post(
       })
       .then(() => {
         res.redirect(
-          `${
-            res.baseDir
+          `${res.baseDir
           }/admin/key/${res.locals.key.get_key()}?charge_success=true`
         );
       });
diff --git a/pass/views/admin/key/index.ejs b/pass/views/admin/key/index.ejs
index 046bc8b1f22681312e9522c0ed8f26593135bed3..8026467ca632c81fcc72adbb668042217b040406 100644
--- a/pass/views/admin/key/index.ejs
+++ b/pass/views/admin/key/index.ejs
@@ -12,32 +12,16 @@
   </ul>
   <form method="POST">
     <div class="input-group">
-      <label for="key"
-        ><%= req.t("key.key-input.label", {ns: "admin"}) _%></label
-      >
-      <input
-        type="text"
-        name="key"
-        id="key"
-        size="36"
-        placeholder="XXXXXXXX-XXXX-XXXX-XXXX-XXXXXXXXXXXX"
-      />
+      <label for="key"><%= req.t("key.key-input.label", {ns: "admin"}) _%></label>
+      <input type="text" name="key" id="key" size="36" placeholder="XXXXXXXX-XXXX-XXXX-XXXX-XXXXXXXXXXXX" />
     </div>
     <div class="input-group">
-      <label for="payment_id"
-        ><%= req.t("key.payment-id-input.label", {ns: "admin"}) _%></label
-      >
-      <input
-        type="text"
-        name="payment_id"
-        id="payment_id"
-        size="36"
-        placeholder="ZXXXXXXX"
-      />
+      <label for="payment_id"><%= req.t("key.payment-id-input.label", {ns: "admin"}) _%></label>
+      <input type="text" name="payment_id" id="payment_id" size="36" placeholder="ZXXXXXXX | AXXXXXXX" />
     </div>
     <button class="button">
       <%= req.t("key.key-input.submit", {ns: "admin"}) _%>
     </button>
   </form>
 </div>
-<%- include('../../templates/page_footer'); -%>
+<%- include('../../templates/page_footer'); -%>
\ No newline at end of file