News:

You may pay someone to create your store, or you visit our seminar and become a professional yourself with the silver certification

Main Menu

VM doesn't recognize the payment status when using PayPal

Started by melingmeier, June 03, 2012, 23:16:52 PM

Previous topic - Next topic

melingmeier

According to the unregarded Thread in the payment section I want to ask for support because of a serious bug in the paypal module.
http://forum.virtuemart.net/index.php?topic=96896.0

With VM1 the Paypal payment works perfect.

Now with VM2 it doesnt recognize the payment status after the payment process. Currently with 2.0.6 there is an order saved in the database everytime a user is forwarded to the paypal site, even the payment was not successful. If it was, the status stays the same and VM ignores the settings I made under Paypal/configuration/back to shop (Sucessfull transaction=Order Confirmed).

Nice to have: It would be nice if the customer would be redirected to my shop after paying automaticaly.

Does someone work on this? I guess for a lot of users with small shops the paypal module is very essential, so it would be great if you could focus on that issue. Thanks for your help and for this great shopsystem
Virtuemart Version: 3.0.16 on Joomla 3.5.1; php 7

DaggaTora

Same here with 2.0.8d.

If you go to paypal an order appears in the BE without payment. If you reload page, one more order.

Once paid, order status remains pending.
Joomla 2.5.17 | VM2.0.26d | PHP 5.3.28

Garf

Me three.....   Joomla 2.5, VM 2.06 /2.08  My BE order isn't even populating with the $POST data returned from PayPal. The PayPal data is accurate and completed. Order is created and status remains Pending. Anyone have a working solution?




slammy

hi,

I´ve just tested paypal today in sandbox-mode with vm SR 2.0.8_e and jml 2.5.6 on a testenvironment.
I have the same issue: After paying and without paying, virtuemart stores an order in the backend and orderstatus won´t be updated the configured way.

Whatever I choose under

VM backend -> Payments -> Paypal -> status for successfull payment
OR
VM backend -> Payments -> Paypal -> status for cancelled transactions

the order in the backend still stays on "pending", both with success- and unsuccessfull payments.
I will give it a test this weekend without sandbox-environment and post my finals here.

regards slammy

DaggaTora

Joomla 2.5.17 | VM2.0.26d | PHP 5.3.28

Garf

Quote from: DaggaTora on August 03, 2012, 18:43:25 PM
I solved setting the ipn in paypal!

Hey DaggaTora,

Can you say a little more about what you did to fix this? Are you speaking the sandbox or live version?

Quote from: slammy on August 03, 2012, 18:25:14 PM
hi,

I´ve just tested paypal today in sandbox-mode with vm SR 2.0.8_e and jml 2.5.6 on a test environment.
I have the same issue: After paying and without paying, virtuemart stores an order in the back end and order status won´t be updated the configured way.

Whatever I choose under

VM backend -> Payments -> Paypal -> status for successful payment
OR
VM backend -> Payments -> Paypal -> status for cancelled transactions

the order in the back end still stays on "pending", both with successful and unsuccessful payments.
I will give it a test this weekend without sandbox-environment and post my finals here.

regards slammy

Hi slammy,

Not sure this will help you, but when I setup a XAMPP environment on my development machine, used noip.com to create a dynamic port and set my router to NAT port 80 to my machine, transactions record and complete properly. However, as soon as I debug (curerently using NuSPhere) , the message is returned properly from PayPal in the $Global_Post variable and I can see it is completed successfully, but it is not being recognized by VM to update the order status or record the IPN information returned. It looks like VM always writes the cart as an order now, and records IPN information secondary in the PayPal section of the order if it gets some.

I've tested this both with my dynamic DNS so http://test.hopto.org  as well as http://localhost . . . localhost does not work.

If I try to debug paypal and VM, I get the correct response, but it does not write to the order. I see this response in the $GLOBALS_POST variable being returned as well as the debug message from VM:

vmdebug MONEYBOOKERS plgVmOnPaymentResponseReceived Var1:
Array
(
    [mc_gross] => 129.00
    [invoice] => cfec07
    [protection_eligibility] => Ineligible
    [payer_id] => EP2L8DBDR9828
    [tax] => 0.00
    [payment_date] => 12:18:07 Aug 03, 2012 PDT
    [payment_status] => Completed
    [charset] => windows-1252
    [first_name] => john
    [mc_fee] => 4.04
    [notify_version] => 3.5
    [custom] => eqeogfc5fdegvje6b0trdr3p17
    [payer_status] => verified
    [business] => gflaud_1343079866_biz@hotmail.com
    [quantity] => 1
    [payer_email] => japple_1340168166_per@hotmail.com
    [verify_sign] => AMTkCwXjaT5qE5-sX2q-lN2asrdXArkgLcM9lTAuvDpC-5U3JQVetAR4
    [txn_id] => 00791098S1894612J
    [payment_type] => instant
    [last_name] => apple
    [receiver_email] => gflaud_1343079866_biz@hotmail.com
    [payment_fee] =>
    [receiver_id] => N9NKCB23LFXFA
    [txn_type] => web_accept
    [item_name] => Order Number: cfec07
    [mc_currency] => CAD
    [item_number] =>
    [residence_country] => CA
    [test_ipn] => 1
    [handling_amount] => 0.00
    [transaction_subject] => eqeogfc5fdegvje6b0trdr3p17
    [payment_gross] =>
    [shipping] => 0.00
)


Does anyone know the exact point where the returned IPN is checked in the code to determine if a proper response was received? I'm at a loss to describe why VM is not posting when I have an external debugger running using the very same address and seeing the data returned properly! ...just VM refuses to update the data????

Cheers,

Garf



DaggaTora

:) Of course, but i don't know what else to say. Worrying about why google analytics didn't get my transactions with virtuemart i found this plugin: System - Virtuemart Tracking Extension and installing it i discover that i had to go to my profile in paypal and enable IPN entering: www.yoursite.xxx/index.php?option=com_virtuemart&view=pluginresponse&task=pluginresponsereceived&pm=YOUR_PAYMENTH_METHOD_ID

hope it helps!
Joomla 2.5.17 | VM2.0.26d | PHP 5.3.28

cas

I have the same problem with VM2.0.18a.  It doesn't change the order status after the payment is processed.  It remains as Pending.  Is there a fix for this? 

cas

Any update on this?  The VM status remains as Pending after a sale.  What are we suppose to change to get this to work?

cas


jjk

@cas
just in case you missed it - did you check for example this already? http://forum.virtuemart.net/index.php?topic=104994.msg349666#msg349666
Non-English Shops: Are your language files up to date?
http://virtuemart.net/community/translations

cas

Maybe I don't understand correctly, but when I read the link in your post, it looks like that's for when PayPal puts the status to "Payment Review".   I don't have that situation.  In my case the payment goes through PayPal just fine, but the VM status remains as Pending after the sale.  How do I get the VM status to change to Confirmed when the sale goes through?

Thanks,
Chuck

jjk

If you look at an order, which was paid with PayPal, which information do you have in the ipn fields, marked red in the screenshot below?
Also, please check the setting in your payment method configuration for PayPal 'Order Status for Successful transactions'. I suppose it should be set to 'Confirmed'.

[attachment cleanup by admin]
Non-English Shops: Are your language files up to date?
http://virtuemart.net/community/translations

cas

This is all I have in the Payment Method section of an Order.  As you can see it's missing most of the info that's shown in your order.   And this is an order that was successfully paid for with PayPal via VM.

[attachment cleanup by admin]