Cómo crear una aplicación web para flujos de aprobación internos (sin código)
Aprende a crear una aplicación web de aprobaciones internas sin código personalizado: mapea pasos, diseña formularios, define roles, automatiza el enrutamiento, añade trazabilidad y lanza con seguridad.

Qué debe hacer una app web de aprobaciones internas
Una app web de aprobaciones internas es un sistema para mover una solicitud desde “alguien necesita algo” hasta “se tomó una decisión—y podemos probarla después”. Las mejores realizan algunas tareas centrales de forma consistente, incluso cuando el proceso exacto varía por equipo.
El flujo básico que debe soportar
La mayoría de los flujos de aprobación internos incluyen:
- Envío de la solicitud: un formulario que capture los detalles correctos (y adjuntos) desde el inicio
- Revisión: una o más personas validan la información, hacen preguntas o solicitan cambios
- Aprobar / rechazar: una decisión clara con motivo opcional y próximos pasos
- Registro: almacenar la solicitud, la decisión, marcas de tiempo y comentarios en un solo lugar
Ejemplos comunes en la práctica
Verás el mismo patrón en muchos procesos:
- Solicitudes de compra (propietario del presupuesto → finanzas → gerente)
- Aprobación de contenido (borrador → legal → marca → publicar)
- Solicitudes de acceso (empleado → manager → TI)
- Excepciones de políticas (solicitante → cumplimiento → dirección)
Por qué el no-code suele ser suficiente
Las herramientas sin código suelen encajar bien porque permiten a los equipos entregar rápido, iterar semanalmente y mantener la propiedad con las personas que gestionan el proceso. Puedes construir formularios, reglas de enrutamiento, notificaciones y paneles sin esperar una cola de desarrollo tradicional.
Cuándo conviene apoyo de ingeniería
Involucra a ingenieros si tienes casos límite como enrutamiento muy condicional (muchas ramas), requisitos estrictos de residencia de datos, restricciones SSO personalizadas o integraciones complejas que requieran middleware y manejo robusto de errores. En muchas organizaciones, el no-code puede manejar la interfaz mientras ingeniería llena los huecos.
Si quieres algo más cercano a “personalizado” sin comprometerte a una construcción completa, una plataforma de generación por chat como Koder.ai puede situarse en el medio: describes el flujo en la conversación y genera la app (comúnmente React en frontend, Go + PostgreSQL en backend) con opciones como exportar código fuente, despliegue/hosting, snapshots y rollback—útil cuando tu proceso de aprobación empieza simple pero necesita endurecerse con el tiempo.
Elige un proceso y define el resultado
Antes de abrir un constructor, elige un flujo de aprobación interna para abordar primero. El objetivo es demostrar valor rápidamente y luego reutilizar el mismo patrón para otros flujos.
Empieza con el flujo “alto dolor, baja complejidad”
Un buen primer candidato suele tener:
- Mucho ida y vuelta en email o chat
- Una decisión final clara “sí/no”
- Un número pequeño de aprobadores (1–3) y pasos repetibles
Ejemplos: solicitudes de compra bajo un umbral, aprobaciones de tiempo libre, revisión de contenido/legal para una plantilla específica, o incorporación básica de proveedores.
Define el disparador (qué inicia el proceso)
Sé específico sobre qué significa “envío” en tu proceso de formulario a aprobación:
- Quién envía: ¿un solicitante, un gerente o un buzón compartido del equipo?
- Datos obligatorios: ¿qué campos son imprescindibles para decidir (importe, centro de costes, nombre del proveedor, fecha requerida, justificación)?
- Adjuntos: ¿qué archivos se esperan (cotización, borrador de contrato, captura de pantalla)?
Si los aprobadores piden rutinariamente el mismo dato ausente, hazlo obligatorio en la v1.
Lista de partes interesadas y puntos de decisión
Anota cada persona (o rol) involucrada y dónde ocurren las decisiones: revisores, aprobadores, finanzas, legal y cualquier delegado por vacaciones. También señala decisiones “de excepción” como “devolver para editar” o “solicitar más información”, ya que estas impulsan la mayoría de los seguimientos.
Establece criterios de éxito (cómo sabrás que funcionó)
Elige 2–3 resultados medibles:
- Tiempo del ciclo reducido (p. ej., de 5 días a 2)
- Menos seguimientos (menos mensajes “¿Dónde está esto?”)
- Visibilidad clara del estado (los solicitantes pueden consultar el estado más reciente)
Con un inicio, un final y métricas de éxito definidos, el resto de tus decisiones de automatización de flujo será mucho más sencillo.
Mapea la ruta de aprobación antes de construir
Antes de tocar un constructor, dibuja la ruta de aprobación en una página. Esto evita flujos que “casi funcionan”—donde las solicitudes se quedan atascadas, se enrutan a la persona equivocada o rebotan sin un cierre claro.
Escríbelo como pasos sencillos
Empieza con una columna vertebral simple que puedas leer en voz alta:
Submit → Review → Approve/Reject → Close
Para cada paso, nombra quién lo hace (rol o equipo), qué debe ver y qué puede decidir. Si no puedes describir un paso en una frase, normalmente está ocultando varias acciones que deben separarse.
Decide: revisiones en serie o en paralelo
Aclara si las revisiones ocurren:
- Serial: una tras otra (Solicitante → Gerente → Finanzas). Mejor cuando el orden importa.
- Paralelo: varios revisores a la vez (Seguridad + Legal). Mejor cuando importa la velocidad.
Los flujos paralelos necesitan una regla de “hecho”: todos deben aprobar, cualquiera puede aprobar, o mayoría. Elige una ahora—cambiarlo después suele forzar reconstrucción.
Define el comportamiento ante rechazos
Un rechazo puede significar:
- Editar y reenviar: la solicitud retorna al remitente con comentarios, manteniendo el historial.
- Parar: la solicitud se cierra como rechazada y cualquier intento nuevo empieza desde cero.
Elige lo correcto para cumplimiento e informes. “Editar y reenviar” es común, pero aun así debes registrar la decisión original.
Añade excepciones que ocurren en la vida real
Mapea las rutas no felices desde el inicio:
- Camino urgente: una vía rápida con mayor visibilidad o menos pasos
- Fuera de oficina: aprobador de respaldo o regla de delegación
- Tiempos límite: recordatorios, escalación o reasignación automática tras X días
Si capturas esto en papel primero, la construcción será configuración en vez de conjeturas.
Diseña los datos que capturarás y almacenarás
Una app de aprobación sin código funciona mejor cuando el modelo de datos es simple, consistente y fácil de reportar después. Antes de construir pantallas, decide qué registros vas a guardar y cómo se relacionan.
Empieza con un modelo de datos central y pequeño
Para la mayoría de flujos internos, puedes cubrir el 90% de las necesidades con unas pocas tablas (o colecciones):
- Request: el elemento principal que se aprueba (compra, excepción de política, viaje, contratación, etc.)
- Person: solicitante y aprobadores (a menudo traídos del directorio)
- Department: usado para enrutamiento, presupuestación o informes
- Approval decision: resultado de cada paso (quién decidió, qué decidió, cuándo)
- Comments: notas de discusión vinculadas a una solicitud (y a veces a una decisión específica)
Mantén Request como la única fuente de verdad. Todo lo demás debería apuntar a ella.
Campos obligatorios vs opcionales (mantén v1 mínima)
Define los campos imprescindibles para enrutar y decidir. Campos obligatorios típicos:
- Título/resumen de la solicitud
- Solicitante (Person)
- Departamento
- Importe / impacto (si procede)
- Fecha necesaria
- Razón / justificación
Todo lo demás puede empezar opcional. Siempre puedes añadir campos después de ver lo que los aprobadores piden realmente.
Adjuntos y expectativas de retención
Decide desde el inicio qué documentos deben almacenarse (cotizaciones, contratos, capturas) y por cuánto tiempo.
- Si los adjuntos son evidencia para la decisión, almacénalos con la Request.
- Establece una regla de retención (p. ej., conservar 12–24 meses para solicitudes operativas, más tiempo si finanzas/legal lo requiere).
- Aclara si los usuarios pueden eliminar/reemplazar adjuntos después del envío.
Estandariza los estados
Usa un conjunto pequeño y claro de estados para que todos interpreten el progreso igual:
Draft → Submitted → In Review → Approved / Rejected → Completed
Evita inventar demasiados estados personalizados al principio. Un campo de estado consistente facilita filtros, recordatorios e informes.
Construye formularios y páginas fáciles de usar
Una buena app de aprobaciones gana o pierde por la usabilidad. Si la gente teme enviar una solicitud o no sabe qué sigue, volverán al email.
Las pantallas esenciales que realmente necesitas
La mayoría de los flujos internos se cubren con un conjunto reducido de páginas:
- Formulario de solicitud: donde alguien crea una nueva solicitud
- Detalle de la solicitud: un lugar para leer la solicitud, ver el estado y tomar acciones
- Bandeja del aprobador: una cola de ítems esperando por mí
- Configuración de admin: gestionar categorías, umbrales, plantillas y entradas de enrutamiento
Mantén la navegación simple: “Nueva solicitud”, “Mis solicitudes”, “Necesita mi aprobación” y “Configuración” (para admins).
Formularios que piden menos pero capturan mejores datos
Empieza con los campos mínimos obligatorios y usa campos condicionales para mantener el formulario corto. Por ejemplo: muestra “Detalles del proveedor” solo si “Tipo de compra = Proveedor nuevo”, o muestra “Motivo de excepción” solo si una casilla de política está desmarcada.
Aquí es donde las herramientas no-code destacan: puedes mostrar/ocultar secciones según desplegables, importes o departamento—sin crear formularios separados.
Haz obvio el estado y el siguiente paso
En cada registro de solicitud, muestra:
- Estado actual (p. ej., Draft → Submitted → Revisión del gerente → Revisión de finanzas → Approved/Rejected)
- Con quién está ahora
- Qué sucede después (incluido cualquier umbral que pueda activar una aprobación extra)
Un indicador de progreso simple más una línea “En espera de: <nombre/rol>” elimina la mayoría de los mensajes “¿Alguna novedad?”.
Reduce el ida y vuelta con orientación y validación
Añade texto de ayuda corto y ejemplos directamente bajo campos difíciles (“Adjunta la cotización firmada (PDF)”, “Usa el centro de costes como 4102-Operations”). Usa validaciones para prevenir retrabajo evitable: adjuntos obligatorios para ciertos tipos, rangos permitidos para importes y mensajes de error claros.
El objetivo es menos preguntas aclaratorias, decisiones más rápidas y registros más limpios para informes.
Establece roles, permisos y reglas de enrutamiento
Si tu app es un edificio, los roles y permisos son las cerraduras y llaves. Las reglas de enrutamiento son las señales que aseguran que cada solicitud llegue al escritorio correcto—sin persecución manual.
Define los roles principales (y úsalos con consistencia)
Empieza con un conjunto pequeño de roles que reutilizarás:
- Solicitante: crea y envía la solicitud (p. ej., compra, excepción, tiempo libre)
- Revisor: verifica integridad y contexto; puede devolver para cambios
- Aprobador: toma la decisión en un paso (gerente, jefe de departamento, propietario del presupuesto)
- Finanzas / RR. HH.: aprobadores especialistas para coste, cumplimiento o reglas de personal
- Admin: mantiene el flujo, campos y acceso; típicamente no aprueba
Escribe en lenguaje claro lo que cada rol puede hacer antes de tocar el constructor.
Añade permisos por paso (ver, comentar, editar, aprobar)
Las aprobaciones fallan cuando todos pueden ver o editar todo. Define permisos en cada etapa:
- ¿Quién puede ver la solicitud y los adjuntos?
- ¿Quién puede comentar (y si los comentarios son visibles para el solicitante)?
- ¿Quién puede editar campos (normalmente solicitante antes de envío; edición limitada durante revisión)?
- ¿Quién puede aprobar/rechazar, y pueden pedir cambios en su lugar?
Un valor práctico por defecto: una vez enviado, bloquea campos clave (importe, proveedor, fechas) y permite ediciones solo a través de una acción “devolver”.
Usa enrutamiento por equipo para seguir el organigrama
Codificar nombres no escala. Prefiere reglas como:
- Manager del solicitante aprueba primero
- Luego enruta al propietario del presupuesto si el importe excede un umbral
- Añade Finanzas si se selecciona un código GL o el tipo de gasto lo requiere
- Añade RR. HH. para solicitudes relacionadas con personas (acceso de contratistas, cambios de compensación)
Esto mantiene el flujo correcto incluso cuando la gente entra, sale o cambia de equipo.
Planea delegación y respaldos para prevenir estancamientos
Las aprobaciones suelen quedarse atascadas por vacaciones o saturación. Añade:
- Delegación (el aprobador puede asignar un delegado por rango de fechas)
- Aprobadores de respaldo (si no hay acción en X días, enruta a un alternativo)
- Reglas de escalación (notificar al manager-del-aprobador tras un timeout)
Estas reglas protegen el rendimiento sin sacrificar control.
Automatiza tareas, notificaciones y recordatorios
La automatización convierte un formulario simple en un flujo de aprobación interno fiable. La meta es sencilla: cuando una solicitud cambia de estado, la siguiente persona debe recibir la tarea correcta al instante—sin persecuciones ni copiar enlaces.
Automatiza el enrutamiento en cambios de estado
Configura reglas como: Draft → Submitted → Revisión del gerente → Revisión de finanzas → Approved/Rejected. Cada cambio de estado debe automáticamente:
- Asignar la solicitud al siguiente aprobador (o a una cola/equipo)
- Actualizar la propiedad (quién “tiene la pelota”)
- Bloquear o desbloquear campos (p. ej., los solicitantes no pueden editar el importe tras el envío)
Mantén las reglas legibles. Si necesitas excepciones (p. ej., “Si importe \u003e $5,000, añade aprobación del CFO”), defínelas como condiciones claras vinculadas a campos de datos.
Añade notificaciones que la gente realmente note
Como mínimo, envía dos tipos de mensajes:
- “Necesita tu revisión”: incluye título de la solicitud, importe/tipo, fecha límite y un enlace directo a la página de aprobación
- “Decisión tomada”: notifica al solicitante y a observadores, con la decisión, nombre del aprobador y comentarios
Usa los canales que la empresa ya consulta—email más Slack/Teams si está disponible. Mantén los mensajes cortos y consistentes para que no parezcan ruido.
Recordatorios y escalación tras una fecha límite
Las aprobaciones se estancan cuando nadie es responsable del tiempo. Añade:
- Un recordatorio X horas/días antes de la fecha límite
- Un segundo recordatorio después de la fecha límite
- Escalación a un aprobador de respaldo o manager si no hay acción tras N días
Haz las escalaciones predecibles (y visibles) para que los aprobadores confíen en el sistema.
Guardarraíles para prevenir duplicados y aprobaciones faltantes
La automatización también debe detener modos de fallo comunes:
- Bloquear solicitudes duplicadas comprobando campos clave (p. ej., proveedor + número de factura)
- Requerir campos obligatorios antes del envío
- Evitar “saltar pasos” permitiendo cambios de estado solo mediante botones como Approve/Reject (no edición libre)
Estos guardarraíles reducen retrabajo y aseguran que cada solicitud siga la misma ruta.
Añade paneles y seguimiento para visibilidad
Una app de aprobaciones funciona solo cuando todos pueden ver qué está esperando, qué está atascado y qué se completó—sin preguntar. Los paneles convierten “¿Dónde está esta solicitud?” en una respuesta autoservicio.
Empieza con una bandeja de aprobaciones
Crea un lugar único que los revisores puedan consultar cada día. La vista de bandeja debería incluir:
- Ítems asignados a mí (con prioridad y paso actual)
- Próximos a vencer (según SLA o fecha requerida)
- Atrasados (resaltados, con reglas de escalación manejadas por separado)
Mantén cada fila accionable: solicitante, departamento, importe/tipo, fecha de envío, fecha requerida y aprobar/rechazar con un clic.
Añade búsqueda y filtros que respondan preguntas reales
La mayoría de los seguimientos son previsibles: “Muéstrame todas las solicitudes pendientes de Ventas este mes”, o “Encuentra la PO que envié el martes”. Crea filtros por:
- Solicitante (y/o equipo del solicitante)
- Departamento o centro de costes
- Estado (draft, submitted, in review, approved, rejected, cancelled)
- Rango de fechas (enviado, actualizado, requerido)
Si tu herramienta lo permite, añade vistas guardadas como “Pendientes de mi equipo” o “Cola de Finanzas”.
Mide el tiempo de ciclo y cuellos de botella—sin exponer detalles sensibles
Los paneles no necesitan mostrar cada campo para ser útiles. Enfócate en métricas operativas:
- Tiempo promedio hasta la primera respuesta
- Tiempo promedio total del ciclo
- Solicitudes atascadas por paso (p. ej., “Aprobación del gerente”)
- Tendencias de volumen (semanal/mensual)
Usa conteos y duraciones agregadas para que los líderes detecten pasos lentos sin ver contenido confidencial.
Planea exportaciones e informes desde el principio
Aunque no uses una herramienta BI aún, facilita el reporting:
- Exportar CSV para listas filtradas (p. ej., “Aprobadas último trimestre”)
- Una vista/tabla “reporting” simple para finanzas o cumplimiento
- Si está disponible, informes programados enviados a un buzón compartido
Esto reduce solicitudes ad-hoc y ayuda a demostrar que el flujo mejora con el tiempo.
Incluye trazabilidad y gobernanza desde el día uno
Si las aprobaciones afectan gasto, riesgo o compromisos con clientes, necesitas evidencia—no solo “Aprobado” como estado final. La gobernanza es más fácil (y barata) de añadir mientras diseñas el flujo, no después de que la gente dependa de él.
Construye una pista de auditoría que responda preguntas reales
Tu app debe registrar un historial claro de quién hizo qué y cuándo. Como mínimo, registra:
- Cambios de estado (Submitted → Approved/Rejected → Cancelled)
- Comentarios añadidos por aprobadores
- Ediciones de campos (qué cambió, valor antiguo/valor nuevo)
- Reasignaciones o delegaciones (quién aprobó en nombre de quién)
Haz la vista de audit log visible para admins y revisores, pero no la expongas a todo el mundo por defecto.
Exige notas significativas en aprobaciones y rechazos
Aprobaciones sin contexto generan confusión después. Añade un comentario opcional en la aprobación y un motivo de rechazo obligatorio. Esto evita resultados vagos y acelera las reenvíos porque el solicitante sabe qué corregir.
Un patrón práctico:
- Rechazo requiere un motivo (desplegable + texto libre)
- El motivo se incluye en la notificación y se almacena en el registro
- La re-submisión crea una nueva versión, manteniendo el historial intacto
Controles de acceso a datos: menor privilegio por diseño
Usa el principio de menor privilegio para que la gente vea sólo lo necesario:
- Los solicitantes ven sus propias solicitudes
- Los aprobadores ven solicitudes asignadas a ellos (y opcionalmente a su equipo)
- Finanzas/Legal ven categorías específicas
- Los admins gestionan ajustes y ven historial completo
Si tu herramienta soporta permisos a nivel de fila, úsalos. Si no, separa flujos sensibles en apps distintas.
Cumplimiento básico: retención, eliminación y revisiones de acceso
Decide temprano cuánto tiempo conservar registros (p. ej., 1–7 años según política), cómo funcionan las eliminaciones (soft-delete suele ser más seguro) y quién revisa accesos trimestralmente. Documenta estas reglas en una página interna corta y enlázala desde la app (por ejemplo: /policies/approvals).
Conecta con tus herramientas existentes (sin ingeniería pesada)
Los flujos de aprobación rara vez viven aislados. La forma más rápida de lograr adopción es conectar tu app con los sistemas que la gente ya usa: login, datos de RR. HH., registros financieros, colas de tickets y mensajería.
Empieza por identidad (SSO o directorio de usuarios)
Si la empresa ya usa Google Workspace, Microsoft Entra ID (Azure AD), Okta u otros, habilita SSO para que los empleados no necesiten otra contraseña.
Más allá de la conveniencia, SSO ayuda con control de acceso: puedes mapear grupos (p. ej., “Finanzas”, “People Ops”, “TI”) a roles en tu app de aprobaciones, reduciendo admin manual y el riesgo de que la persona equivocada vea solicitudes sensibles.
Extrae contexto de sistemas fuente (RR. HH., finanzas, ticketing, CRM)
La mayoría de las solicitudes necesitan datos de referencia:
- RR. HH.: nombre del empleado, manager, departamento, centro de costes
- Finanzas/ERP: detalles del proveedor, códigos presupuestarios, números de PO
- Ticketing: tipo de solicitud, prioridad, incidente/cambio existente
- CRM: propietario de cuenta, tamaño del trato, etapa de contrato
Usa conectores nativos cuando estén disponibles para que tus formularios autocompleten campos y tus reglas de enrutamiento tomen mejores decisiones (por ejemplo, enrutar por departamento o umbral de gasto).
Usa webhooks/APIs cuando no haya conector
Si tu herramienta no tiene integración nativa, aún puedes conectar sin construir una app personalizada completa. Muchas plataformas permiten:
- Enviar un webhook cuando una solicitud se crea/aprueba/rechaza
- Llamar a una API externa para crear o actualizar un registro (p. ej., crear un ticket, actualizar un campo en el CRM)
Mantén el payload simple: id de la solicitud, solicitante, decisión, timestamp y los campos clave que necesita el sistema destino.
Planea para errores: reintentos, alertas y un fallback manual
Las integraciones fallan—los tokens expiran, las APIs limitan peticiones, los campos cambian. Añade:
- Reintentos automáticos con un estado claro “fallado”
- Alertas a un canal de admin (email/Slack/Teams)
- Un fallback manual (p. ej., un botón para re-ejecutar el sync, o una cola que un admin pueda procesar)
Esto evita resultados “aprobado pero nunca ejecutado”, que erosionan la confianza rápidamente.
Prueba, lanza y mejora el flujo
Probar un flujo de aprobación interna no es solo “¿funciona el botón?”. Es si personas reales pueden mover solicitudes reales de principio a fin sin confusión ni atajos.
Prueba con escenarios reales (no solo caminos felices)
Crea un conjunto pequeño de solicitudes realistas y pásalas por todo el proceso:
- Aprobaciones y rechazos (incluyendo “rechazar con cambios” si lo soportas)
- Ediciones tras el envío (qué cambios están permitidos y quién puede hacerlos)
- Adjuntos (límites de tamaño, nombres, documentos obligatorios)
- Delegación y cobertura por ausencia (qué ocurre cuando un aprobador no está)
Observa cuellos de botella: campos poco claros, contexto faltante para aprobadores y pasos que obligan a volver al email o chat para entender qué se está aprobando.
Ejecuta un piloto y recoge feedback semanalmente
Empieza con un grupo pequeño—un equipo o un tipo de solicitud—y mantén el piloto lo bastante largo para cubrir casos límite (normalmente 2–4 semanas). Programa una breve revisión semanal y centraliza el feedback (un formulario o doc compartido). Prioriza arreglos que reduzcan el ida y vuelta: claridad de campos, reglas de enrutamiento y timing de notificaciones.
Escribe guías simples que la gente realmente lea
Mantén la documentación corta y práctica:
- Qué pantalla usar para enviar vs. revisar
- Cómo es una “buena” solicitud (ejemplos de descripciones y adjuntos)
- Expectativas de respuesta (p. ej., cuándo comentar vs. cuándo rechazar)
Publícala donde los usuarios ya van (por ejemplo, una página interna como /help/approvals).
Despliega gradualmente y mejora con datos
Expande un grupo a la vez. Usa métricas tempranas—tiempo de ciclo, motivos de rechazo, tiempo en cada paso—para refinar reglas y campos. Iteraciones pequeñas (semanales o quincenales) mantienen la confianza alta y evitan que el flujo se convierta en un parche.
Errores comunes y cómo evitarlos
Incluso con herramientas no-code, los flujos de aprobación se complican sin algunos guardarraíles. Estos son los modos de fallo que suelen ralentizar a los equipos y formas prácticas de prevenirlos.
1) Empezar demasiado grande (demasiados pasos o campos)
La inclinación común es capturar cada detalle “por si acaso”. El resultado es un formulario que nadie quiere rellenar y un camino de aprobación difícil de mantener.
Empieza simple: los campos mínimos para decidir y la ruta de aprobación más corta que cumpla la política. Lánzalo, observa dónde se atascan las personas y añade solo lo que sea claramente necesario.
2) Propiedad poco clara de reglas y accesos
Las reglas de enrutamiento, listas de aprobadores y accesos por rol necesitan un dueño claro. Si nadie posee el flujo, se acumulan excepciones, los accesos quedan desactualizados y las aprobaciones se bloquean cuando alguien cambia de rol.
Asigna un responsable con nombre (y un respaldo). Pon cambios de reglas detrás de un proceso ligero (incluso una checklist corta) y programa una revisión mensual de grupos de aprobadores y permisos.
3) Falta de visibilidad para los solicitantes
Si los solicitantes no pueden ver el estado o el próximo aprobador, perseguirán a la gente manualmente—lo que derrota el propósito de la automatización.
Incluye una página de estado con: etapa actual, última actualización, siguiente aprobador (o equipo) y un SLA estimado. Añade un panel simple para que los gerentes detecten cuellos de botella.
4) Sin vía de escape para excepciones y asuntos urgentes
Los flujos reales tienen casos límite: solicitudes urgentes, aprobadores fuera, o excepciones de política.
Construye manejo seguro de excepciones: una bandera “urgente” que active una ruta rápida definida, reglas de delegación y una anulación controlada que requiera motivo y quede registrada en la auditoría.
Si anticipas cambios frecuentes en la lógica del flujo (nuevos umbrales, aprobadores extra o nuevos tipos de solicitud), considera una aproximación de construcción que sea fácil de iterar sin perder gobernanza. Por ejemplo, equipos usan Koder.ai para generar y evolucionar apps de flujo interno rápidamente desde una especificación por chat, manteniendo la opción de exportar código fuente y aplicar controles más estrictos conforme el proceso madura.
Preguntas frecuentes
¿Cuál es el mejor primer proceso de aprobación interna para construir?
Empieza con un flujo que sea alto dolor, baja complejidad:
- Mucho ida y vuelta actualmente (email/chat)
- Una decisión clara sí/no
- Sólo 1–3 aprobadores
Ejemplos: solicitudes de compra por debajo de un umbral, aprobaciones de permisos/ausencias o un flujo básico de solicitud de acceso. Demuestra el valor y luego reutiliza el mismo patrón para otras aprobaciones.
¿Qué campos debería incluir un formulario de solicitud de aprobación?
Captura los datos mínimos necesarios para enrutar y decidir. Campos comunes obligatorios:
- Título/resumen
- Solicitante
- Departamento o centro de costes
- Importe/impacto (si aplica)
- Fecha requerida
- Justificación
Si los aprobadores piden repetidamente un detalle (por ejemplo, nombre del proveedor o un presupuesto), hazlo obligatorio en la v1.
¿Qué páginas son esenciales en una aplicación web de aprobaciones sin código?
La mayoría de apps solo necesitan unas pocas pantallas básicas:
- Formulario de nueva solicitud
- Página de detalle de la solicitud (estado, comentarios, adjuntos, acciones)
- Bandeja de aprobador (cola “necesita mi aprobación”)
- Administración/configuración (entradas de enrutamiento, umbrales, plantillas)
Mantén la navegación simple para que los usuarios encuentren “Nueva solicitud”, “Mis solicitudes” y “Necesita mi aprobación”.
¿Qué estados debería usar para aprobaciones internas?
Usa un conjunto pequeño y estandarizado de estados para facilitar filtros, recordatorios e informes:
- Draft
- Submitted
- In Review
- Approved / Rejected
- Completed
Si necesitas más detalle, muestra el paso actual (p. ej., “Revisión del gerente”) como campo separado en lugar de inventar muchos estados.
¿Mi flujo de aprobación debería ser serial o paralelo?
Elige según si importa el orden o la velocidad:
- Serial (uno tras otro): mejor cuando cada paso depende del anterior.
- Paralelo (varios a la vez): mejor cuando buscas rapidez.
Para revisiones en paralelo, define la regla de completado: todos deben aprobar, cualquiera o mayoría—cambiar esto después suele forzar retrabajo.
¿Cómo debería manejar los rechazos y las reenvíos?
Decide qué significa “rechazado” en tu proceso:
- Editar y reenviar: se devuelve al solicitante con comentarios, conservando el historial.
- Detener: la solicitud se cierra como rechazada; un nuevo intento empieza desde cero.
Incluso con editar/reenviar, registra el motivo y la decisión original en el historial.
¿Cómo suelen funcionar los roles y permisos en una app de aprobaciones?
Define roles y permisos por etapa:
- Solicitante: crear/enviar; editar solo antes de enviar
- Revisor: comentar; pedir cambios
- Aprobador: aprobar/rechazar (opcionalmente con comentario obligatorio)
- Admin: gestionar enrutamiento, campos y accesos
Una práctica: una vez enviado, bloquea campos clave (importe/proveedor/fechas) y permite cambios solo mediante una acción “devolver para cambios”.
¿Cómo configuro reglas de enrutamiento que escalen al cambiar la org?
Usa reglas basadas en la organización en lugar de nombres fijos:
- Enruta primero al manager del solicitante
- Añade al responsable del presupuesto si el importe supera un umbral
- Añade Finanzas/HR/Legal según categoría, tipo de gasto o códigos seleccionados
Así el enrutamiento sigue siendo correcto cuando la gente cambia de rol o equipo.
¿Cómo evito que las aprobaciones se queden atascadas cuando alguien está fuera?
Añade desde el inicio reglas para evitar bloqueos:
- Delegación (delegados por rango de fechas para vacaciones)
- Recordatorios antes/después de la fecha límite
- Escalación tras N días (aprobador alternativo o manager del aprobador)
Haz que el comportamiento de escalación sea visible y consistente para que el sistema sea predecible.
¿Qué debe incluir una pista de auditoría y gobernanza para aprobaciones internas?
Registra suficiente detalle para responder “quién hizo qué, cuándo y por qué”:
- Cambios de estado con marcas de tiempo
- Decisiones de aprobación (aprobador, resultado, comentario)
- Ediciones de campos (valor antiguo/nuevo)
- Reasignaciones y delegaciones
También fija expectativas de retención (p. ej., 12–24 meses para solicitudes operativas) y aplica el principio de menor privilegio para que los usuarios solo vean lo necesario.