Skip to content

Getting Started

Ratomir Jovanovic edited this page Oct 26, 2026 · 2 revisions

Getting Started

There are three ways to use PandaPayLens. All of them analyze data locally.

1. The online demo (no install)

Open https://ratomirjovanovic.github.io/PandaPayLens/analyze/

  1. Paste a payload into the editor, or drop one or more files on it.
  2. Leave the provider on Auto-detect, or pick one if detection is unsure.
  3. Click Analyze.
  4. Read the tabs: Summary, Errors, Timeline, Findings and Data.
  5. Export the result as JSON, Markdown or PNG if you want to share it.

Not sure what to paste? Use Load an example. The examples are grouped into General (declines, 3D Secure, duplicate and out-of-order webhooks) and High-risk payments (rebills, chargebacks, deposits and payouts). The same list is on the examples page.

The demo is a static site. Its Content Security Policy allows network requests only to its own origin, so pasted data has nowhere to go.

2. Run it locally

Requirements: Node.js 22 or later and pnpm 10.

git clone https://github.com/ratomirjovanovic/PandaPayLens.git
cd PandaPayLens
pnpm install
pnpm build:packages
pnpm dev:pages        # static analyzer at http://localhost:3200/PandaPayLens/

To run the full Next.js application (the same analyzer plus the optional admin area):

pnpm --filter @pandapaylens/web dev

3. The command-line interface

The CLI analyzes files or standard input without a browser. It is useful in scripts and CI.

npx pandapaylens analyze path/to/webhooks.json
npx pandapaylens decode response.txt --format markdown
cat events.jsonl | npx pandapaylens timeline -

It needs Node.js 22 or later and runs offline. See Command Line Interface for every command and option.

Good first inputs

You have Paste
A failed API call The JSON error body, or the raw HTTP response including the status line
Several webhooks for one payment A JSON array of the webhook bodies, or one JSON object per line
A form-encoded postback (CCBill, Segpay...) The raw body, the raw HTTP request, or the full callback URL
A log export JSON Lines, one record per line

Read Input Formats for the full list and the limits.

Clone this wiki locally