Integration - Repeated/concurrent calls

Hello everyone,

Im integrating a system with Fineract, and doing some tests with the Savings API (Deposit/Withdrawal functions), nothing is considered “Unique”, so if for any reason my system interpret a call as failed (maybe a reverse proxy fault, tcp issues etc) and perform a retry, Fineract will Credit (or Debit) a transaction multiple times.

Whats the idea for such scenario, to maintain consistency and avoid duplicates?