Sabrina Leggett
Sabrina Leggett

Reputation: 9485

Paypal Express Checkout payments remain on pending then expire. Confirmation returns PENDINGREASON=order.

I have a website integrated with Paypal Express Checkout. Currently on our production servers we're always getting back PENDINGREASON=order (and from the Paypal back end I can see that the payment is pending and then eventually it will expire). I would ideally like a way to solve this programmatically, but if not at least knowing how to claim the money from the paypal backend before it expires would be nice. Has anyone experienced this? Most of our customers are from overseas, and I've heard that this might cause payments to be pending for up to 21 days, but as I said after that point they're just expiring. Also, I'm not 100% sure if we're using IPN or not (I believe we're doing the processing when the user is redirected back to our site). Could this be causing the problem as well?

Upvotes: 3

Views: 1301

Answers (1)

Preston PHX
Preston PHX

Reputation: 30359

There are 3 different types of Express Checkout transactions: Sale, Authorization, and Order.

  1. Action = Sale transactions are automatically captured the moment they are committed by the final DoExpressCheckoutPayment call.

  2. Action = Authorization transactions place a hold on the funds that can later be captured. (guaranteed for 3 days in most cases, after which the hold is released but can almost always still be captured on days 4-29 provided funds are available). Authorizations may be captured via the DoCapture API call and also in the www.paypal.com account interface

  3. Action = Order does not place a hold on the funds, but it does give you the ability to auth & capture at a later point (still 29 days by default). Orders cannot be captured within the www.paypal.com account administration interface. The only way to capture them is with the 'DoCapture' API call.

Upvotes: 3

Related Questions