Integração 3DS 2.0
O pagamento HTML do e-SiTef 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.
Autorizadoras disponíveis
Esta integração é suportada pelas seguintes autorizadoras:
ID | Nome |
---|---|
1 | Visa Crédito |
2 | Mastercard Crédito |
41 | Elo Crédito |
221 | Visa Débito |
286 | Mastercard Débito |
288 | Elo Débito |
Credenciais necessárias
As seguintes informações devem ser fornecidas às nossas equipes de suporte e produção:
Nome | Descriçã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:
Parâmetro | Descrição | Formato | Obrigatório |
---|---|---|---|
authenticate | Enviar o valor 1 para habilitar o uso de 3DS 2.0. | SIM | = 1 N |
additional_data | Dados gerais da transação. | ||
exponent | Número de casas decimais da moeda conforme definido na ISO 4217. | = 1 N | SIM |
extra_info | Informações adicionais sobre a conta fornecidas opcionalmente pelo 3DS Requestor. | < 64 AN | NÃO |
additional_data .authentication | Dados gerais de autenticação. | ||
transaction_type | Identifica o tipo de transação sendo autenticada.
| = 2 N | SIM |
indicator | Indica o tipo da requisição de autenticação.
| = 2 N | SIM |
challenge_indicator | Indica se um desafio é requerido para essa transação.
| = 2 N | NÃO |
address_match | Indica se o endereço de entrega e de cobrança do portador são iguais.
| = 1 AN | NÃO |
additional_data .authentication .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.
| = 2 N | NÃO |
timestamp | Data e hora UTC da autenticação do portador em formato AAAAMMDDHHMM . | = 12 N | NÃO |
additional_data .authentication .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.
| = 2 N | NÃO |
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 |
additional_data .authentication .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.
| = 2 N | NÃO |
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.
| = 2 N | NÃO |
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.
| = 2 N | NÃ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.
| = 2 N | NÃ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.
| = 2 N | NÃO |
ship_name_indicator | Indica se nome do portador do cartão é idêntico ao nome de entrega utilizada para esta transação.
| = 2 N | NÃO |
suspicious_activity | Indica se o 3DS Requestor teve experiências suspeitas (incluindo fraude prévia) com a conta do comprador.
| = 2 N | NÃO |
additional_data .authentication .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.
| = 2 N | NÃO |
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.
| = 2 N | NÃO |
reorder_items_indicator | Indica se o portador está pedindo uma mercadoria comprada anteriormente.
| = 2 N | NÃO |
shipping_indicator | Indica a forma de entrega escolhida para a transação.
| = 2 N | NÃO |
additional_data .authentication .message | Particularidades sobre a mensageria 3DS. | ||
category | Identifica a categoria da mensagem para um caso de uso específico.
01 . | = 2 N | NÃO |
additional_data .authentication .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. |
additional_data .purchase_information_data | Dados da compra. | ||
date | Data e hora UTC da compra no formato AAAAMMDDHHMMSS . | = 12 N | SIM |
additional_data .payer | Informações do portador do cartão. | ||
email | Endereço de email do portador. | < 256 AN | SIM |
name | Nome do portador. | < 45 AN | SIM |
additional_data .payer .phones[] | Informações do telefone do portador do cartão. | ||
ddi | DDI do telefone. | < 3 N | SIM |
ddd | DDD do telefone. | < 3 N | SIM |
number | Número do telefone. | < 12 N | SIM |
type | Tipo do telefone:
| < 12 N | SIM |
additional_data .billing_data .address | Endereço de cobrança. | ||
city | Cidade. | < 50 AN | SIM |
country | Código numérico ISO 3166-1 de três dígitos do país. | = 3 N | SIM |
street_name | Nome da rua. | < 50 AN | SIM |
street_number | Número da rua. | < 50 AN | SIM |
complement | Complemento do endereço. | < 50 AN | SIM |
zip_code | CEP. | < 16 AN | SIM |
state | Sigla do estado. | < 3 AN | SIM |
additional_data .shipment .address | Endereço de entrega. | ||
city | Cidade. | < 50 AN | SIM |
country | Código numérico ISO 3166-1 de três dígitos do país. | = 3 N | SIM |
street_name | Nome da rua. | < 50 AN | SIM |
street_number | Número da rua. | < 50 AN | SIM |
complement | Complemento do endereço. | < 50 AN | SIM |
zip_code | CEP. | < 16 AN | SIM |
state | Sigla do estado. | < 3 AN | SIM |
Exemplo de JSON:
{
"merchant_id":"XXXXX",
"authorizer_id":"2",
"amount":"10004",
"authenticate":"1",
"additional_data":{
"payer":{
"name":"name"
},
"purchase_information_data":{
"date":"20201023113749"
},
"exponent":"2",
"authentication":{
"transaction_type":"01",
"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 e-SiTef é 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
.
Exemplo:
{
"merchant_id":"LOJAYYZ",
"authorizer_id":"2",
"amount":"10004",
"authenticate":"1",
"additional_data":{
"payer":{
"name":"name"
},
"purchase_information_data":{
"date":"20201023113749"
},
"exponent":"2",
"authentication":{
"transaction_type":"01",
"indicator":"01",
"message":{
"category":"80"
}
}
}
}
Via configuração de loja
O lojista pode solicitar ao atendimento e-SiTef 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.
Exemplo:
{
"merchant_id":"DATAONLYON",
"authorizer_id":"2",
"amount":"10004",
"authenticate":"1",
"additional_data":{
"payer":{
"name":"name"
},
"purchase_information_data":{
"date":"20201023113749"
},
"exponent":"2",
"authentication":{
"transaction_type":"01",
"indicator":"01"
}
}
}
É possível sobrescrever este comportamento informando o valor 01
no parâmetro additional_data.authentication.message.category
, ignorando assim a configuração da loja.
Exemplo:
{
"merchant_id":"DATAONLYON",
"authorizer_id":"2",
"amount":"10004",
"authenticate":"1",
"additional_data":{
"payer":{
"name":"name"
},
"purchase_information_data":{
"date":"20201023113749"
},
"exponent":"2",
"authentication":{
"transaction_type":"01",
"indicator":"01",
"message":{
"category":"01"
}
}
}
}