# 03 — Configuration Extract (Factronics Venezuela) > Extracto de configuración en formato machine-readable para el pack MCP (`ghl-setup-mcp`): auditoría, aplicación de fields/tags por API y verificación de workflows. > Los tipos siguen el mapeo del MCP: Single Select → `SINGLE_OPTIONS`, Text Area → `LARGE_TEXT`, Yes/No → `SINGLE_OPTIONS` con `["Yes","No"]`, Number → `NUMERICAL`. ```json { "brand": "Factronics CA", "account_name": "factronics_venezuela", "location_id": "[LOCATION_ID]", "target_lang": "es", "pipelines": [ { "name": "Soporte Técnico", "key": "soporte_tecnico", "type": "servicio", "stages": ["Clasificado", "Asignado", "En Atención", "Resuelto"] }, { "name": "Cotizaciones", "key": "cotizaciones", "type": "ventas", "stages": ["Lead Clasificado", "En Aprobación (Michael)", "Propuesta Enviada", "Negociación"] } ], "customFields": [ { "key": "tipo_contacto", "name": "Tipo de Contacto", "dataType": "SINGLE_OPTIONS", "options": ["current_customer", "prospecto", "no_confirmado"], "model": "contact" }, { "key": "categoria_solicitud", "name": "Categoría de Solicitud", "dataType": "SINGLE_OPTIONS", "options": ["servicio_tecnico", "suministro_consumible", "cotizacion_equipo"], "model": "contact" }, { "key": "descripcion_necesidad", "name": "Descripción de Necesidad", "dataType": "LARGE_TEXT", "model": "contact" }, { "key": "equipo_reportado", "name": "Equipo Reportado", "dataType": "TEXT", "model": "contact" }, { "key": "urgencia", "name": "Urgencia", "dataType": "SINGLE_OPTIONS", "options": ["alta", "media", "baja"], "model": "contact" }, { "key": "ticket_tipo", "name": "Tipo de Ticket", "dataType": "SINGLE_OPTIONS", "options": ["tema_nuevo", "seguimiento"], "model": "contact" }, { "key": "asignado_a", "name": "Asignado A", "dataType": "SINGLE_OPTIONS", "options": ["mariana", "carla", "michael"], "model": "contact" }, { "key": "canal_preferido", "name": "Canal Preferido", "dataType": "SINGLE_OPTIONS", "options": ["whatsapp", "email", "instagram", "facebook", "web"], "model": "contact" }, { "key": "bot_status", "name": "Bot Status", "dataType": "TEXT", "model": "contact" }, { "key": "bot_conversation_summary", "name": "Resumen de Conversación (Bot)", "dataType": "LARGE_TEXT", "model": "contact" }, { "key": "aprobacion_propuesta", "name": "Estado de Propuesta", "dataType": "SINGLE_OPTIONS", "options": ["pendiente", "aprobada", "rechazada"], "model": "opportunity" }, { "key": "ticket_number", "name": "Número de Ticket", "dataType": "TEXT", "model": "opportunity" }, { "key": "pipeline_stage_entered", "name": "Stage Entered Date", "dataType": "DATE", "model": "opportunity" }, { "key": "disqualification_reason", "name": "Disqualification Reason", "dataType": "TEXT", "model": "opportunity" }, { "key": "proposal_value", "name": "Proposal Amount", "dataType": "NUMERICAL", "model": "opportunity" }, { "key": "expected_close_date", "name": "Expected Close Date", "dataType": "DATE", "model": "opportunity" }, { "key": "deal_source", "name": "Deal Source", "dataType": "TEXT", "model": "opportunity" } ], "tags": [ "current-customer", "svc-servicio-tecnico", "svc-suministro-consumible", "svc-cotizacion-equipo", "route-mariana", "route-carla", "route-michael", "new-lead", "approval-pending", "dq-out-of-scope", "dq-no-interest", "dq-vendor", "dq-spam", "dq-jobs" ], "workflows": [ { "id": "W1", "name": "Clasificar y Asignar", "trigger": "bot-invoked" }, { "id": "W2", "name": "Gate de Aprobación de Michael", "trigger": "opportunity-changed" }, { "id": "W3", "name": "Seguimiento 3/15/30", "trigger": "contact-tag" }, { "id": "W4", "name": "Recordatorio ventana 7 días (FB/IG)", "trigger": "customer-replied" }, { "id": "W5", "name": "Canal formal (email de registro)", "trigger": "contact-tag" } ], "emailTemplates": ["EM-1 Registro formal", "EM-2 Propuesta enviada", "EM-3 Seguimiento 3d", "EM-4 Seguimiento 15d", "EM-5 Seguimiento 30d", "EM-6 Recordatorio de visita"], "whatsappTemplates": ["WA-1", "WA-2", "WA-3", "WA-4", "WA-5", "WA-6", "WA-7", "WA-8", "WA-9"], "users": [ { "email": "m.hernandez@factronicsusa.com", "name": "Michael Hernandez", "role": "admin", "function": "aprobaciones" }, { "email": "mariana.cerdeno@factronics.com.ve", "name": "Mariana Cerdeño", "role": "admin", "function": "servicio" }, { "email": "carla.mena@factronics.com.ve", "name": "Carla Mena", "role": "sales", "function": "ventas" } ], "notes": [ "Tag del cliente: current-customer (verificar literalidad en la cuenta).", "Suministro/consumible = tarea directa a Carla (no pipeline).", "Gate FV-004: aprobacion_propuesta debe ser 'aprobada' antes de enviar propuesta.", "ceo Linx: prohibido en todo el contenido." ] } ``` ## Cómo se usa con el MCP ``` audit (read-only) → apply fields (dryRun → real) → apply tags → get_pipelines (copiar id a react-app si aplica) → workflows por navegador → verify_workflows ``` **Límites (por diseño de GHL):** la API pública NO crea workflows, pipelines ni configura el bot. Eso va por el builder (manual) o Playwright.