Ativação de Entitlement
Quando um entitlement é criado -- seja automaticamente a partir de uma cotação paga ou manualmente por um admin -- o sistema determina quais recursos downstream devem ser provisionados. Esta página explica o pipeline de provisionamento automático e as opções de substituição manual.
O pipeline de provisionamento
Como a classe é determinada
Quando uma cotação é paga, o sistema analisa os itens para mapear cada produto a uma Entitlement Class:
| Tipo de produto | Entitlement Class |
|---|---|
| Plugin WordPress | PLG |
| Hospedagem gerenciada (Moodle, WP) | ENV |
| Consultoria, desenvolvimento, projeto | SVC |
| Compra genérica ou assinatura | ORD |
| Associação de afiliado/parceiro | AFL |
| Treinamento, curso, mentoria | EDU |
Esse mapeamento é configurável pelo admin. Se o sistema não conseguir determinar a classe, utiliza ORD (genérica) por padrão e notifica o admin para reclassificação.
Cotações com múltiplos itens de classes diferentes criam um entitlement por classe distinta.
O que acontece por classe
PLG (Licença de Software)
- O sistema gera uma chave de licença através da camada de gestão de licenças.
- A licença é vinculada ao entitlement e à Organização.
- O cliente pode ativar a licença em seus sites pelo portal.
- O acesso a download é habilitado para os arquivos de produto associados.
Veja Atribuição de Licença para o fluxo completo de licenças.
ENV (Ambiente Gerenciado)
- O sistema cria um registro de Ambiente vinculado ao entitlement.
- O admin é notificado para provisionar a infraestrutura real (servidor, DNS, backups).
- O admin preenche os detalhes do ambiente: URLs, tipo de plataforma, configuração do servidor.
- O cliente vê o status do ambiente no portal assim que configurado.
O provisionamento de ambientes é um processo manual -- o sistema rastreia o registro, não a infraestrutura. Veja Provisionamento de Serviço.
SVC (Serviço)
- O sistema cria um registro de Serviço vinculado ao entitlement.
- Um Contrato é criado (se a política de provisionamento habilitar a criação automática de contrato).
- Um CreditBalance é inicializado (mesmo que comece em zero, para rastrear o consumo desde o início).
- O admin pode começar a gerenciar solicitações de serviço vinculadas ao entitlement.
Veja Provisionamento de Serviço e Ciclo de Vida do Contrato.
ORD (Pedido)
- O entitlement é vinculado ao pedido WooCommerce de origem.
- Uma fatura é gerada via Stripe.
- O cliente pode acompanhar o pedido e baixar documentos associados.
AFL (Afiliado)
- O sistema vincula o registro de afiliado do SolidAffiliate ao entitlement.
- O parceiro obtém acesso ao dashboard de afiliado no portal.
- Esta classe é tipicamente provisionada a partir do hook de aprovação do SolidAffiliate, não de uma cotação.
EDU (Educação)
- O entitlement concede acesso a materiais de treinamento, cursos ou sessões de mentoria.
- Documentos e downloads associados são vinculados.
- O cliente acessa o conteúdo matriculado pelo portal.
Provisionamento manual
Nem todos os entitlements são criados automaticamente. O admin pode:
- Criar um entitlement manualmente a partir do painel admin, selecionando a Organização, classe e nome do produto.
- Sobrescrever o provisionamento automático definindo a ProvisioningPolicy como
auto: falsepara classes ou produtos específicos. O sistema cria o entitlement, mas aguarda aprovação do admin antes de provisionar recursos downstream. - Re-provisionar se o provisionamento inicial falhou. Falhas de provisionamento são registradas e o admin é notificado para nova tentativa.
A política de provisionamento
A ProvisioningPolicy controla como o provisionamento se comporta em cada nível (global, classe, organização, produto ou entitlement individual):
| Configuração | Padrão | Efeito |
|---|---|---|
auto | true | Provisionar recursos downstream automaticamente |
require_approval | none | Quem deve aprovar antes do provisionamento executar |
retry_on_failure | true | Tentar novamente se o provisionamento falhar |
max_retries | 3 | Número máximo de tentativas |
deprovision_on_cancel | false | Desprovisionar automaticamente ao cancelar entitlement |
Veja Policies para mais detalhes sobre configuração de políticas e a hierarquia de substituição.
Após o provisionamento
Uma vez concluído o provisionamento, o sistema dispara o hook middag_entitlement_provisioned. Isso permite que sistemas externos e código customizado reajam -- por exemplo, enviando um e-mail de boas-vindas, criando um projeto no Jira ou notificando um canal Slack.
O entitlement agora está active e visível para o cliente no portal em "Meus Produtos".
Páginas relacionadas
- Fluxo de Compra e Renovação -- O pipeline que leva à criação do entitlement
- Atribuição de Licença -- Fluxo específico para PLG
- Provisionamento de Serviço -- Fluxos específicos para SVC e ENV
- Entitlement Classes -- Definições conceituais para cada classe