Separar acesso e aviso
Mantenha o direito de download e o e-mail de aviso em registros separados. Um evento de pagamento repetido deve localizar o acesso existente, sem criar outra licença. Este é um padrão proposto, não uma função confirmada da Web3Cart.
Definir uma chave estável
Use uma chave única com loja, item do pedido e tipo de acesso. Verifique o pagamento conforme a política configurada antes de liberar acesso. Imponha unicidade no banco: consultar e depois inserir pode falhar com dois processos simultâneos.
Recuperar sem duplicar
Se o e-mail falhar após a criação do acesso, repita somente o aviso com o registro existente. Separe os estados, mantenha segredos de download fora dos logs e encaminhe referências conflitantes para revisão.
Testar a sequência
Repita um evento verificado, envie duas cópias simultâneas e simule uma falha no e-mail. Deve existir apenas um acesso. Um evento não verificado não deve liberar nenhum. Registre resultados esperados e observados antes da ativação.
