From 7d0cbd567e9136a083166e3c805c2eb664d15639 Mon Sep 17 00:00:00 2001 From: Brian O'Kelley Date: Sat, 10 Jan 2026 07:40:28 -0500 Subject: [PATCH] feat: invoice discount display and two-step draft flow MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit - Add discount banner showing percent/amount discounts on invoice products - Display strikethrough list prices with discounted net prices - Show "Recommended" badge for products matching org's revenue tier - Implement two-step invoice flow: Prepare Draft → Review → Send - Add draft review screen showing all invoice details before sending - Fix XSS vulnerability by replacing inline onclick handlers with data attributes and event listeners - Sort invoice products by price (lowest first) for better UX šŸ¤– Generated with [Claude Code](https://claude.com/claude-code) Co-Authored-By: Claude Opus 4.5 --- .changeset/every-moose-kick.md | 2 + server/public/admin-org-detail.html | 330 ++++++++++++++++++- server/public/dashboard.html | 471 +++++++++++++++++++++++++++- server/src/addie/mcp/admin-tools.ts | 137 +++++++- server/src/routes/admin.ts | 7 +- server/src/routes/billing-public.ts | 8 + 6 files changed, 923 insertions(+), 32 deletions(-) create mode 100644 .changeset/every-moose-kick.md diff --git a/.changeset/every-moose-kick.md b/.changeset/every-moose-kick.md new file mode 100644 index 0000000000..a845151cc8 --- /dev/null +++ b/.changeset/every-moose-kick.md @@ -0,0 +1,2 @@ +--- +--- diff --git a/server/public/admin-org-detail.html b/server/public/admin-org-detail.html index abb1e6a177..0676d408ae 100644 --- a/server/public/admin-org-detail.html +++ b/server/public/admin-org-detail.html @@ -1356,6 +1356,25 @@

+
+ Review Invoice Draft +

+ Please review all details before sending. The invoice will be emailed to the contact. +

+
+ +
+ +
+ + + +