Esquema
| Campo | Tipo | Descricao |
|---|---|---|
organizationId | UUIDv7 | Identificador unico |
billingThresholdId | UUIDv7 | FK para BillingThreshold |
subscriptionId | UUIDv7? | FK para Subscription |
iamExternalRef | string | Referencia da org no WorkOS |
billingExternalRef | string | Referencia do customer no Stripe |
name | string | Nome, max 255 caracteres |
email | string | Email de cobranca, unico |
currency | enum | USD, BRL, EUR |
phone | string? | Telefone |
address | object? | Endereco de cobranca |
taxId | string? | Documento fiscal |
taxType | enum? | CPF ou CNPJ |
createdBy | UUIDv7 | ID do usuario criador |
createdAt | datetime | Timestamp de criacao |
updatedBy | UUIDv7 | Ultimo atualizador |
updatedAt | datetime | Ultima atualizacao |
Exemplo
Relacionamentos
- Tem muitos Memberships
- Tem muitos Invitations
- Tem um BillingThreshold
- Tem muitas Subscriptions
- Tem muitas Invoices
- Tem muitos Costs
- Tem muitos Vouchers
Regras de Negocio
- Criada via padrao Saga: banco local -> WorkOS -> Stripe customer
- Email, telefone e endereco sao sincronizados com o Stripe em atualizacoes
- BillingThreshold deve corresponder a moeda da organizacao
- Cacheada por ID
O campo
currency define a moeda base da organizacao e afeta todos os calculos de billing, incluindo conversao cambial de custos de tokens.