Skip to main content
A versão 5.1.0 do Tokenization SDK aceita uma função na apiKey. O SDK chama essa função a cada tokenize(), então a sub-key pode ser gerada só quando o cliente envia o formulário e renovada sem recriar os campos. Passar uma string na apiKey continua funcionando como antes. Quem já usa o SDK não precisa mudar nada para atualizar.

Melhorias

apiKey como função

  • A apiKey aceita uma função que retorna a sub-key, de forma síncrona ou assíncrona.
  • A função é chamada a cada tokenize(), logo antes do envio dos dados do cartão, e só depois que todos os campos configurados foram preenchidos.
  • A instância pode ser criada sem esperar a chave. A sub-key é gerada no seu backend quando o cliente envia o formulário.
  • Quando a sub-key expira, a função retorna uma nova na chamada seguinte. Os campos e o cartão digitado são mantidos. Antes, era preciso chamar destroy(), criar outra instância e pedir o cartão de novo.
Veja Busque a sub-key sob demanda.

Erros e prazo da função

  • O evento loading fica true enquanto a função roda.
  • Se a função lançar um erro ou retornar um valor vazio, tokenize() retorna tokenId vazio e um error com type: 'invalid_request_error', sem enviar o cartão. A mensagem não inclui o erro lançado pela sua função.
  • Se a função não responder em 30 segundos, tokenize() retorna um error com type: 'timeout'. Uma chave que chegar depois desse prazo é ignorada.
  • Se um campo for apagado ou a instância for destruída enquanto a função roda, o cartão não é enviado.
Veja tokenize().

Mudanças para quem usa o Tokenization SDK

Tipo da apiKey no TypeScript: o tipo passa de string para string ou função. Se o seu código lê apiKey das configurações do SDK como string, ajuste o tipo ao atualizar. Quem só informa o valor não precisa mudar nada.
Principais novidades:
  • apiKey aceita uma função, chamada a cada tokenize().
  • Sub-key expirada pode ser renovada sem recriar os campos nem pedir o cartão de novo.
  • tokenize() retorna invalid_request_error ou timeout quando a função falha ou não responde em 30 segundos.
Ficou com dúvida? Fale com a gente pelo e-mail suporte@malga.io.