I've built a fair few of these, and the one thing I always find is that no matter how carefully you control the formatting options, validate the input, structure the template/s and/or veto your users, they will ALWAYS screw the damn thing crossways.
The best advice I can give is to talk to them in as much depth as possible about what features they want, control they need and results they expect. It's worth knocking up a static version (ie; "this is the form you'll be entering data into; this is what it might look like when it comes out"), just so you can avoid questions at the end like:
"I thought I was going to be able to change that."
"I thought 'delete' meant 'put in a safe, magical place that I can get to later'."
"Where do I attach my Word document?"