Imagina que un prospecto llega por WhatsApp y dice: “vengo de Monterrey, busco casa en Guadalajara, 4 recámaras, tengo Infonavit y es para mis papás” — y sin que tu asesor haga nada, esa información aparece organizada automáticamente en tu CRM. Eso es exactamente lo que logras combinando propiedades personalizadas de contacto con la herramienta Update Contact de un Agente de IA.
Ejemplo real:

(La AI llena la información que va viendo en la conversación)
En esta guía cubrimos todo: los tipos de negocio inmobiliario, qué propiedades crear para cada uno, cómo configurarlas correctamente, los tipos de dato y cuándo usar cada uno, y cómo activar la tool que conecta la conversación con tu CRM.
¿Por qué los CRMs tradicionales fallan en bienes raíces?
El problema no es la falta de leads — es la falta de información útil sobre ellos. Los asesores reciben mensajes, los leen y los olvidan. Cuando alguien llama al día siguiente, ya nadie recuerda si quería casa o depa, si tenía crédito, si era para vivir o invertir.
Los formularios tampoco funcionan. Nadie quiere llenar 15 campos antes de hablar con alguien. La conversación natural es donde vive la información — el reto era capturarla automáticamente. Ahora es posible.
El prospecto nunca sabe que está siendo perfilado. Solo siente que la IA lo escucha muy bien.

El sistema: dos piezas que trabajan juntas
1. Propiedades Personalizadas en Contactos: Son los campos que defines según tu modelo de negocio. Cada uno tiene un tipo de dato, una descripción interna y un prompt de máximo 255 caracteres que le indica a la IA qué extraer de la conversación.

2. La Tool “Update Contact” en AI Builder: Es la herramienta que el agente invoca en tiempo real durante la conversación. Cuando detecta información relevante, la escribe directamente en el registro del contacto sin interrumpir el flujo de la conversación.

Paso 1: Entiende los Tipos de Dato y cuándo usar cada uno
Antes de crear cualquier propiedad, debes entender qué tipo de dato elegir. Elegir mal el tipo hace que la IA no pueda guardar la información correctamente.
| Tipo | Qué guarda | Cuándo usarlo | Ejemplos en inmobiliario |
|---|---|---|---|
| String | Texto libre | Cuando el valor es una palabra, frase o lista de opciones | Tipo de crédito, zona de interés, tipo de contacto, modelo de unidad |
| Integer | Número entero sin decimales | Cuando el valor es una cantidad contable | Número de recámaras, baños, cajones de estacionamiento, ocupantes |
| Double | Número con decimales | Cuando el valor puede tener centavos o porcentajes | ROI esperado (8.5%), comisión, metros cuadrados exactos |
| Date | Fecha | Cuando el valor es una fecha específica o rango de tiempo | Fecha de entrada, fecha de entrega del desarrollo, disponibilidad |
| Boolean | Verdadero o Falso | Cuando la respuesta es sí/no o existe/no existe | Tiene crédito, quiere alberca, tiene mascotas, es tomador de decisión |
Paso 2: Crea tus Propiedades Personalizadas
Ve a Contacts → Configuration → Add Property. Para cada campo completa lo siguiente:
- Name: Etiqueta visible para tu equipo en español (ej. Tipo de Crédito)
- Code: Nombre técnico en inglés con guiones bajos — este campo no se puede cambiar después de creado (ej.
credit_type) - Type Data: El tipo de dato de la tabla anterior
- Description: Nota interna para tu equipo, no la lee la IA
- Prompt: Instrucción para la IA de máximo 255 caracteres que le dice exactamente qué extraer de la conversación

⚠️ El Code es permanente. Una vez creado no puede modificarse. Defínelo siempre en inglés, minúsculas y con guiones bajos: move_in_date no “FechaMudanza”.
💡 Regla de oro para el Prompt: Empieza siempre con la palabra Extract o True if. Termina siempre con Leave blank if not mentioned. Nunca pidas a la IA que adivine — solo que extraiga lo que el usuario dijo explícitamente.
Los 4 modelos de negocio inmobiliario y sus propiedades
No todos los negocios inmobiliarios necesitan los mismos campos. A continuación presentamos las propiedades específicas para cada sector.
🏗️ Sector 1: Desarrollos y Constructoras
Los contactos típicos son: compradores finales, inversionistas y agentes externos que quieren co-broking. El foco está en la unidad específica, el modelo, la preventa y el financiamiento.
Propiedades universales del contacto
| Name | Code | Type | Prompt |
|---|---|---|---|
| Tipo de Contacto | contact_type | String | Extract contact type: end_buyer, investor, agent. Leave blank if unclear. |
| Tomador de Decisión | is_decision_maker | Boolean | True if user confirms they are the final decision-maker. Leave blank if not mentioned. |
| Para Quién Es | beneficiary | String | Extract who property is for: self, parents, children, partner, investment. Leave blank if not mentioned. |
| Canal de Origen | lead_source | String | Extract how user found us: WhatsApp, Facebook, Instagram, referral, website, signage, other. Leave blank if not mentioned. |
| Ciudad de Origen | origin_location | String | Extract where user currently lives or comes from. Leave blank if not mentioned. |
| Etapa del Embudo | funnel_stage | String | Extract urgency stage: cold, warm, hot, negotiation, closed. Leave blank if not mentioned. |
Interés en el desarrollo
| Name | Code | Type | Prompt |
|---|---|---|---|
| Proyecto de Interés | project_name | String | Extract the development or project name the user is interested in. Leave blank if not mentioned. |
| Unidad de Interés | unit_number | String | Extract the specific unit number the user is interested in (e.g. 39, B-12). Leave blank if not mentioned. |
| Modelo / Prototipo | unit_model | String | Extract unit model or prototype name (e.g. Tipo A, Garden, Penthouse). Leave blank if not mentioned. |
| Interés en Preventa | presale_interest | Boolean | True if user asks about or shows interest in pre-sale pricing or availability. Leave blank if not mentioned. |
| Fecha de Entrega Deseada | desired_delivery_date | Date | Extract when user needs or expects the property to be ready. Leave blank if not mentioned. |
| Piso Preferido | floor_preference | String | Extract preferred floor level: low, mid, high, penthouse, ground. Leave blank if not mentioned. |
| Vista Preferida | preferred_view | String | Extract preferred view: garden, pool, street, city, mountain, other. Leave blank if not mentioned. |
Características del inmueble buscado
| Name | Code | Type | Prompt |
|---|---|---|---|
| Tipo de Inmueble | property_type | String | Extract property type: apartment, house, studio, penthouse, townhouse. Leave blank if not mentioned. |
| Recámaras | bedrooms | Integer | Extract number of bedrooms requested (e.g. 3). Leave blank if not mentioned. |
| Baños | bathrooms | Integer | Extract number of bathrooms requested (e.g. 2). Leave blank if not mentioned. |
| Cajones de Estacionamiento | parking_spots | Integer | Extract number of parking spots requested. Leave blank if not mentioned. |
| Metros Cuadrados | property_size_m2 | Integer | Extract desired interior square meters. Leave blank if not mentioned. |
| Metros de Terreno | land_size_m2 | Integer | Extract desired land or lot size in square meters. Leave blank if not mentioned. |
| Necesita Accesibilidad | accessibility_needs | String | Extract accessibility needs: ramps, no stairs, wide doors, elevator required. Leave blank if not mentioned. |
Amenidades deseadas
| Name | Code | Type | Prompt |
|---|---|---|---|
| Alberca | wants_pool | Boolean | True if user requests pool as a desired feature. Leave blank if not mentioned. |
| Gimnasio | wants_gym | Boolean | True if user requests gym or fitness area. Leave blank if not mentioned. |
| Vigilancia / Seguridad | wants_security | Boolean | True if user requests security guards, cameras or controlled access. Leave blank if not mentioned. |
| Caseta de Acceso | wants_gatehouse | Boolean | True if user requests gatehouse or controlled entry point. Leave blank if not mentioned. |
| Elevador | wants_elevator | Boolean | True if user requests elevator access. Leave blank if not mentioned. |
| Jardín | wants_garden | Boolean | True if user requests garden or green area. Leave blank if not mentioned. |
| Roof Garden | wants_rooftop | Boolean | True if user requests rooftop terrace or roof garden. Leave blank if not mentioned. |
| Bodega | wants_storage | Boolean | True if user requests a storage room. Leave blank if not mentioned. |
| Cuarto de Lavado | wants_laundry_room | Boolean | True if user requests a dedicated laundry room. Leave blank if not mentioned. |
| Área de Juegos | wants_playground | Boolean | True if user mentions children’s play area as a desired feature. Leave blank if not mentioned. |
| Salón de Eventos | wants_event_room | Boolean | True if user requests event room or social hall. Leave blank if not mentioned. |
| Área de BBQ | wants_bbq_area | Boolean | True if user requests BBQ or outdoor social cooking area. Leave blank if not mentioned. |
| Área Pet Friendly | wants_pet_area | Boolean | True if user requests pet-friendly zone or dog park within the development. Leave blank if not mentioned. |
| Co-working | wants_coworking | Boolean | True if user requests coworking space or business center. Leave blank if not mentioned. |
| Paneles Solares | wants_solar | Boolean | True if user requests solar panels or sustainable energy features. Leave blank if not mentioned. |
| Cisterna | wants_water_tank | Boolean | True if user requests water storage tank. Leave blank if not mentioned. |
| Planta de Emergencia | wants_generator | Boolean | True if user requests backup generator or emergency power. Leave blank if not mentioned. |
Ubicación y entorno
| Name | Code | Type | Prompt |
|---|---|---|---|
| Zona de Interés | target_location | String | Extract desired city, zone or neighborhood. Leave blank if not mentioned. |
| Cerca de Escuelas | near_school | Boolean | True if user requests proximity to schools or universities. Leave blank if not mentioned. |
| Cerca de Hospital | near_hospital | Boolean | True if user requests proximity to hospitals or clinics. Leave blank if not mentioned. |
| Cerca de Trabajo | near_work | String | Extract workplace or company the user wants to be near. Leave blank if not mentioned. |
| Acceso a Transporte | near_transport | Boolean | True if user requests proximity to public transport or main roads. Leave blank if not mentioned. |
| Tiempo Máx. de Traslado | max_commute_min | Integer | Extract maximum acceptable commute time in minutes. Leave blank if not mentioned. |
| Tipo de Entorno | environment_type | String | Extract desired environment: urban, suburban, gated community, residential, beachfront. Leave blank if not mentioned. |
Financiero — Comprador
| Name | Code | Type | Prompt |
|---|---|---|---|
| Rango de Precio | price_range | String | Extract desired purchase price range (e.g. 2M–3M). Leave blank if not mentioned. |
| Tipo de Crédito | credit_type | String | Extract financing: Infonavit, Fovissste, Cofinavit, bank mortgage, developer financing, own funds, other. Leave blank if not mentioned. |
| Tiene Crédito | has_credit | Boolean | True if user confirms they have or are actively obtaining credit. Leave blank if not mentioned. |
| Enganche Disponible | down_payment_ready | Boolean | True if user confirms down payment is available. Leave blank if not mentioned. |
| Monto de Enganche | down_payment_amount | String | Extract down payment amount available (e.g. $300,000 or 10%). Leave blank if not mentioned. |
| Pago Mensual Máximo | monthly_payment_capacity | String | Extract max monthly mortgage payment user can handle. Leave blank if not mentioned. |
Inversionista
| Name | Code | Type | Prompt |
|---|---|---|---|
| Objetivo de Inversión | investment_goal | String | Extract goal: capital appreciation, rental income, resale, diversification. Leave blank if not mentioned. |
| Número de Unidades | units_of_interest | Integer | Extract how many units the investor wants to acquire. Leave blank if not mentioned. |
| Plazo de Inversión | investment_horizon | String | Extract investment timeframe: short term, medium term, long term. Leave blank if not mentioned. |
| Rentabilidad Esperada | expected_roi | Double | Extract expected return on investment percentage if mentioned (e.g. 8.5). Leave blank if not mentioned. |
| Ya Tiene Propiedades | has_existing_properties | Boolean | True if investor mentions already owning other properties. Leave blank if not mentioned. |
Agente externo
| Name | Code | Type | Prompt |
|---|---|---|---|
| Agencia | agency_name | String | Extract the real estate agency or company the agent represents. Leave blank if not mentioned. |
| Interés en Co-broking | cobroke_interest | Boolean | True if agent asks about commission sharing or co-broking. Leave blank if not mentioned. |
| Zona de Trabajo | agent_work_area | String | Extract zones or areas where the agent operates. Leave blank if not mentioned. |
🏢 Sector 2: Inmobiliaria de Corretaje
Aquí los contactos son más variados: compradores, vendedores, arrendatarios, arrendadores, inversionistas y agentes externos. Necesitas capturar tanto el perfil del buscador como el del propietario que quiere listar.
Universal
| Name | Code | Type | Prompt |
|---|---|---|---|
| Tipo de Contacto | contact_type | String | Extract contact type: buyer, seller, renter, landlord, investor, agent. Leave blank if unclear. |
| Tipo de Operación | operation_type | String | Extract intended operation: buy, sell, rent_in, rent_out. Leave blank if not mentioned. |
| Tomador de Decisión | is_decision_maker | Boolean | True if user confirms they are the final decision-maker. Leave blank if not mentioned. |
| Para Quién Es | beneficiary | String | Extract who property is for: self, parents, children, partner, investment. Leave blank if not mentioned. |
| Canal de Origen | lead_source | String | Extract how user found us: WhatsApp, Facebook, Instagram, referral, website, signage, other. Leave blank if not mentioned. |
| Ciudad de Origen | origin_location | String | Extract where user currently lives or comes from. Leave blank if not mentioned. |
| Etapa del Embudo | funnel_stage | String | Extract urgency stage: cold, warm, hot, negotiation, closed. Leave blank if not mentioned. |
Características buscadas — Comprador o Arrendatario
| Name | Code | Type | Prompt |
|---|---|---|---|
| Tipo de Inmueble | property_type | String | Extract property type: house, apartment, studio, land, office, commercial, warehouse. Leave blank if not mentioned. |
| Inmueble Nuevo o Usado | property_condition | String | Extract preference: new, used, pre-sale, any. Leave blank if not mentioned. |
| Recámaras | bedrooms | Integer | Extract number of bedrooms requested. Leave blank if not mentioned. |
| Baños | bathrooms | Integer | Extract number of bathrooms requested. Leave blank if not mentioned. |
| Cajones de Estacionamiento | parking_spots | Integer | Extract number of parking spots requested. Leave blank if not mentioned. |
| Metros Cuadrados | property_size_m2 | Integer | Extract desired interior square meters. Leave blank if not mentioned. |
| Metros de Terreno | land_size_m2 | Integer | Extract desired land or lot size in square meters. Leave blank if not mentioned. |
| Número de Plantas | floors | Integer | Extract desired number of floors or levels in the property. Leave blank if not mentioned. |
| Piso Preferido | floor_preference | String | Extract preferred floor: low, mid, high, penthouse, ground. Leave blank if not mentioned. |
| Amueblado | furnished | String | Extract if user needs furnished, semi-furnished, or unfurnished. Leave blank if not mentioned. |
| Vista Preferida | preferred_view | String | Extract preferred view: garden, pool, street, city, mountain, other. Leave blank if not mentioned. |
| Necesita Accesibilidad | accessibility_needs | String | Extract accessibility requirements: ramps, no stairs, wide doors, elevator. Leave blank if not mentioned. |
Amenidades deseadas
| Name | Code | Type | Prompt |
|---|---|---|---|
| Alberca | wants_pool | Boolean | True if user requests pool. Leave blank if not mentioned. |
| Jardín | wants_garden | Boolean | True if user requests garden or yard. Leave blank if not mentioned. |
| Gimnasio | wants_gym | Boolean | True if user requests gym or fitness area. Leave blank if not mentioned. |
| Vigilancia / Seguridad | wants_security | Boolean | True if user requests security guards, cameras or controlled access. Leave blank if not mentioned. |
| Caseta de Acceso | wants_gatehouse | Boolean | True if user requests gatehouse or controlled entry. Leave blank if not mentioned. |
| Elevador | wants_elevator | Boolean | True if user requests elevator access. Leave blank if not mentioned. |
| Bodega | wants_storage | Boolean | True if user requests storage room. Leave blank if not mentioned. |
| Cuarto de Lavado | wants_laundry_room | Boolean | True if user requests dedicated laundry room. Leave blank if not mentioned. |
| Roof Garden | wants_rooftop | Boolean | True if user requests rooftop terrace. Leave blank if not mentioned. |
| Área de Juegos | wants_playground | Boolean | True if user mentions children’s play area as desired. Leave blank if not mentioned. |
| Salón de Eventos | wants_event_room | Boolean | True if user requests event room or social hall. Leave blank if not mentioned. |
| Área de BBQ | wants_bbq_area | Boolean | True if user requests BBQ or outdoor social area. Leave blank if not mentioned. |
| Área Pet Friendly | wants_pet_area | Boolean | True if user requests pet-friendly zone within the property or complex. Leave blank if not mentioned. |
| Co-working | wants_coworking | Boolean | True if user requests coworking or business center. Leave blank if not mentioned. |
| Paneles Solares | wants_solar | Boolean | True if user requests solar panels or sustainable energy. Leave blank if not mentioned. |
| Cisterna | wants_water_tank | Boolean | True if user requests water storage tank. Leave blank if not mentioned. |
| Planta de Emergencia | wants_generator | Boolean | True if user requests backup generator. Leave blank if not mentioned. |
Financiero — Comprador
| Name | Code | Type | Prompt |
|---|---|---|---|
| Rango de Precio | price_range | String | Extract desired purchase price range. Leave blank if not mentioned. |
| Tipo de Crédito | credit_type | String | Extract: Infonavit, Fovissste, Cofinavit, bank mortgage, own funds, other. Leave blank if not mentioned. |
| Tiene Crédito | has_credit | Boolean | True if user confirms they have or are obtaining credit. Leave blank if not mentioned. |
| Enganche Disponible | down_payment_ready | Boolean | True if user confirms down payment is available. Leave blank if not mentioned. |
| Monto de Enganche | down_payment_amount | String | Extract down payment amount (e.g. $300,000 or 10%). Leave blank if not mentioned. |
| Pago Mensual Máximo | monthly_payment_capacity | String | Extract max monthly mortgage payment user can handle. Leave blank if not mentioned. |
Arrendatario
| Name | Code | Type | Prompt |
|---|---|---|---|
| Renta Máxima | max_rent | String | Extract maximum monthly rent the user can pay. Leave blank if not mentioned. |
| Fecha de Entrada | move_in_date | Date | Extract desired move-in date. Leave blank if not mentioned. |
| Duración del Contrato | lease_duration | String | Extract desired lease term: 6 months, 1 year, 2 years, indefinite. Leave blank if not mentioned. |
| Número de Ocupantes | occupants_count | Integer | Extract total number of people who will live in the property. Leave blank if not mentioned. |
| Tiene Mascotas | has_pets | Boolean | True if user mentions having pets. Leave blank if not mentioned. |
| Tipo de Mascota | pet_type | String | Extract pet type: dog, cat, bird, other. Leave blank if not mentioned. |
| Tiene Aval | has_guarantor | Boolean | True if user confirms they have a guarantor available. Leave blank if not mentioned. |
| Tiene Referencias | has_references | Boolean | True if user confirms they can provide rental references. Leave blank if not mentioned. |
| Comprobante de Ingresos | income_proof_available | Boolean | True if user confirms they can provide income documentation. Leave blank if not mentioned. |
| Requiere Factura | needs_invoice | Boolean | True if user requests invoice for rent payments. Leave blank if not mentioned. |
Vendedor / Propietario que quiere listar
| Name | Code | Type | Prompt |
|---|---|---|---|
| Tipo Inmueble en Oferta | listing_property_type | String | Extract type of property owner wants to sell or rent: house, apartment, land, commercial, other. Leave blank if not mentioned. |
| Ubicación del Inmueble | listing_location | String | Extract city, zone or address of property being listed. Leave blank if not mentioned. |
| Precio Esperado | listing_price | String | Extract price or rent the owner expects. Leave blank if not mentioned. |
| Intención del Propietario | listing_intent | String | Extract owner’s intent: sale, rent, both. Leave blank if not mentioned. |
| Condición del Inmueble | listing_condition | String | Extract condition: excellent, good, needs renovation, under construction. Leave blank if not mentioned. |
| Urgencia para Vender | listing_urgency | String | Extract urgency: immediate, 1–3 months, 3–6 months, no rush. Leave blank if not mentioned. |
| Acepta Exclusividad | open_to_exclusivity | Boolean | True if owner is open to exclusivity agreement. Leave blank if not mentioned. |
| Trabaja con Otros Agentes | has_other_agents | Boolean | True if owner mentions working with other agents. Leave blank if not mentioned. |
| Tiene Hipoteca Vigente | has_active_mortgage | Boolean | True if owner mentions existing mortgage on the property. Leave blank if not mentioned. |
| Acepta Permuta | open_to_swap | Boolean | True if owner mentions being open to property exchange. Leave blank if not mentioned. |
🔑 Sector 3: Arrendadora
El foco de una arrendadora está en dos perfiles muy distintos: el inquilino que busca rentar y el propietario que quiere poner su inmueble en renta. Cada uno requiere campos muy diferentes.
Inquilino — Condiciones de arrendamiento
| Name | Code | Type | Prompt |
|---|---|---|---|
| Renta Máxima | max_rent | String | Extract maximum monthly rent the user can pay. Leave blank if not mentioned. |
| Fecha de Entrada Deseada | move_in_date | Date | Extract desired move-in date. Leave blank if not mentioned. |
| Duración del Contrato | lease_duration | String | Extract desired lease term: 6 months, 1 year, 2 years, indefinite. Leave blank if not mentioned. |
| Número de Ocupantes | occupants_count | Integer | Extract total number of people who will live in the property. Leave blank if not mentioned. |
| Tiene Mascotas | has_pets | Boolean | True if user mentions having pets. Leave blank if not mentioned. |
| Tipo de Mascota | pet_type | String | Extract pet type: dog, cat, bird, other. Leave blank if not mentioned. |
| Tamaño de Mascota | pet_size | String | Extract pet size if mentioned: small, medium, large. Leave blank if not mentioned. |
| Tiene Aval | has_guarantor | Boolean | True if renter confirms they have a guarantor available. Leave blank if not mentioned. |
| Tipo de Aval | guarantor_type | String | Extract guarantor type: property owner, person, deposit, insurance. Leave blank if not mentioned. |
| Tiene Referencias | has_references | Boolean | True if renter confirms they can provide rental references. Leave blank if not mentioned. |
| Comprobante de Ingresos | income_proof_available | Boolean | True if renter confirms they can provide income documentation. Leave blank if not mentioned. |
| Tipo de Empleo | employment_type | String | Extract: salaried, self-employed, business owner, freelance, retired. Leave blank if not mentioned. |
| Ingresos Mensuales | monthly_income | String | Extract stated monthly income or range. Leave blank if not mentioned. |
| Requiere Factura | needs_invoice | Boolean | True if renter requests invoice for rent payments. Leave blank if not mentioned. |
| Acepta Seguro de Arrendamiento | open_to_rent_insurance | Boolean | True if renter is open to or asks about rental insurance. Leave blank if not mentioned. |
| Uso del Inmueble | intended_use | String | Extract intended use: residential, commercial, mixed, corporate. Leave blank if not mentioned. |
Propietario que quiere arrendar
| Name | Code | Type | Prompt |
|---|---|---|---|
| Tipo Inmueble a Arrendar | listing_property_type | String | Extract property type owner wants to rent out: house, apartment, studio, commercial, office. Leave blank if not mentioned. |
| Ubicación del Inmueble | listing_location | String | Extract city, zone or address of property to be listed. Leave blank if not mentioned. |
| Renta Esperada | listing_price | String | Extract monthly rent the owner expects. Leave blank if not mentioned. |
| Condición del Inmueble | listing_condition | String | Extract condition: furnished, semi-furnished, unfurnished, needs work. Leave blank if not mentioned. |
| Disponibilidad del Inmueble | listing_availability | Date | Extract when the property will be available to rent. Leave blank if not mentioned. |
| Acepta Mascotas | landlord_accepts_pets | Boolean | True if owner says they accept pets. False if they explicitly refuse. Leave blank if not mentioned. |
| Acepta Niños | landlord_accepts_children | Boolean | True if owner accepts families with children. Leave blank if not mentioned. |
| Tipo de Inquilino Preferido | preferred_tenant_type | String | Extract preferred tenant: professional, family, single, company, students. Leave blank if not mentioned. |
| Acepta Exclusividad | open_to_exclusivity | Boolean | True if owner is open to exclusivity agreement with the agency. Leave blank if not mentioned. |
| Quiere Administración | wants_property_mgmt | Boolean | True if owner wants full property management beyond just finding a tenant. Leave blank if not mentioned. |
| Tiene Hipoteca Vigente | has_active_mortgage | Boolean | True if owner mentions existing mortgage on the property. Leave blank if not mentioned. |
| Urgencia para Arrendar | listing_urgency | String | Extract urgency: immediate, 1–3 months, flexible. Leave blank if not mentioned. |
💳 Sector 4: Créditos Inmobiliarios
En este sector el perfil financiero del solicitante lo es todo. Los campos van más allá de las preferencias del inmueble y se adentran en capacidad de pago, historial crediticio, tipo de empleo y situación del crédito actual.
Inmueble a financiar
| Name | Code | Type | Prompt |
|---|---|---|---|
| Tipo de Crédito Buscado | credit_type | String | Extract: Infonavit, Fovissste, Cofinavit, bank mortgage, developer financing, bridge loan, other. Leave blank if not mentioned. |
| Tipo de Inmueble | property_type | String | Extract property type to finance: house, apartment, land, commercial, other. Leave blank if not mentioned. |
| Zona de Interés | target_location | String | Extract desired city or zone for the property. Leave blank if not mentioned. |
| Valor del Inmueble | property_value | String | Extract total property value or price (e.g. $2.5M). Leave blank if not mentioned. |
| Inmueble Ya Elegido | property_selected | Boolean | True if user already has a specific property in mind. Leave blank if not mentioned. |
| Proyecto o Desarrollo | project_name | String | Extract development or project name if already chosen. Leave blank if not mentioned. |
Capacidad financiera
| Name | Code | Type | Prompt |
|---|---|---|---|
| Monto de Crédito Necesario | credit_amount_needed | String | Extract total credit amount needed (e.g. $1.8M). Leave blank if not mentioned. |
| Enganche Disponible | down_payment_ready | Boolean | True if user confirms down payment is available. Leave blank if not mentioned. |
| Monto de Enganche | down_payment_amount | String | Extract down payment amount (e.g. $400,000 or 20%). Leave blank if not mentioned. |
| Pago Mensual Máximo | monthly_payment_capacity | String | Extract max monthly payment user can afford. Leave blank if not mentioned. |
| Plazo del Crédito Deseado | loan_term_years | Integer | Extract desired loan term in years (e.g. 15, 20, 30). Leave blank if not mentioned. |
Perfil del solicitante
| Name | Code | Type | Prompt |
|---|---|---|---|
| Tipo de Empleo | employment_type | String | Extract: salaried, self-employed, business owner, freelance, retired, other. Leave blank if not mentioned. |
| Ingresos Mensuales | monthly_income | String | Extract stated monthly income or range. Leave blank if not mentioned. |
| Años en Empleo Actual | years_employed | Integer | Extract how many years user has been in current job or activity. Leave blank if not mentioned. |
| Tiene Coacreditado | has_codebtor | Boolean | True if user mentions having or needing a co-applicant. Leave blank if not mentioned. |
| Ingresos del Coacreditado | codebtor_income | String | Extract co-applicant monthly income if mentioned. Leave blank if not mentioned. |
| Historial Crediticio | credit_bureau_status | String | Extract credit history status: clean, minor issues, restricted, unknown. Leave blank if not mentioned. |
| Tiene Deudas Activas | has_existing_debts | Boolean | True if user mentions existing loans, debts or financial obligations. Leave blank if not mentioned. |
| Monto de Deudas | existing_debts_amount | String | Extract total outstanding debt amount if mentioned. Leave blank if not mentioned. |
| Tiene Ahorro en Afore | has_afore_savings | Boolean | True if user mentions using Afore savings toward credit. Leave blank if not mentioned. |
| Tiene Subcuenta de Vivienda | has_housing_subaccount | Boolean | True if user mentions Infonavit or Fovissste housing subaccount. Leave blank if not mentioned. |
| Puntos Infonavit | infonavit_points | Integer | Extract Infonavit points if user mentions them. Leave blank if not mentioned. |
Situación del crédito
| Name | Code | Type | Prompt |
|---|---|---|---|
| Ya Tiene Preaprobación | has_preapproval | Boolean | True if user mentions having a pre-approval from any institution. Leave blank if not mentioned. |
| Institución Preaprobada | preapproval_institution | String | Extract name of institution that issued pre-approval. Leave blank if not mentioned. |
| Monto Preaprobado | preapproval_amount | String | Extract pre-approved amount if mentioned. Leave blank if not mentioned. |
| Interés en Refinanciamiento | refinancing_intent | Boolean | True if user wants to refinance an existing mortgage. Leave blank if not mentioned. |
| Institución a Refinanciar | current_mortgage_institution | String | Extract name of institution holding current mortgage to refinance. Leave blank if not mentioned. |
| Saldo Insoluto | remaining_balance | String | Extract remaining mortgage balance if mentioned. Leave blank if not mentioned. |
| Objetivo del Refinanciamiento | refinancing_goal | String | Extract refinancing goal: lower rate, reduce term, cash out, improve conditions. Leave blank if not mentioned. |
Paso 3: Crea la Tool “Update Contact” en AI Builder
Con todas tus propiedades creadas, ve a AI Builder → agregar herramienta → tipo Update Contact. Esta tool es el puente entre la conversación y tu CRM. Sin ella la IA detecta la información pero no tiene dónde escribirla.

La plataforma incluye un Tool Prompt por defecto, genérico y funcional. Para el sector inmobiliario recomendamos reemplazarlo por este prompt específico:
Update the contact record silently whenever the user reveals property preferences, financing, timeline, amenities, use case, or decision-making status. Only write what was explicitly stated — never infer or guess. Leave fields blank if uncertain. Do not confirm the update to the user.
Este prompt es mejor porque menciona exactamente los tipos de datos que importan en una conversación inmobiliaria y refuerza la regla más importante: nunca inventar ni asumir datos. Si el usuario no lo dijo, el campo queda en blanco.
⚠️ Esta tool hace la respuesta del agente marginalmente más lenta porque hace una llamada interna al CRM cada vez que detecta información nueva. Es un trade-off que vale completamente la pena: el perfil del lead se construye en tiempo real, sin intervención humana.
Cómo se ve en la práctica
Un prospecto llega por WhatsApp y dice: “Hola, vengo de Monterrey, busco casa en Guadalajara, 4 recámaras, 2 baños, con jardín y vigilancia. Tenemos Infonavit, es para vivir nosotros con nuestros dos hijos. Presupuesto 2.5 a 3 millones.”
Sin que nadie toque el CRM, el agente captura y escribe automáticamente:
| Campo | Valor capturado automáticamente |
|---|---|
contact_type | buyer |
origin_location | Monterrey |
target_location | Guadalajara |
bedrooms | 4 |
bathrooms | 2 |
wants_garden | true |
wants_security | true |
credit_type | Infonavit |
has_credit | true |
beneficiary | self |
price_range | 2.5M–3M |
Cuando el asesor retoma la conversación ya tiene todo el contexto. Sin preguntas repetidas. Sin datos perdidos en el historial del chat.
Conclusión: el perfil se construye solo, la venta la cierras tú
La combinación de propiedades personalizadas + agente de IA + tool Update Contact no reemplaza al asesor inmobiliario — lo potencia. El asesor deja de ser quien recopila datos y se convierte en quien cierra negocios con información completa desde el primer mensaje.
El setup requiere planificación inicial: definir bien tus campos por sector, elegir el tipo de dato correcto y configurar la tool. Pero una vez activo, trabaja 24/7, en cada conversación, sin olvidar nada.
El futuro del CRM inmobiliario no es un formulario más largo. Es una conversación más inteligente.
