Idempotence (which you may read a formal definition of on [Wikipedia](https://en.wikipedia.org/wiki/Idempotence)), when we are talking about messaging, is when a message redelivery can be handled without ending up in an unintended state.
Since we always run the risk of processing the same message twice, it is a good idea to think a little bit about idempotence from time to time.
Sagas (also known in the literature as "process managers") are stateful services. You can think of them as state machines whose transitions are driven by messages.