Ir diretamente para o conteúdo

Definições de cookies

Escolha que tipos de cookies permite. Pode alterar a sua escolha a qualquer momento em Definições de cookies, no fundo de cada página. Política de privacidade

Necessários

Sempre ativos

Necessários para iniciar sessão, manter o seu carrinho e memorizar as suas escolhas. Estão sempre ativos.

Que cookies?
  • weboke_sessie, weboke_klant, weboke_remember: a sua sessão e manter a sessão iniciada
  • weboke_basket: o seu carrinho
  • wkBtwIncl: mostrar preços com ou sem IVA
  • wok_cookies: a sua escolha de cookies, 12 meses

Mede que anúncio leva a uma visita ou encomenda, para não pagarmos por anúncios que não dão resultado.

Que cookies?
  • Google Ads via Google Tag Manager (_gcl_au, _gcl_aw), até 90 dias
  • OpenAI Ads, anúncios no ChatGPT
  • wok_aff: através de que parceiro chegou até nós (programa de afiliados), 60 dias

4,6

País e idioma

Cada país tem o seu próprio site, com os preços e o IVA desse país.

Ver

Produtos digitais e virtuais

Módulo 3: Produtos · Tempo de leitura: 11 minutos

Objetivo de aprendizagem: No final desta lição, saberá vender produtos digitais e virtuais com segurança: escolhe um método de descarregamento seguro, protege a pasta de descarregamentos, define limites e trata corretamente o direito de livre resolução nos conteúdos digitais.

Conceitos-chave: produto virtual, produto descarregável, link de descarregamento, limite de descarregamentos, data de validade, método de descarregamento (Forçar descarregamentos, X-Accel-Redirect/X-Sendfile, Apenas redirecionar), woocommerce_uploads, .htaccess, nginx, pastas de descarregamento aprovadas (Approved download directories), acesso após pagamento, conteúdo digital, consentimento expresso, renúncia ao direito de livre resolução

Virtual e descarregável: duas caixas de verificação diferentes

Num produto simples ou numa variação, vê duas caixas de verificação. Parecem semelhantes, mas fazem coisas diferentes:

  • Virtual (Virtual) significa: nada é enviado. O WooCommerce não cobra portes de envio e não pede morada de envio na finalização da compra (se tudo no carrinho for virtual). Pense numa prova de chás no local, num vale de oferta enviado por e-mail ou num workshop online.
  • Descarregar (Downloadable) significa: após o pagamento, o cliente recebe um ou mais ficheiros. O WooCommerce cria um link de descarregamento por cliente e mostra-o no e-mail de confirmação e em A minha conta > Descarregamentos.

Um livro de receitas digital em pdf é normalmente as duas coisas: nada segue por correio e existe um ficheiro. Um livro de receitas impresso com um pdf gratuito incluído é descarregável, mas não virtual: o livro segue efetivamente por correio.

A Theehuis Example vende o "Livro de Receitas Chá e Bolo" em pdf por € 9,95. Caixas de verificação: virtual e descarregável.

Como funciona um descarregamento e porque é que o método importa

Quando carrega um ficheiro num produto descarregável, o WooCommerce coloca-o na pasta wp-content/uploads/woocommerce_uploads/. Por predefinição, acrescenta uma sequência aleatória de caracteres ao nome do ficheiro (opção "Append a unique string to filename for security", ativa por predefinição). O cliente nunca recebe esse endereço, mas sim um link para a sua loja com uma chave de encomenda e um código de descarregamento. A cada clique, o WooCommerce verifica: este descarregamento pertence a uma encomenda paga, o limite ainda não foi atingido, ainda não expirou? Só então o cliente recebe o ficheiro.

A forma como o ficheiro chega depois ao cliente escolhe-se em WooCommerce > Configurações > Produtos > Produtos para descarregamento, no método de descarregamento (File download method):

MétodoComo funcionaSegurança
Forçar descarregamentos (Force downloads, predefinido)O PHP lê o ficheiro e envia-o ele próprioO endereço real fica oculto. Ficheiros grandes podem falhar em alguns servidores ou atingir o limite de tempo do PHP
X-Accel-Redirect/X-SendfileO PHP verifica, o servidor web envia o ficheiroIgualmente seguro e melhor para ficheiros grandes; o servidor web tem de o suportar (no Apache é necessário o módulo mod_xsendfile, o nginx conhece o X-Accel-Redirect). Pergunte ao seu fornecedor de alojamento
Apenas redirecionar (Redirect only)O WooCommerce reencaminha o cliente para o endereço real do ficheiroInseguro: quem tem o endereço pode partilhá-lo e o ficheiro pode ser obtido sem compra. O próprio WooCommerce chama-lhe "Insecure"

Escolha, portanto, Forçar descarregamentos ou X-Sendfile. Redirecionar é apenas uma solução de recurso, e a opção "Allow using redirect mode (insecure) as a last resort" faz com que o WooCommerce recorra ao redirecionamento se o outro método falhar; mantenha-a desativada, a não ser que saiba porquê.

Proteger a pasta

Com Forçar descarregamentos ou X-Sendfile, a pasta woocommerce_uploads tem de estar fechada aos visitantes comuns. Caso contrário, quem adivinhar o nome do ficheiro ou o retirar de um link divulgado pode obter o ficheiro diretamente. Por isso, o WooCommerce coloca dois ficheiros nessa pasta durante a instalação:

  • um index.html vazio, para que a pasta não mostre uma lista de ficheiros;
  • um .htaccess com deny from all (com o método Apenas redirecionar: Options -Indexes).

Esse ficheiro .htaccess funciona em Apache e LiteSpeed (como na WebOké e em muitos outros alojamentos partilhados). Em nginx, o servidor web não lê .htaccess. Aí tem de existir na configuração do servidor uma regra que bloqueie a pasta. Num alojamento nginx gerido, o fornecedor por vezes trata disso; num VPS próprio, terá de o fazer pessoalmente. O WooCommerce verifica isto e mostra um aviso na administração (e em Diagnóstico do site) se a pasta não parecer protegida.

Alguns pontos de atenção:

  • Um 200 vazio não é prova. Se pedir a pasta e vir uma página vazia, pode ser o index.html vazio, enquanto os próprios ficheiros continuam acessíveis. Teste, por isso, também um ficheiro (o exercício faz isso).
  • Ficheiros externos. Num produto, também pode indicar um link para um ficheiro noutro local. Para isso, o WooCommerce tem a lista de pastas de descarregamento aprovadas (Approved download directories): só ficheiros dessas pastas ou desses endereços podem ser usados como descarregamento. Assim, ninguém com direitos de administração sobre um produto pode, por engano ou de propósito, disponibilizar como descarregamento um ficheiro qualquer do servidor. Mantenha essa lista curta.
  • Cópias de segurança e staging. A pasta faz parte da sua cópia de segurança. Num ambiente de staging estão, portanto, também os seus ficheiros pagos: proteja o staging (lição 7.3).

Limites e acesso

Para cada produto descarregável ou variação, define:

  • Limite de descarregamentos (Download limit): quantas vezes o cliente pode descarregar. Vazio significa ilimitado. Um limite de, por exemplo, 5 restringe a partilha, mas gera reclamações quando alguém compra um portátil novo. Escolha algo razoável e ajude os clientes que o pedirem.
  • Data de validade (Download expiry): ao fim de quantos dias o link deixa de funcionar.

Opções gerais em Produtos para descarregamento:

  • Descarregamentos requerem sessão iniciada (Downloads require login), desativado por predefinição. Ativado significa que os visitantes sem conta não podem descarregar nada; ative-o apenas se também tornar as contas obrigatórias.
  • Acesso após pagamento (Grant access to downloadable products after payment), ativado por predefinição: o cliente pode descarregar assim que a encomenda tiver o estado Em progresso, ou seja, logo após um pagamento bem-sucedido. Se estiver desativado, só depois de Concluída.

Livre resolução em conteúdos digitais

Num bule comum, o cliente tem 14 dias para pensar (lição 5.2). Num descarregamento, isso é complicado: quem tem o pdf fica com ele, mesmo depois de resolver o contrato. Por isso existe uma exceção, mas apenas sob determinadas condições. Na UE, está no artigo 16 da diretiva 2011/83/UE; nos Países Baixos, no artigo 6:230p, alínea g, do Código Civil neerlandês (BW). Não existe direito de livre resolução para conteúdos digitais que não sejam fornecidos num suporte material, se:

  1. o fornecimento tiver começado com o consentimento prévio e expresso do consumidor;
  2. o consumidor tiver declarado que, com isso, renuncia ao seu direito de livre resolução; e
  3. o vendedor tiver dado uma confirmação disso (na confirmação do contrato, num suporte duradouro como o e-mail da encomenda).

Se faltar uma destas três condições, o cliente mantém o seu direito de livre resolução, mesmo que já tenha descarregado. Na Bélgica e na Alemanha, aplica-se a mesma regra da UE na respetiva lei nacional (ver lição 5.2). Em Portugal, a regra consta do Decreto-Lei n.º 24/2014 (contratos celebrados à distância), que prevê um direito de livre resolução de 14 dias.

O WooCommerce não trata disto automaticamente. Precisa de:

  • uma caixa de verificação obrigatória na finalização da compra, apenas quando existir conteúdo digital no carrinho, com um texto como "Aceito que o fornecimento comece de imediato e sei que, com isso, perco o meu direito de livre resolução";
  • o mesmo texto como confirmação no e-mail da encomenda para esses produtos;
  • a frase correta na sua informação sobre a livre resolução, indicando que isto se aplica aos descarregamentos.

Existem extensões que acrescentam uma caixa de verificação deste tipo; o bloco de finalização da compra também oferece possibilidades para campos adicionais. Avalie-as como qualquer outro plugin. Uma caixa de verificação previamente assinalada não conta como consentimento expresso (lição 5.4).

Atenção à diferença em relação aos serviços virtuais, como um workshop numa determinada data. Aí aplicam-se as regras dos serviços, com outras exceções. Leia a lição 5.2.

Resumo

  • Virtual = nada a enviar; descarregável = ficheiros após o pagamento. Um pdf é normalmente as duas coisas.
  • Escolha Forçar descarregamentos ou X-Accel-Redirect/X-Sendfile; Apenas redirecionar é inseguro.
  • A pasta woocommerce_uploads tem de estar fechada: .htaccess em Apache e LiteSpeed, uma regra do servidor em nginx. Teste um ficheiro real, não apenas a pasta.
  • Mantenha curta a lista de pastas de descarregamento aprovadas e defina limites razoáveis.
  • Só não há direito de livre resolução nos descarregamentos com consentimento expresso, renúncia ao direito e uma confirmação; o WooCommerce não faz isso automaticamente. Em Portugal, aplica-se o Decreto-Lei n.º 24/2014, com um direito de livre resolução de 14 dias.

Questionário

1. A Theehuis Example vende um livro de receitas impresso com um pdf gratuito incluído. Que caixas de verificação ativa?



2. Porque é que o método de descarregamento "Apenas redirecionar" é inseguro?



3. A sua loja funciona em nginx. O ficheiro .htaccess do WooCommerce em woocommerce_uploads é então suficiente?



4. Um cliente compra um pdf, descarrega-o de imediato e resolve o contrato dois dias depois. Na finalização da compra não havia nenhuma caixa de verificação sobre a perda do direito de livre resolução. O que se aplica?



5. Para que serve a lista "pastas de descarregamento aprovadas"?



Exercício

Exercício A3.3: Os seus ficheiros descarregáveis estão protegidos? Este exercício pede caminhos que não estão ligados por links e, por isso, só funciona para a sua própria loja. Primeiro, demonstra que o domínio é seu: cria um registo TXT _weboke-cursus.<jouw domein> com o código que recebe, ou coloca um ficheiro /.well-known/weboke-cursus-<code>.txt com esse código no interior. Depois, introduza o endereço da sua loja e, se quiser, o caminho de um ficheiro descarregável tal como o WooCommerce o mostra no produto (começa por /wp-content/uploads/woocommerce_uploads/). O programa pede a pasta (sem seguir redirecionamentos, apenas o início) e, se tiver indicado um caminho, uma vez os cabeçalhos desse ficheiro. Verde se a pasta devolver 401, 403 ou 404, ou uma página sem lista de ficheiros, e o ficheiro devolver 401, 403 ou 404. Laranja se não tiver indicado nenhum ficheiro: nesse caso só a pasta foi verificada, e uma página vazia não diz o suficiente. Vermelho se a pasta mostrar uma lista de ficheiros, ou se o ficheiro puder simplesmente ser descarregado (200): nesse caso, qualquer pessoa com o endereço o pode obter sem comprar. O programa guarda apenas os códigos de estado, nunca o ficheiro.

Pergunta para si (não verificada): que método de descarregamento está configurado na sua loja e como tratou a livre resolução nos seus produtos digitais?

Exercício A3.3: Os seus ficheiros descarregáveis estão protegidos?

Esta verificação consulta caminhos que só deixa verificar na sua própria loja. Clique primeiro em "Mostrar o meu código" e coloque esse código como registo TXT em _weboke-cursus.<o seu domínio> ou como ficheiro no seu site (consulte a explicação junto ao código).



O que preenche e o que encontramos não ficam guardados. O seu navegador memoriza as suas respostas e se concluiu o exercício com sucesso. Se tiver sessão iniciada, guardamos apenas que concluiu o exercício (quase) com sucesso em Os meus cursos; aí também o pode eliminar.

Para saber mais

A base de conhecimento descreve a situação na WebOké (LiteSpeed, .htaccess funciona); noutros fornecedores funciona de forma semelhante, exceto em nginx.

Um momento…

Configurar os seus domínios

Para cada domínio, defina os servidores de nomes, a ligação ao seu alojamento e quem fica como titular.

A carregar os seus domínios…