Payment history for one account

Every payment a builder has made, one row per invoice, expandable into line items, receipt, branded invoice, refunds and failed attempts — scoped strictly to that account's own subscription.

What it is

A tab reading the platform payment processor directly. Each row pairs the invoice and the payment rather than listing them separately, and shows kind (subscription, one-off, upsell), status, total, and how many attempts failed. Lifetime totals are computed over fully paginated paid payments net of refunds.

Also called: what have I paid you · invoices from the vendor · receipts · lifetime value · billing history

See it
Payment history for one account
Prepared for
Sutter Kline
1140 Ridge Line Rd · Fair Play
Shell package$35,948
Concrete & site$10,436
Doors & windows$6,958
Trim & finish$4,638
Total
$57,980
Signature
The invoice rows with kind and status chips, one expanded to line items with receipt / hosted invoice / branded invoice links and a refund line. Sample data — no customer information appears here.
How it works
  1. 1Rows are fetched by the account's own subscription id, never by customer.
  2. 2Expanding a row shows line items, the receipt link, the hosted invoice, and a branded invoice document safe to send to the customer.
  3. 3Refunds appear on the row with their amount, reason and date.
  4. 4The active subscription's plan, renewal date and recurring total sit above the list.
  5. 5A test/live key mismatch renders as a clean amber note rather than a red crash.
Why we built it

The route names the bug in its own header: payments are scoped 'STRICTLY to the tenant's own subscription. (Stripe customers are reused per email, so listing by customer would bleed every other signup/test run for that email into this tenant's view — the "23 payments" bug.)'

The problem
  • Listing by customer mixed unrelated signups into one account's history.
  • Payments and invoices in separate sections made a single transaction hard to read.
  • A key-mode mismatch used to crash the panel rather than explain itself.
Sound familiar?
What you get
Any past payment can be found, explained and re-sent as a document.
Lifetime value is a real figure, not a first-page estimate.
Failed attempts are visible before the customer calls about them.
What's inside

See it on your own jobs

Twenty minutes, your numbers, no slide deck. We’ll build one of your real buildings in front of you and send you the estimate link at the end — yours to keep either way.

or keep browsing features →