in reply to Re^3: How to safely/atomically process payments
in thread How to safely/atomically process payments

I think the problem is still not necessarily related to a specific application.

The problem of a half-committed transaction is common, and happens in various locations.

My approach would be to lok at how databases usually do their two-phase commit.

As I haven't really looked deeply into that, I would write a transaction log before sending the transaction to the remote end, and then either record the success or failure of that transaction, or barring any conclusion of the transaction, diagnose an internal error.

This does not provide a magic solution, but it provides a way to determine which transactions need to be manually confirmed.

  • Comment on Re^4: How to safely/atomically process payments