если платежка check второй раз прислала, не надо никакую логику запускать по-идее, у тебя в первый раз у order должен сменится статус на processing и ты должен отклонить запрос (не запускать логику, которая на check повешана)
чек просто проверяет, а вот второй запрос по result, когда с человека сняли деньги я должен отметить оплачен. Но ответ может не дойти до сервиса и если он снова отправит такой же запрос я не должен говорить что такой заказ уже оплачен и я не могу принять запрос, а должен опять сказать что все оплачено. все норм когда булеан, а вот если пополнение счета юзера, то беда)