I am a travel agent and I charge professional consultation fees. I never compete on price but on service yet I do get my clients the best possible value. I give my clients what they truly want and offer several levels of service not available from the online agencies or many other travel agents.
I do charge cancellation or change fees on groups because groups take quite a bit of work and like many here I do not work for free.
I don't work with price shoppers because the price of the cruise has nothing to do with the service that I am offering. I work for my clients and not for my suppliers and as such my clients pay my salary. The suppliers provide my a commission for booking a client with them.