Skip to content

Produtos e Entitlement Classes

Todo produto WooCommerce no ecossistema MIDDAG mapeia para uma Entitlement Class. Esse mapeamento indica ao MIDDAG Account qual tipo de acesso conceder quando um cliente adquire o produto. Um produto mapeia para exatamente uma classe.

As seis Entitlement Classes

ClasseNomeO que representaO que é criado na compra
PLGPluginLicença de softwareEntitlement + Chave de licença + Acesso a download
ENVEnvironmentInstância de hospedagem gerenciadaEntitlement + Instância de ambiente
SVCServiceServiço ou projeto contínuoEntitlement + Serviço + Contrato + Saldo de Créditos
ORDOrderCompra de uso geralEntitlement (genérico, vinculado ao pedido)
AFLAffiliateParticipação no programa de parceirosEntitlement + Rastreamento de afiliado
EDUEducationTreinamento, mentoria, cursoEntitlement + Acesso ao curso

Como o mapeamento funciona

Ao criar ou editar um produto WooCommerce, um painel do MIDDAG Account aparece no editor de produto. Esse painel contém:

  1. Entitlement Class -- Selecione uma das seis classes acima.
  2. Configurações específicas da classe -- Campos que variam por classe (duração da licença, tier do ambiente, categoria do serviço, etc.).
  3. Overrides de política -- Overrides opcionais por produto para políticas de renovação, reembolso, cancelamento e outras.

Produtos sem mapeamento de Entitlement Class são tratados como produtos WooCommerce padrão. Nenhum entitlement é criado quando são adquiridos.

Campos meta do produto

O mapeamento é armazenado como meta do produto WooCommerce:

Chave metaTipoDescrição
_middag_entitlement_classstringO código da classe: PLG, ENV, SVC, ORD, AFL, EDU
_middag_provisioning_modestringauto (padrão) ou manual
_middag_policy_overridesJSONOverrides de política por produto (opcional)

Campos meta adicionais dependem da classe. Por exemplo, produtos PLG possuem _middag_license_duration e _middag_activation_limit.

Registro de Produtos [Planejado]

O Registro de Produtos é uma tela administrativa planejada (MIDDAG Account > Configurações > Registro de Produtos) que oferece uma visão centralizada de todos os produtos WooCommerce e seus mapeamentos de Entitlement Class. Nessa tela você pode:

  • Ver todos os produtos com a classe atualmente atribuída
  • Atribuir ou alterar classes em lote
  • Visualizar produtos sem mapeamento (que, portanto, não criarão entitlements)
  • Filtrar por classe, categoria ou status

Até que o Registro de Produtos seja implementado, os mapeamentos são configurados no editor individual de produto.

Exemplos

Produto de plugin (classe PLG)

Um produto como "MIDDAG for Moodle -- FULL" (SKU: PLG-MOODLE-FULL):

  • Entitlement Class: PLG
  • Tipo de cobrança: Assinatura (mensal ou anual)
  • Na compra: Cria um entitlement com código como PLG-2026050042, gera uma chave de licença, habilita acesso a download
  • Na renovação: Estende a data de expiração do entitlement, a chave de licença permanece a mesma

Plano de hospedagem (classe ENV)

Um produto como "Managed Hosting -- Standard" (SKU: SVC-HOST-BASIC):

  • Entitlement Class: ENV
  • Tipo de cobrança: Assinatura (mensal)
  • Na compra: Cria um entitlement com código como ENV-2026050003, provisiona uma instância de ambiente
  • Na renovação: Estende o entitlement, o ambiente permanece ativo

Plano de suporte (classe SVC)

Um produto como "Monthly Support -- Business" (SKU: SVC-SUP-BUSINESS):

  • Entitlement Class: SVC
  • Tipo de cobrança: Assinatura (mensal ou anual)
  • Na compra: Cria um entitlement, registro de serviço, contrato e saldo de créditos inicial
  • Na renovação: Estende o entitlement, atualiza o saldo de créditos conforme o plano

Sessão de treinamento (classe EDU)

Um produto como "Training Session 1h" (SKU: EDU-BRIDGE-SESSION):

  • Entitlement Class: EDU
  • Tipo de cobrança: Pagamento único
  • Na compra: Cria um entitlement com acesso à sessão de treinamento

Overrides de política por produto

Cada produto pode sobrescrever os valores globais e de nível de classe das políticas. A hierarquia de override é:

Padrões globais
  -> Padrões da classe (ex.: todos os produtos PLG)
    -> Overrides da organização
      -> Overrides do produto        <-- configurado aqui
        -> Overrides individuais do entitlement

O mais específico vence. Se um produto não define um override, o valor é herdado do nível acima.

Overrides comuns por produto:

PolíticaExemplo de override
ReembolsoJanela de reembolso mais curta para produtos avulsos (7 dias ao invés de 30)
RenovaçãoRenovação pelo preço atual do catálogo ao invés do preço original de compra
TrialHabilitar trial para produtos ENV específicos (14 dias)
SLATier de SLA mais alto para produtos de hospedagem premium

Esses overrides são configurados na definição YAML do produto (fonte de verdade) e sincronizados para o meta do produto WooCommerce.

Formato do SKU

Os SKUs de produtos seguem um formato estruturado:

{ENTITLEMENT_CLASS}-{LINE}[-{PRODUCT}][-{VARIATION}]

Exemplos:

SKUClasseLinhaProdutoVariação
PLG-MOODLE-FULLPLGMOODLEFULL--
PLG-EXT-SMARTFORMSPLGEXTSMARTFORMS--
SVC-HOST-BASICSVCHOSTBASIC--
EDU-BRIDGE-SESSIONEDUBRIDGESESSION--

O prefixo da Entitlement Class no SKU corresponde ao mapeamento de classe, facilitando a identificação visual da classe de um produto.

Páginas relacionadas