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
}
/**