I'm using paypal on a site based on Codeigniter. I set up the paypal form, everything is working fine except the notify_url. It's not called at all. The url is like this:
www.mysite.com/callback
If I change the url to a simple php file like www.mysite.com/callback.php, which is not part of the codeigniter framework, it's working fine.
I tested the original callback with the IPN simulator and it's working as well.
The first line of the callback is a logging function for testing but nothing happens.
Any help would be appreciated.
<input type="hidden" name="notify_url" value="<?=base_url()?>index.php/payment/prepaynotify">
Check in your controller, there is any redirection or checking session for login. If any remove that. If you cannot remove purpose of checking session. Then you should put separate controller for PayPal notify url.
Hopes it will help
Related
I'm getting this error when I go live in my PayPal account, it was working and now it stopped working suddenly, can you please help me, it's Codeigniter website.
The problem is that it works in sandbox and I don't understand what is going on, I already set off Block non-encrypted website payment,
Thanks.
UPDATE:
You can test it:
https://www.paypal.com/cgi-bin/webscr?business=KPEG34H4RENJA&cmd=_cart&production=1&custom=&invoice=57089&upload=1¤cy_code=CAD&disp_tot=Y&cpp_cart_border_color=&no_note=1&return=https://www.lesjeuxdiamant.com&cancel_return=https://www.lesjeuxdiamant.com/panier¬ify_url=https://www.lesjeuxdiamant.com/panier/ipn&rm=2&lc=EN&shipping=&shipping2=&handling=&tax=&discount_amount_cart=&discount_rate_cart=&first_name=&last_name=&address1=&address2=&city=&state=&zip=&email=&night_phone_a=&night_phone_b=&night_phone_c=&item_name_1=jeuxvideo&amount_1=54.95&quantity_1=1&item_name_2=expedition&amount_2=0&quantity_2=1&item_name_3=TPS-TVQ&amount_3=8.23&quantity_3=1
if you switch this to sandbox it works:
https://sandbox.paypal.com/cgi-bin/webscr?business=9H3GUGRW23D3W&cmd=_cart&production=1&custom=&invoice=57089&upload=1¤cy_code=CAD&disp_tot=Y&cpp_cart_border_color=&no_note=1&return=https://www.lesjeuxdiamant.com&cancel_return=https://www.lesjeuxdiamant.com/panier¬ify_url=https://www.lesjeuxdiamant.com/panier/ipn&rm=2&lc=EN&shipping=&shipping2=&handling=&tax=&discount_amount_cart=&discount_rate_cart=&first_name=&last_name=&address1=&address2=&city=&state=&zip=&email=&night_phone_a=&night_phone_b=&night_phone_c=&item_name_1=jeuxvideo&amount_1=54.95&quantity_1=1&item_name_2=expedition&amount_2=0&quantity_2=1&item_name_3=TPS-TVQ&amount_3=8.23&quantity_3=1
It appears the account in the live environment is restricted, and cannot accept any PayPal payments.
Tell the the account owner to log into https://www.paypal.com to review the restriction and the business steps needed to resolve it.
If necessary, they can reach out to PayPal's support via https://www.paypal.com/smarthelp/contact-us to resolve the issue.
Fix Paypal Things don't appear to be working at the moment. Please try again later
Click image to fix bug --->
https://i.stack.imgur.com/iVS3q.png
OR
Add this code to form <input type="hidden" name="upload" value="1">
#HKimhab
I had a similar problem. That paypal page wasn't giving me any help as to what the problem might be. I found that the value of my form's hidden field sometimes exceeded the 200-character limit imposed by PayPal's policy.
I need some help. I don't know, what's wrong with my code, yesterday it works fine, but when I'm trying to change the user this is what happened
ERROR
and this is my CODE
I've tried to find the solution on the internet but some of them are saying that I didn't use them
{{csrf_field()}}
as you see on my code, I think I had nothing wrong, please help me :')
With Laravel 5.6 using Blades templates, it's pretty easy.
<form method="POST" action="/profile">
#csrf
...
</form>
It doesn't work, then Refresh the browser cache and now it might work. (When we update our application, a browser may still use old files. If you don’t clear your cache, Old files can access problems when you apply)
For more details open link:- CSRF Protection in Laravel 5.6
I checked your code and i notify there's another hidden field _token with that name in the Captcha control group, Laravel CSRF field also use _token hidden field, i think problem causing is this thing. You can simple change Captcha token field name and try.
I am working in a codeigniter project in wamp server.
My current login page is http://localhost/flowers/login and its working correctly (no issue). The rest of the urls are like this
http://localhost/handycheck/admin/dashboard etc
My issue is i need to change the login url like this
http://localhost/flowers/admin/login
&
http://localhost/flowers/providers/login
Its because I have to maintain login form for multiple users.
How can i make this.
Please help me and thanks in advance who helps me alot..
You can do this by adding custom roue in codeigniter routing configuration as follows go to config/routes and add the following entry in this file
$route['flowers/providers/login'] = 'flowers/login';
$route['flowers/admin/login'] = 'flowers/login';
this will redirect the request to the login in flowers controller and if you need to do custom handling for admins and provider you can get the url segments and do custom handling according to user type
I hope my answer would be useful
i am using magento EE. in this when user submit couponcode then system redirect to non-secure.
full story:
i am using amazon payments so we need SSL on cart page.
i am posting couponPost on SSL but some how system redirect to non-SSL
when i submit any couponcode:
system post coupon code to SSL
automatically system redirect to NON-SSL
again system redirect to SSL
so on the way global notifications lost. any one has any idea what's going on.
same issue: http://www.tagwith.com/question_342501_magento-cart-ssl-issue-submitting-data-to-an-insecure-location
I submitted an issue on this a while back when I was working with a merchant having a similar issue. The GitHub issue can be found here along with a temporary fix.
Check this controller file : CartController.php
Location: app/code/core/Mage/Checkout/controllers/
Replace this line under _goBack() function :
$this->_redirect('checkout/cart');
to
$this->_redirect('checkout/cart',array('_secure'=>true));
Hope this helps. I suggest you to don't modify the core file. Simply override it check this method.
I'm working on a store deployed using Magento. It has one module which I wrote, which has event observers for checkout_type_onepage_save_order_after, checkout_type_multishipping_create_orders_saved_after, and admin_created_order_after.
When a customer places his/her order, Magento does not redirect to a success page when my module is enabled. When I disable my module, it redirects just fine. With or without my module, the order still goes through but it's not very user-friendly if there's no thank you message of some kind.
Anyone have any ideas what the problem is? There's no entry in any error log (Apache, PHP, Magento, or database).
Using magento 1.6.2.0 on PHP 5.
In case anyone else is having the same or similar problem, I just solved a very similar issue thanks to TonyTheJet's comment here. I am using onepagecheckout in Magento CE 1.7.02
If you have a stray echo command in your code, which will send raw text to the browser, this will cause a problem on the browser side in onepagecheckout.js . It does not correctly un-encode a subsequent JSON string sent by the server to say that the order was processed successfully. Because of that, the browser fails to send a GET to trigger the onepagecheckout controller successAction().
If you are using a protocol analyser or a tool like Firefox Firebug, the crucial JSON string should look like this. The order_creates=true is what should trigger a browser request for the success page:
{"success":true,"error":false,"order_created":true}