Pular para o conteúdo principal
Use esta página quando um pagamento com cartão retornar three_ds_required.

O que dispara 3DS

3D Secure é exposto por next_action na resposta da transaction.

Exemplo de resposta da transaction

{
  "success": true,
  "requestId": "req_4004",
  "data": {
    "id": "tr_2001",
    "status": "three_ds_required",
    "next_action": {
      "type": "three_ds_challenge",
      "challenge_session_id": "3ds_1001",
      "client_secret": "sec_1001",
      "expires_at": "2026-03-16T14:20:00.000Z"
    }
  }
}

Regra de tratamento

  • Deixe elements.submit(...) continuar o fluxo automaticamente quando suportado.
  • Se a sessão do navegador for interrompida, consulte a transaction antes de pedir nova tentativa ao cliente.
  • Não trate three_ds_required como pagamento falho.

Por que isso importa

O cliente pode concluir o challenge depois do primeiro callback do navegador. Webhooks e reconciliação mantêm checkout, fulfillment e suporte alinhados ao estado final real.

Leia a seguir