thephpleague / omnipay-paypal

PayPal driver for the Omnipay PHP payment processing library
MIT License
295 stars 174 forks source link

Missing SELLERPAYPALACCOUNTID in ExpressCompleteAuthorizeRequest #179

Open nitemarket opened 6 years ago

nitemarket commented 6 years ago

In ExpressAuthorizeRequest->getData(), it is defined as:

...
$data['PAYMENTREQUEST_0_SELLERPAYPALACCOUNTID'] = $this->getSellerPaypalAccountId();
...

But not in ExpressCompleteAuthorizeRequest->getData(). This make seller paypal account ID change back to originally authenticated user (who holds username, password & signature).

Please add that missing line in complete authorize so that payment can be directed to particular seller account.

Refer: https://developer.paypal.com/docs/classic/express-checkout/ht_ec-parallelPayments/ (bottom sections: 4) Call DoExpressCheckoutPayment to capture the payment.)

delatbabel commented 6 years ago

I don't personally use PayPal Express mode (I only use REST mode) and I don't have test accounts for it so it's not really reasonable for me to submit an untested patch like this. If you can make the change and submit a PR then I'll merge that.