Improved billing and usage page - #4812
Conversation
Add upcoming and previous invoice history above plan history, using Autumn-hosted invoice links for past charges.
|
The latest updates on your projects. Learn more about Vercel for GitHub.
|
Greptile SummaryAdds invoice retrieval and presentation to the organization Billing & Usage page.
Confidence Score: 4/5The disabled-query loading behavior should be fixed before merging because some reachable billing-page states leave the invoice section loading forever. The new invoice section treats TanStack Query's pending status as an active request even when its capability conditions permanently disable fetching; the row actions also remain inaccessible from the keyboard. Files Needing Attention: frontend/app/src/pages/organizations/$organization/billing.tsx; frontend/app/src/components/v1/cloud/billing/invoices.tsx Reviews (1): Last reviewed commit: "feat: show invoices on the billing and u..." | Re-trigger Greptile |
| <Invoices | ||
| invoicePreviews={invoices.data?.invoicePreviews} | ||
| invoices={invoices.data?.invoices} | ||
| isLoading={invoices.isPending} |
There was a problem hiding this comment.
When control-plane billing is disabled or the user lacks canBill, the invoice query never runs but isPending remains true, causing the Invoices section to display a loading skeleton indefinitely.
| isLoading={invoices.isPending} | |
| isLoading={invoices.isLoading} |
| onClick={() => setSelectedPreview(preview)} | ||
| > |
There was a problem hiding this comment.
The invoice actions are attached only to onClick handlers on plain table rows, so keyboard users cannot focus or activate upcoming invoice details or hosted previous invoices.
Note: If this suggestion doesn't match your team's coding style, reply to this and let me know. I'll remember it for next time!
Summary
Depends on the control-plane invoices API: https://github.com/hatchet-dev/hatchet-control-plane/pull/131
Test plan
sdksorg