Latest News: (loading..)


  • Content count

  • Joined

  • Last visited

1 Follower

About HowardR

Profile Information

  • Real Name
    Howard Richman
  1. Now PayPal says that we have until the end of June before the change goes into affect.
  2. Actually, the deadline is the *end* of May, not the beginning. Also, the June 9, 2014, add-on has the PayFlow modules while the March 17, 2017 version has other PayPal payment modules as well as some admin improvements that work with the PayFlow modules.
  3. Thank you for the reply. The PayPal App is Version 3.1. My question was about pre 3.1 versions that didn't pass the credit card information to PayPal.
  4. I have been upgrading one of my stores on a Centos 5 website from 2.3.3 to 2.3.4. It has been a slog. I've had to upgrade PHP, CURL and OpenSSL so that my website would be TLS 1.2 compliant. Along the way, I noticed a major change in the PayPal Payflow Payments modules, beginning with Version 3.0 which comes installed with OsCommerce 2.3.4: Older Versions. The PayFlow module (and the check-out window) gets a token from PayPal which it uses to set up a window into the PayPal website. Customers enter credit card numbers on PayPal's website, not on our website, using that window. Versions 3.0 and 3.1. Credit card numbers are collected on our website and passed to PayPal through a secure connection which will have to be TLS 1.2 compliant starting on June 1. Will the earlier versions of the PayFlow Direct Payments module also have to be TLS 1.2 complaint after May 31? I have another store, on a different Centos 5 website, that I'm hoping will continue to work with PayFlow after May 31.
  5. Correction: After upgrading to php 5.6, I still had the same error. After adding to my cart (as a customer) I would still get the message "Your Shopping Cart is empty!" I had made a mistake with one file (catalog/includes/classes/ shopping_cart.php) while installing Option Types V2 (Contribution 6818).
  6. I think I finally understand the TLS 1.2 issue. This is a very serious issue. There are a lot of OSCommerce owners that will wake up to a nasty surprise on May 1. Those of you who are not new to this, please let me know if I am wrong in any of my statements below: 1. This only affects PayFlow, if you have PayPal Express Checkout also installed in your store, that should keep working. So you won't be able to accept Credit Cards, but you will be able to still accept PayPal payments. 2. PayPal threatened to require TLS 1.2 on May 1, 2016. but they relented. Now they say that they are going to require it on May 1, 2017. I think that they are going to follow through this time. 3. If you have an older PayPal PayFlow module installed, it will stop working on May 1. If you have version 3.1 of the PayFlow module installed on May 1, you are OK. 4. There are two versions of 3.1 on addons created by Harald Ponce de Leon. Both work. The best one is the newest: -- March 1, 2017 -- designed for upcoming OSCommerce 2.3.5 but works with tweaking for earlier versions - June 9, 2014 -- designed for the standard (not responsive) version of OSCommerce 2.3.4 5. These versions require TLS 1.2 (the latest security standard) which does not run on OpenSSL 0.9.8, which just happens to be the version of Open SSL that is installed on most servers these days, due to security problems that were encountered with early versions of OpenSSL 1.0.1 and 1.0.2. You can test which version of TLS 1.2 that you have by using the following php code in a simple php file on your system: <?php function get_tls_version($sslversion = null) { $c = curl_init(); curl_setopt($c, CURLOPT_URL, ""); curl_setopt($c, CURLOPT_RETURNTRANSFER, true); if ($sslversion !== null) { curl_setopt($c, CURLOPT_SSLVERSION, $sslversion); } $rbody = curl_exec($c); if ($rbody === false) { $errno = curl_errno($c); $msg = curl_error($c); curl_close($c); return "Error! errno = " . $errno . ", msg = " . $msg; } else { $r = json_decode($rbody); curl_close($c); return $r->tls_version; } } echo "<pre>\n"; echo "OS: " . PHP_OS . "\n"; echo "uname: " . php_uname() . "\n"; echo "PHP version: " . phpversion() . "\n"; $curl_version = curl_version(); echo "curl version: " . $curl_version["version"] . "\n"; echo "SSL version: " . $curl_version["ssl_version"] . "\n"; echo "SSL version number: " . $curl_version["ssl_version_number"] . "\n"; echo "OPENSSL_VERSION_NUMBER: " . dechex(OPENSSL_VERSION_NUMBER) . "\n"; echo "TLS test (default): " . get_tls_version() . "\n"; echo "TLS test (TLS_v1): " . get_tls_version(1) . "\n"; echo "TLS test (TLS_v1_2): " . get_tls_version(6) . "\n"; echo "</pre>\n"; ?> So, if you have a store that uses PayFlow and you are using an older PayPal module, you could find yourself in deep doodoo on May 1. You better start making the transition today.
  7. Oh well! I had to upgrade to php 5.6 anyway. Version 2.3.4, unlike version doesn't work with PHP 5.1. In 5.1, no matter what I put in my cart, my cart stayed empty. Once I switched to php 5.6, the problem disappeared. Upgrading to php 5.6 was a huge hassle. I found a great helpful website that guided me: The second answer down is mine. It tells how I did it using the first answer as my guide.
  8. Note: I almost have my store working but just realized there's a problem that I didn't anticipate. I have to go back through all of my admin configuration settings and change the absolute paths from the absolute path on my old server to the absolute path on my new server since those paths are stored in the database. The main reason that I didn't go with responsive was that I didn't know how to update php on my website to the new version. Right now I have PHP version 5.1.6 and the responsive requires a newer version than that.
  9. I decided to switch my OSCommerce 2.3.3 store to a different URL. Instead of using 2.3.3 again in the new site, I decided to use 2.3.4 (the official version, not the Responsive/BootStrap version). 1. I installed my 2.3.4 store on my new URL. (Recommendation: don't change your username and password from those in your old store, since they are stored in the database.) In order to complete that installation, I used MySQL to created a new database which I called oscommerce234. 2. I logged into the admin of my 2.3.3 store and created a backup of my old database. Then I used FTP to download it to my home computer. Then I renamed it as backup233.sql and I used FTP to upload it to the backup directory (oscommerce-2.3.4/catalog/admin/backups) of my new store. 3. I downloaded the add-on which provides a .sql file for upgrading databases from 2.2MS2 to 2.3.3 ( It has been kept current and now includes the codes for upgrading from 2.3.3 to 2.3.4. (It does not, however, include the commands for upgrading to 2.3.4 Responsive/BootStrap.) 4. On my home computer I edited that upgrade file using my text editor (Notepad++). I only kept the commands for moving from 2.3.3 to 2.3.4. Then I saved the file with the name 233_to_234.sql and uploaded it using FTP to the backup directory (oscommerce-2.3.4/catalog/admin/backups) of my new store. Here are the comments (lines that start with #) and commands that were in that file: 5. Then I used Putty to log into the website of my new store. I logged into MySQL. Then at the MySQL prompts (mysql>) I created a new database which I called oscommerce233 and then I upgraded it by uploaded my backup233.sql file into it and then my 233_to_234.sql file into it. (Note that /var/www/html is the absolute path to my oscommerce-2.3.4 store; your absolute path will be different.) 6. Then I used FTP to download the two configure.php files (catalog/includes/configure.php and catalog/admin/includes/configure.php). I edited each of them using my text editor (notepad++) changing database references from oscommerce234 to oscommerce233. Then I uploaded both configure.php files back to the website. As a result, the following statement now appears in those configuration files: That's all there was to it. It seems that everything is working, but I won't know for sure until I get my store operational. If this doesn't work out, I can change the database references in those configuration files back to the way they were before (oscommerce234 instead of oscommerce233), and I'll be using the oscommerce234 database that was created when first setting up the oscommerce 2.3.4 store.
  10. I just got a notice from PayPal that, starting in June 2017, versions older than TLS 1.2 and HTTP/1.1 will not be able to communicate with Payflow. Are we covered in Version 2.3.4? How about my stores that still run 2.3.3 - will I need to upgrade to 2.3.4 before June?
  11. I couldn't tell from your posting whether you were using PayPal Advanced, which uses payflow. I use it to process both credit cards and PayPal payments. Customers are not required to leave my store to make payments. If that is indeed what you want, you will need an add-on to set it up. PayPal once published one for Version 2.3.1, I posted it on after changing one line of code so it would also work correctly with v. 2.3.3, not just 2.3.1. To find the add-on, go to:
  12. I posted PayPal's add-on for PayPal Advanced. They stopped supporting the site where they had posted it themselves. PayPal's add-on was originally designed to work with OSCommerce 2.3.1. I have changed one line of code so that it would also work correctly with Version 2.3.3. Here's the add-on:
  13. I posted my fix as an addon. You should be able to find it at: If you are planning to install PayPal Advanced with OSCommerce 2.3, I also recommend that you watch the following helpful video by Ryan from PayPal:
  14. Here's what I think happened: In the update from v2.3.1 to v2.3.3, a rounding error was fixed by storing the amount of a transaction with 4 decimal places, instead of just 2. Meanwhile, when PayPal code read that amount, it failed whenever the amount had more than 2 decimal places. The fix is simple, you just need to change one line of code in order to round the amount of the transaction, as supplied to PayPal, to two decimal places. I have notified PayPal Support about the bug and its fix. Once they update their code at, PayPal Advanced should work equally well with versions 2.3.1 and 2.3.3. In the meantime, if you plan to use PayPal Advanced you can either install 2.3.1 or you can install 2.3.3 and fix the one line of code yourself. Howard
  15. I just installed v2.3.3 with PayPal Advanced in two stores. It worked in one of them, but that was because all of the items in that store were non-taxable. In the other, it only worked with nontaxable items and with items that were an even number of dollars (i.e. $1.00 and $5.00). In other words, it didn't work with taxable items that cost $4.95 and $2.95. It took me a while to figure out the problem. I ended up changing just one line in the PayPal supplied code. You can read my solution at: Here's what I think happened: In the update from v2.3.1 to v2.3.3, a rounding error was fixed by storing the amount of a transaction with 4 decimal places, instead of just 2. Meanwhile, PayPal code read that amount and failed whenever it had more than 2 decimal places. The fix is simple, you just need to change one line of code in order to round the amount of the transaction, as supplied to PayPal, to two decimal places. I have notified PayPal Support about the bug fix. Once they update their supplied code, PayPal Advanced should work equally well with versions 2.3.1 and 2.3.3. In the meantime, you can use 2.3.3 and install the fix yourself. Howard