I was really looking forward to hearing a discussion (and research) of when clearly defining choices are better than using checkboxes, but I didn't see it, so I'm adding my own answer in hopes it encourages someone else to reply with more information. Here's my thoughts.
In general, the checkboxes are better. The exception is when all of the below are true:
- You have enough screen space to handle something like "Both Customer and Item", as well as having three radio buttons instead of two checkboxes
- You are targeting users who are unfamiliar with web interfaces such that they won't naturally just click on both checkboxes, and even putting the phrase "click on all that apply, but you must click at least one" somewhere won't help.
- "Neither" is not an option, and you want to make that fact explicit.
Note that the same discussion can be had if None is an option but Both is not.