If you are looking for a solution you can find it here.
Thank you Gleb ( http://www.memberwing.com/ )
The problem comes in how the API is designed, and it takes advantage of a little known feature of query parameters and their allowed characters. Paypal uses array'ed parameters like:
The problem is that PHP does not know how to parse the query parameter and either skips it or stops processing the list. ( i can't remember which ).
Paypal's Adaptive Payments API is neat and freshens up their functionality, and additionally uses JSON as a communication layer, so I think it's clearly their future, however, there are a number of little problems like this as you walk through getting up to speed on the API. I hope this helps anyone in the future by saving them an hour to day.
It kinda reminds me of some of the problems we had getting the MySpaceID API up and polished so I guess this is a nod to all of those APIs that do it right the first time.