diff --git a/javascript/src/iframe/viamapi-iframe.js b/javascript/src/iframe/viamapi-iframe.js
index 6de33664f0fa36f4ac0d95f00da2b07b9a5bd960..f38e8ad3bf8bb25a8d73fe7724915c496875ce23 100644
--- a/javascript/src/iframe/viamapi-iframe.js
+++ b/javascript/src/iframe/viamapi-iframe.js
@@ -1011,7 +1011,13 @@ const connection = Penpal.connectToParent({
 
       const pdfRaw = base64ToByteArray(downloadResponse.data);
 
-      const signedPdf = await signPdf(pdfRaw, certificateOneTime, passportChain, privateKeyOneTime);
+      let signedPdf;
+      try {
+        signedPdf = await signPdf(pdfRaw, certificateOneTime, passportChain, privateKeyOneTime);
+      } catch (err) {
+        console.error(err);
+        return encodeResponse("500", "", err.message);
+      }
 
       const signedPdfB64 = byteArrayToBase64(signedPdf);