I'm having great difficulty in finding out how I'm supposed to do this. I have applications that need to send e-mails form our domain.
I've had a suggestion to use shared accounts, but I don't think you can log in as a shared e-mail account (ex: [email protected]), and let alone all of my applications would share a password (ack!).
Do I have to purchase mailboxes for every service and application account? Is there a way to run a non-human user account?
Shared Accounts won't work, as you will be unable to login into them. Shared Accounts can only be added as another mailbox to a full user account.
You can purchase a mailbox for each service, but that's not really the way to do it, you'll be paying a lot and the operation of those accounts will be a headache.
SMTP Relay is what you need, you'll configure your local apps to send to the relay, and the relay server will take care of mail delivery for you. Here's a very nice detailed step by step link on how to enable it with tools for testing: http://o365info.com/smtp-relay-in-office-365-environment/