Hi,
I have the option turned on for: Do not create order unless it has a successful payment. Even so, if someone proceeds to pay with Paypal but returns to the site without paying, the order is saved. Can I stop this behavior? Or maybe there is a conflicting feature I can resolve?
Thanks!
Barbara
Option to \ not create order unless it has a successful pay
-
- Commander (CMDR)
- Posts: 139
- Joined: Wed Mar 31, 2010 8:59 pm
- compunerdy
- Admiral (ADM)
- Posts: 1283
- Joined: Sun Nov 18, 2007 3:55 pm
Re: Option to \ not create order unless it has a successful pay
Same issue.. would love a fix for that.
Re: Option to \ not create order unless it has a successful pay
Unfortunately it is not possible to prevent this scenario. The design of how regular PayPal has to be implemented makes this, at best, a difficult fix. That's because the shopper must leave the Able site entirely to perform the appropriate PayPal actions. This prevents the Able site from easily detecting the result of the PayPal side of the equation.
Technically speaking, the order is actually created before the shopper even reaches the PayPal site. Able has to generate the order object so that it can tell PayPal what order number is to be referenced for that payment. In doing so, the shopper basket is cleared as well. This makes it difficult to "unwind" things even if Able could tell what happened at PayPal.
This is also why you will sometimes see an order in Able with a payment status of waiting for IPN. The shopper chose PayPal, Able created the order to produce the order number, and then the shopper left the website to complete the PayPal side of the transaction. If the shopper cancels out of the PayPal screen, it leaves the Able order waiting for an IPN that will never arrive.
There are more advanced implementations of PayPal that permit direct API communication. However it would require substantial effort to modify the Able PayPal integration to utilize the advanced API comms. I've done it with a mobile app tied to Able and it was not simple at all. Once it was done, it was elegant. Just a long road to walk to get there from a development standpoint.
Technically speaking, the order is actually created before the shopper even reaches the PayPal site. Able has to generate the order object so that it can tell PayPal what order number is to be referenced for that payment. In doing so, the shopper basket is cleared as well. This makes it difficult to "unwind" things even if Able could tell what happened at PayPal.
This is also why you will sometimes see an order in Able with a payment status of waiting for IPN. The shopper chose PayPal, Able created the order to produce the order number, and then the shopper left the website to complete the PayPal side of the transaction. If the shopper cancels out of the PayPal screen, it leaves the Able order waiting for an IPN that will never arrive.
There are more advanced implementations of PayPal that permit direct API communication. However it would require substantial effort to modify the Able PayPal integration to utilize the advanced API comms. I've done it with a mobile app tied to Able and it was not simple at all. Once it was done, it was elegant. Just a long road to walk to get there from a development standpoint.
Joe Payne
AbleCommerce Custom Programming and Modules http://www.AbleMods.com/
AbleCommerce Hosting http://www.AbleModsHosting.com/
Precise Fishing and Hunting Time Tables http://www.Solunar.com
AbleCommerce Custom Programming and Modules http://www.AbleMods.com/
AbleCommerce Hosting http://www.AbleModsHosting.com/
Precise Fishing and Hunting Time Tables http://www.Solunar.com
-
- Commander (CMDR)
- Posts: 139
- Joined: Wed Mar 31, 2010 8:59 pm
Re: Option to \ not create order unless it has a successful pay
Hi,
Thanks for that excellent explanation! We'll just have to continue to make sure all orders are properly funded before shipping.
Barb
Thanks for that excellent explanation! We'll just have to continue to make sure all orders are properly funded before shipping.
Barb