Integração 3DS 2.0 | Software Express
O pagamento HTML do Pagamento Online está integrado com o 3DS Server, que é responsável pela realização de autenticações 3DS 2.0. Esta funcionalidade autentica o portador do cartão, conduzindo o processo com o mínimo de fricção possível ao comprador.
Para casos em que os limites de intervalos para ativação automática de 3DS estiverem configurados na loja e seja passado um valor de authenticate na criação da transação, o Pagamento Online só irá acatar o valor de authenticate passado se a transação estiver entre os limites de ativação. E caso os limites de intervalos para ativação automática de 3DS estiverem configurados na loja e não seja passado um valor de authenticate na transação, será assumido o valor 1 como padrão para o tipo de autenticação. Importante: intervalos que possibilitem a utilização de 3ds e antifraude juntos não devem ser utilizados.
É possível configurar na loja uma configuração para ativação de antifraude caso a bandeira escolhida não tenha suporte ao 3DS. Caso a transação utilizando uma loja com essa configuração seja marcada com 3DS (com authenticate = 1) e o cartão utilizado não seja suportado no 3DS Server (bandeira não foi certificada ou cartão fora do range na base do 3DS para autenticação), então o Pagamento Online não irá negar a transação e seguirá o fluxo do pagamento utilizando o antifraude ("enabled_after_auth"). Entre em contato com a nossa equipe de suporte para saber como ativar essa configuração.
Autorizadoras disponíveis#
Esta integração é suportada pelas seguintes autorizadoras:
1 Visa Crédito
2 Mastercard Crédito
41 Elo Crédito
221 Visa Débito
As seguintes informações devem ser fornecidas às nossas equipes de suporte e produção:
Acquirer Merchant ID Para cada roteamento utilizado, é necessário obter com o adquirente o seu Acquirer Merchant ID. Este valor pode ser o mesmo utilizado como código de estabelecimento para o processo de autorização, e deve seguir a formatação especificada na ISO 8583.
Acquirer BIN Identificador de cada meio de pagamento atribuído pelo adquirente.
Com isso, o cadastro será feito de modo que a loja fique preparada para transacionar com 3DS.
Parâmetros específicos da integração#
O serviço de criação de transação HTML possui os seguintes campos específicos da integração 3DS 2.0:
authenticate Identifica o tipo de autenticação 3DS 2.0.
1 = Habilitar o uso de 3DS. Mas, se o 3DS server não suporta a bandeira ou falhe para realizar a autenticação, o pagamento será negado.
2 = Habilitar o uso de 3DS. Porém, se o 3DS server não suporta a bandeira, não faz autenticação com 3DS server. Se a bandeira for suportada e a autenticação negar, o pagamento será negado
3 = Habilitar o uso de 3DS. Entretanto, mesmo se a autenticação falhar, o pagamento não será negado na autenticação.
= 1 N SIM
additional_data Dados gerais da transação.
exponent Número de casas decimais da moeda conforme definido na ISO 4217. O valor default será 2. = 1 N NÃO
extra_info Informações adicionais sobre a conta fornecidas opcionalmente pelo 3DS Requestor. < 64 AN NÃO
.authentication Dados gerais de autenticação.
transaction_type Identifica o tipo de transação sendo autenticada.
01 = Compra de bens/serviços
10 = Financiamento de Conta
11 = Transação Quasi-Cash
28 = Ativação e carga de pré-pago
Deve-se considerar sempre 01 em transações 3ds. = 2 N NÃO
indicator Indica o tipo da requisição de autenticação.
01 = Transação de pagamento
02 = Transação recorrente
03 = Transação parcelada
04 = Adição de cartão
05 = Manter cartão
06 = Verificação do portador como parte de EMV token ID&V
Deve-se considerá que é sempre 01. O cenário de recorrência por enquanto não será tratado. = 2 N NÃO
challenge_indicator Indica se um desafio é requerido para essa transação.
01 = Sem preferência
02 = Desafio não pedido
03 = Desafio pedido (preferência do 3DS Requestor)
04 = Desafio pedido (mandato)
05 = Desafio não pedido (análise de fraude já realizada)
06 = Desafio não pedido (apenas compartilhamento de dados)
07 = Desafio não pedido (forte autenticação de consumidor já é feita)
08 = Desafio não pedido (usar isenção de lista branca caso o desafio não seja requerido)
09 = Desafio pedido (uso de lista branca caso desafio seja requerido)
= 2 N NÃO
address_match Indica se o endereço de entrega e de cobrança do portador são iguais.
Y = Endereços são iguais
N = Endereços não são iguais
= 1 AN NÃO
.info Informações sobre como o 3DS Requestor autenticou o portador do cartão antes ou durante a transação.
method Mecanismo usado pelo portador do cartão para se autenticar no 3DS Requestor.
01 = Nenhuma autenticação do 3DS Requestor ocorreu (ou seja, portador fez "login" como visitante)
02 = Login para a conta do portador no sistema do 3DS Requestor usando as credenciais do próprio 3DS Requestor
03 = Login para a conta do portador no sistema do 3DS Requestor usando ID federado
04 = Login para a conta do portador no sistema do 3DS Requestor usando credenciais do emissor
05 = Login para a conta do portador no sistema do 3DS Requestor usando autenticação terceirizada
06 = Login para a conta do portador no sistema do 3DS Requestor usando FIDO Authenticator
07 = Login para a conta do portador no sistema do 3DS Requestor usando FIDO Authenticator (garantia de dados FIDO assinada)
08 = Seguro de Dados SRC
timestamp Data e hora UTC da autenticação do portador em formato AAAAMMDDHHMM. = 12 N NÃO
.prior_info Informações sobre como o 3DS Requestor autenticou o portador do cartão como parte de uma transação 3DS prévia.
method Mecanismo usado anteriormente pelo portador para se autenticar no 3DS Requestor.
01 = Autenticação frictionless ocorrida pelo ACS
02 = Desafio do portador ocorrida pelo ACS
03 = AVS verificada
04 = Outras formas do emissor
timestamp Data e hora UTC da autenticação prévia do portador em formato AAAAMMDDHHMM. = 12 N NÃO
reference Este elemento fornece informações adicionais para que o ACS determine a melhor forma de tratar uma requisição. < 36 AN NÃO
.account Informações sobre a conta do comprador no 3DS Requestor.
age_indicator Período de tempo que o portador teve conta no 3DS Requestor.
01 = Sem conta (visitante)
02 = Criado durante esta transação
03 = Menos de 30 dias
04 = 30−60 dias
05 = Mais de 60 dias
change_date Data da última alteração da conta do comprador em formato AAAAMMDD. = 8 N NÃO
change_indicator Período de tempo desde a última alteração na conta do portador.
01 = Alterada durante esta transação
02 = Menos de 30 dias
03 = 30−60 dias
04 = Mais de 60 dias
date Data em que o portador abriu a conta no 3DS Requestor no formato AAAAMMDD. = 8 N NÃO
password_change Data em que o comprador alterou sua senha no formato AAAAMMDD. = 8 N NÃO
password_change_indicator Indica o período de tempo desde a última alteração de senha do portador.
01 = Sem alteração
02 = Alterada durante esta transação
number_purchases Número de compras com esta conta durante os últimos 6 meses. < 4 N NÃO
provision_attempts_day Número de tentativas de adição de cartão nas últimas 24 horas. < 3 N NÃO
txn_activity_day Número de transações (confirmadas e abandonadas) para este portador com o 3DS Requestor nas últimas 24 horas. < 3 N NÃO
txn_activity_year Número de transações (confirmadas e abandonadas) para este portador com o 3DS Requestor no último ano. < 3 N NÃO
payment_account_age Data em que a conta de pagamento foi registrada na conta do portador com o 3DS Requestor no formato AAAAMMDD. = 8 N NÃO
payment_account_indicator Indica o período de tempo que a conta de pagamento foi registrada no 3DS Requestor.
02 = Durante esta transação
ship_address_usage Data do primeiro uso do endereço de entrega no formato AAAAMMDD. = 8 N NÃO
ship_address_usage_indicator Indica quando foi primeiramente utilizado o endereço de entrega.
01 = Nesta transação
ship_name_indicator Indica se nome do portador do cartão é idêntico ao nome de entrega utilizada para esta transação.
01 = Nome da conta idêntico ao nome de entrega
02 = Nome de conta diferente de nome de entrega
suspicious_activity Indica se o 3DS Requestor teve experiências suspeitas (incluindo fraude prévia) com a conta do comprador.
01 = Nenhuma atividade suspeita foi observada
02 = Atividade suspeita foi observada
.merchant_risk Avaliação da loja sobre o nível de risco de fraude para a autenticação específica para o portador e a autenticação sendo conduzida.
delivery_email_address Para entrega eletrônica, o endereço de e-mail para qual a mercadoria foi entregue. < 254 AN NÃO
delivery_timeframe Indica o período de tempo de entrega da mercadoria.
01 = Entrega eletrônica
02 = Entrega no mesmo dia
03 = Entrega no dia seguinte
04 = Entrega em dois ou mais dias
gift_card_amount Para compra com cartão presente ou pré-pago, o valor total da compra em números inteiros (por exemplo, 123.45 é 123). < 15 N NÃO
gift_card_count Para compra com cartão presente ou pré-pago, contagem de cartões pré-pagos/presentes comprados. < 2 N NÃO
gift_card_currency Para compra com cartão presente ou pré-pago, código de moeda ISO 4217 de três dígitos do cartão presente. = 3 N NÃO
pre_order_date Para uma pré-venda, a data esperada de disponibilidade da mercadoria no formato AAAAMMDD. = 8 N NÃO
pre_order_purchase_indicator Indica se o portador está fazendo um pedido para uma mercadoria com disponibilidade futura.
01 = Mercadoria disponível
02 = Disponibilidade futura
reorder_items_indicator Indica se o portador está pedindo uma mercadoria comprada anteriormente.
01 = Pedida pela primeira vez
02 = Pedida novamente
shipping_indicator Indica a forma de entrega escolhida para a transação.
01 = Entregar no endereço de cobrança
02 = Entregar em outro endereço verificado no arquivo com a loja
03 = Entregar no endereço que é diferente do endereço de cobrança
04 = Entregar na própria loja
05 = Bens digitais
06 = Bilhetes de viagem ou evento, não entregues fisicamente
07 = Outros
.message Particularidades sobre a mensageria 3DS.
category Identifica a categoria da mensagem para um caso de uso específico.
01 - Autenticação de pagamento
02 - Autenticação de não-pagamento
80 - Autenticação Mastercard Identity Check Insights (Data only)
Valor padrão: 01. = 2 N NÃO
.recurring Dados de recorrência.
expiry Data em que não serão feitas mais autorizações no formato AAAAMMDD. Obrigatório quando authentication.indicator = 02 ou 03. = 8 N COND.
frequency Indica o número mínimo de dias entre autorizações. Obrigatório quando authentication.indicator = 02 ou 03. < 4 N COND.
.purchase_information_data Dados da compra.
date Data e hora UTC da compra no formato AAAAMMDDHHMMSS. = 12 N NÃO
.payer Informações do portador do cartão.
email Endereço de email do portador. Caso não seja enviado será solicitado o preenchido na tela de pagamento. < 256 AN NÃO
name Nome do portador. Caso não seja enviado será solicitado o preenchido na tela de pagamento. < 45 AN NÃO
.phones[] Informações do telefone do portador do cartão.
ddi DDI do telefone. Caso não seja enviado será solicitado o preenchido na tela de pagamento. < 3 N NÃO
ddd DDD do telefone. Caso não seja enviado será solicitado o preenchido na tela de pagamento. < 3 N NÃO
number Número do telefone. Caso não seja enviado será solicitado o preenchido na tela de pagamento. < 12 N NÃO
type Tipo do telefone:
1: residencial (fixo)
2: comercial
Quando não enviado atribui-se valor padrão: 06 < 12 N NÃO
.address Endereço de cobrança.
city Cidade. Caso não seja enviado será solicitado o preenchido na tela de pagamento. < 50 AN NÃO
country Código numérico ISO 3166-1 de três dígitos do país. Caso não seja enviado será solicitado o preenchido na tela de pagamento. = 3 N NÃO
street_name Nome da rua. Caso não seja enviado será solicitado o preenchido na tela de pagamento. < 50 AN NÃO
street_number Número da rua. Caso não seja enviado será solicitado o preenchido na tela de pagamento. < 50 AN NÃO
complement Complemento do endereço. Caso não seja enviado será solicitado o preenchido na tela de pagamento. < 50 AN NÃO
zip_code CEP. Caso não seja enviado será solicitado o preenchido na tela de pagamento. < 16 AN NÃO
state Sigla do estado. Caso não seja enviado será solicitado o preenchido na tela de pagamento. < 3 AN NÃO
.address Endereço de entrega.
ATENÇÃO: Os parâmetros que existem no payer, billing e shipment quando não são passados no serviço de criação de transação através do additional_data, serão solicitados na tela de pagamento. No entanto, caso os parâmetros sejam passados no serviço de criação de transação, não será solicitado o preenchimento dos campos na tela de pagamento.
"merchant_id":"XXXXX",
"amount":"10004",
"authenticate":"1",
"purchase_information_data":{
"date":"20201023113749"
"exponent":"2",
"indicator":"01"
Mastercard 3DS Identity Check Insights (Dataonly)#
O Identity Check Insights é um modo de 3DS exclusivo da Mastercard que possui as seguintes características:
Sempre frictionless (não é pedido ao usuário para inserir informações extras).
O lojista será responsável por arcar com as fraudes (sem liability shift).
Maior taxa de aprovação.
É permitido somente para cartões com a bandeira Mastercard.
Mais detalhes na documentação oficial da Mastercard.
No Pagamento Online é possível realizar uma transação de pagamento utilizando Identity Check Insights de duas maneiras:
Via parâmetro ao iniciar uma transação de pagamento
Via configuração de loja
Via parâmetro ao iniciar transação#
O lojista pode indicar que deseja utilizar Identity Check Insights informando o valor 80 no parâmetro additional_data.authentication.message.category.
"merchant_id":"LOJAYYZ",
"indicator":"01",
"category":"80"
Via configuração de loja#
O lojista pode solicitar ao atendimento Pagamento Online que habilite a opção Utiliza Mastercard 3DS Identity Check Insights.
Com esta configuração habilitada, todas as transações de pagamento utilizando cartões com bandeira Mastercard e Maestro, utilizarão como padrão o Mastercard 3DS Identity Check Insights.
"merchant_id":"DATAONLYON",
É possível sobrescrever este comportamento informando o valor 01 no parâmetro additional_data.authentication.message.category, ignorando assim a configuração da loja.