TL;DR

To turn a JSON API payload or an XML data dump into a printable, real-text PDF, drop the .json or .xml file into the Convert: Anything to PDF extension and click convert. The output is formatted, selectable text — a clean snapshot of the payload — not a screenshot. It runs inside your Chromium browser (Chrome, Edge, Brave, Arc, Opera, Vivaldi), so sensitive payloads never upload — zero network requests fire during conversion.

That local-only guarantee is the whole point for the two audiences here: QA engineers attaching the exact payload that triggered a bug, and healthcare/compliance admins filing HL7/FHIR XML records as immutable audit evidence. Neither can afford to paste sensitive data into an online converter.

Why turn a payload into a PDF at all?

It sounds odd at first — JSON and XML are living data, why freeze one into a PDF? Because a PDF snapshot is evidence. It answers a specific need: "here is exactly what the data looked like at this moment, in a form that won't change."

Three reasons a PDF beats a raw file or a screenshot here:

  1. Immutability. A .json file on disk can be edited without a trace. A PDF snapshot is a fixed, timestamped artifact — the state of the payload as of when you captured it. That's what a bug report or an audit trail actually needs.
  2. Real, selectable text. Unlike a screenshot, the text in the PDF is searchable and copyable. A reviewer can grep the field they care about instead of squinting at an image.
  3. Universally openable. A ticket reviewer, an auditor, or opposing counsel can open a PDF anywhere, no dev tools or code editor required.

Scenario 1: QA engineer, the payload that broke it

Scenario: A bug only reproduces with one specific API response. You want to attach that exact JSON to the ticket so the developer sees precisely what the client received — no paraphrasing, no "I think it was roughly this."

The old habit is pasting the JSON into the ticket description (where formatting dies) or screenshotting your dev tools (blurry, unsearchable, truncated). Instead:

  1. Save the response as a .json file.
  2. Convert it with the extension → a formatted, real-text PDF.
  3. Attach the PDF to the ticket.

Now the developer has an immutable, searchable snapshot of the payload that triggered the bug. Combine it with the repro steps written in Markdown and the annotated screenshots, and you've got a complete evidence bundle — see merge images, CSV, and Markdown into one PDF for building that in one file.

Scenario 2: healthcare admin, HL7/FHIR XML for audit

Scenario: A compliance audit asks for specific patient-data exchange records — HL7 or FHIR XML dumps — filed as printable, archival documents.

Healthcare data is about as sensitive as it gets, and it's tightly regulated. Uploading a FHIR XML payload with patient identifiers to a random online XML-to-PDF site is exactly the kind of move a compliance officer loses sleep over.

Here the conversion is 100% local — the XML never leaves the machine. Convert the .xml to a real-text PDF, and you've got an immutable, printable record for the audit binder. Because zero network requests fire during conversion, there's no third party in the chain of custody. For the broader regulated-workflow case, see the privacy-first file conversion guide for 2026.

Step by step

  1. Save the payload as a file. .json for JSON, .xml for XML.
  2. Open the extension and choose Upload Files. This is a file conversion, not a web capture.
  3. Drop in the .json or .xml. One file, or several if you want them combined.
  4. Pick paper size and orientation. A4 or US Letter are the common picks; Legal and Tabloid are available.
  5. Convert. The extension renders the payload as formatted, selectable text in a PDF, locally with jsPDF. Done in seconds, no upload.

No code, no CLI, no JSON-to-PDF library to npm install. Drag, click, done.

Why "real text" matters more than it sounds

The single most important property of the output is that it's real, selectable text — not an image of your payload. For evidence, that's decisive:

  • A reviewer can search for a specific key or value.
  • Anyone can copy a field out to reference it.
  • The document stays crisp at any zoom, unlike a screenshot that pixelates.

A screenshot of a JSON blob is nearly worthless as evidence — you can't search it, you can't copy from it, and it's usually truncated at the edge of the viewport. A real-text PDF is the opposite: complete, searchable, and durable.

JSON/XML to PDF: the options compared

Convert: Anything to PDFScreenshot of dev toolsOnline JSON→PDF sitePaste into ticket
Output is real, selectable textYesNoUsuallyYes, but formatting breaks
Immutable snapshot artifactYes (PDF)Sort of (image)YesNo
Sensitive data uploadedNo — 100% localNoYesDepends on tracker
Complete (not truncated)YesOften truncatedYesYes
Setup / costFree extensionFreeFreemium/adsFree
Works offlineYesYesNoDepends

The online converters are convenient until you remember what you're pasting. For a payload with API keys, PII, patient identifiers, or internal system data, uploading it is the problem you're trying to avoid — not a shortcut. Local conversion gives you the same PDF without the exposure. The principle is spelled out in why a PDF converter should not upload your files.

Why local is non-negotiable for payloads

Payloads are where secrets live: bearer tokens, session data, account numbers, health identifiers, internal endpoints. That's precisely the data you must not hand to a third-party server.

With this extension, zero network requests fire during conversion. The JSON or XML is rendered on your machine with jsPDF. Concretely:

  • Nothing to leak. The payload never travels anywhere, so there's no server log, no retention policy to trust, no breach surface.
  • Clean chain of custody. For audit evidence, "the data never left our environment" is a statement you can actually stand behind.
  • Works offline. In a secured facility, an air-gapped review room, or behind a strict firewall — it doesn't need the internet, because it never uses it.

Good to know

  • JSON and XML in, real text out. These render as formatted, selectable text — ideal for evidence.
  • No OCR — not needed here, since JSON/XML are already text; the output is fully selectable.
  • Cannot read encrypted / password-protected source files. If the payload file is encrypted, decrypt it first.
  • Output PDFs are not password-protected. If your audit binder or ticket policy requires encryption on the artifact, add it in a separate step.
  • No merge limit — attach multiple payloads, or bundle a payload with a Markdown write-up and screenshots, into one PDF. See the 14-format guide.
  • Chromium only — Chrome, Edge, Brave, Arc, Opera, Vivaldi. Not Firefox or Safari.

Frequently asked questions

How do I convert a JSON file to PDF?

Install the Convert: Anything to PDF extension, choose Upload Files, drop in your .json, pick a paper size, and click convert. The payload renders as formatted, selectable text in a PDF — locally, no code, no upload.

Can I convert XML, including HL7/FHIR, to PDF?

Yes. Drop the .xml file in and convert. It renders as real, selectable text — a printable, archival snapshot suitable for compliance audit binders. Because conversion is 100% local, the record never leaves your machine.

Is the payload uploaded to any server?

No. Conversion is 100% local using jsPDF, and zero network requests fire during conversion. Tokens, PII, and patient data in the payload never leave your device, and it works offline.

Why attach a payload as a PDF instead of the raw file?

A PDF is an immutable, timestamped snapshot — it captures exactly what the data looked like at that moment and can't be edited without a trace. That makes it stronger evidence for a bug ticket or an audit than an editable .json file or a truncated screenshot.

Is the PDF searchable?

Yes. The output is real, selectable text, so a reviewer or auditor can search for a specific key or value and copy fields out — unlike a screenshot, which is neither searchable nor copyable.

Can I bundle a payload with my bug write-up?

Yes. Drop the JSON/XML together with a Markdown description and any annotated screenshots into the Upload Files area, order them, and merge into one PDF evidence bundle. There's no merge limit beyond device memory.

Which browsers are supported?

Any Chromium browser — Chrome, Edge, Brave, Arc, Opera, and Vivaldi. Firefox and Safari are not supported.

Bottom line

A JSON or XML payload frozen into a searchable, immutable PDF is exactly what a bug ticket or compliance audit needs — and the one thing you can't do is upload sensitive payloads to a stranger's server to get it. Convert: Anything to PDF renders JSON and XML as real, selectable text, locally, with zero network requests — so tokens, PII, and patient data never leave your machine.

Install it and make "attach the exact payload as evidence" a one-click step. And when the ticket's closed and the audit's filed, CineMan AI is a free companion extension that overlays IMDb and Rotten Tomatoes ratings plus an AI Taste Match on Netflix, Prime, and Disney+.