When considering integrating with REST based API’s, the first approach should always be how do I make my design non transactional. Non transactional means that the API can be called over and over again within any negative affect.
Banking systems need to be transactional. If a transaction was processed more than once, that would be undesirable. You’d end up spending twice as much or in the wishful thinking case, earn twice as much. However, the downside is that they are a lot more complex and the tolerance for failure is very low.
On the other hand, for non critical systems, the idea is to keep the integration simple and stateless. If the system fails for whatever reason, such as a server outage affecting the API, when ever thing is back up and running, the integration can run again without any complex requirements such as having to continue from a certain time period or from a particular transaction.