I’m trying both ways actually, hoping that one will work. Primarily, I have a solid layer that I’ve made 3D, onto which I am casting shadows only, exactly as you have said. If I have this layer in a precomp, I can get shadows to be cast on it fine, but I can also see the solid white layer even though I have switched it to receive shadows only. If I cut this layer and paste it into the main comp, then it all works as intended – it receives shadows only.
I realise that blend modes doesn’t factor into this method, but even if I change blend modes, there is no discernible change.