Oh man, that is classic sloppy web development.
It's often so easy to reach for the values in the params/payload first because you're already working with them, instead of remembering to use the session values instead.
This would be a great audit to do for entire codebases.. Just check all places that are using params/payload values and see if there's actually already a session value that should be used instead.