Skip to content

Renovações

Renovações estendem a validade de um entitlement sem criar um novo. O mesmo código de entitlement persiste ao longo de todos os ciclos de renovação. O MIDDAG Account suporta fluxos de renovação automática e manual.

Renovação automática

Para produtos baseados em assinatura, o WooCommerce Subscriptions e o Stripe gerenciam a cobrança recorrente. O MIDDAG Account responde aos resultados:

  1. Antes da expiração -- A configuração grace_days_pre_expiry da Renewal Policy (padrão: 7 dias) determina quando o sistema tenta cobrar o método de pagamento armazenado.
  2. Cobrança bem-sucedida -- O WooCommerce cria um pedido de renovação com status Completed. A data de expiração do entitlement é estendida pelo período de cobrança. O status permanece active.
  3. Cobrança falha -- A Payment Recovery Policy assume (veja Falha de pagamento abaixo).

O WooCommerce Subscriptions gerencia a complexidade da cobrança recorrente — prorrateio, agendas de retentativa e atualização de métodos de pagamento. O adaptador de assinatura do MIDDAG Account traduz esses eventos em transições de ciclo de vida do entitlement.

Renovação manual

Para entitlements sem assinatura, ou quando a renovação automática está desativada:

  1. Lembretes de renovação são enviados em intervalos configuráveis antes da expiração (padrão: 30, 7 e 1 dia antes).
  2. O cliente inicia a renovação pelo portal, que inicia um novo fluxo de pagamento.
  3. Após pagamento bem-sucedido, o entitlement é renovado com uma data de expiração atualizada.

A renovação manual cria um novo pedido WooCommerce, que passa pelo mesmo pipeline de qualquer outro pedido. A diferença é que o serviço de provisionamento reconhece o entitlement existente e o estende ao invés de criar um novo.

Renovação antecipada

Clientes podem renovar antes do término do período atual. A configuração early_renewal_days (padrão: 30) controla com quanta antecedência a renovação é permitida. Ao renovar antecipadamente, o novo período é adicionado à data de expiração existente — o cliente não perde tempo restante.

Período de carência

Quando um entitlement atinge sua data de expiração sem uma renovação bem-sucedida:

  1. O entitlement transiciona para expired.
  2. Um período de carência começa, governado pela Renewal Policy.
  3. Durante o período de carência, o cliente ainda pode renovar pelo preço original.
  4. Se o período de carência passar sem renovação, a Cancellation Policy assume — após expired_to_cancelled_days (padrão: 30 dias), o entitlement é automaticamente cancelado.

Durante o período de carência, o comportamento dos recursos downstream depende da Entitlement Class:

ClasseComportamento no período de carência
PLGChave de licença permanece válida, acesso a download continua
ENVAmbiente permanece acessível mas pode ser marcado para descomissionamento
SVCSolicitações de serviço ainda podem ser enviadas, mas novos créditos ficam pausados

Linha do tempo de notificações de renovação

A Notification Policy controla quando os lembretes são enviados. A linha do tempo padrão:

QuandoNotificação
30 dias antes da expiraçãoPrimeiro lembrete de renovação
7 dias antes da expiraçãoSegundo lembrete de renovação
1 dia antes da expiraçãoLembrete urgente de renovação
Na expiraçãoAviso de expiração ("seu entitlement expirou")
Durante o período de carênciaLembrete do período de carência ("você ainda tem tempo para renovar")
Fim do período de carênciaAviso final ("o acesso será cancelado em X dias")

Esses intervalos são configuráveis por classe, organização, produto ou entitlement individual através da hierarquia de overrides de política.

Alterações de preço na renovação

A configuração renewal_pricing da Renewal Policy controla qual preço o cliente paga na renovação:

ConfiguraçãoComportamento
sameRenova pelo preço original de compra (padrão para PLG, ENV, ORD, AFL, EDU)
currentRenova pelo preço atual do catálogo (padrão para classe SVC)

Quando definido como current, o cliente é notificado no lembrete de renovação caso o novo preço difira do preço atual. Isso é particularmente relevante para contratos de serviço onde valores podem ser reajustados anualmente.

Independente da configuração, um admin sempre pode sobrescrever o preço de renovação para um entitlement específico.

Falha de pagamento

Quando um pagamento de renovação falha:

  1. O Stripe faz retentativas automaticamente conforme sua agenda configurada.
  2. Após as retentativas serem esgotadas, a Payment Recovery Policy determina o próximo passo.
  3. Por padrão (trigger: retry_exhausted), o entitlement passa para suspended.
  4. O cliente é notificado a cada tentativa falha e quando o entitlement é suspenso.
  5. Se o pagamento for eventualmente recuperado, o entitlement retorna automaticamente para active (auto_reactivate_on_payment: true).
  6. Se o pagamento não for recuperado dentro de suspended_to_cancelled_days (padrão: 30 dias), o entitlement é cancelado.

Para a linha do tempo completa de suspensão e recuperação, veja a página Mapeamento de Status de Pagamento.

Páginas relacionadas