Похоже больше на гонку - когда запрос A приходит позже запроса B.
Решаются такие проблемы индивидуально, в зависимости от остальной архитектуры грубо говоря ичего-то универсального тут нет.
Касаемо Вашей ситуации, мне лично непонятно, каким образом очерёдность запросов может повлиять на результат, т.к. в моём понимании текущей ситуации баланс это либо сложение либо вычитание, и ничего особо страшного не будет, если будет -1 -2 -3 +10 а не +10 -1 -2 -3 итог то будет один.
Можете слать баланс ДО и какой должен быть ПОСЛЕ и все изменения проводить скажем раз в N секунд, а до этого просто всё собирать в некую очередь для дальнейшей сортировки/понимания кто что делает и когда, во время которой отказывать в запросах, если выполнение долгое и т.д.