3DS 2.0 Checkout Fiserv

Processo de criação da transação#

  • A transação é criada conforme os parâmetros enviados na chave request e representados por um objeto JSON via POST na requisição;
  • A loja recebe uma mensagem de sucesso ou erro, formatada como XML ou JSON, conforme o parâmetro "tipo de retorno" na URL enviada ao se iniciar uma transação.

URL para iniciar uma transação via POST HTTPS:

Ambiente de Homologação:
https://esitef-homologacao.softwareexpress.com.br/e-sitef-hml/init/[tipo_de_retorno].se
Ambiente de Produção
https://esitef.softwareexpress.com.br/e-sitef/init/[tipo_de_retorno].se

Atenção: Nunca deve ser usado o IP ao invés do domínio esitef-ec.softwareexpress.com.br (ou {{url}} para ambiente de homologação). O IP pode mudar a qualquer instante e sem aviso prévio, logo é importante sempre utilizar o domínio para acessar o Carat.

  • Parâmetros de cabeçalho:
ParâmetroDescriçãoFormatoObrigatório
merchant_keyChave de autenticação da loja no Carat. As chaves de produção e certificação serão diferentes.< 80 ANSIM

Para mais informações consulte serviço de criação de transação HTML

Parâmetros específicos da integração#

ParâmetroDescriçãoFormatoObrigatório
authenticateIdentifica 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, com exceção para casos onde usuário cancele ou abandone o desafio antes de ser finalizado.
= 1 NSIM
additional_dataDados gerais da transação.
exponentNúmero de casas decimais da moeda conforme definido na ISO 4217. O valor default será 2.= 1 NNÃO
extra_infoInformações adicionais sobre a conta fornecidas opcionalmente pelo 3DS Requestor.< 64 ANNÃO
additional_data
.authentication
Dados gerais de autenticação.
transaction_typeIdentifica o tipo de transação sendo autenticada.
  • 01 = Compra de bens/serviços
  • 03 = Check Acceptance
  • 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 NNÃO
indicatorIndica 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 NNÃO
challenge_indicatorIndica 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 NNÃO
address_matchIndica 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 ANNÃO
additional_data
.authentication
.info
Informações sobre como o 3DS Requestor autenticou o portador do cartão antes ou durante a transação.
methodMecanismo 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
= 2 NNÃO
timestampData e hora UTC da autenticação do portador em formato AAAAMMDDHHMM.= 12 NNÃ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.
methodMecanismo 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
= 2 NNÃO
timestampData e hora UTC da autenticação prévia do portador em formato AAAAMMDDHHMM.= 12 NNÃO
referenceEste elemento fornece informações adicionais para que o ACS determine a melhor forma de tratar uma requisição.< 36 ANNÃO
additional_data
.authentication
.account
Informações sobre a conta do comprador no 3DS Requestor.
age_indicatorPerí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
= 2 NNÃO
change_dateData da última alteração da conta do comprador em formato AAAAMMDD.= 8 NNÃO
change_indicatorPerí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
= 2 NNÃO
dateData em que o portador abriu a conta no 3DS Requestor no formato AAAAMMDD.= 8 NNÃO
password_changeData em que o comprador alterou sua senha no formato AAAAMMDD.= 8 NNÃO
password_change_indicatorIndica o período de tempo desde a última alteração de senha do portador.
  • 01 = Sem alteração
  • 02 = Alterada durante esta transação
  • 03 = Menos de 30 dias
  • 04 = 30−60 dias
  • 05 = Mais de 60 dias
= 2 NNÃO
number_purchasesNúmero de compras com esta conta durante os últimos 6 meses.< 4 NNÃO
provision_attempts_dayNúmero de tentativas de adição de cartão nas últimas 24 horas.< 3 NNÃO
txn_activity_dayNúmero de transações (confirmadas e abandonadas) para este portador com o 3DS Requestor nas últimas 24 horas.< 3 NNÃO
txn_activity_yearNúmero de transações (confirmadas e abandonadas) para este portador com o 3DS Requestor no último ano.< 3 NNÃO
payment_account_ageData em que a conta de pagamento foi registrada na conta do portador com o 3DS Requestor no formato AAAAMMDD.= 8 NNÃO
payment_account_indicatorIndica o período de tempo que a conta de pagamento foi registrada no 3DS Requestor.
  • 01 = Sem conta (visitante)
  • 02 = Durante esta transação
  • 03 = Menos de 30 dias
  • 04 = 30−60 dias
  • 05 = Mais de 60 dias
= 2 NNÃO
ship_address_usageData do primeiro uso do endereço de entrega no formato AAAAMMDD.= 8 NNÃO
ship_address_usage_indicatorIndica quando foi primeiramente utilizado o endereço de entrega.
  • 01 = Nesta transação
  • 02 = Menos de 30 dias
  • 03 = 30−60 dias
  • 04 = Mais de 60 dias
= 2 NNÃO
ship_name_indicatorIndica 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
= 2 NNÃO
suspicious_activityIndica 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
= 2 NNÃ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_addressPara entrega eletrônica, o endereço de e-mail para qual a mercadoria foi entregue.< 254 ANNÃO
delivery_timeframeIndica 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
= 2 NNÃO
gift_card_amountPara compra com cartão presente ou pré-pago, o valor total da compra em números inteiros (por exemplo, 123.45 é 123).< 15 NNÃO
gift_card_countPara compra com cartão presente ou pré-pago, contagem de cartões pré-pagos/presentes comprados.< 2 NNÃO
gift_card_currencyPara compra com cartão presente ou pré-pago, código de moeda ISO 4217 de três dígitos do cartão presente.= 3 NNÃO
pre_order_datePara uma pré-venda, a data esperada de disponibilidade da mercadoria no formato AAAAMMDD.= 8 NNÃO
pre_order_purchase_indicatorIndica se o portador está fazendo um pedido para uma mercadoria com disponibilidade futura.
  • 01 = Mercadoria disponível
  • 02 = Disponibilidade futura
= 2 NNÃO
reorder_items_indicatorIndica se o portador está pedindo uma mercadoria comprada anteriormente.
  • 01 = Pedida pela primeira vez
  • 02 = Pedida novamente
= 2 NNÃO
shipping_indicatorIndica 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
= 2 NNÃO
additional_data
.authentication
.message
Particularidades sobre a mensageria 3DS.
categoryIdentifica 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 NNÃO
additional_data
.authentication
.recurring
Dados de recorrência.
expiryData em que não serão feitas mais autorizações no formato AAAAMMDD. Obrigatório quando authentication.indicator = 02 ou 03.= 8 NCOND.
frequencyIndica o número mínimo de dias entre autorizações. Obrigatório quando authentication.indicator = 02 ou 03.< 4 NCOND.
additional_data
.purchase_information_data
Dados da compra.
dateData e hora UTC da compra no formato AAAAMMDDHHMMSS.= 12 NNÃO
additional_data
.payer
Informações do portador do cartão.
emailEndereço de email do portador. Caso não seja enviado será solicitado o preenchido na tela de pagamento. É recomendável enviar esse campo, pois ajuda na avaliação de risco contribuindo para uma autenticação frictionless.< 256 ANNÃO
nameNome do portador. Caso não seja enviado será solicitado o preenchido na tela de pagamento.< 45 ANNÃO
additional_data
.payer
.phones[]
Informações do telefone do portador do cartão.
ddiDDI do telefone. Caso não seja enviado será solicitado o preenchido na tela de pagamento. É recomendável enviar esse campo, pois ajuda na avaliação de risco contribuindo para uma autenticação frictionless.< 3 NNÃO
dddDDD do telefone. Caso não seja enviado será solicitado o preenchido na tela de pagamento. É recomendável enviar esse campo, pois ajuda na avaliação de risco contribuindo para uma autenticação frictionless.< 3 NNÃO
numberNúmero do telefone. Caso não seja enviado será solicitado o preenchido na tela de pagamento. É recomendável enviar esse campo, pois ajuda na avaliação de risco contribuindo para uma autenticação frictionless.< 12 NNÃO
typeTipo do telefone:
  • 1: residencial (fixo)
  • 2: comercial
  • 6: celular
Quando não enviado atribui-se valor padrão: 06 É recomendável enviar esse campo, pois ajuda na avaliação de risco contribuindo para uma autenticação frictionless.
< 12 NNÃO
additional_data
.billing_data
.address
Endereço de cobrança.
cityCidade. Caso não seja enviado será solicitado o preenchido na tela de pagamento.< 50 ANNÃO
countryCó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 NNÃO
street_nameNome da rua. Caso não seja enviado será solicitado o preenchido na tela de pagamento.< 50 ANNÃO
street_numberNúmero da rua. Caso não seja enviado será solicitado o preenchido na tela de pagamento.< 50 ANNÃO
complementComplemento do endereço. Caso não seja enviado será solicitado o preenchido na tela de pagamento.< 50 ANNÃO
zip_codeCEP. Caso não seja enviado será solicitado o preenchido na tela de pagamento.< 16 ANNÃO
stateSigla do estado. Caso não seja enviado será solicitado o preenchido na tela de pagamento.< 3 ANNÃO
additional_data
.shipment
.address
Endereço de entrega.
cityCidade. Caso não seja enviado será solicitado o preenchido na tela de pagamento.< 50 ANNÃO
countryCó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 NNÃO
street_nameNome da rua. Caso não seja enviado será solicitado o preenchido na tela de pagamento.< 50 ANNÃO
street_numberNúmero da rua. Caso não seja enviado será solicitado o preenchido na tela de pagamento.< 50 ANNÃO
complementComplemento do endereço. Caso não seja enviado será solicitado o preenchido na tela de pagamento.< 50 ANNÃO
zip_codeCEP. Caso não seja enviado será solicitado o preenchido na tela de pagamento.< 16 ANNÃO
stateSigla do estado. Caso não seja enviado será solicitado o preenchido na tela de pagamento.< 3 ANNÃO

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.

Exemplo de JSON:

{
"merchant_id":"XXXXX",
"authorizer_id":"2",
"amount":"10004",
"authenticate":"1",
"additional_data":{
"purchase_information_data":{
"date":"20201023113749"
},
"exponent":"2",
"authentication":{
"transaction_type":"01",
"indicator":"01"
}
}
}