Uso de campos personalizados do WooCommerce (assinatura)
Para uma determinada assinatura, você pode gerenciar as ativações editando seu pedido principal: na seção Related Orders, o Parent Order é indicado:

Clique no Order Number para gerenciar as ativações de uma determinada assinatura.
Quando o cliente ativa o EXE da planilha compilada, a aplicação web modifica o pedido do WooCommerce adicionando um campo personalizado chamado xlspadlock_activations: ou xlspadlock_activations_{productId} para assinaturas, dependendo do produto:

O valor do campo personalizado xlspadlock_activations contém uma lista de IDs de sistema (system IDs). Esses IDs de sistema exclusivos representam os computadores nos quais o cliente ativou o EXE da planilha compilada. Os IDs de sistema são separados pelo caractere |.
Por exemplo, “CD78-4563-3F2B|HC78-1243-EF74” indica que o EXE da planilha compilada foi ativado em dois computadores diferentes. Se você configurou a aplicação web para permitir apenas 2 ativações, na próxima vez um erro será gerado (não restam mais ativações).
Você pode limpar manualmente as ativações existentes removendo o ID de sistema correspondente. No entanto, recomenda-se oferecer aos clientes uma opção de desativação para que eles possam transferir a licença para novos computadores sem intervenção manual.
Campos personalizados para gerenciamento de expiração e uso de licenças
Section titled “Campos personalizados para gerenciamento de expiração e uso de licenças”O servidor pode gerenciar os limites de expiração e de uso para impedir o uso não autorizado. Aqui estão os campos e suas funcionalidades:
- Server-Side Expiration Control: Se `use_server_expiration` estiver ativado no config.ini, o servidor controlará automaticamente a expiração da licença para impedir modificações locais.
- Maximum Days Expiration (`xlspadlock_expiration_{productId}_{systid}`): Este campo é criado se houver uma duração máxima de validade definida (`variationMaxDays`) a partir da data de ativação. A data de expiração é definida com base nessa duração e é verificada cada vez que uma solicitação de ativação é feita.
- Se expirada, o servidor bloqueia a ativação e exibe o erro: “Your license for this activation has expired. Cannot activate.”
- Fixed Expiration Date (`variationExpireDate`): Se uma data de expiração fixa for definida, ela é armazenada neste campo, e cada solicitação de ativação verifica se ela já passou.
- Se expirada, a ativação é negada com o erro: “Your license has expired. Cannot activate.”
- Maximum Runs Limit (`xlspadlock_runs_{productId}_{systid}`): Este campo registra as ativações restantes permitidas para licenças limitadas por número de usos.
- Inicialmente definido como o total de execuções permitidas (`variationMaxRuns`), este contador diminui cada vez que a planilha é ativada.
- Quando o contador chega a zero, a ativação é negada com a mensagem: “You have reached the maximum number of allowed runs. Cannot activate.”
- Maximum Days Expiration (`xlspadlock_expiration_{productId}_{systid}`): Este campo é criado se houver uma duração máxima de validade definida (`variationMaxDays`) a partir da data de ativação. A data de expiração é definida com base nessa duração e é verificada cada vez que uma solicitação de ativação é feita.
Nota: cada vez que o cliente ativa o arquivo EXE da planilha compilada, uma nota é adicionada ao pedido do WooCommerce, como você pode ver aqui:
