Online Payments returing 404 after upgrade

Hi well done on the update.
I have updated to 1.5.0 but when I try and make a payment online via the guest url to paypal I get 404 page nor found.

Ubuntu 16.04.2
Apache 2.4.18
PHP 7
MySQL 10.0.29

I have the same issue.

Running on

Apache 2.4.20
DirectAdmin 1.51.3
MySQL 5.5.48
Php 5.6.22

For reference:
https://development.invoiceplane.com/browse/IP-506


This is such a weird issue. Still don’t know what’s causing these errors as everything is running fine for three different setups.

If i can be of any help with testing or logs please let me know, I have my own server so accesing logs is not a problem. However i cannot upgrade to php7 at this moment, every other thing is fine. Thank you for invoiceplane and all your effort Kovah.

Did a new install instead of an update and got the the same results. I will test it on a different server setup.

If anyone that has this error is able to debug the application please do it. I can’t figure out what’s wrong because there are no errors for me.

Still no fix for this I installed it on a fresh VPS and still the same result

For me it does not point correctly to /application/modules/guest/controllers/Payment_Information.php
For view.php it works because if i edit the file it is changed in the guest view.

Enabling debug only gives ERROR - 2017-04-30 21:25:06 --> 404 Page Not Found: …/modules/guest/controllers/Guest/payment_information

I played around with some .htaccess settings but was not able to come up with a solution yet.
When doing a general search for Codeigniter and CentOS / apache issues i only come up with AllowOverride All apache settings but that is working ofc :slight_smile:

When i change the file name to Payment_information.php (so no capital I)
The 404 disappears but it prompts me to InvoicePlane login screen.

Im sorry if this is not helping, my php skills are limited

This is the actual solution for the problem I think. The 404 is error is what was weird. The login screen appears at the moment because the client needs to be logged in to pay via online payment. I may change this and fix the 404 error with that.
Could someone other with the problem confirm that renaming the file fixes the error?

Thanks for your help, this is very helpful!

Glad i could help!

Really looking forward to the new online payment gateways,
Hope we can have payments without customers having to login though.

Cheers

I would also prefer a non-client login solution, or atleast the option to have it work like that! Thanks!

Thanks Mike :slight_smile: )

Yes that fixed the 404 and loads the login screen.

I also would like customers not to have to login when making payments. 95% of my customers never login anyway.

Now when the process is followed to pay via paypal ( https://URL/ip/index.php/guest/payment_handler/make_payment/ ) We get 404 again. So I changed Payment_Handler.php to Payment_handler.php and all is working.

But when the user is logged in to pay there is a form for credit card details this is very confusing as we don’t handle credit cards on this system only paypal. The way the old version worked was fine customer gets invoice url in email and clicks on paynow and is directed to paypal.

This is sadly a must-have for the new online payment system. There is no reliable way to say if a payment provider needs credit card details or not, some providers ask for credit card details on their site and so on. So we can’t just say: if it’s provider xyz we show the form and if it’s provider abc we don’t have to show the form.

I can confirm renaming the file redirects to the login page…

When I create an account can I assign it to a client instead thats already created? I would like to avoid end-users having to login to my invoice system

Email > Click Url > Pay Now > Payment Method (This being Stripe or Paypal)

Will be available in 1.5.2 coming this sunday.

Every time i enable online payments (Paypal and Stripe) i get this error

application/libraries/Cryptor.php:90
Call to undefined function random_bytes()