Not receiving payment confirmation emails (Paypal)

  • Posts: 12
  • Thank you received: 0
12 years 11 months ago #32905

I am using the Paypal payment plugin and am currently testing using Paypal Sandbox.

When a user is directed to paypal to make the payment, two emails are generated:
- An email to the customer, with the title "Your order No. C4A6 is now created at www.site.co.uk/ "
- An email to the store owner, with the title "New order No. C4A6 created on www.site.co.uk/ "

However, when the customer completes the payment within Paypal, no more emails are generated. The order stays at "created" within Hikashop. I assume this is not working as intended?

Here are the possible reasons for this according to Hikashop documentation. None seem to apply in my case so I was wondering if there is any way I can investigate this further?
- Your website is on localhost (ie. not accessible from the Internet). PayPal can only send payment notifications to HikaShop if your website is accessible from the outside. No
- Your website is protected by an .htaccess which only allows the access when the correct username/password is entered. PayPal doesn't know the username/password of your .htaccess and thus cannot contact HikaShop. No
- Your website is in maintenance and only accessible for users with an administrator account. PayPal won't be able to contact HikaShop because Joomla won't authorize him.No
- The option "allow payment notifications from paypal" of the PayPal is turned off. You should turn it on. It is on
- You changed the IPs in the PayPal IPs option of the PayPal plugin. I haven't changed them. I tried clicking "refresh" but that didn't help
- You have a security component which forbids scripts to contact your website. You should ask a solution from your security component provider. Not as far as I know

Please Log in or Create an account to join the conversation.

  • Posts: 82868
  • Thank you received: 13376
  • MODERATOR
12 years 11 months ago #32923

You could try to turn on the debug mode of your paypal plugin and do an order again.
Then, in the Files tab of the configuration of HikaShop, look at the payment notification log to see if you have anything in it.
Sometimes, when you're using the sandbox of PayPal, you can have notifications not going out:
stackoverflow.com/questions/6748263/payp...otifications-problem
So you might want to check with PayPal sandbox support if your sandbox account is working properly for notifications.

Please Log in or Create an account to join the conversation.

  • Posts: 12
  • Thank you received: 0
12 years 11 months ago #33142

Hi, thanks for the reply.

You were right. I gave up on Paypal sandbox and just tested using real transactions and it solved the problem. Sandbox has been quite buggy for the past few weeks so I guess this must be another example of that.

Thanks

Please Log in or Create an account to join the conversation.

  • Posts: 23
  • Thank you received: 0
12 years 8 months ago #42054

I find my self in the exact same situation described!
And also I can get the CANCELLED status when I discard the payment on paypal but I can't get the CONFIRMED status when I complete the payment....
This means hikashop is able to get notification from paypal.
I've tryed any combination of checkboxes between Debug Mode and Return Methods... no changes.
....
I need to have sandbox working cause I'm also working on
onAfterOrderConfirm(&$order,&$methods,$method_id)
and I want this function to be called automatically when the order get to COMFIRMED status, so I can't pay paypal duties every time I want to test my function!!
I need Sandbox!! help help!!!

Please Log in or Create an account to join the conversation.

  • Posts: 82868
  • Thank you received: 13376
  • MODERATOR
12 years 8 months ago #42063

HikaShop is not getting the notification. The orders are automatically cancelled when the use comes back from PayPal. There is no notification needed for that.

The function onAfterOrderConfirm is called at the end of the checkout.
It's the function onPaymentNotification which is called when a paypal notification is received.

Did you turn on the debug mode of the plugin, then did an order and then looked at the payment log in the Files tab of the configuration ? What do you have in it ?

Please Log in or Create an account to join the conversation.

  • Posts: 23
  • Thank you received: 0
12 years 8 months ago #42071

Nicolas,
I've tryed any combination of radio buttons of DEBUG MODE and RETURN METHOD in paypal plugin configuration page... nothing seems to work..
Log file is empty.
What else can I try?

Please Log in or Create an account to join the conversation.

  • Posts: 82868
  • Thank you received: 13376
  • MODERATOR
12 years 8 months ago #42073

If the log file is empty, it means that no payment notification was sent to HikaShop. If you checked all the points posted above, it means that it doesn't come from your server. It might come from a setting in your PayPal sandbox account.
Please contact PayPal sandbox support to see if they can help you.

Please Log in or Create an account to join the conversation.

  • Posts: 23
  • Thank you received: 0
12 years 8 months ago #42077

Is Hikashop system working with Instant Payment Notification (IPN's) from Paypal?

Please Log in or Create an account to join the conversation.

  • Posts: 82868
  • Thank you received: 13376
  • MODERATOR
12 years 8 months ago #42079

Yes of course.

Please Log in or Create an account to join the conversation.

  • Posts: 23
  • Thank you received: 0
12 years 8 months ago #42865

Hi Nicolas,
Still can't get the notification back from Paypal...
Thinking now I'vent' listed proper sandbox paypal Ip's to get the IPN:
When I try a REFRESH I get the error I've attacched on the screenshot.
I've tryed to list it manually, found the list in here:
ppmts.custhelp.com/app/answers/detail/a_...ZC9XTGtXclVTaw%3D%3D
so I added 173.0.82.* to the list.
disabled the firewall but nothing is happening, even log is still empty... any suggestion?!
Thanks in advance

Attachments:

Please Log in or Create an account to join the conversation.

  • Posts: 23
  • Thank you received: 0
12 years 8 months ago #42915

Nicolas,
I've managed to have the Log working (problem with directory permissions)
and I get this:
"

Array
(
[option] => com_hikashop
[ctrl] => checkout
[task] => notify
[notif_payment] => paypal
[tmpl] => component
[lang] => it
[language] => it-IT
[Itemid] =>
[hikashop_front_end_main] => 1
[view] => checkout
)

Could not load any order for your notification
"
I've got it from 173.0.82.126 so I think 173.0.82.* has to be added to the list.
Can you help me?
What's wrong with the notification.... Am I missing sothing? Is Itemid a refer to the order?
Tahnk you

Please Log in or Create an account to join the conversation.

  • Posts: 23
  • Thank you received: 0
12 years 8 months ago #42976

Hi Nicolas please help I feel like left in the rain.
We are subscribing a Business licence at the account fdomenella - This email address is being protected from spambots. You need JavaScript enabled to view it. (my boss)
This is the data sent from Paypal, got from technical support:

IPN Text
mc_gross=12.00 &invoice=100 &protection_eligibility=Ineligible &address_status=unconfirm
ed &item_number1=PL03IT00049_4 &payer_id=BR5FNJS4JXC9L &tax=0.00 &address_street=Via
Unit? d'Italia, 5783296 &payment_date=04:39:51 Mar 12, 2012 PDT &payment_status=Completed &
amp;charset=windows-1252 &address_zip=80127 &mc_shipping=0.00 &mc_handling=0.00 &fir
st_name=Lucio &mc_fee=0.76 &address_country_code=IT &address_name=Lucio Monter ¬i
fy_version=3.4 &custom= &payer_status=verified &business=luciom_1330955926_biz@gmail.com
&address_country=Italy &num_cart_items=1 &mc_handling1=0.00 &address_city=Napoli &a
mp;verify_sign=AKLIgKII0PN3l1Mb-QoWH7EXUK6rABpIY4a8nXOLyfx2w1V6MjeweN1Z &payer_email=lucio_13304
This email address is being protected from spambots. You need JavaScript enabled to view it. &mc_shipping1=0.00 &tax1=0.00 &txn_id=3AL20602V4161220S &payment
_type=instant &last_name=Monter &address_state=Napoli &item_name1=Gestire le emozioni &a
mp;receiver_email=luciom_1330955926_biz@gmail.com &payment_fee= &quantity1=1 &receiver_i
d=9YN7545VCENL6 &txn_type=cart &mc_gross_1=12.00 &mc_currency=EUR &residence_country
=IT &test_ipn=1 &transaction_subject=Shopping CartGestire le emozioni &payment_gross= &a
mp;ipn_track_id=13ffebd81ad8

and my server answer "HTTP Response 200Ok" so should be fine...
This is the URL they are sending the data TO:
www.skilla.com/skilla_test/index.php?opt...pl=component&lang=it

is there something missing from Paypal?!

Please Log in or Create an account to join the conversation.

  • Posts: 82868
  • Thank you received: 13376
  • MODERATOR
12 years 8 months ago #43152

Hi,

The IPN URL you're using is not correct.
You have the character ¬ in the URL instead of ¬
You should change it in your PayPal account and that should solve the problem.

The correct one should be:
www.skilla.com/skilla_test/index.php?opt...pl=component&lang=it

Please Log in or Create an account to join the conversation.

  • Posts: 23
  • Thank you received: 0
12 years 8 months ago #43165

I didn't setup any URL in my paypal account.
So I think the return URL is passed by hikashop upon the payment request, isn't it?
And the only URL I setup on the paypal plugin on hikashop is
www.sandbox.paypal.com/cgi-bin/webscr
as was suggested on this forum.
Is there a way where I can specify from hikashop the return URL?! (or the character coding standard?)
Thank you

Please Log in or Create an account to join the conversation.

  • Posts: 82868
  • Thank you received: 13376
  • MODERATOR
12 years 8 months ago #43294

I checked the information that HikaShop sends to PayPal and it is correct:
www.skilla.com/skilla_test/index.php?opt...pl=component&lang=it

One thing you could try is to change the line:
$verified = preg_match( "#VERIFIED#i", $response);

to:
$verified = true;

in the file plugins/hikashoppayment/paypal.php

That will avoid that the notification gets stuck because of a connection problem to PayPal's servers.

Please Log in or Create an account to join the conversation.

  • Posts: 23
  • Thank you received: 0
12 years 8 months ago #43805

Hi Nicolas,
I've tried your suggestion but nothing changes...
Anyway I think my server receives the notification because hikashop writes in the log file:

Array
(
[option] => com_hikashop
[ctrl] => checkout
[task] => notify
[notif_payment] => paypal
[tmpl] => component
[lang] => it
[language] => it-IT
[Itemid] =>
[hikashop_front_end_main] => 1
[view] => checkout
)

Could not load any order for your notification

But it seems like there is not enough data to understand which order has to be processed.. isn't it?!
On the IPN text from PAYPAL I posted erlier I can't see the order ID, is that right? is it missing or is it working properly?!

What else can I try?
Thank you

Please Log in or Create an account to join the conversation.

  • Posts: 23
  • Thank you received: 0
12 years 8 months ago #43932

I can see this line on the paypal.php inside the plugin directory:

$dbOrder = $orderClass->get((int)@$vars);

it seems the invoice number in paypal is the order ID in hikashop... isn't it?
and it seems we can't retrieve it from our server side...

So paypal is sure to send it (shown on the log), paypal also receive a confirmation (a 200 response) from our server.
We can see something is written on the hikashop log as posted above
but we are unable to retrieve the order ID or the invoice variable from the data posted by paypal...

where can it be lost?!? How can I debug it?
No error in error log,
it seems a correct access in access log:

173.0.82.126 - - [20/Mar/2012:09:58:19 +0100] "POST /skilla_test/index.php?option=com_hikashop&ctrl=checkout&task=notify¬if_payment=paypal&tmpl=component&lang=it HTTP/1.0" 303 527 "-" "-"
173.0.82.126 - - [20/Mar/2012:09:58:20 +0100] "GET /skilla_test/index.php/it/?option=com_hikashop&ctrl=checkout&task=notify¬if_payment=paypal&tmpl=component&lang=it HTTP/1.0" 200 1646 "-" "-"

(our hikashop version is 1.5.4, do you think it can be the problem?)
thank you

Please Log in or Create an account to join the conversation.

  • Posts: 82868
  • Thank you received: 13376
  • MODERATOR
12 years 8 months ago #44077

Hi,

From the information you're giving, it looks like the POST information sent by PayPal is lost before reaching HikaShop because there is a redirect done by the language handling on your website just before (you can see the "it" is added in the second URL).

So from what I understand, if you deactivate the language filter plugin of joomla, it should work, right ?

Please Log in or Create an account to join the conversation.

  • Posts: 23
  • Thank you received: 0
12 years 8 months ago #44081

YES!!!
Disabling the Language filter plugin it works perfectly!
How can we keep it?!
(my god this was a long way... I can finally see a way out... I hope it can help others!)

Please Log in or Create an account to join the conversation.

  • Posts: 82868
  • Thank you received: 13376
  • MODERATOR
12 years 8 months ago #44086

In your specific case, it is quite easy, change the line:
$notify_url = HIKASHOP_LIVE.'index.php?option=com_hikashop&ctrl=checkout&task=notify¬if_payment=paypal&tmpl=component&lang='.$locale.$url_itemid;

to:
$notify_url = HIKASHOP_LIVE.'it/index.php?option=com_hikashop&ctrl=checkout&task=notify¬if_payment=paypal&tmpl=component&lang='.$locale.$url_itemid;

in the file plugins/hikashoppayment/paypal.php

However, in order to avoid the problem the language filter plugin of joomla should be fixed in order to not redirect POST requests.
In fact, that has already been corrected in the SVN of joomla 2 weeks ago as it also breaks other things:
joomlacode.org/gf/project/joomla/tracker...racker_item_id=25210
So it should be corrected in a future version of Joomla 2.5

Please Log in or Create an account to join the conversation.

Time to create page: 0.100 seconds
Powered by Kunena Forum