Segurança 3D

O que é o 3D Secure?

O 3D Secure, ou 3DS, é um protocolo de segurança para pagamentos on-line criado para evitar o uso fraudulento de cartões de crédito em transações com cartão não presente (CNP). O protocolo, desenvolvido em 1999, exige etapas adicionais de verificação para que os clientes durante o processo de compra se autentiquem e reduzam o risco de fraude. O fluxo abaixo apresenta um processo de pagamento usando o 3DS:

Onde:

  • O Merchant Plugin Interface (MPI) inicia o processo de verificação facilitando a troca segura de informações entre o comerciante, o servidor de diretório do esquema e o banco emissor do titular do cartão.
  • O Scheme Directory Server (DS) atua como um banco de dados centralizado e facilita a identificação do banco emissor do titular do cartão apropriado e o método de autenticação correspondente a ser usado.
  • O servidor de controle de acesso do emissor (ACS) é responsável por verificar e validar a identidade do titular do cartão durante uma transação 3DS. O ACS do emissor recebe solicitações de autenticação e realiza avaliações de risco e verificações de autenticação com base nas regras e políticas predefinidas do banco.

O 3D Secure 2, ou 3DS2, publicado em 2016, é uma versão atualizada do protocolo 3DS original e usa métodos de autenticação dinâmicos, como biometria e autenticação token, enquanto o protocolo 3DS original depende de senhas estáticas. O 3DS2 tem como objetivo proporcionar uma melhor experiência ao usuário com um fluxo mais fluido para os usuários finais durante a autenticação. A EMVCo, uma organização de propriedade das principais bandeiras de cartões, desenvolveu e gerenciou os dois protocolos. Todas as principais marcas de cartões deixaram de oferecer suporte à primeira versão do 3DS em outubro de 2022. Portanto, a integração da etapa de verificação do 3DS2 é essencial para garantir a experiência e a segurança de seus clientes. A Yuno já oferece uma integração fácil do 3DS2 para sua empresa.

Logotipo do Visa
Visto
Logotipo da Mastercard
Mastercard
Logotipo da American Express
American Express
Logotipo da JCB
JCB
Logotipo do Diners Club
Diners Club
Logotipo da UnionPay
UnionPay
Logotipo da Cartes Bancaires
Cartas bancárias

Benefícios do 3D Secure 2

Conforme mencionado, o 3DS2 foi desenvolvido para aprimorar a experiência do usuário e adaptar o protocolo 3DS ao cenário moderno de pagamentos.

Preparado para novas tecnologias

O 3DS2 foi projetado tendo em mente o crescimento dos smartphones e permitiu que os bancos oferecessem experiências inovadoras de autenticação por meio de seus aplicativos bancários móveis, como a autenticação biométrica usando impressões digitais ou reconhecimento facial. Portanto, os comerciantes podem oferecer vários métodos de autenticação que se alinham às preferências do consumidor e aos avanços tecnológicos, resultando em um processo de autenticação mais conveniente e seguro.

Recursos de integração

Em relação à integração, o 3DS2 inclui um componente SDK que permite a integração nativa em aplicativos móveis. Como resultado, os comerciantes podem autenticar transações em seus próprios aplicativos. Agora, o fluxo de contestação acontece diretamente dentro dos fluxos de checkout móvel, eliminando a necessidade de redirecionamentos de página inteira e proporcionando uma experiência de usuário mais perfeita.

Quantidade de dados disponíveis para autenticação

O 3DS2 permite que as empresas troquem dez vezes mais dados sobre cada transação com o banco do titular do cartão. Isso inclui dados específicos do pagamento, como o endereço de entrega, e dados contextuais, como a ID do dispositivo do cliente ou o histórico de transações anteriores. Isso permite que o banco avalie o nível de risco da transação e, possivelmente, autentique o pagamento sem informações adicionais do titular do cartão. Portanto, um pagamento que usa protocolos 3DS2 pode enfrentar um fluxo sem atrito ou um fluxo de desafio para concluir o pagamento.

Fluxo sem atrito

Em um fluxo sem atrito, os dados do cliente são confirmados sem nenhuma entrada manual de dados. Isso acontece quando o sistema reconhece e verifica o dispositivo do cliente, e os dados são trocados em segundo plano. Como o cliente é identificado e validado com essas informações, não são necessárias solicitações adicionais dos sistemas de pagamento.

Fluxo de desafios

O fluxo de desafios ocorre quando as informações armazenadas não são suficientes para validar o cliente. Como a identidade do cliente não é confirmada, o sistema exige uma etapa adicional para validar o cliente, usando uma senha de uso único ou verificação biométrica. Dependendo do sistema de validação, o cliente pode ser redirecionado para uma página do emissor do cartão para inserir as informações necessárias.

O uso do 3DS2 resulta em uma experiência de usuário mais suave e sem atritos. Os fluxos de dados aprimorados e os recursos de tomada de decisão possibilitados pelo 3DS2 reduzem a taxa de abandono de carrinho e melhoram as taxas de conversão.

Pagamento com 3D Secure 2

A adição da etapa de verificação do 3DS2 ao processo de checkout altera o fluxo de trabalho normal. Abaixo está um fluxograma do checkout completo e uma descrição de cada etapa para ajudá-lo a entender melhor o processo.

  1. O cliente fornece os dados de seu cartão para iniciar o processo de checkout do comerciante.
  2. O sistema do comerciante verifica se é compatível com o 3DS2.
  3. Se o comerciante não for compatível com o 3DS2, o processo de checkout continuará com o fluxo de trabalho normal de pagamento sem usar a verificação do 3DS2.
  4. Se o comerciante suportar o 3DS2, a Yuno envia as informações da transação para o provedor de serviços 3DS do emissor para avaliar o risco da transação. Esses dados incluem informações sobre o titular do cartão e o dispositivo de acordo com as restrições da legislação regional ou de mercado, como ID do dispositivo, endereço MAC, localização geográfica, transações anteriores e muito mais.
  5. O provedor de serviços 3DS do emissor determina se a transação é de alto risco e se é necessário um desafio para verificação adicional.
  6. O pagamento segue para a etapa de autorização se não houver necessidade de contestação (fluxo sem atrito).
  7. Se for necessário um desafio (fluxo de desafio), ele será apresentado ao titular do cartão para verificar sua identidade. Essa verificação pode usar biometria e/ou autenticação de dois fatores, como uma senha de uso único ou uma fingerprint.
  8. O sistema verifica se o titular do cartão concluiu o desafio com êxito.
  9. O pagamento prossegue para a etapa de autorização se o titular do cartão verificar sua identidade com êxito.
  10. Se o titular do cartão não conseguir verificar sua identidade, o pagamento será cancelado.
  11. O comerciante verifica com o emissor do cartão se a transação está autorizada.
  12. Se a transação for autorizada, o pagamento será processado com êxito.
  13. Se a transação não for autorizada, o pagamento será cancelado ou recusado.

Configuração do 3D Secure para seus pagamentos

📘

Aprimoramento do SDK v1.1

Com o SDK v1.1, a lógica 3DS é tratada automaticamente usando o continuePayment() não é necessária nenhuma configuração 3DS separada. Para obter mais informações, consulte a seção Documentação do Yuno Web SDK.

Você decide se o seu sistema implementará o 3DS2 ou não. A etapa de verificação do 3DS2 é adicionada durante a definição do roteamento dinâmico de seus cartões. Ao iniciar as rotas dos cartões, você pode adicionar a etapa 3DS2 antes de definir o provedor de pagamento. Ao adicionar a etapa de verificação do 3DS2, quando um pagamento usando um cartão for inicializado, o sistema Yuno analisará se o cartão precisa de um desafio extra. Se for necessário um desafio extra, o usuário será redirecionado para o ambiente do banco para concluir a autorização. Por outro lado, o processo de pagamento continuará normalmente.

Para criar pagamentos com o fluxo de trabalho do 3DS DIRECT, você precisa atender a alguns requisitos.

Requisitos

Antes de usar o 3DS DIRECT, você precisa habilitar o 3DS no seu Yuno Dashboard e especificar os cenários em que deseja que seus clientes possam usá-lo. Isso pode ser configurado no Yuno Dashboard em: Roteamento > Rotas de cartão > Etapa 3DS. Esses cenários devem ser indicados em sua rota CARD. Além disso, você precisará dos seguintes dados de configuração do 3DS na conexão do provedor de pagamento:

  • BIN do adquirente: esse é o número de identificação bancária (BIN) usado para compensar e liquidar a transação, juntamente com o país no qual ele está licenciado para uso.
  • ID do comerciante: Esse é o número de afiliação fornecido pelo adquirente.
  • Código de categoria do comerciante (MCC): O adquirente fornecerá um código específico que representa sua categoria de comerciante.
  • Nome do comerciante: Refere-se ao nome oficial ou nome comercial da empresa ou entidade que está realizando a transação comercial.
  • URL do comerciante: O site ou a plataforma on-line do comerciante.
  • Código do país: O país onde o pagamento precisa ser processado, seguindo os códigos de país padrão ISO 3166-1.
📘

Uso de um MPI externo para autenticação

Se estiver usando uma MPI externa para realizar a autenticação, os seguintes parâmetros são necessários para uma conexão bem-sucedida com o provedor:

  • Adquirente BIN
  • Código do país do adquirente
  • ID do comerciante
  • MCC

Integração do Yuno 3D Secure 2

Há diferentes maneiras de integrar o 3DS no Yuno, dependendo de suas necessidades.

Em termos gerais, uma integração 3DS requer um setup_id/device_fingerprint para a sessão de pagamento como a primeira etapa da análise de segurança, e essa identificação só pode ser obtida com a execução de um SDK/JS desenvolvido por um provedor autorizado 3DS. Ao usar nossos SDKs Nós cuidamos de toda a lógica para vocêAssim, você não precisa se preocupar com as diferentes necessidades dos provedores.

Portanto, dependendo da sua integração com o Yuno, você tem três opções diferentes:

  1. Integração do Checkout: O fluxo de trabalho do Checkout faz parte da solução de Checkout fornecida pela Yuno. Use nossos SDKs para que possamos lidar com toda a lógica relacionada aos requisitos e execuções de provedores externos para o 3DS. Se quiser definir casos específicos para análise do 3DS, você pode definir isso na rota CARD do seu painel do Yuno.
  2. Integração externa: Use seu próprio 3DS e, em seguida, envie os campos de autorização correspondentes na criação do pagamento (card_data - eci, criptograma etc.). Disponível somente para comerciantes em conformidade com o PCI.
  3. Integração direta: O fluxo de trabalho Direct está disponível apenas para comerciantes em conformidade com a PCI. Ele oferece uma maneira direta de criar um pagamento e validar as informações do usuário, exigindo que o comerciante faça apenas uma solicitação para criar o pagamento. Para implementar com êxito a integração Direct, siga as etapas descritas na seção diretriz de integração e forneça as informações necessárias conforme as instruções. Para cada pagamento, você terá um:
    1. PENDING/WAITING_ADDITIONAL_STEP status/sub status.
    2. sdk_action_required definido como true.
    3. redirect_url definido em payment.payment_method.payment_method_detail.card.

Você é responsável por redirecionar seus clientes para a URL fornecida pelo redirect_url para que possamos coletar informações sobre o dispositivo e apresentar o desafio ao cliente, se necessário. Quando o cliente concluir com êxito o desafio 3DS, ele será automaticamente redirecionado para a página callback_urlque você forneceu ao criar o pagamento com o endpoint Create Payment.

Para cada cenário, os webhooks da Yuno o notificarão prontamente sobre o resultado do desafio 3DS e o status final do pagamento. Isso garante que você receba atualizações em tempo real sobre o progresso e a conclusão da transação de pagamento. Além disso, você sempre pode obter as informações de pagamento usando nosso serviço get payment.

Depois de executar o 3DS para cada cenário, você receberá todas as informações necessárias na resposta do pagamento dentro do payment_method.detail.card.card_data.three_d_secure objeto:

CampoDescriçãoExemplo
versãoRefere-se à versão do protocolo da especificação EMV 3-D Secure utilizada. 1.0, 2.0, 2.1.0, 2.2.0, 2.2.1.2.2.1
indicador_de_comércio_eletrônicoEsse campo deve ser preenchido com o resultado do campo ECI fornecido pelo serviço 3d Secure. O Indicador de Comércio Eletrônico (ECI) informa ao emissor do cartão se a transação foi protegida por um protocolo de segurança como VbV ou MCSC. É exigido pela Visa e pela MasterCard que todas as transações 3-D Secure tenham esse valor preenchido na solicitação de autorização (MAX: 2, MIN: 0).04
criptogramaEsse campo deve ser preenchido com o resultado do campo de criptografia fornecido pelo serviço 3DSecure. Nas transações Visa, ele representa o CAVV (Cardholder Authentication Verification Value, valor de verificação de autenticação do titular do cartão), um valor criptográfico gerado pelo emissor como evidência da autenticação do pagamento durante a compra on-line para se qualificar para a proteção contra estorno. As transações da MasterCard têm um valor semelhante chamado Accountholder Authentication Value (AAV) ou Universal Cardholder Authentication Field (UCAF). Ao enviar uma transação para autorização, o comerciante deve incluir o CAVV ou AAV/UCAF para demonstrar que o titular do cartão foi autenticado. Normalmente, ele é codificado em base64 (MAX: 40, MIN: 0).BA0BB1Z3N5Q4kjkBU3c3ELGUsJY =
transaction_idPara 3DS v1: Esse é o Identificador Único de Transação. Ele é gerado automaticamente pelo MPI. Normalmente, tem 28 bytes de comprimento e é codificado em base64. É comumente chamado de XID (MAX: 40, MIN: 0). Para 3DS v2: Identificador de transação universalmente exclusivo atribuído pelo DS para identificar uma única transação. (MÁX.: 36, MÍN.: 36).Ex para V1: "TjY0MjAxRjA4MD4987DUzMzYyNjU=" Ex para V2: “c4e59ceb-a382-4d6a-bc87-385d591fa09d”
directory_server_transaction_idID da transação gerada pelo servidor de diretório da Mastercard durante a autenticação (MAX 255; MIN 3).f38e6948-5388-41a6-bca4-b49723c19437
pares_statusIndica o resultado da autenticação do titular do cartão durante o processo do 3-D Secure. Ele informa se a autenticação foi bem-sucedida (Y), falhou (N), não pôde ser concluída (U) ou foi apenas tentada (A).Y
acs_idIdentificador exclusivo fornecido pelo servidor de controle de acesso (ACS) durante o processo de autenticação do 3-D Secure.ACS-1234567890
[...]
     "payment_method": {
        "vaulted_token": "",
        "type": "CARD",
        "vault_on_success": false,
        "token": "",
        "detail": {
            "card": {
                "verify": false,
                "capture": false,
                "installments": 1,
                "installments_plan_id": null,
                "first_installment_deferral": 0,
                "installments_type": "",
                "installment_amount": null,
                "soft_descriptor": "",
                "authorization_code": "",
                "retrieval_reference_number": "",
                "voucher": null,
                "card_data": {
                    "holder_name": "John Doe",
                    "iin": "40000000",
                    "lfd": "1026",
                    "number_length": 16,
                    "security_code_length": 3,
                    "brand": "VISA",
                    "issuer_name": "",
                    "issuer_code": null,
                    "category": "STANDARD",
                    "type": "CREDIT",
                    "three_d_secure": {
                        "version": "2.1.0",
                        "electronic_commerce_indicator": null,
                        "cryptogram": null,
                        "transaction_id": null,
                        "directory_server_transaction_id": null,
                        "pares_status": null,
                        "acs_id": "z1A6ZTh7NopIhdb2R420"
                    }
                }
[...]

Status das transações

Uma transação 3DS funciona de forma semelhante a uma transação de compra normal. Ela passa por diferentes estados que representam o processo de autorização. Quando a transação 3DS é marcada como SUCCEEDED, a Yuno prossegue para o processador e gera uma transação de COMPRA para cobrar o cliente. A tabela a seguir descreve todos os estados possíveis e suas descrições.

StatusDescrição
CREATEDO pagamento foi criado e está aguardando o ID da sessão do SDK da Yuno.
PENDINGO desafio é necessário, e o redirect_url é devolvido por Yuno.
IN_PROCESSO usuário está concluindo o desafio.
SUCCEEDEDO desafio foi concluído corretamente.
DECLINEDO desafio foi concluído, mas recusado pelo banco.
ERROROcorreu um erro ao redirecionar para o desafio do usuário.

Como mencionado anteriormente, se o pagamento estiver PENDING, a transação 3DS estará PENDING quando for necessário um desafio. Depois que o desafio for concluído, com sucesso ou não, o pagamento e a transação serão atualizados para os estados correspondentesSUCCEEDED ou DECLINED).

Uso do 3DS para cenários específicos

Ao configurar a rota CARD no painel do Yuno, você pode especificar para quais situações o 3DS deve ser executado usando as condições disponíveis. Como mencionado anteriormente, algumas etapas preliminares serão necessárias para executar o 3DS, dependendo do método de integração usado.