News:

Support the VirtueMart project and become a member

Main Menu

Edit order price when status is pending

Started by Nikanor, May 27, 2018, 13:52:01 PM

Previous topic - Next topic

Nikanor

I need help how to change order price when order is placed and status is "Pending"

As a payment option I use PayPal Payment Pro...

Question: buyer have placed order and now order status is "Pending", I need to add shipping cost to this order, I know how to edit order details like prices, add new items but how can a customer pay that difference in price when he paid it already (but I have not accepted payment, status is "pending")? Did I need to cancel this payment or just change the price and change the status to "completed"? What will happen in this situation, will the buyer receive a message from paypal to accept a new price or?

I have no experience with PayPal so I do not know how to change order price when the status is "pending".


I use latest Joomla and Virtuemart version...

Jörgen

Hello you say nothing about vm or joomla versions.
You should check your Paypal account. If the payment isn't visible there it has not been confirmed by Paypal i.e the customer has not payed. If it is confirmed, then you probably have to check you paypal settings. Confirmed should be the status given by Paypal for a confirmed payment.

Regards
Jörgen @ Kreativ Fotografi
Joomla 3.9.18
Virtuemart 3.4.x
Olympiantheme Hera (customized)
This reflects current status when viewing old post.

Nikanor

Quote from: Jörgen on May 27, 2018, 18:51:33 PM
Hello you say nothing about vm or joomla versions.
You should check your Paypal account. If the payment isn't visible there it has not been confirmed by Paypal i.e the customer has not payed. If it is confirmed, then you probably have to check you paypal settings. Confirmed should be the status given by Paypal for a confirmed payment.

Hello Jörgen, thanks for your reply.

You misunderstood my question.

My question is: How to change price of the order with "pending" status? Buyer have placed order but I need to add shipping cost. What I need to do, to cancel order or after changing price to change status to completed (this makes sense only if Paypal send notification to buyer and if Paypal has the option to add a price difference and pay directly from a Paypal account and not to make a new order)

Thanks



Joomla version:        3.8.8
VirtueMart version:  3.2.14

Jörgen

Sorry
I do not know what Paypal can and can not do, this is a question for Paypal support. I have never handled such a Paypal option, who decides what the customer shall pay and when ? When and how ist this notification created and sent ?

The Paypal plugin only handles what VM tells it to charge the customers Paypal account.

regards

Jörgen @ Kreativ Fotografi
Joomla 3.9.18
Virtuemart 3.4.x
Olympiantheme Hera (customized)
This reflects current status when viewing old post.

anantmaks

This is not an ethical and viable flow to achieve in any e-commerce. Once a payment is proceeded by a buyer that means he/she has authorized only that much amount to be paid to any other party. Changing price afterward, of the product or anything doesn't provide a payment gateway authority to charge that buyer more or less.

The only way to do is cancel this order, include shipment cost right in the beginning of proceeding payment (that is in the cart) so that buyer has information what he/she is going to pay and ask that buyer again to order.
Anant Garg
Ghaziabad, India

AH

QuoteThis is not an ethical and viable flow to achieve in any e-commerce
As was stated.
Quotebut how can a customer pay that difference in price when he paid it already

You should not really be trying to change the order it is not best practice.

It can be viable - only if the customer DID NOT complete their payment.
This can happen if their is/was an issue with PayPal.

If the customer has not completed the payment and there is a Pending order in the system. 
This order will not be updated by PayPal's IPN notification - because no payment attempt was made by the customer, therefore - there is nothing to notify on and no payment has been made for the order as it stands.

You CAN change an order at this stage and will then need to ring the customer to confirm the new order price and get payment details and complete the payment via PayPal's Virtual terminal (VT) as a Cardholder Not present (Telephone order) payment.

When the payment is successful via VT - you manually can update the order status to "confirmed".


If you really must do such a thing

Modify the order - and call the customer to agree to pay the difference via VT.  Not good practice and may get you in trouble with local tax authorities due to potential invoice changes.
Regards
A

Joomla 3.10.11
php 8.0

Milbo

AH reuse orders! the pending order should be reused, but then the cart sets automatically the old shipment price.
Should I fix your bug, please support the VirtueMart project and become a member
______________________________________
Extensions approved by the core team: http://extensions.virtuemart.net/

anantmaks

Quote from: AH on May 28, 2018, 11:15:48 AM
This can happen if their is/was an issue with PayPal.

You CAN change an order at this stage and will then need to ring the customer to confirm the new order price and get payment details and complete the payment via PayPal's Virtual terminal (VT) as a Cardholder Not present (Telephone order) payment.

All in all, what you are trying to achieve is make payment from buyer's account on behalf of the buyer. If you consider this flow will result in many unavoidable situations later on, and you would require making every buyer sign a "contract" with you that you have legit permissions to charge them afterward. This is similar to hotel bookings, where they take our card imprints and make us sign contracts that they can charge from our card afterward if any bill remains unpaid. For this, they also have some legal procedure and obligations in their business operations as per my knowledge.

There are also some payment gateways that have this procedure built in them as per my knowledge.
Anant Garg
Ghaziabad, India