Perguntas · Moradas
Como acrescento o preenchimento automático de moradas ao meu formulário?
Liga o widget ao campo da morada do seu formulário: enquanto o utilizador escreve, aparecem as ruas do registo com a localidade, e na escolha os campos preenchem-se sozinhos com a morada já na forma correta, código postal de sete algarismos incluído. O seu servidor faz de intermediário para a nossa API, para que o token nunca passe pelo browser.
O que vê quem preenche
Escreve «r augusta» e vê «Rua Augusta», com as localidades onde essa rua existe; se já preencheu a localidade, as sugestões apertam-se a ela. Escolhida a rua, escreve o número de porta e o formulário diz-lhe se consta no registo: em Portugal é o troço da rua que decide os três últimos algarismos do código postal, e o código que chega é o desse troço, não os quatro algarismos genéricos da cidade.
Na seleção os campos morada, código postal e localidade preenchem-se com o registo passado pelo motor, o mesmo da verificação de moradas. A base de contactos nasce limpa em vez de ser limpa depois.
Como se paga
Por sessão, não por tecla premida. Os pedidos de sugestão enquanto se escreve são gratuitos; conta-se uma só operação quando o utilizador seleciona a morada e os campos se preenchem. Se depois mudar o número e voltar a selecionar na mesma sessão, não paga de novo. Cada sessão admite até trinta pedidos e vale dez minutos. Os preços estão na página de preços.
Como se integra
Três peças:
- Um token da API, na área pessoal.
- Um pequeno proxy no seu servidor, uma página que recebe o pedido do browser, acrescenta o token e o reencaminha para o nosso endpoint. É preciso porque o token nunca deve estar no código que corre no browser.
- O widget
ra-suggerisci.js, sem dependências: indica-lhe o endereço do proxy e os seletores dos campos do formulário, e ele faz o resto: trata sozinho da espera enquanto se escreve, do contexto dos campos já preenchidos e do preenchimento na escolha.
Quem prefere fazer por si chama diretamente o endpoint /api/v1/suggest: um identificador de sessão gerado pelo cliente, o texto escrito, os campos já conhecidos como contexto; depois a ação de seleção com a rua escolhida e o número. Está tudo na documentação da API.
Casos particulares
- Outros países: as sugestões existem em cada país com o registo de moradas em serviço (a lista); o formulário passa o país escolhido pelo utilizador e o widget procura lá, com a forma do número e do código postal desse país. O utilizador pode escrever tudo num só campo («Kalverstraat 92 Amsterdam»): a resposta diz como o leu (
parsed: rua, número, código postal). Num país sem registo a resposta di-lo e não abre nenhuma sessão: o preenchimento continua à mão, sem cobrança. - WooCommerce e PrestaShop: não é preciso escrever nada, há o plugin WooCommerce e o módulo PrestaShop com o preenchimento automático no checkout e a verificação das encomendas.
- Rua que não aparece: em Portugal o registo nacional não cobre todas as ruas, e o utilizador pode sempre escrever a morada por inteiro; o registo passará pela verificação num segundo momento, a partir do ficheiro ou da API.
- Vários formulários, vários sites: o mesmo token serve todos os formulários; o proxy pode estar em cada site ou ser um só.
O que acontece aos campos
localidade: lisboa
1100-053 LISBOA
A rua é completada na forma do registo, a localidade escolhida entre as que têm essa rua, o código postal de sete algarismos posto pelo motor: com o número chega o código do troço, não o genérico da cidade.
As perguntas que se seguem
É precisa alguma biblioteca ou framework em particular?
Não. O widget é um ficheiro JavaScript sem dependências que se liga aos campos existentes pelos seus seletores. Funciona com qualquer formulário HTML, dentro de um CMS como numa aplicação feita em casa.
Porque é preciso um proxy no meu servidor?
Porque o token da API é uma chave da sua conta: se estivesse no código que corre no browser, qualquer pessoa o podia ler e usar à sua custa. O proxy é uma página de poucas linhas que recebe o pedido, acrescenta o token e o reencaminha.
Quanto custa se o utilizador escrever e depois não escolher nada?
Nada. Os pedidos de sugestão são gratuitos: conta-se uma operação só quando o utilizador seleciona uma morada e os campos são preenchidos.
Funciona também com os números de porta?
Sim. Escolhida a rua, com o número parcial chegam os números conhecidos dessa rua, e o formulário sabe se o escrito consta. Em Portugal é o troço da rua que determina os três últimos algarismos do código postal.
Posso usá-lo para moradas de outros países?
Sim, em cada país com o registo de moradas em serviço: o formulário passa o país e as sugestões vêm desse registo, na forma desse país. Num país sem registo a resposta assinala-o sem abrir uma sessão, e o formulário continua com o preenchimento manual sem custos.
O que chega aos campos na seleção?
A morada já passada pelo motor de verificação: rua na forma do registo, código postal completo, localidade. É o mesmo registo que teria da verificação de uma morada, obtido no momento em que o dado entra.
Tenho uma loja WooCommerce ou PrestaShop: tenho de integrar o widget à mão?
Não: o plugin RadarAddress para WooCommerce e o módulo para PrestaShop põem o preenchimento automático no checkout e verificam cada encomenda. Instalam-se, cola-se o token, funcionam.
Leia a documentação do preenchimento automático
Endpoint, sessão, widget e proxy: tudo o que é preciso para o pôr no seu formulário.
Leia a documentação do preenchimento automáticoLê também: A API para normalizar moradas · Verificar as moradas de um ficheiro Excel · O plugin para WooCommerce · O módulo para PrestaShop