Iniciando um 3DS Method

O “3DS Method” é uma chamada de script, existente somente no canal Browser (navegador), que é fornecida pelo 3DS Server e é colocada no website do comércio para capturar informações adicionais do navegador, com o intuito de facilitar a tomada de decisões com base no risco (RBA-Risk Based Analysis), aumentando as chances de se obter uma autenticação sem desafio. Na criação da transação, o 3DS Server retorna a URL do “3DS Method” no campo three_ds_method_url, se a captura do device fingerprint estiver habilitada para o BIN do cartão utilizado. Isso indica que deve ser renderizado um frame invisível na tela do comprador apontando para essa URL. Para isso, é necessário fazer um HTTP POST no formato application/x-www-form-urlencoded passando o campo threeDSMethodData, que se trata de um JSON codificado em Base64.

O retorno da chamada do “3DS Method” pode levar alguns segundos. Portanto, para uma melhor experiência do usuário, recomenda-se fazer essa chamada logo após a inclusão do número do cartão. Dessa maneira, enquanto o usuário preenche os demais dados do checkout, a chamada do “3DS Method” já terá terminado. Quando a chamada do “3DS Method” é finalizada com sucesso, deve-se enviar a solicitação de autenticação (AREQ) com o campo three_ds_comp_ind = “Y”.

Parâmetros do objeto threeDSMethodData#

ParâmetroDescriçãoFormatoObrigatório
threeDSMethodNotificationURLURL que receberá a notificação de conclusão do 3DS Method pelo ACS.< 256 ANSIM
threeDSServerTransIDID da transação 3DS Server.= 36 ANSIM

Exemplos#

threeDSMethodData JSON:

{
"threeDSServerTransID":"12341234-1234-1234-1234-123412341234",
"threeDSMethodNotificationURL":"threeDSMethodNotificationURL"
}

threeDSMethodData Base64:

ewogICAidGhyZWVEU1NlcnZlclRyYW5zSUQiOiIxMjM0MTIzNC0xMjM0LTEyMzQtMTIzNC0xMjM0MTIzNDEyMzQiLAogICAidGhyZWVEU01ldGhvZE5vdGlmaWNhdGlvblVSTCI6InRocmVlRFNNZXRob2ROb3RpZmljYXRpb25VUkwiCn0=

Formulário HTML:

<form name="frm" method="POST" action="Rendering URL">
<input type="hidden" name="threeDSMethodData" value="ewogICAidGhyZWVEU1NlcnZlclRyYW5zSUQiOiIxMjM0MTIzNC0xMjM0LTEyMzQtMTIzNC0xMjM0MTIzNDEyMzQiLAogICAidGhyZWVEU01ldGhvZE5vdGlmaWNhdGlvblVSTCI6InRocmVlRFNNZXRob2ROb3RpZmljYXRpb25VUkwiCn0=">
</form>
<iframe name="threeDsMethodFrame" height="1px" width="1px" frameborder="0"></iframe>
<script>
console.log('3DS Method');
document.forms.threeDsMethodForm.submit();
</script>

Notificação 3DS Method#

Essa chamada será feita pelo ACS na URL informada pelo 3DS Requestor (campo threeDSMethodNotificationURL) utilizando o mesmo formato do formulário descrito acima. Essa chamada é importante para o preenchimento do campo three_ds_comp_ind no serviço de autenticação.