I want to allow another domain on the internet to send on behalf of our domain. So if they send out an email it appears that it came from our domain.
I know that they will have to add our domain on their mail server and then we will have to add their IP as MX in our DNS – Is there anything else we need to do in our DNS or they need to do in their DNS? Is this the correct approach, I never done this before???
I wouldn't add their IP as MX as this could cause your mail to go to them in case of a network outage at your site.
But what you'd need to do in your DNS is modify your SPF record.
On a side thought: Is it possible/feasible/doable to have them send through your Exchange? This way you can document/track/archive what they send on your behalf.
How can I let them relay through my mail server??? Are there are pitfalls if their server gets spammed and we get hit by that too???
The issue here is that what we want is that even if they send on our behalf we want the receipient to see that email came from ourdomain.com and not theirdomain.com