Criar lógica de validação

Este documento descreve um processo para criar um sistema de verificação de endereços que lide com várias respostas da API Address Validation. Ele aborda como criar sua lógica para usar a resposta corretamente, investigar outros indicadores da API e quando e como pedir mais informações aos clientes.

Em geral, a resposta da API determina as seguintes maneiras de o sistema processar um endereço:

  • Corrigir: o endereço tem baixa qualidade. Você precisa pedir mais informações.
  • Confirmar: o endereço é de alta qualidade, mas tem mudanças em relação ao endereço de entrada. Você pode pedir uma confirmação.
  • Aceitar: o endereço é de alta qualidade. Você pode aceitar o endereço fornecido.

Finalidade de chave

Este documento ajuda você a modificar seu sistema para analisar melhor a resposta da API e determinar as próximas ações a serem tomadas com os endereços fornecidos. O pseudocódigo a seguir ilustra um fluxo possível.

if (the API response indicates significant problems in the address)
    FIX - prompt the user to fix the address
else if (the API response indicates less significant problems in the address)
    CONFIRM - confirm with the user that the address is correct
else
    ACCEPT - continue with the address returned by the API.

A lógica exata depende da sua situação. Consulte as orientações de implementação para mais detalhes. Você também pode usar nossa implementação de código aberto dessa lógica, que está na Biblioteca de componentes estendidos.

Visão geral do fluxo de trabalho

A tabela abaixo resume duas ações para seu sistema:

  1. O fluxo de trabalho a ser usado com base no comportamento de correção, confirmação e aceitação.
  2. Os primeiros indicadores a serem verificados na resposta. Os indicadores descritos aqui vêm da propriedade verdict e não são os únicos a serem verificados, mas fornecem um indicador inicial da qualidade do endereço. Cada tipo de comportamento corresponde a uma seção deste documento que descreve outros indicadores que você também pode precisar investigar.
O comportamento do seu sistema
Corrigir o endereço

A resposta do verdict indica informações importantes que estão faltando e precisam ser fornecidas. O endereço retornado pela API pode não ser de qualidade adequada para entrega.

Fluxo de trabalho

  1. Investigue os componentes de endereço, se necessário.
  2. Peça ao cliente para corrigir problemas de endereço.
  3. Solicite a validação do endereço atualizado.
  4. Continuar com o endereço.

Indicadores de veredito

Qualquer uma das seguintes opções:

Confirmar o endereço

A resposta do verdict indica um endereço de entrega, mas fez mudanças na entrada original: inferindo dados que foram corrigidos ortograficamente ou que podem ser confirmados.

Fluxo de trabalho

  1. Correções necessárias:
    1. Investigue os componentes de endereço, se necessário.
    2. Solicite a validação do endereço atualizado.
    3. Continuar com o endereço.
  2. Nenhuma correção necessária:
  3. Continuar com o endereço.

Indicadores de veredito

Todas as condições a seguir são válidas:

Aceitar o endereço

A resposta da API Address Validation indica um endereço de excelente qualidade.

Fluxo de trabalho

Continuar com o endereço retornado.

Indicadores de veredito

Todas as condições a seguir são válidas:

Diretrizes para implementação

Ao projetar como seu sistema responde aos indicadores de validação de endereço, as recomendações a seguir podem ajudar você a criar um modelo de resposta mais eficaz. No entanto, essas são apenas recomendações. Sua implementação precisa se adequar ao seu modelo de negócios.

Orientação Detalhes
Nível de risco

Considere o nível de tolerância para sua situação ao equilibrar entre pedir correções e aceitar o endereço inserido.

A API Address Validation retorna vários indicadores que podem ser incorporados ao seu nível de risco para otimizar o processo de validação.

Por exemplo, se um endereço tiver um número de rua não confirmado, você ainda poderá aceitá-lo. Por outro lado, se a operação da sua empresa exigir maior precisão de endereço, você poderá pedir ao usuário. Para ver um exemplo que pode se enquadrar em qualquer uma das categorias, consulte Número de rua não confirmado fora dos EUA em Aceitar endereço: exemplos.

Aceitar endereços

É uma boa prática permitir que o sistema aceite a entrada original se o cliente não responder às solicitações.

Nesses casos, o cliente pode ter inserido um endereço que não está no sistema, como em uma construção nova.

Corrigir um endereço

Corrija um endereço quando os resultados indicarem claramente que ele não é entregável. Em seguida, o sistema pode pedir ao cliente que forneça as informações necessárias. Depois disso, você reemite o fluxo de trabalho para receber um endereço de entrega.

Corrigir indicadores

A API Address Validation fornece vários indicadores para informar se um endereço precisa ser corrigido.

1. Granularidade da validação e componentes ausentes

Estes dois indicadores são os melhores para identificar um endereço problemático:

  • Sempre que o campo validationGranularity for OTHER, seu sistema vai investigar os indicadores de componentes de endereço para saber mais sobre onde o erro ocorreu e como corrigi-lo.
  • Sempre que o objeto address pós-processado retornar um campo missingComponentTypes, seu sistema deverá verificar esse componente. Componentes ausentes também tornam um endereço incompleto e não entregável.

2. Outros indicadores

A API Address Validation também fornece outros indicadores para ajudar a diagnosticar problemas específicos:

Componentes suspeitos Quando o enum de nível de confirmação de um componente é UNCOMFIRMED_AND_SUSPICIOUS, é provável que o componente esteja incorreto.
Componente não resolvido Um unresolvedToken é parte da entrada que não foi reconhecida como uma parte válida de um endereço.

3. Indicadores de endereço dos EUA

Alguns campos aplicáveis apenas a endereços dos EUA fornecem um indicador útil de que o endereço não pode ser entregue e precisa ser corrigido. Para um endereço que precisa de correção, você vai encontrar o seguinte:

dpvConfirmation N, D ou vazio.

Para mais detalhes sobre dpvConfirmation, consulte Gerenciar endereços dos Estados Unidos.

Exemplos de correção de endereços

Confirmar um endereço

Você confirma um endereço quando o veredicto indica que a API Address Validation inferiu ou fez mudanças nos componentes do endereço para produzir um endereço validado. Nesses casos, você tem um endereço de entrega, mas prefere ter mais confiança de que o endereço resultante é o pretendido pelo cliente.

Para fornecer ao cliente a solicitação correta, sua lógica identificaria os componentes sinalizados pelo serviço para determinar qual ação ou flag a API aplicou ao componente, como inferred, replaced ou spellCorrected. Consulte AddressComponent na referência.

Confirmar indicadores

A API Address Validation fornece vários indicadores para informar se um endereço precisa ser confirmado.

1. Granularidade da validação

Um validationGranularity de ROUTE ou mais é aceitável, mas PREMISE ou SUBPREMISE fornecem um indicador mais forte de capacidade de entrega.

2. Outros indicadores

Ao decidir confirmar a entrada de endereço com o cliente, o veredicto também fornece o seguinte para determinar quais componentes investigar:

Dados inferidos Quando o campo hasInferredComponents é true, significa que a API preencheu as informações coletadas de outros componentes de endereço.
Dados substituídos Quando o campo hasReplacedComponents é true, a API substitui os dados inseridos por dados que ela considera válidos para o endereço.

3. Indicadores de endereço dos EUA

Alguns campos aplicáveis apenas a endereços dos EUA indicam que sua lógica deve confirmar os detalhes com o cliente. Uma das seguintes opções se aplica:

dpvConfirmation S

Para mais detalhes sobre dpvConfirmation, consulte Gerenciar endereços dos Estados Unidos.

Resposta do endereço Contém o campo missingComponentTypes com o valor subpremise.

Exemplos de confirmação de endereço

Aceitar um endereço

Você aceita um endereço quando o veredicto oferece um alto grau de confiança de que ele é entregável e pode ser usado sem mais interações com o cliente no processo downstream.

Aceitar indicadores

A API Address Validation fornece vários indicadores para informar se um endereço precisa ser confirmado.

1. Granularidade da validação

Um validationGranularity de PREMISE ou mais é aceitável, mas em alguns casos, ROUTE ainda indica um endereço de entrega.

2. Outros indicadores

Um veredito para um endereço de alta qualidade também deve fornecer o seguinte:

  • Nenhum dado substituído. Nesse caso, hasReplacedComponents: FALSE.
  • Nenhum componente inferido. Nesse caso, hasInferredComponents: FALSE.

3. Indicadores de endereço dos EUA

Alguns campos aplicáveis apenas a endereços dos EUA indicam um endereço de alta qualidade que pode ser entregue. Para um endereço aceitável nos EUA, você precisa ver o seguinte:

dpvConfirmation Y

Para detalhes sobre dpvConfirmation, consulte Gerenciar endereços dos Estados Unidos.

Exemplos de endereços aceitos