Many non-human email 'clients' (and a few poorly coded open source ones) fail to follow RFC 2822 standards. Within RFC2822 is "The only required header fields are the origination date field and the originator address field(s). " More at [ietf.org ]
HOWEVER: almost all email clients used by humans add many more fields. Some anti-spam measures take this into account and test for them. From: To: Date: are some of the fields.
OK, so you're wondering which to add? Test with a human used client. If mail goes through compare headers to the failing app/sender. One at a time add in a header seen only in the successful email. Usually this takes only 2-3 tries before finding the stumbling point.
Watch the IP's as sometimes the IP seen externally is NOT what you think it is. I have seen cPanel on Centos Linux not put the Exim mail server on the same IP as Apache when there are more than one IP per server. Use a free email account to check IP.