diff --git a/apps/studio/components/interfaces/Organization/BillingSettings/BillingAddress/BillingAddress.tsx b/apps/studio/components/interfaces/Organization/BillingSettings/BillingAddress/BillingAddress.tsx index fe2e900f7c1..976b83a9b63 100644 --- a/apps/studio/components/interfaces/Organization/BillingSettings/BillingAddress/BillingAddress.tsx +++ b/apps/studio/components/interfaces/Organization/BillingSettings/BillingAddress/BillingAddress.tsx @@ -95,7 +95,7 @@ const BillingAddress = () => { ) : !canReadBillingAddress ? ( diff --git a/apps/studio/components/interfaces/Organization/BillingSettings/PaymentMethods/PaymentMethods.tsx b/apps/studio/components/interfaces/Organization/BillingSettings/PaymentMethods/PaymentMethods.tsx index da891a8e43f..4ea475e4aa0 100644 --- a/apps/studio/components/interfaces/Organization/BillingSettings/PaymentMethods/PaymentMethods.tsx +++ b/apps/studio/components/interfaces/Organization/BillingSettings/PaymentMethods/PaymentMethods.tsx @@ -84,7 +84,7 @@ const PaymentMethods = () => { ) : !canReadPaymentMethods ? ( diff --git a/apps/studio/components/interfaces/Organization/BillingSettings/TaxID/TaxID.tsx b/apps/studio/components/interfaces/Organization/BillingSettings/TaxID/TaxID.tsx index 33b9e58136b..d2d64bb6cd8 100644 --- a/apps/studio/components/interfaces/Organization/BillingSettings/TaxID/TaxID.tsx +++ b/apps/studio/components/interfaces/Organization/BillingSettings/TaxID/TaxID.tsx @@ -146,7 +146,7 @@ const TaxID = () => { ) : !canReadTaxId ? ( diff --git a/apps/studio/components/interfaces/Organization/InvoicesSettings/InvoicesSettings.tsx b/apps/studio/components/interfaces/Organization/InvoicesSettings/InvoicesSettings.tsx index 0f7315f89ed..ca840322bf7 100644 --- a/apps/studio/components/interfaces/Organization/InvoicesSettings/InvoicesSettings.tsx +++ b/apps/studio/components/interfaces/Organization/InvoicesSettings/InvoicesSettings.tsx @@ -81,7 +81,7 @@ const InvoicesSettings = () => { resource="Invoices" ctaUrl={ selectedOrganization?.managed_by === 'vercel-marketplace' - ? `https://vercel.com/${'TBA'}/~/settings/invoices` + ? `https://vercel.com/${selectedOrganization.partner_id}/~/settings/invoices` : `https://us-east-1.console.aws.amazon.com/billing/home#/bills` } /> diff --git a/apps/studio/data/organizations/organizations-query.ts b/apps/studio/data/organizations/organizations-query.ts index f85e825790a..0c1fc04fe35 100644 --- a/apps/studio/data/organizations/organizations-query.ts +++ b/apps/studio/data/organizations/organizations-query.ts @@ -12,6 +12,7 @@ function castOrganizationResponseToOrganization( ...org, billing_email: org.billing_email ?? 'Unknown', managed_by: org.slug.startsWith('vercel_icfg_') ? 'vercel-marketplace' : 'supabase', + partner_id: org.slug.startsWith('vercel_') ? org.slug.replace('vercel_', '') : undefined, } } diff --git a/apps/studio/types/base.ts b/apps/studio/types/base.ts index e44381319a7..e593dcf2d2c 100644 --- a/apps/studio/types/base.ts +++ b/apps/studio/types/base.ts @@ -12,6 +12,7 @@ export interface Organization { restriction_status: 'grace_period' | 'grace_period_over' | 'restricted' | null restriction_data: Record managed_by: 'supabase' | 'vercel-marketplace' | 'aws-marketplace' + partner_id?: string } /**