C# Update account based on user order data. Nested if-else optimization with almost similar values
This code is hard to read, deeply nested and hard to understand. But you already know that.
Since you have a lot of binary cases (if-else) I suggest creating a truth table
on paper or whiteboard https://en.wikipedia.org/wiki/Truth_table#Binary_operations for your different combinations of input and output.
This should help you figure out which cases can be simplified, short-circuit, etc, and then you can rewrite the code to make it more readable. Use early returns and maybe refactor it into functions that allow you to check error conditions and return/exit as soon as possible for each case.
The end goal should be a code structure that doesn't nest 4 5 levels deep, preferrably no more than 2.