@cfxlabsinc/b2b-services
    Preparing search index...
    Customer: Omit<
        SelectCustomer,
        | "id"
        | "externalId"
        | "description"
        | "organizationId"
        | "data"
        | "terms"
        | "workspaceId"
        | "workspaceExternalId"
        | "operatingAccountId"
        | "operatingAccountExternalId",
    > & SelectCustomer["data"] & {
        description?: NonNullable<SelectCustomer["description"]>;
        id: SelectCustomer["externalId"];
        legalEntityName: string;
        logoPath?: NonNullable<SelectCustomerDashboardWorkspace["logoPath"]>;
        operatingAccountId: SelectLedgerAccount["externalId"] | null;
        organizationId: string;
        statusDescription: string;
        workspaceId: SelectCustomerDashboardWorkspace["externalId"];
    }

    Type Declaration

    • Optionaldescription?: NonNullable<SelectCustomer["description"]>
    • id: SelectCustomer["externalId"]
    • legalEntityName: string

      Display name of the organization referenced by organizationId, resolved via the same SQL inner join.

    • OptionallogoPath?: NonNullable<SelectCustomerDashboardWorkspace["logoPath"]>

      The workspace's logo path; absent means no logo.

    • operatingAccountId: SelectLedgerAccount["externalId"] | null

      The customer's "Operating" ledger account, by its external id; null until onboarding links one.

    • organizationId: string

      External id (org_…) of the customer's primary organization — the one row with organization.is_main_org set for this customer.

      Resolved from the primary-organization JOIN, never from the legacy customer.organization_id column (which is unread and slated to be dropped). Non-null because that join is an INNER one.

    • statusDescription: string

      The one label status is shown under, computed in SQL beside it.

    • workspaceId: SelectCustomerDashboardWorkspace["externalId"]

      The customer's dashboard workspace, by its external id.