> For the complete documentation index, see [llms.txt](https://ajuda.digitalsac.io/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://ajuda.digitalsac.io/digicrm/configuracao/empresas-tenants.md).

# 🏢 Empresas / Tenants

## Funcionamento dos Tenants no DigitalSac

### Visão geral

O DigitalSac é um sistema multiempresa. Cada empresa cadastrada na plataforma é representada por um **tenant**.

Um tenant funciona como um ambiente separado dentro do sistema. Ele possui seus próprios usuários, atendimentos, canais, contatos, configurações, permissões e regras de uso.

Na prática, cada cliente ou empresa atendida pela plataforma acessa o DigitalSac dentro do seu próprio tenant.

***

### O que é um Tenant?

Um **tenant** é a identificação da empresa dentro do DigitalSac.

Cada tenant possui informações próprias, como:

* Nome da empresa
* E-mail principal
* Documento
* Telefone
* Status da conta
* Plano contratado
* Data de vencimento
* Usuários vinculados
* Canais disponíveis
* Configurações visuais e operacionais
* Regras de canais permitidos

Essas informações permitem que o sistema saiba a qual empresa pertencem os dados acessados pelo usuário.

***

### Isolamento dos dados

O DigitalSac utiliza o tenant para separar os dados de cada empresa.

Quando um usuário faz login, o sistema identifica o `tenantId` vinculado a esse usuário. A partir disso, as ações realizadas dentro do sistema passam a ser executadas dentro daquele tenant.

Isso significa que os dados de uma empresa não se misturam com os dados de outra.

Exemplos de dados vinculados ao tenant:

* Usuários
* Contatos
* Tickets de atendimento
* Mensagens
* Filas
* Canais de atendimento
* Campanhas
* Configurações
* Tags
* Automações
* Templates
* Integrações

Cada operação respeita o tenant ativo do usuário autenticado.

***

### Gerenciamento dos Tenants pelo PerfexCRM

No DigitalSac, os tenants são gerenciados comercialmente pelo **PerfexCRM**.

O PerfexCRM é responsável por controlar a parte administrativa e comercial do cliente, incluindo:

* Cadastro do cliente
* Plano contratado
* Servidor de destino
* Informações comerciais
* Situação da assinatura
* Dados usados no processo de registro

Quando um novo cliente é cadastrado pelo fluxo comercial, o DigitalSac consulta o PerfexCRM para obter as informações necessárias e realizar o provisionamento do tenant.

***

### Fluxo de cadastro de um novo cliente

O fluxo de cadastro funciona de forma integrada entre DigitalSac e PerfexCRM.

1. O usuário acessa a tela de cadastro.
2. O DigitalSac consulta os planos disponíveis no PerfexCRM.
3. O usuário escolhe um plano.
4. O DigitalSac identifica o servidor padrão configurado no PerfexCRM.
5. Os dados do cadastro são enviados para o PerfexCRM.
6. O PerfexCRM processa o registro comercial.
7. O tenant é criado no ambiente correspondente.
8. Um usuário administrador é criado para o novo tenant.
9. As configurações iniciais do tenant são geradas automaticamente.
10. O cliente recebe as informações de acesso.

Esse processo permite que o cadastro comercial e a criação do ambiente no sistema aconteçam de forma centralizada e controlada.

***

### Planos e limites do Tenant

Cada tenant está vinculado a um plano.

O plano define limites e recursos disponíveis, como:

* Quantidade de usuários
* Quantidade de canais
* Quantidade de mensagens de campanha
* Recursos habilitados
* Recorrência
* Valor
* Período de teste, quando aplicável

Além do plano, o tenant também pode possuir limites adicionais, como:

* Usuários adicionais
* Canais adicionais
* Regras específicas por tipo de canal

Essas informações ajudam o sistema a controlar o uso contratado por cada cliente.

***

### Status do Tenant

Um tenant pode possuir status que indica sua situação dentro do sistema.

O status mais comum é:

* **Ativo**: o tenant pode ser utilizado normalmente.
* **Inativo**: o tenant não deve ser utilizado até regularização ou liberação administrativa.

Além do status, o sistema também considera a data de vencimento do tenant.

Quando um tenant está próximo do vencimento ou vencido, a interface pode exibir avisos para orientar o usuário ou administrador.

***

### Tenant e data de vencimento

Cada tenant pode possuir uma data de vencimento.

Essa data é usada para indicar até quando aquele ambiente está válido conforme o plano contratado.

Na seleção de tenants, o sistema pode mostrar:

* Tenant ativo
* Tenant próximo do vencimento
* Tenant vencido

Isso facilita a identificação da situação da conta antes do acesso.

***

### Usuário administrador do Tenant

Quando um tenant é criado, o sistema também cria um usuário administrador vinculado a ele.

Esse usuário tem permissão para gerenciar as principais configurações daquele ambiente, como:

* Usuários da empresa
* Filas de atendimento
* Canais
* Configurações do sistema
* Recursos disponíveis conforme o plano

O administrador do tenant atua somente dentro do ambiente da própria empresa.

***

### Usuário Master e seleção de Tenant

O DigitalSac possui usuários com permissão especial de acesso, chamados de usuários **Master**.

Usuários Master podem visualizar e selecionar diferentes tenants disponíveis no sistema.

Esse recurso é usado para administração, suporte e manutenção.

Ao acessar a tela de escolha de tenant, o usuário Master pode selecionar qual empresa deseja administrar. Depois da seleção, o sistema gera uma sessão considerando o tenant escolhido.

Importante: usuários comuns não escolhem tenant. Eles acessam diretamente o tenant ao qual pertencem.

***

### Tela de escolha de Tenant

A tela de escolha de tenant é exibida para usuários autorizados, especialmente usuários Master.

Nessa tela, é possível visualizar informações como:

* Nome do tenant
* ID do tenant
* Status
* Data de vencimento
* Recorrência
* Logo personalizada, quando configurada

Após escolher um tenant, o sistema troca o contexto da sessão para aquele ambiente.

***

### Configurações próprias por Tenant

Cada tenant possui suas próprias configurações.

Essas configurações podem incluir:

* Logo do tenant
* Mensagens automáticas
* Horários de atendimento
* Configurações de canais
* Preferências de atendimento
* Regras internas
* Termos de uso
* Configurações visuais

Ao criar um tenant, o sistema executa automaticamente a geração das configurações iniciais para que o ambiente já esteja pronto para uso.

***

### Canais e regras por Tenant

O DigitalSac permite controlar regras de canais por tenant.

Isso significa que cada empresa pode ter permissões específicas para uso de determinados tipos de canal.

Exemplos de canais que podem ser controlados:

* WhatsApp
* Instagram
* Facebook
* E-mail
* Telegram
* WebChat
* WABA
* Outros canais integrados

Essas regras ficam vinculadas ao tenant, não apenas ao plano. Isso permite maior flexibilidade na liberação ou bloqueio de recursos por empresa.

***

### Relação entre Tenant, Plano e PerfexCRM

A estrutura pode ser entendida da seguinte forma:

```
PerfexCRM
 └── Gerencia comercialmente os clientes, planos e servidores

DigitalSac
 └── Cria e opera os tenants no sistema

Tenant
 └── Representa uma empresa dentro do DigitalSac

Plano
 └── Define limites e recursos disponíveis para o tenant

Usuários
 └── Pertencem a um tenant específico
```
