Today I needed to find out how to process PayPal Express Checkout transactions for third parties. PayPal allows merchants to give permissions to other merchants to perform transactions on their behalf, without having to hand over their private API username, password and signature. While we have implemented Express Checkout for ourselves, I couldn’t find out how to perform the transaction on behalf of another merchant until I found this useful post.
To quote from the link above:
Yes, you specify an alternate “SUBJECT” of the transaction.
Normally your SetExpressCheckout request looks something like:
&VERSION= &PWD= &USER= &SIGNATURE= &...
Now it will look like this:
&VERSION= &PWD= &USER= &SIGNATURE= &SUBJECT= ...
Payee_PayPal_Account is the email address/username the user uses to log in.
(Note that email address/username is NOT the API username of the account.)