I was told they were interchangeable except in few cases. What are they?
Yes and no.
互相 - one another; each other; mutual; mutually.
彼此 - one another; each other.
Above are interpretations from the dictionary, the meanings seem to overlap, but not exactly.
互相 should mean "one another mutually provide some favor in return" - 你我互相幫助 (You help me, and I help you).
彼此 should mean "you and I" or "each other" - 彼此之間 (Between you and me); 不分彼此 (we are equal, nothing divides us).
However, they are interchangeable as in the sentence below:
In the sentences above, both mean "each other", or "one another" - Siblings shall help each other (one another).
Also note that the two can work together in a sentence:
- 你們要"彼此互相"幫助 - You shall (mutually) help each other. Note that the sequence of 彼此互相 should not be reversed.
彼此 is more like a noun when 互相 is more like an adverb in a sentence.
Including the example from SE12938683, terms below never use 互相 simply because 互相 cannot become things/objects.
不分彼此 (No difference between you and me/he/she.)
彼此之間 (In between A and B. 彼此 acts as a subject.)
彼此要相親相愛 (A and B should cherish and love each other. Here also starts as a subject, meaning you and he/her, or this and that.)