Nop 2.0 order of steps in checkout

This topic was automatically closed 365 days after the last reply. New replies are no longer allowed.
12 years ago
Hi all,

I've setup a store on Nop 2.0 and noticed a strange change from previous version. I have PayPal standard setup and it redirects the user off to paypal and than back. The order of steps now (default for Nop 2.0) is:

1. Billing & shipping adress
2. Shipping options
3. Select payment method ( i select PayPal )
4. Payment method info (you will go to paypal to complete the order) .. so I click next and ..
5. Confirm order screen
6. Paypal ..

Now the strage thing is the #5 Confirm order .. when I click that the order is placed in the store .. and my customer is off to paypal ..  and they get a confirmation email before they even pay .. a bit strange but maybe it makes sense .. In 1.9 it used to be first pay then go back to nop commerce and click "Confirm".

Also my feeling is that adding an additional empty screen with "Confirm" button on it isn't going to make my store perform better .. can't we confirm the order at the same moment the user is redirected to PayPal?

Is this a bug or is this by design? I am not sure if I should be hacking to get rid of this or not ..

Filip
12 years ago
It's by design. The same workflow was in 1.X versions. Order should be saved before a user is redirected to a third-party payment site. After a user is redirected he does not get a confirmation email (it's an 'order placed' email). Confirmation email will be sent after order is paid and completed. BTW, you can disable 'order placed' email in admin area. In this case, customers will not get any 'order placed' emails until order is completed
12 years ago
Hi Andrei,

a.m. wrote:
It's by design. The same workflow was in 1.X versions. Order should be saved before a user is redirected to a third-party payment site. After a user is redirected he does not get a confirmation email (it's an 'order placed' email).


Thant's not how it looks like looking at the order notes. Here's an exceprt from one of the order from Nop 1.8 I am still running:

8/24/2011 8:36:45 PM  
Order status has been changed to Processing

8/24/2011 8:36:44 PM
Paypal IPN: [..] New payment status: Paid

8/24/2011 8:36:40 PM  
"Order placed" email (to customer) has been queued. Queued email identifier: 2790.
  
8/24/2011 8:36:39 PM  
"Order placed" email (to store owner) has been queued. Queued email identifier: 2789.
  
8/24/2011 8:36:37 PM  
Order placed

I find it hard to believe that customer managed to complete the Paypal Standard payment in 7 seconds from placing the order. Obviously the store is changing the status of the order placed once payment is received. This is consistent with my experience over 300+ orders from that store.

Also the order status doesn't change to COMPLETE once the order is marked as paid. There is not way to send customer "thank you - your payment has been received - we're busy packign" email without hacking the code.

Again this is confusing to me because it works different than in 1.8

Filip
12 years ago
Hi Filip,

fkierzek wrote:
I find it hard to believe that customer managed to complete the Paypal Standard payment in 7 seconds from placing the order. Obviously the store is changing the status of the order placed once payment is received.

Your order note sequence looks fine for me.
1. Order is placed
2. Order is paid (payment status is set to 'Paid). Hence its order status is marked as processing. It always worked this way.

Regarding 7 seconds. I presume that you also have PayPal Direct enabled on your site, have you? It's usual time for IPN handler.

fkierzek wrote:
Also the order status doesn't change to COMPLETE once the order is marked as paid. There is not way to send customer "thank you - your payment has been received - we're busy packign" email without hacking the code.

Again this is confusing to me because it works different than in 1.8

It worked absolutely the same way in 1.80 version! An order status is set to 'Comleted' when its payment status is set to 'Paid' and shipping status is 'Delivered' in case shipping is required. If shipping is not required, then its marked as 'Completed' right after its payment status is set to 'Paid'. You can override this behavior in OrderProcessingService class (CheckOrderStatus method). Of course, it would be better if store owner could manage and configure this order workflow in admin area. But it's not supported yet.
12 years ago
a.m. wrote:
Hi Filip,
It worked absolutely the same way in 1.80 version!


Mea culpa - I was using PayPal Express in 1.8 (blush). Nop 2.0 doesn't have PayPal Express hence I am using PayPal Standard. The two are evidently working differently.

Express would grab the money than take customer back to click the confirm. If they didn't they wen't back to try to checkout again - their basket was intact.

Standard places the order and then sent the customer off to PayPal. The order is placed and visible .. but unpaid. If something goes wrong with PayPal .. the customer has no way to try to pay again. He's a lost customer.

Sounds like there is a need for button in customer panel that would allow customer to reinitialize payment process. However guest users can't get there cause they can't login. Hmmm.. sounds like I also will need to implement checking order status via GUID instead of id ..

Andrei! Give us back PayPal Express! :-)

Filip
12 years ago
fkierzek wrote:
Express would..
...
Standard places the order...

Absolutely right. BTW, 'Allow customer to complete a payment after order is placed but not completed (for redirection payment methods)' is already on the roadmap. It's here

fkierzek wrote:
Andrei! Give us back PayPal Express! :-)

Maybe, a bit later (as plugin)
12 years ago
Let's not reinvent the wheel.

How are other webshops handling this?
12 years ago
a.m. wrote:
Absolutely right. BTW, 'Allow customer to complete a payment after order is placed but not completed (for redirection payment methods)' is already on the roadmap.


Great!

Won't this give problems with discounts and offers. Which pricing do you use? the current or the order prices?
12 years ago
ajhvdb wrote:
Won't this give problems with discounts and offers. Which pricing do you use? the current or the order prices?

No. The order prices should be used.
P.S. This feature is not implemented yet.
12 years ago
Ok, so you create the basket again from the order and use a flag "use order 10".

What will happen to orders created as guest?
This topic was automatically closed 365 days after the last reply. New replies are no longer allowed.