SDK Browser ou Webview

Última atualização: 30 de Agosto de 2024

Introdução

O SDK Browser ou Webview é um script escrito em JavaScript que realiza coletas e análise de informações públicas da máquina do usuário. Através desse recurso é possível identificar se uma máquina já é conhecida pela ClearSale e qual o seu histórico de ações.

Implementação do script

Monitoramento Bloqueio de Script

Em alguns casos, a execução do script pode ser bloqueada pelo cliente de forma intencional. Então, para coletar esta informação é necessário a implementação do bloqueio de script

Para incluir o monitoramento do bloqueio de script, adicione o seguinte trecho de código antes do fechamento da tag

<noscript>
    <img src="https://device.clearsale.com.br/p/fp.png?sid=SEU_SESSIONID&app=SEU_APPKEY&ns=1" />
</noscript>

Inclua o código abaixo no header ou rodapé da página que o Fingerprint está implementado

<script>
    function checkUrl(url){
        let request = new XMLHttpRequest();
        request.open( "GET", url, true );
        request.send(null);
        request.onerror = (event) => {
            request.open("GET", "https://web.fpcs-monitor.com.br/p/fp.png?sid=SEU_SESSIONID&app=SEU_APPKEY&bl=1", false);
            request.send(null);
        }
    }
    checkUrl("https://device.clearsale.com.br/p/fp.png?app=SEU_APPKEY");
</script>

No código acima o texto SEU_SESSIONID precisa ser substituido, pelo SessionID da transação e o texto SEU_APPKEY deve ser substituido pelo seu APPKEY.

Página de inclusão

É necessário que o script esteja em somente uma única página do website.

O tempo de execução do script dificilmente ultrapassa 3 segundos, contudo deve-se exigir um cuidado para que não ocorra evasão da página pelo usuário sem que este script termine sua função. Por isso, recomendamos que seja uma página que represente interatividade com o usuário, tais como preenchimento de dados cadastrais ou informações de pagamento.

Local da página de inclusão

É expressamente obrigatório a inclusão das tags do script ao final da página html, antes do </body>.

O cumprimento desta recomendação garante que o website não sofra nenhum prejuízo de performance na integração.

Código

O código que deverá ser incluído na página, antes da tag </body>, conforme exemplo abaixo:

<script>
    (function (a, b, c, d, e, f, g) {
    a['CsdpObject'] = e; a[e] = a[e] || function () {
    (a[e].q = a[e].q || []).push(arguments)
    }, a[e].l = 1 * Date.now(); f = b.createElement(c),
    g = b.getElementsByTagName(c)[0]; f.async = 1; f.src = d; g.parentNode.insertBefore(f, g)
    })(window, document, 'script', '//device.clearsale.com.br/p/fp.js', 'csdp');
    csdp('app', 'seu_app');
    csdp('sessionid', 'seu_id_de_sessao');
</script>

A ClearSale deverá informar qual valor deve ser utilizado na palavra sinalizada em verde (seu_app). Ele serve para identificar o seu website em nosso sistema. Já o valor sinalizado em verde (seu_id_de_sessao) trata-se do id da sessão do usuário no website. O valor do id de sessão deve conter no mínimo 6 e no máximo 128 caracteres. Este parâmetro é extremamente relevante e o mesmo valor de SessionID passado no parâmetro da coleta do Behavior Analytics deverá ser enviado para a ClearSale no campo "SessionID" da API de envio da transação/pedido.

Definição do SessionID

O SessionID deve possuir um valor único por sessão.

Em determinadas situações, como o uso do Google Tag Manager, não é possível preencher o valor do sessionid no bloco de código de implantação. Se este for o seu caso, você pode usar uma tag input em seu html e informar o id da tag no código de implantação.

Coloque em algum lugar da sua página um input conforme a sugestão abaixo.

<input type="hidden" id="MeuCampoComValor" value="Valor_do_Meu_SessionID"/>

No código de implantação basta informar o id do input que o script irá buscar o valor preenchido, conforme exemplo abaixo.

<script>
    (function (a, b, c, d, e, f, g) {
    a['CsdpObject'] = e; a[e] = a[e] || function () {
    (a[e].q = a[e].q || []).push(arguments)
    }, a[e].l = 1 * new Date(); f = b.createElement(c),
    g = b.getElementsByTagName(c)[0]; f.async = 1; f.src = d; g.parentNode.insertBefore(f, g)
    })(window, document, 'script', '//device.clearsale.com.br/p/fp.js', 'csdp');
    csdp('app', 'seu_app');
    csdp('inputsessionid', 'MeuCampoComValor');
</script>

OBS: Nota-se que, para este caso, o parâmetro sessionid deve ser alterado para inputsessionid.


Se você não utiliza valor de sessionid em seu website, nós podemos criá-lo para você, lembre-se que este valor deverá ser enviado para a ClearSale posteriormente.

Coloque em algum lugar da sua página um input conforme sugestão abaixo.

<input type="hidden" id="MeuCampoQueReceberaValor" value=""/>

No código de implantação basta informar o id do input que o script irá gerar um valor para o sessionid e armazená-lo lá, conforme exemplo abaixo.

<script>
    (function (a, b, c, d, e, f, g) {
    a['CsdpObject'] = e; a[e] = a[e] || function () {
    (a[e].q = a[e].q || []).push(arguments)
    }, a[e].l = 1 * new Date(); f = b.createElement(c),
    g = b.getElementsByTagName(c)[0]; f.async = 1; f.src = d; g.parentNode.insertBefore(f, g)
    })(window, document, 'script', '//device.clearsale.com.br/p/fp.js', 'csdp');
    csdp('app', 'seu_app');
    csdp('outputsessionid', 'MeuCampoQueReceberaValor');
</script>

OBS: Nota-se que, para este caso, o parâmetro sessionid deve ser alterado para outputsessionid.


FAQ

FAQ

Acesse nosso FAQ Clicando Aqui

Detalhes de privacidade

Uso de dados

Todas as informações coletadas pelo SDK da ClearSale são com exclusiva finalidade de prevenção à fraude e proteção ao próprio usuário, aderente à política de segurança e privacidade das plataformas Google e Apple e à LGPD. Por isso, estas informações devem constar na política de privacidade do aplicativo.

Tipo de dados coletados

O SDK da ClearSale coleta as seguintes informações do dispositivo :

  • Localização precisa (quando habilitada permissão pelo usuário);
  • Identificadores de publicidade do dispositivo (quando habilitada permissão pelo usuário);
  • Características físicas do dispositivo/ hardware (Como tela, bateria, teclado, espaço livre em disco, modelo, nome do dispositivo);
  • Características de software (Como versão, idioma, build, controle parental);
  • Informações de rede (Como Conexões, IP);
  • Operadora do SimCard.

Política de privacidade da Google
Política de privacidade da Apple
Licença

Licença de Uso

Ao realizar o download e utilizar nosso SDK você estará concordando com a seguinte licença.

Copyright © 2024 ClearSale

Todos os direitos são reservados, sendo concedida a permissão para usar o software da maneira como está, não sendo permitido qualquer modificação ou cópia para qualquer fim. O Software é licenciado com suas atuais configurações “tal como está” e sem garantia de qualquer espécie, nem expressa e nem implícita, incluindo mas não se limitando, garantias de comercialização, adequação para fins particulares e não violação de direitos patenteados. Em nenhuma hipótese os titulares dos Direitos Autorais podem ser responsabilizados por danos, perdas, causas de ação, quer seja por contrato ou ato ilícito, ou outra ação tortuosa advinda do uso do Software ou outras ações relacionadas com este Software sem prévia autorização escrita do detentor dos direitos autorais.