Hi Andy,
Your approach sounds good. I've never used bulk data copying, so I can't really give very useful feedback. As for debugging, well, have the code log what it's sending and then double-check with the protocol docs—there are often subtle gotchas described in the 'message flow' document that aren't mentioned in the message-by-message reference.
Best, Marijn