Hi, it seems about right, but I haven't tested all cases. I concur with your assessment of the page presented by Paypal. By default it does not auto-return. You can however enable automatic return on your paypal account and provide the url to return to (checkout success).
This is something I am considering and will have to test it. greets, Luuk On Friday, November 15, 2013 9:49:55 PM UTC+1, retracile wrote: > > Due to Google Checkout's demise, I'm scrambling to get switched over to > using the PayPal processor.[1] I'm running into some issues with the > implementation, and would like to get a sanity check before I start > writing patches... > > The code appears to assume that the user will reach the > shop/checkout/paypal/success page > > This is a false assumption. The user paid for the merchandise on the > paypal site, and is presented with a completed order page and 3 > different links, one of which is to "return to XYZ's site". *Nothing* > guarantees the user will ever click that link. > > The code comments *imply* the expectation that the user will click the > link before the IPN call (PayPal's notification callback). At least > with my testing, if I take more than a couple of seconds to look at the > PayPal page, the IPN call happens before I get back to my site. > > There is inventory tracking logic in the handler for the success page. > That means it won't get updated reliably. Therefore, it would seem that > the inventory tracking logic belongs in the IPN callback, not in the > success page view handler. Should I submit a patch to move that logic? > Is there "remove_order_items_from_inventory(order)" function that > should be called instead of having a for-loop in every backend? > > The success page is intended to act as a receipt. But when the user > hits that page, the orderID is removed from their session data. That > means hitting refresh on the page will lose the receipt, and give an > error message saying "Your order has already been processed." Has there > been any thought given to making the success page a bit less hostile? > Like maybe showing the most recent order and a link to order history or > something? (I think the latter is not a currently offered feature, but > I haven't gone looking. Please correct me if that is wrong.) > > The cart is cleaned up in the success page view handler. I believe that > means a user who returns to the site via something *other than* the > success page will find the items they have already purchased still in > their cart. I understand the logic of clearing the cart here: if the > IPN hasn't happened yet, you may still want to show an empty cart to the > user. But that suggests the cart should be cleared here *in addition > to* not *instead of* in the IPN handler. Ideally, whichever event > happened first would clear the ordered items out of the cart, and the > second event would leave the cart alone. Has anyone made an effort to > do something like that? > > Pointers, corrections to misunderstandings, etc, are most welcome, > > Eli > > [1] Deadlines are so much fun. Google Checkout shuts down on the 20th > of this month... > ----------------------. "If it ain't broke now, > Eli Carter \ it will be soon." -- crypto-gram > [email protected] > <javascript:>`--------------------------------------------- > -- You received this message because you are subscribed to the Google Groups "Satchmo users" group. To unsubscribe from this group and stop receiving emails from it, send an email to [email protected]. To post to this group, send email to [email protected]. Visit this group at http://groups.google.com/group/satchmo-users. For more options, visit https://groups.google.com/groups/opt_out.
