Jump to content
  • Checkout
  • Login
  • Get in touch

osCommerce

The e-commerce.

PayPal Standard 5.018 Update not working


lee the bean

Recommended Posts

Have just updated development site from 4.039 to 5.018 via online update process (been on 4.039 for 2 years - no problems). Using Payments Standard

Tested on sandbox - all appears ok on sandbox. Both the seller and buyer pp accounts are updated with the transaction.

However the buyer isn't returned to the checkout success page but back to the shopping cart via checkout_process with an alert  Could not verify the PayPal transaction. Please try again 

Order remains  Preparing [PayPal Standard]. No emails are sent (obviously).

Running on standard 2.3.4 - updated to run on php 7.0.33 (deprecated constructor issue) and updated to use bootstrap. (Separate install issue - noticed that some files in this PayPal online update have not been updated for the constructor issue)

Scratching my head on this one.

I have attached xlsx with relevant server log and paypal log.

Any ideas where to start?

5.018 paypal sandbox test.xlsx

Link to comment
Share on other sites

Be sure to google site:www.oscommerce.com/forums  paypal view update and read about update issues, especially the View Update button not working and use of TLS 1.2.

You say you have a 2.3.4 (very old) osC updated for Bootstrap and PHP 7.0 -- is there some reason that you haven't switched over to Frozen (or even, Edge), which gives you that stuff (and more) without any effort? I suppose that if you have a lot of custom code changes, that could be a legitimate issue, but otherwise, Frozen is the way to go. At least, you could see if the update itself is behind the times, or it's something in the base code that you missed.

Link to comment
Share on other sites

Make sure PDT is on and correctly configured and that IPN is also on.

Contact me for work on updating existing stores - whether to Phoenix or the new osC when it's released.

Looking for a payment or shipping module? Maybe I've already done it.

Working on generalising bespoke solutions for Quickbooks integration, Easify integration and pay4later (DEKO) integration at 2.3.x

Link to comment
Share on other sites

Mr Phil - re: switching to frozen / edge.

Reason - it doesn't show up on the latest news panel of the admin panel. Last release there shows as 2.3.4 6th June 2014. Installed and coded this release for BS (2014) and latterly (2017) for PHP 7. As for Frozen / Edge releases - what versions are they? - the download only has 2.3.4.1 Full package (which I cant see is any different from the 2.3.4 version via a quick check of the zip files documentation release notes) or 2.4.0 Beta. Not sure if either of these are the Frozen / Edge versions. I vaguely remember reading some kind of releases being released on GitHub or something like that. But I didn't want to start poking about on some other service and downloading 'unofficial' releases. By unofficial I mean outside the oscommerce site.

Is the PayPal 'update' button compatible with the last official release (2.3.4 / 2.3.4.1??) or has it some base code requisites from Frozen / Edge?  I did check the forum first. I can't see any prerequisites listed in the PayPal App download area - although 5.010 is the last release there.

The update button 'updated code' ok. Verify SSL set to True on Live 4.039 & Test 5.018 systems. SSL Version set to Default on Test system.

 

Mr Brockley John - re: IPN / PDT.

Yes they are correctly configured.

I believe the logs supplied show that the handshaking is working.

Link to comment
Share on other sites

The latest official release, 2.3.4.1, is seriously obsolete. The last time I looked, it was merely 2.3.4 with the PHP "deprecated" warnings turned off. If you want actual PHP 7.1 compatibility, and Bootstrap responsiveness, as well as a bunch of other updates, you have to go with one of Gary's releases. See my signature below for either Frozen (and patches) or Edge. Both are on GitHub, and not official distributions. Frozen is nice and stable and quite usable, while Edge is developmental ("bleeding edge") and changes from day-to-day (its principal changes are Bootstrap v4 and responsive admin). If you're not sure, go with Frozen. osC 2.4.x is experimental and should not be used for a production store, unless you are willing to put in a lot of time and effort into patching and maintaining it. To be blunt, Frozen and Edge are the only games in town. Don't get a hangup on "official release or bust". The official release stream is dead.

I have no idea if PayPal's latest versions are compatible with official osC releases. They themselves may need some patching to be PHP 7 compatible (__construct, etc.). At the very least, you should install a test version of Frozen and see if it satisfies your needs -- it probably will, and you may be pleasantly surprised at how up to date it is.

Link to comment
Share on other sites

@lee the bean

5 hours ago, lee the bean said:

Running on standard 2.3.4 - updated to run on php 7.0.33 (deprecated constructor issue) and updated to use bootstrap. (Separate install issue - noticed that some files in this PayPal online update have not been updated for the constructor issue)

While it sounds like you have done a lot of work to get your shop to run under PHP v7.x, and you have updated it to use bootstrap, please be aware that you have basically made your own fork of osC, and as such, it will be difficult for the community to support you.

Now, as @MrPhil mentioned, the 'official' v2.3.4 (and v2.3.4.1 hot-patch) is very much out of date. The osCommerce project was lead by one person that has been absent for quite some time. In his absence, the "community" has continued with the development of osC. Unfortunately, that one missing person is the only one that can make this continued development an 'official' release.

The 'Community Edition' (also called osC-CE (for Community Edition), osC-BS (for Bootstrap, the platform it is based on), osC-Edge, and/or osC-Frozen.)  is a big improvement over the last 'official' v2.3.4.1 release in a number of ways:

1) It is responsive. This means that it will adjust the screen layout depending on the size of the screen of your customer's device. This is very important in this day of mobile devices. The 'official' version is not responsive. (it sounds like you have already addressed this)

2) It will work with the newer version of PHP, the scripting language used in osC. As more and more hosts upgrade their servers to PHP 7.x, older versions of osC (including the 'official' version) will crash. (it sounds like you have already addressed this too)

3) It is much more modular. This means that you can turn features on or off, change the layout, or even add new features, all without touching the core code.

As I said, the community is still working on osC. Every so often, a version is released as a 'fixed' release. 'Frozen' was the last 'fixed' release, while 'Edge' is still ongoing. Since the developers are constantly testing new things in 'Edge', 'Frozen' is the better choice for a live store. As will all software, there will be bugs in any release, and some have been identified in 'Frozen'. There is an entire thread identifying these, as well as their fixes.

So, while this does not address your problems with PayPal, I strongly encourage you to download and test a copy of Frozen.

Malcolm

Link to comment
Share on other sites

Thanks again Phil & Malcolm.

I think its been a case of if it ain't broke don't fix it. I found the GitHub situation very confusing for a bear with a small brain several years ago, and to be honest its not any clearer now. I guess I will have to download a copy of Frozen at some point or ignore the update PayPal message until PayPal make some change that will force me to do an update.

Perhaps I'll backout PayPal 5.018 and try 5.010 - the last downloadable version - to see if that helps as a first step. To embark on Frozen and then to add back in all the customisations over the years looks like a project I'd need to think about for the time being.

I hadn't checked the forum for a few years and didn't realise oscommerce was in limbo, but I'd like to add my thanks to all those who have carried on the good work.

Link to comment
Share on other sites

Well, when you make any changes to an off-the-shelf application, it behooves you to keep careful track of what exactly you did, and why. This helps you to re-implement these things in the future, when you need to switch to a new version (such as Frozen). You can also decide whether you even need a set of changes now (e.g., make it responsive or PHP 7 ready -- that's now built in). You have my sympathies if you didn't keep track of what you did over the years. Perhaps you can grab a vanilla copy of your base osC and do a "diff" against it to at least see what you changed (it's a start).

Link to comment
Share on other sites

Sorted.

So in case anybody else follows the same path with the same issue here is the low down

Osc 2.3.4 plus PayPal download from the PayPal App Marketplace will probably work ok in a live PayPal environment, but won't work in the PayPal sandbox environment. Online updates via the admin panel will not fix this.

To fix it download Osc Frozen which includes a bundled version of PayPal App.

From the Osc Frozen download - copy file catalog/ext/modules/payment/paypal/paypal.com.crt to your live system folder and upload.

To the developer - include the latest version of paypal.com.crt to your downloadable and online update processes & update for PHP 7 deprecated constructor issue.

Link to comment
Share on other sites

32 minutes ago, lee the bean said:

To the developer

Uh, which distribution? If you're talking about the "official" 2.3.4* stream, it ain't gonna happen. As far as anyone can tell, it's dead. If you're talking about @burt's BS/CE stream, hopefully he'll see this discussion and take any appropriate action. He would probably find it helpful if you could give pointers to where to find the latest certificates, etc. It would be good to ship with PayPal 5.18 pre-installed, and any PHP 7 glitches fixed, and I'm sure he'd appreciate any help he can get on updating Edge.

"Frozen" will not be updated by Gary, but if you can provide pointers to the appropriate changes needed, I can add them to my public patch collection. It would be good to post the code changes in the Frozen patches discussion thread, so others can look them over too, and bless them.

Link to comment
Share on other sites

Sorry Phil, I didn't mean to confuse.

No changes necessary to any Osc release, just the PayPal App download (PayPal Standard 5.010) from the osc site and the online app update (5.018).

Message was for the PayPal app developer to add the newer paypal.com.crt bundled within the Frozen release to any further releases of the PayPal app & to make those release streams PHP 7 compatible.

Edited by lee the bean
Link to comment
Share on other sites

On 5/3/2019 at 7:17 PM, ArtcoInc said:

Now, as @MrPhil mentioned, the 'official' v2.3.4 (and v2.3.4.1 hot-patch) is very much out of date. The osCommerce project was lead by one person that has been absent for quite some time. In his absence, the "community" has continued with the development of osC. Unfortunately, that one missing person is the only one that can make this continued development an 'official' release.

Sorry to be a bit political and off-topic but that one person has a god complex, is a protectionist and it's annoyed me for almost 15+years.  As a full time PHP developer myself I can appreciate it's his "baby" and he's probably made a lot of money indirectly from it (who wouldn't want it on their CV) and has lots of better opportunities to use his time on, but the "baby" is now neglected and if it were a real baby child protection would have stepped in a long time ago.  His addons are protected so even when they no longer work because of service provider deprecation/changes or even have bugs (he's not perfect) nothing can be done to update them (Worldpay and PayPal App for example) but they're still advertised as the latest and official.

If it still don't work, hit it again!

Senior PHP Dev with 18+ years of commercial experience for hire, all requirements considered, see profile for more information.

Is your version of osC up to date? You'll find the latest osC version (the community-supported responsive version) here.

Link to comment
Share on other sites

On 5/6/2019 at 4:45 PM, lee the bean said:

Message was for the PayPal app developer to add the newer paypal.com.crt bundled within the Frozen release to any further releases of the PayPal app & to make those release streams PHP 7 compatible.

You should also replace the standard includes/cacert.pem with the latest one also if you haven't already, it gets used for curl operations within the store and it's way out of date too.  You can download the latest version it from here https://curl.haxx.se/docs/caextract.html

If it still don't work, hit it again!

Senior PHP Dev with 18+ years of commercial experience for hire, all requirements considered, see profile for more information.

Is your version of osC up to date? You'll find the latest osC version (the community-supported responsive version) here.

Link to comment
Share on other sites

Hi @douglaswalker

All cacerts work independent of PayPal (so yes it will work, just copy the contents out of cacert.pem and paste into paypal.com.crt), it contains encryption keys and allows secure communications between two different endpoints (remote servers/services for example).  The server making a request will use one of the keys and the destination needs to have the corresponding matching key and if both are present then they can talk to each other securely.   (If you open the file in Notepad or similar and look through it you'll see the keys and the Cert Authorities that provided them).

Over time encryption keys are replaced or retired due to vulnerabilities or greater technology.  If you continue using an old cacert you notice eventually that you'd be able to communicate with less and less endpoints (PayPal for example) as the destination endpoints will remove old keys and add new ones as time goes on.  So unless you update the cacert every now and then you'll find you wont be able to communicate with the new keys because you don't have that key in your cacert.

An example of this is if you download and install PayPall App it comes with a cacert but if you attempt to use the Test found in PayPal > Configure > General > SSL Version - Test Connection Button it will fail because the cacert that comes with the PayPal App is really old and most endpoints will refuse to support the keys in it.  As soon as you upload a new one it will work again (providing you use TLS 1.2 setting as most don't support "Default" which I think is SSL2/3 which was retired some time ago and again something else that needs removing from the "official" App).

If it still don't work, hit it again!

Senior PHP Dev with 18+ years of commercial experience for hire, all requirements considered, see profile for more information.

Is your version of osC up to date? You'll find the latest osC version (the community-supported responsive version) here.

Link to comment
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Unfortunately, your content contains terms that we do not allow. Please edit your content to remove the highlighted words below.
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

×
×
  • Create New...