CustomerDataValidation

A query customerDataValidation permite validar campos críticos do cadastro de um cliente já autenticado. Esta ferramenta é essencial para identificar inconsistências em dados que podem ter sido inseridos via integrações de API ou importações de planilhas sem as validações rigorosas do front-end.

Com base no retorno desta query, as agências e desenvolvedores podem criar experiências personalizadas, como modais de correção de dados ou alertas de campos inválidos antes da finalização de uma compra.

📘

Info

A query identifica automaticamente o tipo de cliente (Pessoa Física ou Jurídica) através do token e aplica as regras de validação pertinentes a cada categoria.


Autenticação

Esta operação requer um customerAccessToken válido. O token identifica o lojista e o cliente, permitindo que o sistema carregue os dados cadastrais para análise.

Requisição

A query recebe o token de acesso e retorna um objeto de resultado de operação.

Argumentos

NomeTipoObrigatórioDescrição
customerAccessTokenStringSimToken de acesso do cliente obtido via login.

Exemplo de Query

query customerDataValidation($customerAccessToken: String!) {
  customerDataValidation(customerAccessToken: $customerAccessToken) {
    isSuccess
  }
}

Variables:

{
  "customerAccessToken": "TOKEN_AQUI"
}

Campos Validados

A validação é segmentada de acordo com o tipo de cadastro:

  • Pessoa Física (PF): CPF, Nome Completo, Telefone Celular e Telefone Residencial.
  • Pessoa Jurídica (PJ): CNPJ, Razão Social, Telefone Celular e Telefone Comercial.
🚧

E-mail e Endereço

Não validamos e-mail nesta query pois a posse de um customerAccessToken já pressupõe um login realizado com um e-mail válido. O endereço também não é validado aqui, pois sua consistência é garantida no fluxo de checkout durante a cotação de frete.

Respostas Disponíveis

Sucesso

Retorna isSuccess: true quando todos os campos pertinentes ao tipo de pessoa estão preenchidos corretamente.

{
  "data": {
    "customerDataValidation": {
      "isSuccess": true
    }
  }
}

Falha na Validação

Quando um ou mais campos são considerados inválidos, a query retorna isSuccess: false e detalha os erros no nó global errors do GraphQL, incluindo mensagens explicativas e códigos de erro no campo extensions.

{
  "data": {
    "customerDataValidation": {
      "isSuccess": false
    }
  },
  "errors": [
    {
      "message": "CPF inválido",
      "extensions": { "code": "VAL117" }
    },
    {
      "message": "Telefone celular inválido",
      "extensions": { "code": "VAL114" }
    }
  ]
}

Códigos de Erro

Utilize os códigos abaixo para mapear as mensagens de erro no front-end e guiar o usuário na correção:

Validação de Cadastro

CódigoMensagem (PT)Aplica-se a
VAL114Telefone celular inválidoPessoa Física e Jurídica
VAL115Telefone residencial inválidoPessoa Física
VAL116Telefone comercial inválidoPessoa Jurídica
VAL117CPF inválidoPessoa Física
VAL118CNPJ inválidoPessoa Jurídica
VAL119Nome inválidoPessoa Física
VAL120Razão social inválidaPessoa Jurídica

Erros de Token

CódigoMensagem (PT)Descrição
TKN101CustomerAccessToken inválido para esta lojaO token expirou ou não pertence ao contexto da loja atual.