Você gerou um site usando o Gravity-Forms e precisa atender aos requisitos de consentimento do GDPR?
Então, você está no lugar certo! Neste guia, veremos os requisitos de prova de consentimento do GDPR e como adicionar a Consent Database da iubenda ao seu site Gravity-Forms.
→ Ir para Como adicionar a Consent Database da iubenda no Gravity-Forms
Por que eu preciso comprovar o consentimento para o GDPR?
Os registros de consentimento são especificamente exigidos pelo GDPR. É necessário manter um registro completo e detalhado de consentimento além de ser uma parte essencial da conformidade com as leis de privacidade. Os registros de comprovação são gerenciados por você, o Controlador de Dados. Como resultado, o GDPR exige que você mantenha “provas” ou registros de consentimento que contenham detalhes específicos que possam provar que o consentimento recebido é genuíno e, portanto, válido sob o GDPR. O consentimento deve ser explícito, fornecido gratuitamente e verificável de acordo com o GDPR. Saiba mais sobre a Consent Database da iubenda aqui.
O que os registros de consentimento do GDPR devem conter
Esses registros devem incluir uma forma de identificação do usuário, comprovante de consentimento, registro da ação consentida e os documentos legais disponíveis ao usuário no momento do consentimento, entre outros.
As seguintes informações devem ser registradas:
- quem deu o consentimento;
- quando e como o consentimento foi obtido do usuário em particular;
- o formulário de coleta de consentimento que lhes foi apresentado no momento da coleta; e
- quaisquer que fossem as condições e documentos legais em vigor no momento em que o consentimento foi obtido.
Você pode ler sobre todos os requisitos aqui.
A Consent Database da iubenda registra e gerencia automaticamente o consentimento GDPR e LGPD e as preferências de privacidade para cada um dos seus usuários. Você pode ler mais sobre a Consent Database da iubenda aqui.
Como adicionar a Consent Database da iubenda no Gravity-Forms
O guia a seguir sobre como integrar a nossa Consent Database com os formulários do Gravity foi projetado especificamente para o uso dos desenvolvedores. Entendemos que este é um guia complexo, use este exemplo como ponto de partida e converse com a sua equipe técnica para personalizá-lo de acordo com o seu cenário específico.
Como o Gravity Form não é compatível com o nosso plugin WordPress e podem surgir conflitos ao usar o nosso método Javascript, decidimos criar um exemplo de integração usando Gravity-Form action hooks e a nossa API Consent Database.
Para criar um consentimento nos formulários do Gravity você precisará:
- No arquivo functions.php file, criar uma função PHP (veja abaixo) nomeada save_consent() – essa função contém as instruções para criar consentimento na sua Consent Database
- Depois disso, você terá que adicionar uma ação do WordPress ao gform_after_submission action hook
Ao fazer isso, o save_consent() é iniciado sempre que um formulário é enviado.
//Creating the function that sends consent to ConSfunction save_consent(){$consent_data = array("timestamp" => date('Y-m-d H:i:s'),"subject" => array("full_name"=>$_POST["input_1_3"], //input sent via form (Please note: real name in the Gravity form is input_1.3, but dots (and spaces) in a variabile should be changed in _"email" => $_POST["input_2"], //),"legal_notices" => array(array("identifier" => "term"),array("identifier" => "privacy_policy")),"preferences" => array("privacy_policy_gform" => true),);$req = curl_init();curl_setopt($req, CURLOPT_URL, 'https://consent.iubenda.com/consent');curl_setopt($req, CURLOPT_RETURNTRANSFER, true);curl_setopt($req, CURLOPT_HTTPHEADER, array('ApiKey: YOUR PRIVATE API KEY','Content-Type: application/json'));curl_setopt($req, CURLOPT_POST, true);curl_setopt($req, CURLOPT_POSTFIELDS, json_encode($consent_data));$response = curl_exec($req);}
//the number 8 is the ID of the form where we want to append the save consent functionadd_action( 'gform_after_submission_8', 'save_consent', 10, 2 )
Importante:
Se você tiver mais formulários e quiser anexar a mesma função save_consent para todos os formulários, poderá alterar o add_action desta maneira:
add_action( 'gform_after_submission', 'save_consent', 10, 2 )Esta função lê os dados de consentimento vindos do Gravity Form através de uma solicitação POST.
Ele contém um array, que é o exemplo PHP que você pode encontrar aqui na nossa documentação da API HTTP da Consent Database.
O que você deve personalizar:
- Subject data: os campos aceitos são apenas full_name, last_name, first_name, email
Em nossa função PHP, você encontrará uma ou mais dessas palavras-chave seguidas da variável super global $_POST que contém o valor disso, para que você possa criar o consentimento com os valores que o usuário preencheu no formulário.
Você pode encontrar mais informações sobre a variável superglobal $_POST na documentação oficial do PHP.
Por exemplo, suponha que você criou um formulário usando formulários Gravity que tem o seguinte HTML:
<form action="/action_page.php"><label for="fname">First name:</label><br><input type="text" id="fname" name="fname" value="John"><br><label for="lname">Last name:</label><br><input type="text" id="lname" name="lname" value="Doe"><br><br><input type="submit" value="Submit"></form>
Você personalizará esta parte do nosso exemplo:

desta maneira:
"subject" => array("first_name"=>$_POST["fname"],"last_name" =>$_POST["lname"];),
2. Agora, adicione a sua própria Chave de API privada da Consent Database na função a seguir, conforme mostrado abaixo:

Observe que a Consent Database possui 2 chaves diferentes, pública e privada, use sempre a privada, pois a pública não funcionará com a nossa API.
- Em seguida, você também pode personalizar as preferências, elas geralmente coincidem com a caixa de seleção que o usuário aceita ao enviar o formulário: "preferences" => array("privacy_policy_gform" => true)
Mas você também pode decidir passar este valor usando a variável $_POST como fizemos dentro do “assunto” se você quiser lê-lo dinamicamente.
- Por fim, você pode personalizar o consentimento, passando também os comprovantes de consentimento, como fizemos neste exemplo.
"proofs":[{"content":"proof_1","form":"proof_1 form"}]
onde “content” pode ser uma recapitulação dos valores inseridos pelo usuário no formulário e “form” é o código HTML do formulário preenchido pelo usuário.
- Personalize o add_action( 'gform_after_submission_8', 'save_consent', 10, 2 )com o ID do formulário, você pode encontrá-lo nas configurações do formulário Gravity. Se o ID do formulário for 6754, então será'gform_after_submission_8''gform_after_submission_6754'
Pronto! Lembre-se que este é um exemplo e é um bom ponto de partida. Recomendamos conversar com a sua equipe técnica para personalizar o acima de acordo com o seu cenário específico.