add subscription upgrade plan
Build & Push / Pipeline Tests (push) Failing after 2m0s
Build & Push / Build & Push Docker Image (push) Has been skipped
Test / Type Check (all packages) (push) Successful in 53s
Test / API Unit Tests (push) Successful in 1m8s
Test / Homepage Unit Tests (push) Successful in 48s
Test / Carplace Unit Tests (push) Successful in 42s
Test / Admin Unit Tests (push) Successful in 41s
Test / Dashboard Unit Tests (push) Successful in 43s
Test / API Integration Tests (push) Failing after 1m7s

This commit is contained in:
root
2026-08-10 23:23:58 -04:00
parent 5f06256271
commit 7b8f81336a
15 changed files with 1957 additions and 104 deletions
@@ -119,6 +119,7 @@ interface BillingInvoice {
creditNotes: CreditNote[]
refunds: Refund[]
taxRecords: TaxRecord[]
subscriptionUpgradeRequest?: { id: string; status: string } | null
manualPaymentSubmissions?: Array<{
id: string
method: 'BANK_TRANSFER' | 'CHECK'
@@ -980,7 +981,13 @@ export default function AdminBillingPage() {
setActionError(null)
setReauthRequired(false)
try {
await api(`/admin/billing/invoices/${selectedInvoice.id}/manual-payments`, {
const path = selectedInvoice.invoiceType === 'SUBSCRIPTION_UPGRADE'
? selectedInvoice.subscriptionUpgradeRequest?.id
? `/admin/billing/upgrade-requests/${selectedInvoice.subscriptionUpgradeRequest.id}/approve-payment`
: null
: `/admin/billing/invoices/${selectedInvoice.id}/manual-payments`
if (!path) throw new Error('Upgrade request link is missing for this subscription upgrade invoice.')
await api(path, {
method: 'POST',
body: JSON.stringify({
submissionId: submission.id,