Billing rework
Some checks failed
Build and Push / build (push) Failing after 41s

This commit is contained in:
2026-05-02 00:04:23 +02:00
parent 46369fda01
commit 392b0991a5
17 changed files with 1070 additions and 16 deletions

View File

@@ -196,6 +196,41 @@ export interface BillingAddress {
city?: string;
postalCode?: string;
country?: string;
/**
* VAT identifier. Required for new submissions (Bug 35); older
* tenant_requests rows in the audit table may have this absent.
*/
vatNumber?: string;
}
/**
* Org-scoped billing record (Bug 35). One per ZITADEL org. Captured
* during the first tenant request, editable afterwards via the
* /settings/billing page. All future tenant requests in the same org
* reuse this without prompting again.
*
* Personal orgs (`isPersonal=true` in their context) currently don't
* fill this in — the wizard skips the step and the onboarding
* endpoint doesn't enforce it. If they later want billing on file
* (e.g. for invoices), they can fill the settings page manually.
*
* `vatNumber` is required for company orgs at write time, optional
* for personal. The API enforces this; the type itself keeps it
* optional because it's nullable in the DB and may be unset for
* personal orgs.
*/
export interface OrgBilling {
zitadelOrgId: string;
companyName: string;
streetAddress: string;
postalCode: string;
city: string;
country: string;
vatNumber?: string | null;
billingEmail: string;
notes?: string | null;
createdAt: string;
updatedAt: string;
}
export type TenantRequestStatus =