Does a non deterministic Turing machine which is a decider halt on all branches for all inputs?
You can define it either way.  The simple way to  define it is to say that every branch must halt for every input.  Alternatively, you can say that, if the input is in the language, at least one branch must accept, so you don't care if the others reject or just fail to halt; if the input is not in the language, then every branch must reject.

Both in terms of computability and complexity, you can show that the two definitions are completely equivalent.