Un espacio de trabajo es lo que se contrata, con su plan y sus límites. Un cliente es la empresa para la que trabaja una agencia, con sus datos fiscales y sus accesos. Una marca es aquello para lo que publicas, y de ella cuelgan las cuentas conectadas, la página de enlaces y el modo del informe. La marca es la unidad del producto.
Tres palabras que no son sinónimos
Casi todas las herramientas de este sector tienen una sola palabra para esto y la estiran. A veces se llama cuenta, a veces perfil, a veces proyecto, y sirve a la vez para lo que se paga, para quien te paga y para lo que publicas. Funciona mientras esas tres cosas coincidan, que es exactamente el caso de una persona con una cuenta de Instagram, y deja de funcionar en cuanto entra un tercero.
Aquí son tres cosas distintas, con tres tablas distintas detrás.
| Espacio de trabajo | Cliente | Marca | |
|---|---|---|---|
| Qué es | El inquilino: lo que se contrata | La empresa para la que trabajas | Aquello para lo que publicas |
| Quién lo tiene | Los tres tipos de espacio | Solo los espacios de agencia | Los tres tipos de espacio |
| De qué es dueño | El plan, los límites y el equipo | Datos fiscales, documentos y accesos al portal | Cuentas conectadas, página de enlaces y modo del informe |
| Cuántos hay | Uno por suscripción | Los que lleves, si eres agencia | Tantas como cuentas conectadas tengas contratadas |
La diferencia práctica entre cliente y marca se ve en un caso concreto y muy común: un restaurante que te contrata y que tiene dos locales con dos cuentas de Instagram separadas. Eso es un cliente y dos marcas. Una sola factura, dos calendarios, dos bandejas, dos informes. Con una única palabra para todo, ese caso obliga a elegir entre facturar dos veces o mezclar dos calendarios. El desglose completo de los tres conceptos está en espacios, marcas y clientes.
La marca es la unidad, y no la cuenta conectada
La alternativa evidente era hacer que la unidad fuese la cuenta conectada: un Instagram, un calendario. Es lo que hacen bastantes herramientas y es más fácil de construir, porque no hay que inventar un concepto que las plataformas no tienen.
No lo hicimos porque rompe en cuanto una marca publica en más de una red, que es siempre. Si la unidad es la cuenta, el mismo carrusel se programa tres veces, las analíticas de la misma marca viven en tres sitios y la persona que revisa tiene que acordarse de mirar en tres. Con la marca por encima, una pieza sale a todas las redes que esa marca tenga conectadas, el informe mensual suma lo que esa marca hizo y la bandeja junta en un hilo lo que llega de todas sus cuentas.
De la marca cuelgan además tres cosas que la gente no espera que sean por marca hasta que las necesita así: su página de enlaces, con sus colores y sus estadísticas; el color con el que aparece en el calendario, que es lo que hace legible una semana con seis marcas encima; y el modo del informe mensual, que puede estar apagado, enviarse solo el último día hábil o generarse como borrador para que alguien lo revise antes. Ese último ajuste es por marca precisamente porque un cliente con dos locales casi nunca quiere el mismo trato para los dos.
Un espacio de creador no tiene clientes
Aquí está la decisión que más código costó sostener. Un espacio de creador no tiene clientes en absoluto: sus marcas cuelgan directamente del espacio y la palabra «cliente» no aparece en ninguna pantalla. Un espacio de empresa funciona igual, tiene equipo pero no terceros que contraten.
La opción cómoda habría sido crear un cliente invisible para esos espacios y reutilizar todo el producto de agencia por debajo. Es la clase de atajo que se paga durante años: cada pantalla acaba enseñando un concepto que ese usuario no tiene, cada texto dice «cliente» a alguien que no tiene ninguno, y el día que quieres cambiar el vocabulario descubres que está escrito en doscientos sitios.
Lo que hicimos en su lugar fue admitir la ausencia en el propio modelo: la marca puede no tener cliente, y esa ausencia es el tipo de espacio. El vocabulario cambia con ella, donde una agencia lee «clientes» un creador lee «marcas», y hay una comprobación que se ejecuta sobre el código y falla si una pantalla que un espacio sin clientes puede abrir menciona la palabra. No es una convención de estilo, es una prueba que rompe el build.
Qué cambia en permisos, informes y factura
Una vez decidido que la marca es la unidad, casi todo lo demás queda determinado, y conviene saber en qué dirección.
- Los permisos se reparten por módulo, no por marca. Un rol es un nombre y una lista de permisos con dos niveles, lectura y escritura, y lo que alguien puede hacer es la intersección de lo que el espacio tiene contratado y lo que su rol concede. Lo que no existe hoy es un rol que dé acceso a dos marcas y deje fuera las otras seis, y es la consecuencia menos cómoda de poner la marca por debajo del espacio. Cómo se construye un rol está en permisos y roles.
- El informe mensual es de una marca, porque son los números de una marca. Las analíticas las tiene todo el mundo; el informe en PDF que se envía solo es una función de los espacios de agencia.
- La factura es del cliente, con su razón social, su NIF, su IVA y su retención de IRPF si la tiene. Por eso vive en el nivel del cliente y no en el de la marca: las dos marcas del restaurante van en el mismo documento.
- Los límites son del espacio entero. Miembros, almacenamiento, cuentas sociales, cuentas de anuncios y contactos de la automatización se cuentan a nivel de espacio de trabajo, nunca por asiento.
Todo lo de este artículo se hace desde un mismo sitio en GoFeed.
Pruébalo gratisLo que costó esta decisión
Tres costes, y ninguno es teórico.
El primero es que las marcas no se venden por número. Como cada marca necesita al menos una cuenta conectada, lo que limita cuántas marcas caben es cuántas cuentas conectadas tienes contratadas: con diez cuentas y ninguna conectada hay sitio para diez marcas, y con nueve conectadas en una sola marca queda sitio para una más. Es más honesto y más difícil de explicar que imprimir un número de marcas en cada plan, y nos obliga a contarlo cada vez. Qué se cuenta y cómo está en asientos y cuotas, y los escalones vigentes en la página de precios.
El segundo es que el modelo llegó después del producto. Las marcas no existieron desde el principio: al principio el cliente era también aquello para lo que publicabas, y separar las dos cosas fue una migración sobre datos vivos, con una decisión que todavía nos persigue. Cada marca creada en esa migración se quedó con el identificador del cliente del que salió, para que ninguna dirección guardada dejara de funcionar. El efecto secundario fue que durante meses un fallo que confundía un identificador de cliente con uno de marca funcionaba perfectamente en las cuentas antiguas y fallaba solo en las nuevas. Costó encontrar tres errores de ese tipo, y los tres eran el mismo error.
El tercero es que el vocabulario hay que sostenerlo hasta el final. Cuando cambiamos el nombre del inquilino, de «agencia» a «espacio de trabajo», el cambio tuvo que bajar hasta las tablas de la base de datos para que el producto no tuviera dos lenguajes, uno en la pantalla y otro debajo. Cómo se hace eso sin parar el servicio está contado en renombrar con datos delante.
Nada de esto es evidente desde fuera, y por eso vale la pena decirlo antes de que alguien lo descubra montando su espacio: las decisiones de modelo de datos no se ven en una captura de pantalla, se ven tres meses después, el día que hace falta separar dos cosas que una herramienta guardó juntas.
Cómo se elige, y cómo se cambia
El tipo de espacio se elige al crear la cuenta, con tres preguntas de por medio: si hay terceros que te contratan, si hay más gente trabajando contigo, y para cuántas marcas publicas. Si los hay, es agencia. Si no los hay pero hay equipo, es empresa. Si no hay ni una cosa ni otra, es creador.
Se puede cambiar después, y lo que cambia con él es qué módulos puede tener ese espacio. Lo que no cambia es el modelo de debajo: las marcas siguen siendo marcas, las cuentas conectadas siguen colgando de ellas y el histórico se queda donde estaba. Un creador que empieza a llevar clientes no migra nada, gana un nivel por encima de sus marcas que antes no necesitaba.