En esta página

Remapeo de ids de workflows entre cuentas en GoHighLevel (pipelines, etiquetas, usuarios, campos)

Un workflow de GoHighLevel está conectado a la cuenta donde se creó mediante ids internos; si lo mueves sin reescribir esos ids, llega roto. Esto es exactamente lo que se rompe y cómo lo corrige el remapeo por nombre.

Por qué un workflow está atado a la cuenta donde se creó

Ids, no nombresAdd tag: Hot LeadGuarda un id como tag_7c1f..., no el textoEn la cuenta de origenEl id existe allíEn otra cuentaLa misma etiqueta recibe otro idLa referencia se resuelveEl paso funcionaReferencia colganteNo hace nada en producción
Los ids propios de cada cuenta son la causa de casi todos los workflows copiados que dejaron de funcionar.

Dentro de GoHighLevel, casi todo lo que toca un workflow es un registro con su propio id interno: un pipeline, una etapa de ese pipeline, un usuario al que asignas una tarea, una etiqueta, un campo personalizado, un calendario, una plantilla. Cuando creas un workflow, GoHighLevel no guarda en su definición los nombres de esos registros. Guarda sus ids. Una acción «Add tag: Hot Lead» no almacena el texto «Hot Lead»: almacena algo como tag_7c1f…, el id de esa etiqueta en esa cuenta.

Esos ids son propios de cada cuenta. La misma etiqueta, creada a mano en una segunda cuenta, recibe allí un id completamente distinto. Por eso, cuando la definición de un workflow se saca de una cuenta y se pega en otra, todos los ids que lleva siguen apuntando a registros que solo existen en la cuenta de origen. El destino no tiene ningún registro con ese id, así que la referencia queda colgando. Esta es la causa de casi todos los reportes de «copié mi workflow y dejó de funcionar», y por eso copiar el JSON en bruto no es un movimiento de verdad.

Exactamente qué campos se rompen

Campos que contienen ids de cuentaPipeline y etapaEl id de la etapa necesita supipelineUsuario / responsableUn id distinto en cada cuentaEtiquetasAcciones, disparadores y ramasif/elseCampos personalizadosLecturas, escrituras y condicionesCalendariosAcciones de citas yreservasPlantillas de email y SMSPasos de envío que usan unaplantilla guardadaValores personalizadosCampos de combinación por idEnlaces entre workflowsIr a otro workflow osacar de él
Los valores literales no se rompen; todo campo que contiene un id de cuenta, sí.

La rotura no es aleatoria: afecta a todo campo del workflow que contiene un id propio de la cuenta en lugar de un valor literal. En la práctica, eso significa:

  • Pipeline y etapa. Las acciones «Create / update opportunity» y «move to stage» hacen referencia a un id de pipeline y a un id de etapa dentro de él. Ambos son propios de cada cuenta, y el id de la etapa no significa nada sin su pipeline padre.
  • Usuario / responsable. Los pasos «Assign to user» y de reparto rotativo hacen referencia a ids de usuario. La misma persona tiene un id distinto en cada cuenta, y puede que ni siquiera sea miembro del destino.
  • Etiquetas. Las acciones de añadir y quitar etiqueta, y cualquier disparador o rama if/else basada en etiquetas, funcionan con ids de etiqueta.
  • Campos personalizados. Todo lo que lee o escribe un campo personalizado, incluidas las condiciones que se ramifican según el valor de un campo, apunta al id del campo.
  • Calendarios. Las acciones de citas y reservas hacen referencia a un id de calendario.
  • Plantillas de email y SMS. Los pasos «Send email» o «Send SMS» que usan una plantilla guardada hacen referencia al id de esa plantilla.
  • Valores personalizados. Los campos de combinación y los valores personalizados a nivel de cuenta se resuelven por id y no son portables por sí solos.
  • Referencias entre workflows. Los pasos «Go to another workflow» o «remove from workflow» apuntan al id de otro workflow hermano, que a su vez debe haberse movido y remapeado, o no hay nada a lo que apuntar.

Cada uno de estos es un punto de fallo silencioso. GoHighLevel suele dejarte guardar un workflow con una referencia colgante; simplemente no hace nada, o hace algo equivocado, cuando un contacto llega a ese paso en producción. Es el peor tipo de rotura: invisible hasta que un contacto real pasa por ahí.

El síntoma revelador: un workflow que «se importó bien» pero cuyas acciones de etiquetas, pipelines y asignación aparecen en blanco o en gris al abrir cada paso. La estructura llegó; las referencias propias de la cuenta no se resolvieron.

Cómo asocia ExportGHL por nombre y reescribe los ids

Asociado por nombre, reescrito con ids localesReferencia de origenRegistro de destino«Sales Pipeline»id de origen«Sales Pipeline»id de destinoEtapa «Booked»dentro de su pipelineEtapa «Booked»en el pipeline remapeadoEtiqueta «Hot Lead»id de origenEtiqueta «Hot Lead»id de destinoCampo «Lead Source»id de origenCampo «Lead Source»id de destino
Lo que las cuentas comparten son los nombres, así que los nombres son la clave para reescribir los ids.

ExportGHL Workflows trata el movimiento como una conciliación, no como una copia. Cuando despliegas un workflow guardado en una cuenta de destino, lee cada referencia propia de la cuenta que hay en la definición, busca qué era esa referencia en el origen (su nombre) y encuentra el registro con el mismo nombre en el destino. El id de origen que quedaba colgando se reescribe entonces con el id propio del destino para ese pipeline, etapa, etiqueta, usuario, campo, calendario o plantilla.

Asociar por nombre es la clave correcta porque los nombres son lo que las dos cuentas realmente comparten. Rara vez los ids internos coinciden entre cuentas, pero muy a menudo tienes una etiqueta «Hot Lead», un «Sales Pipeline» con una etapa «Booked» y un campo personalizado «Lead Source» en ambas. ExportGHL recorre el grafo completo de referencias, incluidas las etapas anidadas en su pipeline y los enlaces entre workflows, de modo que una etapa remapeada acaba en el pipeline remapeado correcto, y no en cualquier etapa de nombre parecido.

Como se despliega en el destino como un workflow nuevo, no se sobrescribe nada de lo que ya tienes. (Puedes elegir actualizar uno existente, pero es una decisión explícita, no lo habitual.) El resultado es un workflow que hace referencia a los registros reales del destino y se ejecuta igual que en el origen. Esta página forma parte de la guía completa para exportar workflows de GoHighLevel, el centro para guardar, mover y respaldar automatizaciones entre cuentas.

Qué remapea, conserva y deja en borrador ExportGHL

Remapeado frente a conservadoPor nombreConservado tal cualQué abarcaPipelines, etapas, etiquetas,usuarios, campos,calendarios, plantillasDisparadores, filtros, acciones,esperas, if/else, objetivosSi no coincideTodo el workflow queda enborradorNunca en borrador por sí mismo
Un bloque solo pasa a borrador por una referencia propia de la cuenta a la que apunta.

Conviene separar los dos tipos de cosas que hay dentro de un workflow: las referencias propias de la cuenta que hay que remapear y los bloques estructurales que pasan por sí solos.

Referencias remapeadas por nombre. Cada una se asocia con el registro propio del destino y se reescribe el id. Si existe coincidencia, se conserva; si no existe, el workflow queda en borrador hasta que la aportes o la asocies:

  • Pipelines
  • Etapas (dentro de su pipeline padre)
  • Etiquetas
  • Usuarios y responsables
  • Campos personalizados
  • Calendarios
  • Plantillas de email y SMS

Bloques del workflow. La estructura de la automatización se conserva exactamente, porque no depende de la cuenta. Un bloque solo pasa a borrador por una referencia propia de la cuenta a la que apunta, nunca por el bloque en sí:

  • Disparadores
  • Filtros de disparadores y acciones
  • Acciones, en orden
  • Pasos de espera y temporizadores
  • Ramas if/else
  • Objetivos

En resumen: la estructura y los valores literales (tiempos de espera, texto plano de los mensajes, lógica de las ramas) se conservan intactos, cada referencia propia de la cuenta se remapea por nombre cuando coincide, y todo lo que no coincide deja el workflow entero en borrador en lugar de publicarlo roto.

Qué pasa cuando una referencia no se puede asociar

A veces un nombre realmente no existe en el destino: la etiqueta «Hot Lead» nunca se creó allí, o un usuario no es miembro. ExportGHL no adivina y no publica algo que fallará en silencio. Señala cada referencia sin asociar para que veas con precisión qué falta, y mantiene el workflow desplegado como borrador. Después creas el registro que falta (o asocias la acción a uno existente) y publicas cuando todo se resuelve.

Este comportamiento de borrador por defecto es deliberado. El fallo que quieres evitar es un workflow que parece activo pero se dispara mal en silencio, así que lo seguro es negarse a publicar hasta que cada referencia apunte a algo real.

Por qué las alternativas que solo usan JSON dejan esto roto

Herramientas como GHL Workflows Pro, GHL Workflow Importer/Exporter y GHL Workflows JSON Exporter pueden exportar el JSON de un workflow e importarlo en otra cuenta. (A veces se agrupa con ellas a Super Cloner, pero este clona páginas de embudos y sitios web, no workflows.) Eso mueve la estructura, pero los ids que contiene se copian tal cual: no se concilian con el destino. Así que las referencias a pipelines, etiquetas, usuarios, campos y plantillas siguen apuntando a los ids de la cuenta de origen, y vuelves a tener que reparar cada paso a mano. Exportar el JSON es el 80 % fácil; remapear las referencias propias de la cuenta es el 20 % difícil que de verdad hace que el workflow funcione, y es la parte que se saltan. Si estás comparando opciones, la comparativa de clonadores muestra su comportamiento lado a lado, y el paso a paso de un único movimiento está en copiar entre cuentas.

Las herramientas propias de GoHighLevel tampoco cierran esta brecha. La duplicación nativa solo funciona dentro de una cuenta, y los snapshots copian la plantilla de una cuenta entera: las referencias se resuelven solo porque el snapshot trae sus propias copias de cada pipeline, etiqueta y campo, algo que no sirve cuando mueves un workflow a una cuenta que ya está en uso. El remapeo entre cuentas existe precisamente para el caso que GoHighLevel deja sin cubrir.

Pruébalo primero con un workflow real

La prueba gratuita mueve un workflow de principio a fin para que veas el remapeo y el marcado como borrador en tu propia cuenta antes de gastar nada. Después son créditos de pago por uso que nunca caducan, o una licencia Toolkit de pago único sin suscripción; la página de precios tiene el detalle.

Preguntas frecuentes

¿Por qué se rompen los workflows de GoHighLevel al copiarlos a una cuenta nueva?
Un workflow de GoHighLevel no guarda los nombres de los pipelines, etiquetas, usuarios y campos personalizados que usa. Guarda sus ids internos, y esos ids son propios de la cuenta donde se crearon. Cuando copias la definición del workflow a otra cuenta, los ids siguen apuntando a registros que solo existen en el origen, así que el destino no tiene nada con lo que asociarlos. Las acciones que hacen referencia a esos ids fallan en silencio o apuntan al registro equivocado hasta que se repara cada una a mano.
¿Qué ids se remapean entre cuentas?
ExportGHL Workflows remapea las referencias propias de la cuenta de las que depende un workflow: pipelines y sus etapas, usuarios asignados, etiquetas, campos personalizados, calendarios, plantillas de email y SMS, valores personalizados y referencias de un workflow a otro. Cada una se asocia por nombre en la cuenta de destino y el id se reescribe con el id propio del destino. Todo lo que es un valor literal y no un id, como los tiempos de espera o el texto plano de los mensajes, se copia tal cual porque no depende de la cuenta.
¿Qué pasa si una etiqueta o un pipeline no existe en el destino?
La referencia no se puede remapear porque en el destino no hay nada a lo que apuntarla. ExportGHL señala cada referencia sin asociar para que veas exactamente qué falta, y deja el workflow como borrador en lugar de publicarlo roto. Después creas el pipeline o la etiqueta que falta, o asocias la acción a uno existente, y publicas cuando el workflow está completo. Nada se activa apuntando a un id que no se resuelve.
¿Los snapshots de GHL remapean esto?
No. Un snapshot de GoHighLevel copia la plantilla de una cuenta entera en una cuenta nueva o cargada con el snapshot, y las referencias se resuelven solo porque el snapshot también trae sus propias copias de esos pipelines, etiquetas y campos. No concilia un workflow con los pipelines, etiquetas y usuarios que ya existen en una cuenta de destino en uso, así que no sirve para mover uno o unos pocos workflows a una cuenta que ya se está usando. El remapeo entre cuentas está pensado justo para ese caso.

Mueve un workflow y mira cómo se hace el remapeo

Despliega gratis un workflow en otra cuenta: verás cómo cada pipeline, etiqueta y campo se reescribe para el destino y cómo se señala todo lo que no coincide antes de que se active.

Empezar gratis