News:

Looking for documentation? Take a look on our wiki

Main Menu

Send Notification Email When Paypal is Pending

Started by lukelee, March 05, 2013, 07:10:16 AM

Previous topic - Next topic

lukelee

I am on virtuemart 2.0.14, and in paypal payment method, there is a message: Warning - In VM2, the vendor and buyer will ONLY receive an email when the transaction is complete.
I don't understand why? I really need a notification when people place order, even it is pending.
Anyone got any idea how to do this?
I have found maybe 50 posts talk about this, but non of them has the solution.

jenkinhill

In the current VM version (2.0.18c) you should set "Default Order Status to send an invoice " to pending  in configuration/checkout
Kelvyn
Lowestoft, Suffolk, UK

Retired from forum life November 2023

Please mention your VirtueMart, Joomla and PHP versions when asking a question in this forum

lukelee

Quote from: jenkinhill on March 05, 2013, 09:35:47 AM
In the current VM version (2.0.18c) you should set "Default Order Status to send an invoice " to pending  in configuration/checkout
Thank you :) I will try.

lukelee

Quote from: jenkinhill on March 05, 2013, 09:35:47 AM
In the current VM version (2.0.18c) you should set "Default Order Status to send an invoice " to pending  in configuration/checkout
Hi, isn't the current version 2.0.18a? I updated it, and nothing has changed. invoice only sent when I manually change the status

jenkinhill

2.0.18c is the current version - http://forum.virtuemart.net/index.php?topic=113052.0  Get it  from http://dev.virtuemart.net/projects/virtuemart/files

The Paypal plugin should automatically set the order to confirmed when payment is compleated, so sounds like there is an issue with that on your store.
Kelvyn
Lowestoft, Suffolk, UK

Retired from forum life November 2023

Please mention your VirtueMart, Joomla and PHP versions when asking a question in this forum

lukelee

#5
I did update, but no help.
I think it is paypal plugin. Because I created a standard payment, make it bank deposit. both vendor and buyer receive notifications without any problem.

Is there anyway to set up paypal in standard mode? like in old virtuemart, we need to manually put in some code?

victoriacara

We had the same problem of wanting to receive notification of an order even if the transaction was not completed.

Our fix to this was to open the file file:///var/www/estechnicalNew/plugins/vmpayment/paypal/paypal.php

After line 257 ie after it says       

      $cart->_confirmDone = FALSE;
      $cart->_dataValidated = FALSE;
      $cart->setCartIntoSession();
      JRequest::setVar('html', $html);

We added the following

      $mailsubject = "New Order Received";
      
      $mailsubject = "PayPal Transaction Pending: ";
      $mailsubject.=$post_variables['order_number'];
      $mailbody = "Hello,
      Notification of a Paypal order pending
      ----------------------------------
      Order Number:
      ";
      
      $mailbody.=$post_variables['order_number'];
      $mailbody.= " ";
      $mailbody.=$post_variables['first_name'];
      $mailbody.= " ";
      $mailbody.=$post_variables['last_name'];
      
      
      $this->sendEmailToVendorAndAdmins ($mailsubject, $mailbody);

This worked for us. It does however, send us three emails, we decided we could live with this!

virtucms

Quote from: victoriacara on December 11, 2013, 12:18:34 PM
We had the same problem of wanting to receive notification of an order even if the transaction was not completed.

Our fix to this was to open the file file:///var/www/estechnicalNew/plugins/vmpayment/paypal/paypal.php

After line 257 ie after it says       

      $cart->_confirmDone = FALSE;
      $cart->_dataValidated = FALSE;
      $cart->setCartIntoSession();
      JRequest::setVar('html', $html);

We added the following

      $mailsubject = "New Order Received";
      
      $mailsubject = "PayPal Transaction Pending: ";
      $mailsubject.=$post_variables['order_number'];
      $mailbody = "Hello,
      Notification of a Paypal order pending
      ----------------------------------
      Order Number:
      ";
      
      $mailbody.=$post_variables['order_number'];
      $mailbody.= " ";
      $mailbody.=$post_variables['first_name'];
      $mailbody.= " ";
      $mailbody.=$post_variables['last_name'];
      
      
      $this->sendEmailToVendorAndAdmins ($mailsubject, $mailbody);

This worked for us. It does however, send us three emails, we decided we could live with this!

Hello,
I am long time reader and first time asking a question.
As you, I wan to receive a notification when we have an order pending
Therefore, I want to know which line I have to modify to paypal.php file.
As you mention the line, it is not same for me.

Therefore I tried to find
$cart->_confirmDone = FALSE;
      $cart->_dataValidated = FALSE;
      $cart->setCartIntoSession();
      JRequest::setVar('html', $html);

I have that in two place in paypal.php file. After which one that I have to put the code that you provided.

I am using the current version of virtuemart 2.0.26 and Joomla 2.5.16

Thank's a lot for any help


[attachment cleanup by admin]