Saltar al contenido principal
Version: v1.0.0

Reglas de validación

Reglas de calidad que aplicamos a cada propiedad antes de publicarla. Si una regla falla, la propiedad se bloquea, se publica como borrador, o se publica normalmente con la falta de amenidades registrada.


Severidades

SeveridadEfecto
BLOCKLa propiedad no se publica. Debe corregir los datos en su CRM para que se procese en un ciclo posterior.
DRAFTLa propiedad puede publicarse en estado borrador o con visibilidad interna reducida.
WARNLa propiedad se publica normalmente. Solo aplica a amenidades faltantes.

Cuando una propiedad falla varias reglas, la severidad más alta determina el resultado:

Alguna regla BLOCK falla -> resultado BLOCK
Sin BLOCK, alguna regla DRAFT falla -> resultado DRAFT
Sin BLOCK ni DRAFT -> resultado PUBLISH

Todas las reglas se evalúan para tener diagnóstico completo. El webhook estándar con status REJECTED solo incluye mensajes de problemas bloqueantes.


Reglas BLOCK

Estas reglas impiden la publicación.

ReglaCampo(s)Condición que debe cumplirse
Tipo de propiedadproperty_typeDebe ser comercial y resolverse a office, retail, industrial o terrain. Propiedades residenciales se rechazan.
Elegibilidad por descripcióndescriptionLa descripción no debe indicar contenido residencial no permitido. Si el análisis no puede descartar riesgo residencial, la propiedad se bloquea de forma conservadora.
ModalidadmodalityDebe resolverse a renta, venta o ambas. Envíe rent, sale o rent_and_sale.
Precio presenteprice.rent_price, price.sale_priceAl menos un precio debe ser mayor a 0.
Ubicación básicalocation.city, location.stateCiudad y estado deben estar presentes.
Código postal resolublelocation.postal_codeDebe existir y poder resolverse durante enriquecimiento.
Coordenadas obligatoriaslocation.latitude, location.longitudeAmbas deben estar presentes y ser distintas de 0.
Calle obligatorialocation.streetDebe estar presente junto con las coordenadas.
Contacto obligatoriocontact.name, contact.email, contact.phoneLos tres campos deben estar presentes.
Número exteriorlocation.ext_numberSi se envía, debe tener máximo 6 caracteres.
Número interiorlocation.int_numberSi se envía, debe tener máximo 6 caracteres.
Contacto bloqueadocontact.email, contact.phoneEl agente o contacto no debe estar bloqueado por políticas de calidad o seguridad.
Máximo de recámarasbedroomsSi se envía, debe ser menor o igual a 20.
Área divisible industrialindustrial.min_area_divisible_m2, industrial.max_area_divisible_m2Si ambos existen, el máximo debe ser mayor o igual que el mínimo.
Altura industrialindustrial.min_height_m, industrial.max_height_mSi se envía altura máxima, la altura mínima no debe superarla.
Luminarias industrialesindustrial.luminaries, industrial.luminary_specsSi luminaries > 0, luminary_specs debe estar presente.
Piso de oficinaoffice.floor_level, office.floor_level_numberSi floor_level = 6, floor_level_number debe estar presente.
Rango de precio por m² retailretail.price_per_sqm_min, retail.price_per_sqm_maxSi ambos existen, el máximo debe ser mayor o igual que el mínimo.
Uso de suelo de terrenoterrain.land_usePara terrenos, recomendamos enviarlo siempre. Si el campo llega vacío en el payload mapeado, bloquea.

Reglas DRAFT

Estas reglas no bloquean el procesamiento, pero degradan la visibilidad o dejan la propiedad en borrador.

ReglaCampo(s)Condición que debe cumplirse
Fotos mínimasphotosDebe haber al menos 1 foto para evitar borrador.
Calidad de fotosphotosRecomendamos al menos 3 fotos. Con 1 o 2 fotos, la propiedad puede quedar en borrador o con visibilidad reducida.
Coordenadas dentro de Méxicolocation.latitude, location.longitudeLas coordenadas deben estar confiablemente dentro de México. Casos inválidos o fuera del país degradan a borrador.
Precio mínimoprice.rent_price, price.sale_priceEl precio debe estar por encima del mínimo canónico de validación.
Precio por m²price, surface_m2 / land_m2El precio por m² debe estar dentro del rango canónico por tipo de propiedad y modalidad.
Superficie mínimasurface_m2 / land_m2La superficie debe estar por encima del mínimo canónico para el tipo de propiedad.
Superficie estadísticasurface_m2 / land_m2La superficie debe estar dentro del rango canónico por tipo de propiedad.

Reglas WARN

Estas reglas no afectan la publicación pública, pero quedan registradas para control de calidad.

ReglaCampo(s)Condición recomendada
AmenidadesamenitiesEnviar al menos una amenidad reconocible.

Umbrales

Los rangos de precio por m² y superficie provienen de las reglas canónicas de validación de Spot2. Se evalúan por tipo de propiedad, modalidad y alcance de la superficie disponible.

Los umbrales públicos más relevantes son:

UmbralValor
Fotos mínimas para evitar borrador1
Fotos recomendadas para evitar borrador3
Longitud mínima recomendada de descripción20 caracteres
Recámaras máximas20
Longitud máxima de descripción1000 caracteres
Número exterior máximo6 caracteres
Número interior máximo6 caracteres

Rechazo permanente

Si una propiedad falla reglas BLOCK durante 5 ciclos consecutivos sin cambios en los datos, se marca como falla permanente para evitar reintentos completos innecesarios.

La propiedad se sigue revalidando en ciclos posteriores. Si corrige los datos en su CRM y vuelve a pasar QA con resultado PUBLISH o DRAFT, sale de falla permanente y reentra al flujo normal.


Mensajes en el webhook

El webhook estándar solo envía REJECTED cuando hay un rechazo bloqueante. En ese caso, messages contiene mensajes legibles para el integrador y solo incluye reglas BLOCK.

Las reglas DRAFT y la regla WARN de amenidades pueden registrarse internamente o reportarse a sistemas de calidad de Spot2, pero no aparecen como mensajes de rechazo en el webhook estándar.