Questo documento descrive la procedura per creare un sistema di controllo degli indirizzi per gestire una serie di risposte dell'API Address Validation. Spiega come interpretare la risposta dell'API per determinare quando e come chiedere ai clienti maggiori informazioni.
In generale, la risposta dell'API determina i seguenti modi in cui il sistema deve gestire un indirizzo:
Valuta la possibilità di chiedere al cliente di fornirti maggiori informazioni.
Correggi: l'indirizzo potrebbe contenere problemi significativi.
Valuta la possibilità di chiedere al cliente di aggiungere un numero di unità.
Aggiungi unità: nell'indirizzo potrebbe mancare un'unità.
Valuta la possibilità di chiedere al cliente di confermare che l'indirizzo sia corretto.
Conferma: l'indirizzo potrebbe contenere problemi minori.
Valuta la possibilità di utilizzare l'indirizzo senza ulteriore conferma, a tuo rischio.
Accetta: l'indirizzo potrebbe non contenere problemi.
Scopo principale
Questo documento ti aiuta a modificare il sistema per analizzare al meglio la risposta dell'API e determinare le azioni successive da intraprendere con gli indirizzi forniti. Il seguente pseudocodice illustra un possibile flusso.
if (verdict.possibleNextAction == FIX)
Prompt the user to fix the address.
else if (verdict.possibleNextAction == CONFIRM_ADD_SUBPREMISES)
Prompt the user to add a unit number.
else if (verdict.possibleNextAction == CONFIRM)
Confirm with the user that the address is correct.
else
Continue with the address returned by the API.
La logica esatta dipende dalla tua situazione. Per ulteriori dettagli, consulta Personalizzare la logica di convalida.
Possibili flussi di lavoro
La tabella seguente riassume i possibili flussi di lavoro che puoi implementare per richiedere un prompt al cliente in base alla risposta dell'API.
Il comportamento del sistema | ||
---|---|---|
Correggi l'indirizzo |
La risposta del
|
|
Aggiungi sedi secondarie |
La risposta di
|
|
Conferma l'indirizzo |
La risposta del
|
|
Accetta l'indirizzo |
La risposta del
|
Personalizzare la logica di convalida
Sebbene tu possa utilizzare i risultati del campo verdict.possibleNextAction
per determinare come il sistema procede con la risposta dell'API, potresti anche valutare la possibilità di creare una logica personalizzata, ad esempio per gestire le esigenze specifiche dell'attività.
Lo scopo di questa sezione è illustrare come puoi sviluppare la tua logica personalizzata per interpretare la risposta dell'API al fine di determinare se e come vuoi chiedere un feedback al cliente. Questa sezione illustra i livelli di rischio e gli indicatori di risposta dell'API aggiuntivi da prendere in considerazione per la personalizzazione.
Detto questo, anche se ti affidi esclusivamente al verdict.possibleNextAction
per decidere su come procedere, gli indicatori aggiuntivi descritti di seguito possono comunque aiutarti a comprendere i dettagli relativi a potenziali problemi con l'indirizzo.
Tolleranza di rischio
Quando progetti la modalità di risposta del tuo sistema agli indicatori dell'API Address Validation, i seguenti consigli possono aiutarti a creare un modello di risposta più efficace. Tuttavia, si tratta solo di consigli, quindi tieni presente che l'implementazione deve essere adatta al tuo modello di business.
Consulenza | Dettagli | |
---|---|---|
Livello di rischio |
Tieni conto del livello di tolleranza per la tua situazione quando devi decidere se chiedere correzioni o accettare l'indirizzo inserito. |
L'API Address Validation restituisce una serie di indicatori che puoi incorporare nel tuo livello di rischio per ottimizzare il processo di convalida. Ad esempio, se un indirizzo non ha un numero civico confermato, puoi comunque accettarlo. D'altra parte, se la tua attività richiede una maggiore precisione dell'indirizzo, potresti chiedere all'utente di fornire ulteriori dettagli. Per un esempio che potrebbe rientrare in entrambe le categorie, consulta Numero civico non confermato al di fuori degli Stati Uniti in Indirizzo accettato - esempi. |
Accetta indirizzi |
È buona norma consentire al sistema di accettare la voce originale se il cliente non risponde ai prompt. |
In questi casi, il cliente potrebbe aver inserito un indirizzo non presente nel sistema, ad esempio per una nuova costruzione. |
Esempio di flusso di pagamento per utenti avversi al rischio
Se vuoi ridurre il rischio di importazioni non riuscite, puoi personalizzare la logica per richiedere più spesso ai clienti di confermare l'operazione. Ad esempio, anziché utilizzare la logica descritta nella sezione Finalità principale, puoi utilizzare la seguente.
if (verdict.possibleNextAction == FIX or verdict.validationGranularity
== OTHER or verdict.validationGranularity == ROUTE)
Prompt customer to fix their address.
else if (verdict.possibleNextAction == CONFIRM_ADD_SUBPREMISES)
Prompt customer to add a unit number.
else if (verdict.possibleNextAction == CONFIRM or verdict.validationGranularity
== PREMISE_PROXIMITY or verdict.hasSpellCorrectedComponents or
verdict.hasReplacedComponents or verdict.hasInferredComponents)
Prompt customer to confirm their address.
else
Proceed with the returned address.
Esempio di procedura di pagamento agevole
Se vuoi ridurre le difficoltà nel flusso di pagamento, puoi personalizzare la logica per richiedere ai clienti di rispondere meno spesso. Ad esempio, anziché utilizzare la logica descritta nella sezione Finalità principale, puoi utilizzare la seguente.
if (verdict.possibleNextAction == FIX)
Prompt customer to fix their address.
else if (verdict.hasReplacedComponents)
Prompt customer to confirm their address.
else
Proceed with the returned address.
Indicatori FIX
Correggi un indirizzo quando i risultati indicano chiaramente che l'indirizzo potrebbe non essere valido. Il sistema può quindi chiedere al cliente di fornire le informazioni necessarie, dopodiché puoi riemettere il flusso di lavoro per ottenere un indirizzo di recapito.
Oltre a verdict.possibleNextAction
, per determinare se un indirizzo presenta problemi gravi e quali sono, puoi utilizzare i seguenti campi della risposta dell'API Address Validation.
Granularità della convalida | Quando l'enum di granularità della convalida per un indirizzo è
OTHER , è probabile che l'indirizzo non sia corretto.
|
---|---|
Componenti mancanti | Quando address.missingComponentTypes non è vuoto, è probabile che nell'indirizzo manchino informazioni chiave.
|
Componenti sospetti | Quando l'enum del livello di conferma per un componente è
UNCONFIRMED_AND_SUSPICIOUS , è probabile che il componente sia
errato.
|
Componenti irrisolti | Un unresolvedToken è una parte dell'input non riconosciuta come parte valida di un indirizzo. |
USPS DPV Confirmation | Quando uspsData.dpvConfirmation è N o vuoto, potrebbe esserci un problema con l'indirizzo. Questo campo è disponibile solo per gli indirizzi degli Stati Uniti. Per maggiori dettagli su uspsData.dpvConfirmation ,
consulta Gestire gli indirizzi degli Stati Uniti.
|
Indicatori CONFIRM_ADD_SUBPREMISES (solo indirizzi Stati Uniti)
Chiedi al cliente di rivedere l'indirizzo e di valutare la possibilità di aggiungere un numero di unità quando la risposta dell'API di convalida dell'indirizzo indica che nell'indirizzo potrebbe mancare un'unità secondaria. In questi casi, l'indirizzo dell'edificio è probabilmente valido, ma vuoi avere la certezza che l'indirizzo risultante sia quello inteso dal cliente.
Oltre a verdict.possibleNextAction
, è possibile utilizzare i seguenti campi della risposta dell'API di convalida dell'indirizzo per determinare se è probabile che in un indirizzo manchi un'unità immobiliare.
Missing subpremise component
|
Quando il campo address.missingComponentTypes contiene un valore subpremise , significa che nell'indirizzo manca il numero dell'unità.
|
---|---|
USPS DPV Confirmation | Quando uspsData.dpvConfirmation è S , significa che il numero principale dell'indirizzo è stato associato a un indirizzo nel database USPS. Tuttavia, l'indirizzo doveva contenere anche un numero secondario. Questo campo è disponibile solo per gli indirizzi negli Stati Uniti. Per maggiori dettagli su uspsData.dpvConfirmation , consulta Gestire gli indirizzi degli Stati Uniti.
|
Esempi di indirizzo di un'unità secondaria
Indicatori CONFIRM
Confermi un indirizzo quando il verdetto indica che l'API Address Validation ha dedotto o apportato modifiche ai componenti dell'indirizzo per produrre un indirizzo convalidato. In questi casi, hai un indirizzo di recapito, ma preferisci avere una maggiore certezza che l'indirizzo risultante sia quello previsto dal cliente.
Oltre a verdict.possibleNextAction
, per determinare se un indirizzo presenta problemi minori e quali sono, puoi utilizzare i seguenti campi della risposta dell'API Address Validation.
Granularità della convalida | Se validationGranularity per un indirizzo è
ROUTE o PREMISE_PROXIMITY , l'indirizzo potrebbe essere
errato.
|
---|---|
Dati dedotti | Quando il campo hasInferredComponents è true ,
sai che l'API ha inserito le informazioni ricavate da altri componenti dell'indirizzo.
|
Dati sostituiti | Quando il campo hasReplacedComponents è true , l'API ha sostituito i dati inseriti con quelli ritenuti validi per l'indirizzo.
|
Correzioni ortografica | Quando il campo hasSpellCorrectedComponents è true ,
l'API ha corretto l'ortografia di alcuni componenti con errori ortografici.
|
Esempi di indirizzi di conferma
Indicatori ACCEPT
Potresti accettare un indirizzo quando la risposta dell'API Address Validation fornisce un elevato grado di certezza che l'indirizzo sia recapitabile e possa essere utilizzato senza ulteriore interazione del cliente nella procedura a valle.
Oltre a verdict.possibleNextAction
, per determinare se un indirizzo è di qualità accettabile, puoi utilizzare i seguenti campi della risposta dell'API Address Validation.
Granularità della convalida | Un valore validationGranularity di PREMISE è spesso accettabile, anche se un valore di ROUTE può comunque indicare un indirizzo recapitabile.
|
---|---|
Nessun dato dedotto | Quando il campo hasInferredComponents è false ,
sai che non sono stati dedotti componenti nell'output.
|
Nessun dato sostituito | Quando il campo hasReplacedComponents è false ,
sai che nessun dato di input è stato sostituito.
|
Nessuna correzione ortografica | Quando il campo hasSpellCorrectedComponents è false ,
sai che non sono state apportate correzioni ortografica.
|
USPS DPV Confirmation | Quando uspsData.dpvConfirmation è Y , significa
che l'indirizzo è stato associato a un indirizzo nel database USPS. Questo
campo è disponibile solo per gli indirizzi statunitensi. Per maggiori dettagli su
uspsData.dpvConfirmation , consulta
Gestire gli indirizzi degli Stati Uniti.
|