O cliente é disponibilizado pela CDN da Entase como um único arquivo. Não há pacote npm, bundle para compilar nem dependência para manter atualizada – você sempre recebe a versão atual.
<script src="https://js.entase.com/client.js"></script>Carregar o script define uma classe global Entase. Ele não faz mais nada por conta própria: nenhuma solicitação de rede, nenhuma alteração no DOM, nada é renderizado. Tudo começa quando você cria uma instância.
Criar uma instância
const entase = new Entase({ pk: 'YOUR_PUBLISHABLE_KEY' });Crie uma instância por página e reutilize-a para todos os eventos. O construtor registra um listener de message na janela e começa a detectar qual modo de checkout seu domínio tem permissão para usar, portanto criar várias instâncias resulta em listeners duplicados e chamadas de detecção duplicadas sem nenhum benefício.
Todas as opções têm um valor padrão, portanto new Entase() sem argumentos é válido – mas, sem pk, o cliente não pode verificar se seu domínio pode usar o checkout embutido e sempre recorrerá a uma janela pop-up. Consulte Modos de checkout.
Carregar o script de forma assíncrona
Se você carregar client.js com async ou defer, a classe ainda não existirá quando seu script embutido for executado. A biblioteca dispara um evento entase:ready em window depois de ser carregada, portanto aguarde por ele:
<script src="https://js.entase.com/client.js" async></script>
<script>
let entase = null;
const init = () => { entase = new Entase({ pk: 'YOUR_PUBLISHABLE_KEY' }); };
if (typeof Entase !== 'undefined') init();
else window.addEventListener('entase:ready', init);
</script>A verificação com typeof primeiro é importante: se o script já terminou de carregar, entase:ready já foi disparado, e escutá-lo faria você esperar para sempre.
Limpeza
Em um aplicativo de página única, chame destroy() quando a visualização à qual a instância pertence for desmontada:
entase.destroy();Isso remove os listeners de janela que o cliente registrou. Uma instância destruída não pode ser reutilizada – chamar book() nela registra um erro e não faz nada. Crie uma nova instância.
Política de Segurança de Conteúdo
Se seu site enviar um cabeçalho Content-Security-Policy, o checkout precisará de:
script-src https://js.entase.com– para carregar a biblioteca.frame-src https://www.entase.com– o checkout é renderizado em um iframe no modo de painel.connect-src https://www.entase.com– o cliente chama a API da Entase para determinar o modo de checkout permitido.
Sem frame-src, o modo de painel gera um painel vazio. Sem connect-src, a detecção de modo falha e todos os checkouts são abertos como pop-ups.