logicalgrape / paypal-ipn-laravel

A PayPal IPN client for Laravel.
MIT License
34 stars 25 forks source link

IPN Simulator Returns 500 error #13

Open LionHeartBlue opened 10 years ago

LionHeartBlue commented 10 years ago

After following all provided instructions, the IPN Simulator returns a 500 error.

I believe I have done everything as detailed and have not made any amendments.

Does anyone have any suggestion please as to why this might be that case? I appreciate this is vague, but it is all the IPN Simulator tells me.

Update: If I remove the line $order = IPN::getOrder(); which obviously stops the function from doing anything IPN Simulator now reports "Message Sent" and no error.

simplydenis commented 10 years ago

You should create a local config file by lunching "php artisan config:publish logicalgrape/paypal-ipn-laravel" as stated in the README. Then open app/config/logicalgrape/paypal-ipn-laravel/config.php and set 'environment' to 'sandbox'.

chrisjohnstone commented 10 years ago

I'm getting the same issue even after having set the environment to sandbox. If I remove the default code in the store action and put in a random bit of code, the simulator returns ok.

My route is set as per the README and I'm pointing the IPN simulator at http://mysite/ipn.

Any ideas why it doesn't like $order = IPN::getOrder();?

simplydenis commented 10 years ago

You should be a little more specific about the error you are getting. I was assuming paypal responded with a code 500 "INVALID". Can you put a Log::debug($order) in the controller code and report back the error you get (in app->storage>logs->laravel.log)?

chrisjohnstone commented 10 years ago

Thanks for the reply.

This is the first section of the log file:

[2014-07-09 19:03:56] production.ERROR: exception 'LogicalGrape\PayPalIpnLaravel\Exception\InvalidIpnException' with message 'PayPal as responded with INVALID' in /home/forge/default/vendor/logicalgrape/paypal-ipn-laravel/src/LogicalGrape/PayPalIpnLaravel/PayPalIpn.php:46

Tested with both the sandbox and the production flags set.

chrisjohnstone commented 10 years ago

Ok, I seem to have it working now but I don't understand what the problem was. thanks for the help.

scotty0100 commented 10 years ago

I'm getting this as well now. Like the user stated, if I remove the $order = IPN::getOrder(); PayPal Sandbox mode reports 'IPN sent successfully'

Otherwise, I get error 500. Log::debug($order) reports nothing in the Laravel log..So seems to be dying before it reaches that far?

scotty0100 commented 10 years ago

Worked after re-making the DB.

abhuanco commented 10 years ago

production.ERROR: exception 'LogicalGrape\PayPalIpnLaravel\Exception\InvalidIpnException' with message 'PayPal as responded with INVALID' Test Failed request "Invalid"

snipe commented 9 years ago

When I test in sandbox mode for the IPN simulator, it passes as valid. When I take it out of sandbox and use a real transaction, it's recording the transaction in the table, but there's a slight delay, so my return URL isn't confirming the order, since it's not in the DB yet. It's only a delay of ~5-10 seconds, but it's enough that it's breaking the transaction. PayPal docs say this can sometimes happen if the IPN isn't returning an explicit 200 header. Assuming it should be returning a 200 header if there is no script error, but could that maybe be it? I don't see an explicit 200 being set.

tgodier commented 9 years ago

The issue that I was getting here, (maybe others are too) is:

cURL error: [35] SSL connect error

MrOutput commented 9 years ago

Having same response as @scotty0100 I will remake DB and get back with results. Laravel 4.2

MrOutput commented 9 years ago

Has anyone found a solution to this?

scotty0100 commented 9 years ago

I take it re migrating the DB from scratch didn't work for you then?

MrOutput commented 9 years ago

I manually removed the tables, in fear that rolling back would destroy my other tables. Now running migrate says "nothing to migrate" when indeed there is. Is there a way to delete rows off the migration table that is read-only? Any suggestions?