URGENT - XFDF Merge API giving [500] internal server error

Which product are you using?

PDF.js Express Plus

PDF.js Express Version

Detailed description of issue
There is an issue with the merge function provided by @pdftron/pdfjs-express-utils.
Some users, using chrome & edge browsers are getting 500 Internal server errors while our web app uses the merge function which results in a PDFExprress API call of /merge.

Hi PDF JS Express team,
I’m writing given an unexplainable 500 error we are receiving with a small set of users. We can’t figure out if it’s our error or a bug with PDF JS Express software. We’ve now had a few users report this issue — can you please help us debug it?

I’m attached a few screenshots and will try to explain the issue. After the PDF form load inline (with annotations filled in) — and we go to “Save” the form, we’re receiving a 500 “merge” error. The details are attached below — showing a more detailed message saying “server-side request must use server-side key.”
Please let us know how this can be resolved.


Expected behaviour
The merge function leads to the PDFExprress API call of /merge to work on all client’s chrome browsers.

Does your issue happen with every document, or just one?
Only some of the users are facing this issue, same form/pdf is working for other users.

Link to document

Code snippet

   * Returns file for edited PDF.
   * @returns {Blob}
  async getPdfFileData() {
    const { documentViewer, annotationManager } = this.webViewer.Core;
    const utils = new ExpressUtils(PDFJS_EXPRESS_UTIL_OPTIONS);

    const xfdf = await annotationManager.exportAnnotations({});
    const fileData = await documentViewer.getDocument().getFileData({});

    const resp = await utils.setFile(fileData).setXFDF(xfdf).merge();

    const mergedBlob = await resp.getBlob();

    return mergedBlob;


Is it possible that some of the users are using a proxy?

Best Regards,
Zach Serviss
Platform Support Engineer
PDFTron Systems, Inc.