Soltek Properties · SOLTEK OS · Nota técnica

Flags: realidades de las integraciones.

Dónde el alcance que pidieron los fundadores choca con lo que las APIs de verdad permiten. Cada punto ya está resuelto en la build — esta es la lista corta de lo que hay que saber, con la solución de cada uno y las pocas cosas que necesitan una decisión antes de salir a producción.

Fecha 2026-07-15Alcance Etapas 13 · 24 · 26 · 27Fuentes Docs oficiales, jul 2026
4
Límites duros
No se evitan — hay que diseñar alrededor de ellos.
5
Con solución
Resueltos en la build; algunos piden una cuenta o setup tuyo.
2
Bueno saberlo
Ya contemplados — sin acción de tu parte.

Google Nest — timbre y termostato

3 puntos · Etapa 26

No existe la detección de mascotas

Límite duro
Realidad
La API de Nest solo expone eventos de persona, movimiento, sonido y timbre. No hay evento de mascota ni de paquete — es una función pendiente del lado de Google, sin fecha.
Solución
Se implementan los cuatro eventos reales y la interfaz se rotula con honestidad — nada de 'mascota detectada' falso. El 'personas, mascotas y movimiento' del brief se cumple como persona + movimiento + sonido.RecomendaciónUsar persona + movimiento como señal de reglas (p. ej. fiesta = muchos eventos de persona de noche). Si vigilar mascotas es indispensable, evaluar una cámara de otra marca con IA de mascotas como complemento, fuera de la plataforma.
26 · smart homeSin acciónAlinear expectativas con los fundadores sobre las mascotas.

El acceso comercial está cerrado a nuevos solicitantes

Límite duro
Realidad
El programa multi-cliente de Device Access de Google no aceptaba solicitudes nuevas en la última revisión. El sandbox de $5 funciona indefinidamente pero topa en ~5 domicilios / 25 usuarios por proyecto.
Solución
Construido contra el sandbox, que alcanza para un portafolio administrado a la escala de Soltek.RecomendaciónOperar en sandbox ahora y monitorear la reapertura del programa. Si se necesita alta multi-propietario en autoservicio, evaluar un agregador/partner de Nest o un ecosistema alterno.
26 · smart homeTú decidesConfirmar el estado del programa antes de prometer acceso a los dueños.

Los eventos llegan por Pub/Sub, no por webhooks

Con solución
Realidad
Nest publica los eventos de timbre/cámara solo a un tema de Google Cloud Pub/Sub — no hay webhook HTTP, y las URLs de imagen expiran a los 30 segundos.
Solución
Un relay delgado (Cloud Function o poller) consume Pub/Sub y reenvía cada evento a la plataforma, descargando la imagen de inmediato. Documentado como infraestructura del proyecto.RecomendaciónUna Cloud Function mínima de GCP hace el reenvío con costo casi nulo.
26 · smart homeTú aportasUn proyecto de GCP pequeño para el relay + tema.

Cerraduras Yale — acceso remoto y códigos

2 puntos · Etapa 26

No hay API propia de Yale — se usa Seam

Con solución
Realidad
La API oficial de Yale/August es una alianza pagada y por invitación, sin registro público. Seam es la API unificada que usan los integradores para Yale.
Solución
Se usa Seam para apertura remota, códigos temporales por reservación y el historial de accesos — los dueños vinculan su cerradura con un webview de Seam Connect.RecomendaciónSeam por encima de la alianza directa con Yale: más rápido y sin trámite comercial.
26 · locksTú aportasUna cuenta de Seam + API key.

Cada unidad necesita el puente Wi-Fi Yale Connect

Límite duro
Realidad
El control remoto requiere el puente Wi-Fi Yale Connect físico en cada puerta. El sandbox de Seam solo tiene dispositivos virtuales — el comportamiento real necesita una cerradura con puente en un workspace de producción.
Solución
El código se construye y prueba con dispositivos virtuales desde ya; el despliegue real depende del hardware. El inventario de puentes por unidad vive en el checklist de lanzamiento.RecomendaciónSi vas a comprar cerraduras nuevas, considera modelos con Wi-Fi integrado (vía Seam) para ahorrarte el puente por puerta.
26 · locksA presupuestarUn puente por cada unidad con acceso remoto.

Guesty — el cambio de PMS (antes Hostaway)

4 puntos · Etapa 13

El modelo de datos de Guesty difiere lo suficiente de Hostaway como para que un port ingenuo rompa la sincronización o el cálculo de dinero. Estas son las trampas que ya están contempladas.

Solo 5 tokens de API al día — cachear o quedar bloqueado

Límite duro
Realidad
Guesty permite un tope duro de 5 tokens de acceso por cliente cada 24 horas. Cada token dura 24 h. Un ciclo de fallos que re-autentica por llamada bloquea la cuenta el día entero.
Solución
El token se cachea y se refresca una vez al día, mucho antes de expirar; un 401 genera cuando mucho un reemplazo.RecomendaciónUn circuit-breaker en el login para que un crash-loop nunca queme los 5 tokens. Verificado en los criterios de aceptación con el log de auth.
13 · guestySin acciónResuelto — solo nunca saltarse el caché.

El dinero son floats en dólares, no en centavos

Con solución · trampa #1
Realidad
Guesty devuelve un objeto money anidado en punto flotante (p. ej. 50.43), y algunos valores se duplican en los invoice items. No hay un total plano para el huésped.
Solución
Cada campo se convierte a centavos enteros en la frontera del adaptador (×100 con redondeo seguro), el total del huésped se deriva con una fórmula documentada y no se duplican los invoice items. El ledger en centavos enteros sigue siendo la fuente de verdad.RecomendaciónVerificar la fórmula del total contra una reservación real antes del cutover.
13 · guestySin acciónVerificación puntual contra una reservación real.

Sin estado 'modified' · estancias del dueño como bloqueos · webhooks duplicados

Con solución
Realidad
Guesty no tiene estado 'modified' (se detecta por lastUpdatedAt), modela las estancias del dueño como bloqueos de calendario y no reservaciones, y dispara 2–3 webhooks duplicados y sin orden por cada cambio. Las noches usan las fechas localizadas.
Solución
El consumidor es idempotente y re-consulta + reconcilia desde la API en cada webhook, en vez de confiar en el payload; las estancias del dueño se sincronizan desde los bloqueos. Los webhooks van firmados (Svix) y se verifican.RecomendaciónConfirmar los nombres de header de Svix en la primera entrega real.
13 · guestySin acciónResuelto en el consumidor de webhooks.

El sandbox y el acceso por plan se otorgan a solicitud

Bueno saberlo
Realidad
Las credenciales de la Open API salen del panel de Guesty, pero el sandbox se otorga vía tu CSM y puede tener costo por token. El plan que habilita la Open API no está publicado.
Solución
Todo hasta el cutover corre sobre el proveedor mock, así que la build no se bloquea — pero la fecha de salida en vivo depende de esto.RecomendaciónAbrir el tema con tu CSM de Guesty en paralelo al desarrollo, no al final.
13 · guestyTú confirmasSandbox + acceso a la Open API con tu CSM.

Mensajería y modelo de dinero

2 puntos · Etapas 27 · 24

WhatsApp: ventana de 24 horas y plantillas aprobadas

Con solución
Realidad
Las respuestas libres solo se permiten dentro de 24 h del último mensaje del huésped. Para reconectar después (recordatorios de check-in, escalamientos) hay que usar plantillas aprobadas por Meta.
Solución
El flujo de soporte con IA nunca envía fuera de la ventana sin plantilla; se entregan borradores de plantilla (es + en) para mandarlos a aprobar. El canal de Guesty/Airbnb no tiene esta ventana.RecomendaciónEnviar los borradores a aprobación de Meta al inicio (~1 día de revisión) para no bloquear el lanzamiento.
27 · guest supportTú envíasLos borradores de plantilla a Meta para aprobación.

La comisión por dueño es fechada — los meses cerrados no se mueven

Bueno saberlo
Realidad
Cada dueño maneja términos distintos (25% / 30% / 33%, algunos pagan su propia limpieza). Cambiar una tasa no debe reescribir en silencio un mes que ya se reportó a un dueño.
Solución
Los términos se versionan por mes; el motor financiero toma la tasa vigente del mes que calcula, y una verificación automática comprueba que los meses cerrados quedan idénticos tras cualquier cambio de tasa.RecomendaciónCapturar los términos de cada dueño antes del primer cierre para que el histórico salga correcto de una vez.
24 · agreementsSin acciónCaptura de términos por dueño.

Reglas generales de la plataforma

6 puntos

Más allá de las integraciones: el terreno en el que opera cualquier sistema de este tipo, dicho de frente.

Dependencia de Guesty y los canales

  • Airbnb no tiene API pública: todo pasa por Guesty. Si su API falla, la sincronización se pausa y se recupera sola al volver.
  • Lo que Guesty no expone, la plataforma no lo puede tocar.
  • Un cambio de precio tarda lo que el canal tarde en reflejarlo.

WhatsApp juega con reglas de Meta

  • Mensajes proactivos solo con plantillas pre-aprobadas por Meta.
  • Fuera de la ventana de 24 horas solo se inicia con plantilla.
  • Meta cobra por conversación, aparte de la plataforma.

La IA propone, no decide

  • Todo cambio operativo requiere confirmación humana — por diseño.
  • Propone el cambio exacto antes de ejecutar y todo queda auditado.
  • Las incidencias reales siempre escalan a personas.

Smart home depende del hardware

  • Requiere dispositivos compatibles, wifi estable y suscripciones del fabricante.
  • Sin internet o batería no hay señal: se alerta, pero no se controla.
  • La compra e instalación física de los equipos van aparte.

La ejecución sigue siendo humana

  • La plataforma coordina, documenta y mide; el trabajo físico lo hacen equipo y proveedores.
  • La calidad de los datos depende de la captura en campo.
  • Los SLAs miden a los proveedores — no los sustituyen.

No es contabilidad ni facturación fiscal

  • El ledger es operativo: no timbra CFDI ni sustituye al contador.
  • Todo se exporta limpio para la contabilidad formal.
  • Stripe, OXXO y SPEI tienen comisiones y tiempos propios.

Estos flags no son letra chica: están aquí para decidir con información completa. Todo lo que la plataforma sí hace está en la propuesta — y se demuestra con demos semanales sobre el portafolio real de Soltek, no con promesas.