(+351) 21 24 10006  ·  info@bconcepts.pt
Carnaxide, Lisboa

Manejo de errores en Power Automate: paso a paso

João Barros 06 de July de 2026 4 min de lectura

Un flujo de Power Automate que falla en silencio es un problema esperando a ocurrir: el proceso se detiene a mitad de camino y nadie se da cuenta hasta que un cliente reclama. Con el patrón Try-Catch, construido con acciones Scope y la opción Configure run after, el flujo empieza a capturar errores, registrarlos y avisarte de forma automática. Esta guía muestra el manejo de errores en Power Automate paso a paso, con un ejemplo sencillo y reutilizable en cualquier proyecto.

Requisitos previos

  • Una cuenta con acceso a Power Automate (un plan de Microsoft 365 o una versión de prueba).
  • Un flujo de nube (automatizado o instantáneo) al que quieras añadir manejo de errores.
  • Permiso para enviar un correo con Outlook o publicar en Microsoft Teams, para las notificaciones.
  • Nociones básicas del editor de flujos y de cómo añadir acciones.

Paso 1: Agrupar la lógica principal en un Scope

La acción Scope funciona como una caja que agrupa varias acciones y las trata como un bloque único. Abre tu flujo en el editor, añade una acción Scope y cámbiale el nombre a "Try". Mueve dentro de ella todas las acciones que hacen el trabajo real: leer datos, crear registros, enviar archivos. La ventaja es clara: si cualquier acción interior falla, todo el Scope queda marcado como fallido, lo que te da un único punto donde reaccionar en lugar de tratar error por error.

Paso 2: Crear el Scope "Catch" para reaccionar a los fallos

Añade un segundo Scope justo después del primero y llámalo "Catch". Por defecto, una acción solo se ejecuta cuando la anterior tiene éxito, y nosotros queremos justo lo contrario. Haz clic en los tres puntos (...) del Scope "Catch", elige Configure run after y activa las opciones has failed, is skipped y has timed out, dejando has succeeded sin marcar. A partir de aquí, "Catch" solo se ejecuta cuando "Try" no termina bien.

Paso 3: Filtrar la acción que falló

Dentro de "Catch", añade una acción Filter array para aislar solo lo que salió mal. En el campo From, usa la función result() para obtener el estado de todas las acciones del Scope "Try":

result('Try')

Después, en el modo avanzado de la condición, conserva solo las acciones fallidas (y las que expiraron) con esta expresión:

or(equals(item()?['status'], 'Failed'), equals(item()?['status'], 'TimedOut'))

El resultado es una lista solo con las acciones problemáticas, cada una con su nombre, su código y el objeto de error devuelto por el conector.

Paso 4: Enviar una notificación con el error

Todavía dentro de "Catch", añade la acción Send an email (V2) de Outlook o Post message in a chat or channel de Teams. En el cuerpo del mensaje, muestra el mensaje de la primera acción fallida con esta expresión:

first(body('Filter_array'))?['error']?['message']

Un asunto directo, como "Fallo en el flujo de facturación", ayuda al equipo a clasificar el problema en segundos, incluso antes de abrir Power Automate.

Paso 5: Garantizar la limpieza con un Scope "Finally"

Si hay acciones que deben ejecutarse siempre, pase lo que pase —como registrar el fin de la ejecución o cerrar una conexión—, crea un tercer Scope llamado "Finally". Configura el Configure run after de "Finally" para las cuatro opciones (has succeeded, has failed, is skipped y has timed out). Así garantizas que esa lógica se ejecuta tanto en el camino de éxito como en el de error.

Consejo: mantén el Scope "Try" enfocado. Cuanto más pequeño y específico sea, más fácil será interpretar el error que devuelve.

Verificar el resultado

Para probar, fuerza un error a propósito: apunta una acción a un archivo que no existe o usa un valor no válido. Guarda y ejecuta el flujo. En el historial de ejecuciones, "Try" debe aparecer en rojo (fallido) y "Catch" en verde (ejecutado), y deberías recibir la notificación con el mensaje de error. Si "Catch" se queda en gris (skipped), revisa Configure run after: casi con seguridad la opción has failed quedó sin marcar.

Conclusión

Con solo tres Scopes y la opción Configure run after, has transformado un flujo frágil en un proceso que se explica cuando falla, ahorrando horas de investigación a ciegas. El siguiente paso es estandarizar: guarda esta plantilla Try-Catch-Finally como flujo de referencia y reutilízala en todos los proyectos. ¿Qué flujo crítico vas a proteger primero con este patrón?