Regardless of legality (and this has been touched on already), is charging upfront fees a good business decision? Will it make your personal pipeline more profitable? I honestly don't think it will. The first thing a client would likely do when being asked to pay up front would be to find someone who would do it with no upfront fees. And there are countless who will. It's crazy competitive out there for new deals and client loyalty + upfront fees is a bad equation IMHO.