PayZuDocs

Antifraude

Passa cada cobrança pela análise de risco da Cybersource em tempo real antes de autorizar, aprovando, recusando ou mandando para revisão manual conforme as suas regras.

Cobranças enviadas com o objeto fraudAnalysis passam em tempo real pelo antifraude Cybersource antes da autorização. Você controla por cobrança se a análise roda e o que fazer com o resultado.

A análise antifraude pode:

  • Aprovar automaticamente a transação
  • Recusar a transação por suspeita de fraude
  • Encaminhar para análise manual, de acordo com regras previamente definidas

O envio de fraudAnalysis é obrigatório em cobranças internacionais. Consulte Cobrança internacional.

Como funciona

Quando a cobrança é criada com o objeto fraudAnalysis, a operação é submetida a uma avaliação de risco com base em diversos critérios, como dados do cliente, comportamento de compra e características do pedido.

Para utilizar o antifraude, basta incluir o objeto fraudAnalysis dentro de creditCardPayment na requisição de criação da transação. Esse objeto leva o identificador do dispositivo (fingerPrintId), os dados do navegador (browser) e os campos MDD (definedFields).

{
  "creditCardPayment": {
    "fraudAnalysis": {
      "fingerPrintId": "xyz123fingerprint",
      "browser": {
        "cookiesAccepted": true,
        "email": "joao.silva@example.com",
        "hostName": "host.example.com",
        "ipAddress": "192.168.0.1",
        "type": "Chrome"
      },
      "definedFields": [
        {
          "id": 1,
          "value": "Guest"
        }
      ]
    }
  }
}

Para uma lista de valores que podem ser passados em definedFields, consulte a Tabela de MDDs.

A resposta da transação pode conter os seguintes status de antifraude:

StatusDescrição
ApprovedTransação aprovada após análise de risco
RejectedTransação recusada por suspeita de fraude
UnderReviewTransação em análise manual

Captura do fingerPrintId

O fingerPrintId é um id de sessão aleatório gerado pelo próprio cliente, que deve ser utilizado para a requisição de pagamento. Cada fingerprint é único e válido por 48 horas.

Carregar o script

Para obter um fingerprint, você precisará carregar o seguinte script em sua página HTML:

<script src="https://static.payzu.io/scripts/antifraud.min.js"></script>

Gerar o id e ativar o fingerprint

Após isso, você deverá gerar um id aleatório que será o seu fingerprint e utilizar o nosso script para ativá-lo.

Exemplo completo:

<head>
  <script src="https://static.payzu.io/scripts/antifraud.min.js"></script>
</head>
<script>
  // Id aleatório que será utilizado como fingerprint
  const uuid = self.crypto.randomUUID();

  // Ambiente de produção
  payzuAntiFraud.init({
    identifier: uuid,
  });

  ...

  // Ambiente sandbox
  payzuAntiFraud.init({
    identifier: uuid,
    sandbox: true,
  });

  ...
</script>

Parâmetros da função init:

ParâmetroValor PadrãoObrigatório?
identifier*Sim
sandboxfalseNão

Após ativá-lo, você já pode usar seu fingerprint dentro do campo fraudAnalysis para criar uma requisição de pagamento.

Enviar fraudAnalysis na cobrança

Para criar uma cobrança utilizando o antifraude, é necessário informar o campo fraudAnalysis dentro de creditCardPayment. Dentro de browser, os campos cookiesAccepted e ipAddress são obrigatórios.

{
  "customer": {
    "name": "João Silva",
    "identity": "12345678900",
    "identityType": "CPF",
    "email": "joao.silva@example.com",
    "phone": "5511912345678",
    "address": {
      "street": "Rua das Flores",
      "number": "123",
      "zipCode": "01234567",
      "city": "São Paulo",
      "state": "SP",
      "country": "Brasil",
      "district": "Centro"
    }
  },
  "creditCardPayment": {
    "fraudAnalysis": {
      "fingerPrintId": "xyz123fingerprint",
      "browser": {
        "cookiesAccepted": true,
        "email": "joao.silva@example.com",
        "hostName": "host.example.com",
        "ipAddress": "192.168.0.1",
        "type": "Chrome"
      },
      "definedFields": [
        {
          "id": 1,
          "value": "Guest"
        }
      ]
    }
  }
}

Ao realizar cobrança utilizando o antifraude, todos os campos de customer, exceto complement e birthdate, se tornam obrigatórios.

Próximos passos

Nesta página