| Entidad / Entity | Formato / Format | Ejemplo / Example | Regla / Rule |
|---|---|---|---|
| PropiedadProperty | CASA-### + nombre+ poetic name | CASA-007 · Casa Marea | Secuencial, 3 dígitosSequential, zero-padded |
| Cliente · MiembroClient · Member | HC-XXXX·C | HC-7K2Q·8 | Código + dígito de controlCode + check digit |
| Equipo · PersonaTeam · Staff | EQ-#### + rol+ role | EQ-0142 · Juanita · Limpieza | Rol es campo, no prefijoRole is a field, not a prefix |
| Solicitud · TicketTicket | SOL-##### | SOL-01042 | Secuencial globalGlobal sequential |
| ReservaBooking | RES-XXXX | RES-9M4X | Código cortoShort code |
| FacturaInvoice | FAC-AAAA-### | FAC-2026-014 | Año + secuenciaYear + sequence |
La clave: el código NO es aleatorio-y-rezar. Se deriva de un contador interzno con una permutación biyectiva (estilo Sqids/Hashids o Feistel). Cada número entero mapea a exactamente un código y viceversa. The trick: the code is not random-and-pray. It's derived from an internal counter via a bijective permutation (Sqids/Hashids or Feistel). Every integer maps to exactly one code.
Biyección 1↔1: matemáticamente imposible repetir. Sin consultar la base, sin reintentos. 1↔1 bijection: mathematically impossible to repeat. No DB lookup, no retries.
4 chars = 810,000 · 5 chars = 24.3M. Crece de largo solo cuando hace falta. Grows length only when needed.
Validación por regex + dígito de control.
Solo desde un banco aprobado de palabras.
El nombre poético "Casa [Nombre]" pertenece a la propiedad (el activo físico), no al cliente. Así el cliente HC-7K2Q simplemente "se hospeda en Casa Marea" — coherente y sin choques. The poetic "Casa [Name]" belongs to the property, not the client. Client HC-7K2Q simply "stays at Casa Marea" — coherent, no clashes.
CASA-007 · /casa-marea
Se hospeda en Casa MareaStays at Casa Marea
Juanita es Equipo, no parte de una casa. Tiene un código estable, un rol (campo, no prefijo — puede cambiar) y asignaciones a una o varias propiedades. Las solicitudes de limpieza se le asignan por su código. Juanita is Team, not part of a single house. She has a stable code, a role (a field, not a prefix — it can change), and assignments to one or more properties. Cleaning tickets route to her by code.
EQ-0142 · Casa Marea, Casa Duna
Si Juanita pasa a conserje, cambia el campo, no el ID. El código nunca miente sobre el pasado.If she becomes a concierge, the field changes — not the ID. The code never lies about history.
Marina es el centro: nadie chatea con todos en un hilo caótico — cada quien habla con Marina y ella enruta. La identifica por teléfono → EQ-0142 y muestra solo "Juanita · Limpieza". En la conversación nadie ve códigos: cada participante aparece con nombre + chip de rol. Hay dos hilos — público (huésped) e interno (equipo) — para que Juanita coordine con Marina sin filtrar nada al huésped. Marina is the hub: everyone talks with Marina and she routes. She identifies people by phone → code and shows only "Juanita · Housekeeping". Nobody sees codes; each participant appears as name + role chip. Two threads — public (guest) and internal (team) — so Juanita coordinates with Marina without leaking to the guest.
El huésped nunca ve este hilo.The guest never sees this thread.
Al subir una solicitud, Marina la bautiza con un apodo costero — una bengala al faro. El huésped la recuerda; tú la rastreas por el SOL-##### interno. El apodo es del banco aprobado + un dígito del folio para distinguir repetidos. On upload, Marina names it with a coastal codename — a flare to the lighthouse. The guest remembers it; you track it by the internal SOL-#####. Name = approved word bank + one folio digit to distinguish repeats.
Memorable, con gancho.Memorable, with a hook.
Único y ordenable.Unique and sortable.
Un motivo distinto por tipo de soporte — el apodo mismo te dice la categoría. A distinct motif per support type — the codename itself signals the category.
| Tipo / Type | Motivo / Motif | Ejemplo / Example |
|---|---|---|
| 🌊 ReservaBooking | Olawave ashore | Ola Coral·2 |
| 🪙 PagoPayment | Cofretreasure | Cofre Perla·1 |
| 🔑 AccesoAccess | Llavekey | Llave Faro·3 |
| ⚓ TécnicoTechnical | Anclaanchor | Ancla Roca·5 |
| 🌬️ LimpiezaHousekeeping | Brisafresh | Brisa Sal·4 |
| 🛠️ MantenimientoMaintenance | Timónon course | Timón Duna·2 |
| 🔦 OtroOther | Señalgeneric flare | Señal Faro·7 |
El apodo se localiza al idioma de la persona — y su idioma revela el locale (es/en). Marina responde y bautiza en esa lengua. The codename localizes to the person's language — and its language reveals the locale (es/en). Marina replies and names in that tongue.
locale = es
locale = en
El identificador de una propiedad es permanente y neutral. Estatus, prestigio y campañas nunca viven en el ID — viven aparte, en Promos / membresías. Así nada se confunde con una oferta temporal. A property's identifier is permanent and neutral. Status, prestige and campaigns never live in the ID — they live separately in Promos / memberships. Nothing reads as a temporary offer.
CASA-007 · /casa-marea
Para siempre. No cambia.Forever. Never changes.
Vive en Promos y membresías, ligado por CASA-### — nunca dentro del nombre.Lives in Promos & memberships, linked by CASA-### — never inside the name.