# How do I make a workflow safe to retry after a failure?

Canonical URL: https://help.iagenify.com/faqs/workflows/how-do-i-make-a-workflow-safe-to-retry-after-a-failure

[← Back to Workflows FAQs](https://help.iagenify.com/faqs/workflows)

HELP CENTER · FAQ Workflows 1 min read
# How do I make a workflow safe to retry after a failure?
Give each logical operation a stable identifier and check whether it already completed before repeating side effects. A retry should resume from known state or safely repeat an idempotent step, rather than blindly sending the same request again.
IaGenify
Workflows

## Design for uncertain outcomes
A workflow can fail after an external service accepted an action but before the next step recorded success. Treat that as an unknown outcome: inspect the target system or use a request key that lets the destination recognize duplicates.
Separate preparation from irreversible actions. Validate inputs and calculate the intended change first, then perform the send, payment, publish, or delete step only when its prerequisites are satisfied.
## Record progress and verify the effect
Store a business identifier and step status where the workflow can inspect them on retry. After a failure, check the run history and the external resource so you can identify the last confirmed step.
For actions that cannot be made idempotent, add a review or reconciliation step instead of automatic retries. Test the recovery path with a controlled example and confirm that a second run does not create duplicate records or messages. [← Back to Workflows FAQs](https://help.iagenify.com/faqs/workflows)
