Integração de imóveis com o portal ImovelWeb
Este artigo descreve o funcionamento do SnapProperty para enviar informações sobre os imóveis para o portal do imovelweb.
Visão geral
O SnapProperty gera um arquivo xml com as informações dos imóveis disponíveis para locação, seguindo a estrutura definida no https://open-docs.navent.com/bra/ .
Endereço do arquivo
O arquivo xml fica disponível para consulta do portal no endereço https://us-central1-snapproperty-dev.cloudfunctions.net/api2/imoveis/{nome-cliente}/imovelweb, onde o parâmetro {nome-cliente} é fornecido pelo analista no início da implantação do projeto.
Endereço para teste de um imóvel
Para testar a geração do arquivo de um único imóvel pode ser utilizada a url https://us-central1-snapproperty-dev.cloudfunctions.net/api/imoveis/cliente/imovelweb/id-imovel, onde:
cliente é o nome do cliente fornecido na implantação
id-imovel é o ID do imóvel na plataforma Salesforce (ex.: a054P00000vHl2zQAC)
Mapeamento dos campos
O arquivo xml é construído de acordo os campos descritos na tabela abaixo.
Tag Agrupada | Tag ImovelWeb | Descrição | Obrigatório | Objeto | Campo | Notas |
---|---|---|---|---|---|---|
Imovel | codigoAnuncio | Código para identificação do imóvel | Sim | IMOVEL | Código | Ex.: I-060917 |
Imovel | descricao | Área de texto livre para descrição do imóvel | Sim | IMOVEL | Descrição |
|
tipoPropriedade | Tipo | Define o tipo de imóvel | Sim | Tipo de imóvel | Tipo do imóvel ImovelWeb |
|
tipoPropriedade | Subtipo | Define o subtipo do imóvel | Sim | Tipo de imóvel | Subtipo do imóvel Imovelweb |
|
localizacao | endereco | Define o endereço do imóvel | Sim | IMOVEL | Logradouro + Número | Endereço é uma formula: snap_brok__Logradouro__c + " " + imovel.snap_brok__Numero__c} |
localizacao | codigoPostal | Define o CEP do imóvel | Não | IMOVEL | Cep |
|
localizacao | mostrarMapa |
| Sim | X | X | Sempre utiliza o valor APROXIMADO |
localizacao | latitude | Define a latitude do imóvel | Não | IMOVEL | Latitude |
|
localizacao | longitude | Define a longitude do imóvel | Não | IMOVEL | Longitude |
|
localizacao | localidade | Define a localidade do imóvel (que bairro se situa, de qual cidade, de qual estado e de qual país) | Não | Bairro, Cidade. | Bairro + Cidade + Estado + País | imovel.snap_brok__Bairro_2__r.Name + ", " + imovel.snap_brok__Cidade_2__r.Name + ", " + imovel.snap_brok__Cidade_2__r.snap_finan__Estado__r.Name + ", " + imovel.snap_brok__pais__c |
preco | quantidade | Valor da locação e/ou venda | Sim | IMOVEL | Valor desejado do aluguel E/OU Valor de venda | Caso possua o campo Disponível venda como true a operação levará em consideração o valor de venda. Caso possua o campo Disponóvel locação como true a operação levará em consideração o valor de locação. Caso os dois estejam preenchidos levam os dois valores em consideração. |
preco | operacao | Decide se o imóvel será para uma venda, uma locação ou os dois | Sim | IMOVEL | Disponível para locação E/OU Disponível para venda | Caso possua o campo Disponível venda como true a operação levará em consideração o valor de venda. Caso possua o campo Disponóvel locação como true a operação levará em consideração o valor de locação. Caso os dois estejam preenchidos levam os dois valores em consideração. |
preco | moeda | Moeda utilizada na publicação do imóvel | Sim |
| X | Valor = BRL |
caracteristica | nome | Nome da caracteristica a ser enviada no momento | Sim | IMOVEL | Caracteristicas complementares, Area útil, Área Total, Idade, Suites, Banheiros, Dormitórios, Valor mensal do IPTU rateado, Vagas, Valor total do condominio, (Ar condicionado parede + Ar condicionado split), UNIDAD_DE_MEDIDA | Busca pelo nome da caracteristicas caso bata com algum valor da lista de caracteristicas que integração identifica (https://pastebin.com/d1fPUec6 ) adiciona caracteristica.idValor igual a 1 (True). O seu valor padrão é: UNIDAD_DE_MEDIDA |
caracteristica | valor | Define o valor/quantidade de itens daquela caracteristica a serem enviados | Não | IMOVEL | Caracteristicas complementares, Area útil, Área Total, Idade, Suites, Banheiros, Dormitórios, Valor mensal do IPTU rateado, Vagas, Valor total do condominio, (Ar condicionado parede + Ar condicionado split) |
|
caracteristica | idValor | Esta tag permite definir o valor a ser atribuído a cada característica mediante a um id. | Sim | IMOVEL | Caracteristicas complementares, Area útil, Área Total, Idade, Suites, Banheiros, Dormitórios, Valor mensal do IPTU rateado, Vagas, Valor total do condominio, (Ar condicionado parede + Ar condicionado split) | EX: Elevador Tem elevador? idValor = 1 Não tem elevador? idValor = 0 |
imagem | titulo | Titulo da imagem | Não | Fotos do imóvel | Nome da foto do imóvel |
|
imagem | urlImagem | Url da imagem | Não | Fotos do imóvel | Url |
|
Exemplos de preenchimento
Imovel
<codigoAnuncio>snap_brok__codigo__c</codigoAnuncio>
<descricao>snap_brok__descricao__c</descricao>
tipoPropriedade
<tipoPropriedade>
<tipo>snap_brok__Tipo_imovel_Imovelweb__c</tipo>
<subTipo>snap_brok__Subtipo_imovel_Imovelweb__c</subTipo>
</tipoPropriedade>
localizacao
<localizacao>
<endereco>snap_brok__Logradouro__c + " " + imovel.snap_brok__Numero__c</endereco>
<localidade>imovel.snap_brok__Bairro_2__r.Name + ", " + imovel.snap_brok__Cidade_2__r.Name + ", " + imovel.snap_brok__Cidade_2__r.snap_finan__Estado__r.Name + ", " + imovel.snap_brok__pais__c</localidade>
<mostrarMapa>APROXIMADO</mostrarMapa>
<latitude>snap_brok__Localizacao__Latitude__s</latitude>
<longitude>snap_brok__Localizacao__Longitude__s</longitude>
</localizacao>
preco
caracteristica
imagem