Frequently Asked Questions

What pnp.tax does, how the tools fit together, and how to pay for them.

Bank Processor

It turns raw bank and credit-card statements into a clean, formatted Excel workbook. Drop in PDFs or CSVs, and you get a multi-tab workbook with deposits, withdrawals, checks, fees, and a monthly summary — ready for the Smart Labeler.

  • Chase — bank PDFs, bank CSV exports, and credit-card statements
  • Valley National Bank — bank PDFs and CSV exports
  • Generic CSV — many other banks export a column-headed CSV that the processor can also read

Bank format is auto-detected. New banks are added as they're requested — let us know what you need at [email protected].

Yes. Drop bank statements in the bank dropzone and credit-card statements in the CC dropzone. The output workbook will include both, with separate tabs for the credit-card transactions and a combined summary.

If you accidentally close the tab or your connection drops, your in-progress result is held for one hour. Re-open the tool and you'll see a recovery banner that lets you download what you already paid for — no lost run.

Smart Labeler

It categorizes every transaction in the Bank Processor's output for tax purposes. The output is a labeled Excel workbook with sorted tabs (shown first), category subtotals, and confidence colors so you know where to focus your review.

Classification flows through several layers in order:

  • Vendor rules — your custom keyword→category rules
  • Prior-Year (PY) data — learns how you labeled the same vendors last year
  • Known-vendor database — 600+ common merchants
  • Built-in rules — rideshare detection, fast-food thresholds, check-image OCR
  • Claude AI — classifies whatever the rules can't, plus a review pass that catches edge cases
  • Post-label rules — reclassify or split entire categories by dollar threshold (e.g., meals deductibility)

Color coding marks confidence:

  • Green — high confidence (85%+) — almost always correct
  • Yellow — medium confidence (70–84%) — usually correct, worth a glance
  • Orange — lower confidence (50–69%) — review recommended
  • Blue — classified by Claude AI — check the reasoning
  • Red — needs review — couldn't classify confidently

Vendor Rules match a keyword in the payee name and assign a category before AI ever sees it. Three modes:

  • Simple — keyword to single category (e.g., "netflix" → Personal Expense)
  • Split — keyword to two categories by percentage (e.g., "costco" → 70% COGS / 30% Supplies)
  • Threshold — keyword switches by dollar amount (e.g., "amazon" above $100 → Supplies, otherwise Personal Expense)

Rules are checked top to bottom — first match wins. Drag to reorder.

Post-Label Rules run after everything else and target whole categories instead of keywords (e.g., all "Meals" ≤ $50 → "Non-deductible Meal"). Use them when a deductibility split applies across many vendors.

PY data is a previously labeled workbook (last year's Smart Labeler output works best). When you upload it alongside this year's data, the labeler learns your categorization patterns: recurring vendors get matched automatically, and you'll see "X/Y in PY" showing how often a vendor was labeled the same way before.

For returning clients this is the single biggest accuracy lever. Inconsistent labels are auto-normalized so cosmetic differences ("Auto-Fuel" vs "Auto - Fuel") don't fragment the match.

TIS Generator

TIS stands for Taxable Income Summary. Feed it the labeled workbook from the Smart Labeler and it builds the line-by-line totals you'd actually drop into a tax return: a Fed_TIS summary tab, tax-line columns wired with XLOOKUP formulas, and a built-in reconciliation that should balance to bank activity once timing differences are accounted for.

  • Schedule C — sole proprietors (Form 1040)
  • Form 1120S — S-Corporations
  • Form 1120 — C-Corporations
  • Form 1065 — Partnerships

Each entity has its own tax-line mapping that matches the actual form lines.

The TIS includes a Super Reconciliation tab that ties Fed_TIS line totals back to bank activity, and an out-of-period adjustment that handles credit-card billing-cycle timing. If anything's off, you'll see exactly where — and the new Reconcile tool can run a deeper AI-guided sanity check on the workbook.

Reconcile (AI Workbook Reconciliation)

It runs a battery of automated checks on a Smart Labeler or TIS workbook before you finalize it — the things a careful reviewer would look for, automated. Examples: subtotals that don't match the formula, deposit categories landing on expense rows, missing tax-line mappings, and out-of-period CC entries.

Failed checks are sent to Claude for plain-English diagnostics, so instead of "Check 7 failed" you get "Three Whole Foods rows are categorized as Auto-Fuel; this is almost certainly a paste error from the prior year."

Right before finalizing the TIS for tax preparation, especially on returns where the numbers feel "off" but you're not sure why. Also useful after manual edits — if you've been tweaking categories by hand, run Reconcile to make sure the totals still tie out.

Sales Tax Helper

For service businesses with sales-tax obligations — restaurants, catering, retail, etc. It pre-fills the income side of your sales-tax workbook from labeled deposit data, optionally OCRs handwritten job notes (catering tickets, jobsite invoices), and matches expenses against income for a quick taxable-vs-non-taxable split.

No — we don't file anything. The output is a workbook ready for whoever does file (you, your tax preparer, your state's portal, etc.). Think of it as the prep step that takes the boring data-entry off the plate.

PnP Agent

The Agent runs the full pipeline in one click: Bank Processor → Smart Labeler → TIS → Reconcile → (optional) Sales Tax. Drop your statements once, set the year + entity, and you get every output workbook back without bouncing between tools.

Each step still uses one run from your access token, just like running the tools individually — the convenience is in not having to re-upload the intermediate file at every step.

When you want to inspect the output between steps — e.g., adjust vendor rules after seeing the first labeling pass, or hand-edit categories before TIS. The Agent is best for "I trust the rules I've set up, just run the whole thing." Individual tools are best for the iterative refinement runs.

PnP Presets (Whale Dashboard)

A whale-tier (30M+ $PNP) feature that lets you save and reuse your favorite settings — vendor rules, post-label rules, default deposit labels, business types — as named presets. Pick a preset on any tool page and the form pre-fills with that configuration. Useful if you process multiple clients and each one has a stable set of rules.

On our server, bound to your wallet. They follow you across devices — sign in with the same wallet on a different machine and your presets are there. No client transaction data is stored; presets are just rules and labels you've configured.

Lab (Printr Explorer)

The Lab is an on-chain explorer for tokens launched on Printr (the platform that hosts $PNP and other "brrr" tokens). Paste a mint address — or click any token in the table — and the Lab pulls live stake and claim data straight from Solana, summarizes who's staked, and computes a Community Belief score that grades how strong the holder conviction looks for that mint.

A 0–100 read on conviction for a given mint, computed from the stake/claim ledger and current holdings of the wallets we observe. Tiers go: Diamond → Strong → Mixed → Shaky → Exit. It's a heuristic for what the on-chain behavior looks like, not investment advice — high scores can still go to zero.

Two layers. The $PNP staking pool is rescanned every 10 minutes so $PNP holdings stay current. Other mints are rescanned when you click them, with a short cache so back-to-back clicks don't pound the RPC. If you want to force-refresh, just hit the mint's page directly with the latest URL — we'll re-pull from chain.

Browsing $PNP and the table is free. Scanning new arbitrary mints uses 1M $PNP per scan unless you're a whale (30M+), in which case scans are unlimited.

Movers

Movers tracks brand-new tokens launched on Printr in the last 7 days, sorted by share-of-supply that's been moved into staking pools. It's the place to spot newly-deployed mints that already have meaningful conviction, before they make it into the broader Lab table.

Lab = every mint we've seen, sorted by total staked (so $PNP and the established names dominate). Movers = only mints from the last week, sorted by how much of their supply is already locked up — surfaces the early movers before the Lab table catches up to them.

Movers has tiered access. Preview mode shows the top 3 movers to anyone. Full access — including the entire ranked list, position alerts, and the on-chain activity feed — is a paid feature gated by $PNP holdings or a paid token. Connect a qualifying wallet and the page unlocks.

General Questions

Two paths, depending on how much hand-tuning you want to do:

  • One-shot: use the PnP Agent — drop statements, set client + year, and it runs the whole pipeline (Bank → Labeler → TIS → Reconcile → optional Sales Tax) returning every workbook.
  • Step-by-step: Bank Processor → review → Smart Labeler (tweak rules, upload PY data) → review labels (focus on yellow/red) → TIS Generator → Reconcile → finalize.

For returning clients, always upload last year's labeled workbook as PY data. It's the single biggest accuracy boost.

Three ways to pay:

  • SOL or USDC — pay with crypto via Phantom; per-tool or bundle pricing shown live in the modal
  • Credit card — Stripe, $100 per tool or $300 for a bundle
  • $PNP holdings (Token Access Program) — hold tokens in your wallet for tier-based access:
    • 1M+ — Fish Starter (10 runs per tool per year)
    • 10M+ — Shark Elite (100 runs per tool per year)
    • 30M+ — Whale VIP (unlimited runs + early-access features like PnP Presets)

Connect Phantom on any tool page to see your access tier and remaining runs. Live pricing is fetched from the server in case rates change.

Each tool execution costs 1 run. The PnP Agent uses 4–5 runs per pipeline (one per step). Runs are shared across tools — pay once on any tool page and your runs work on Bank, Labeler, TIS, Reconcile, Sales Tax, and the Agent. Bundle plans are usually the better deal if you're going to use more than two tools on the same client.

Your remaining runs are shown in the header of every tool page; hover for the per-tool breakdown.

Programmatic access via x402 micropayments (pay-per-call USDC on Solana) is built but currently paused while we wait on demand. If you're building an AI agent or service that wants to call our endpoints directly, drop us a line at [email protected] and we'll turn it back on.

Yes — your statements do hit our servers (we have to read them to process them), and here's exactly what happens to them:

  • In-memory only — PDFs and CSVs are decoded in RAM, processed, and released within seconds. No plaintext copy ever touches disk.
  • No transaction database — we don't store transactions, payees, or amounts. The infrastructure to do that doesn't exist on our side.
  • Encrypted output at rest — the Excel workbooks we generate are encrypted with AES-256-GCM until you download them, then deleted automatically within 24 hours.
  • Session-bound downloads — even if someone guessed the filename, they couldn't fetch your file without your session cookie.
  • No accounts — no email, no password, no profile. Authentication is either a Phantom signature or a Stripe receipt.
  • HTTPS + httpOnly cookies + CSP — standard hardening: nothing readable on the wire, nothing readable from JS, no third-party scripts allowed except a small allowlist.

The two things we do persist: PnP Presets (your saved rules and labels — never your client data) and the access-token row tied to your wallet (so you can use your runs).

End-to-end client-side encryption (so even the upload is encrypted before it reaches us) is rolling out on more tools.

The PDF parsing engine, the AI labeling models, and the Excel formula generation all live on the server. Pulling them into a browser bundle would mean a 100MB+ initial download, much slower processing, and no Claude API access (the API key has to stay server-side). The tradeoff we made is: server-side compute, with the strictest data-handling posture we could practically build (in-memory only, no DB writes, encrypted outputs, automatic deletion).

Our entire payment flow is open source and MIT licensed — you can read every line of code that handles your wallet. Highlights:

  • Wallet ownership — verified via Ed25519 message signing; can't be faked without your private key
  • One-time nonces — burned after use to prevent replay attacks
  • Duplicate-payment protection — each Solana transaction signature can only grant access once
  • On-chain verification — the backend confirms the actual SOL/USDC amount received on Solana
  • Cross-device restore — paid on one device? Connect the same wallet on another and sign to restore access. Same token, no double spending.
  • Rate limiting — sensitive endpoints throttled to prevent abuse

Yes. The payment flow is fully open source at github.com/YerboyMike/pnp-payment-flow (wallet connection, SOL/USDC payment handling, manual payments, the security model). No API keys or server secrets — just the code that runs in your browser. Read it, audit it, or fork it.

Yes — Analytics is public. Visitors, runs, revenue, payments, tool distribution, page views, and a comments section. Period selectors for last 7 / 30 / 90 days.

Email [email protected] — we read everything, especially feature requests and bank format additions.

Still have questions?

Email [email protected] or post in the comments on the Analytics page.