Your HTTP client timed out. Did the request actually fail?
A client gives up at two seconds. The server committed at 1.87. Both behaved exactly as designed, and now two systems disagree about whether a payment happened. This is the cheapest distributed-systems lesson available, and almost nobody learns it before it costs them money.
Read the study →1.870s server committed
2.000s client read timeout
2.001s client reported: failed
2.410s server 200 OK → nobody