Смотрите - вы должны смотреть на требования бизнеса. Те процессы, которые не требуют немедленного подтверждения могут быть сделаны через мессаж брокер, типа Кролика или Кафки (лучше имхо). Остальные могут быть сделаны через обычный http(s) протокол - советую через ssl, тк у вас серьезные данные. Теперь как выбирать прямое взаимодействие между сервисами по https? Я советую использовать какой-либо API Gateway со своим - внутреннем доменом и все взаимодействие между сервисами вести через него, а не напрямую внутри кластера K8S или Docker Swarm итд. Получается гораздо более организованно. Не знаю, нужно ли вам gRPC, по-моему и разрабам и девопсам легче будет работать со старым добрым http для устранения неполадок и tracinga.
После окончания дизайна проводите what-if анализ с ведущими разрабами и админом бд. А что если сообщение потерялось, брокер или база перегружена, или сеть отказала в соединении... как откатить деньги обратно итд. Все надо серьезно со всех сторон продумать! После этого вносите изменения в систему.
На всем протяжении одного длинного действия создавайте transaction_id, которое будет распространятся по системе, включая сообщения Кролика/Кафки и записи в базе, чтобы можно было легко его найти в логах или восстановить, если где-то произошла проблема.