Announcement:Materials and articles for ProductCart 5 can be found at our brand new support center.

Create an account to edit articles | See Formatting Syntax for Wiki syntax | We look forward to your contribution!

ProductCart v4.0 - Service Pack 4 (One Page Checkout Patch)


This patch was released on 04/21/10. It addresses some issues and introduced some improvements to the One Page Checkout system, and includes “Just In” fixes/improvements that were introduced after the release of Service Pack 3.

NOTE - Security Issue: on 04/24/10 we found a bug in a file that is part of Service Pack 4. The issue has to do with the password reminder tool sending the password to the wrong customer. The recipient would not know the e-mail address associated with the password (so the recipient would not be able to log in), but would certainly be alarmed by receiving a password that he/she did not request.

  • If you downloaded and installed SP4 on or after 04/25/10, there is nothing you need to do.
  • If you downloaded SP4 on or before 04/24/10, download the files again and re-upload the file “checkout.asp” to the “pc” folder. That is the only file that has changed.

NOTE 2 - IE 8 Compatibility Mode issue: on 04/26/10 we found a bug that affected a user's ability to checkout when using Internet Explorer in “compatibility mode”.

Do you need it?

We encourage you to apply this patch as it provides some new features and addresses some existing issues found since the release of Service Pack 3. This is a cumulative patch that addresses all issues that had been posted to the “Just In” section of the ProductCart Support Center since the release of SP3, and it also adds some new features and bug fixes focused on the “One Page Checkout” system.


You must be running ProductCart v4.0 SP3, where SP3 stands for Service Pack 3.

If you have not yet applied Service Pack 3:

  1. First apply Service Pack 3
  2. Then apply Service Pack 4.

Downloading the Service Pack 4 Files

You can download Service Pack 4 by clicking on link below. The files to be used change depending on what has been installed on your ProductCart-powered storefront.

You are running Use the files in the folder named…
ProductCart Standard or Build To Order STD or BTO
ProductCart Standard or Built To Order, plus Apparel Add-on STD or BTO + APP
ProductCart Build To Order, plus Conflict Management BTO + CM
ProductCart Build To Order, plus Conflict Management and Apparel Add-on BTO + CM + APP

Additional Files


Action required: If you are using the MailUp e-mail marketing system and therefore have added the MailUp integration files to your ProductCart-powered store, download and apply the MailUp integration files again, after installing the Service Pack 4.

Other Add-on's

The following add-on's are not affected by this patch (i.e. the files to download do not change depending on whether or not you are using any of these add-on's):

  • eBay
  • Synchronizer for QuickBooks

Applying the patch

Unzipping the Downloaded Files

Unzip the files to a new directory on your desktop (e.g. “ProductCart v4 Service Pack 4”).

That is the location from which you will FTP files to your Web server. So remember the location as you will need to find it again when you start your FTP program.

Parent Paths Enabled vs. Parent Paths Disabled

Please select the correct update files depending on the version of ProductCart that you are running. Specifically, if you are running ProductCart on a server that has Parent Paths Disabled, please use the files contained in the “Parent Paths Disabled” folder. Otherwise, use the files contained in the “Parent Path Enabled” folder, which is the most common scenario.

If you are unsure of which version you are running, look at the version number in the Control Panel start page (“menu.asp”). If it includes the letters “PPD”, then you are using the “Parent Path Disabled” version of ProductCart.

Synchronize overwritten files

The following files are often customized by ProductCart users and will be overwritten with this patch (see how to synchronize files):

  • includes/languages.asp
    A few text strings were edited\added. Make sure to synchronize with your version.

Step 1 - Back up your store

If you haven't already done so, back-up your store.

Step 2 - Turn off your store

  1. Log into your Control Panel and select General Settings > Store Settings
  2. Enter a descriptive message in the field Message displayed when store is off.
  3. Select Turn store off, then click on the Update button. This ensures that customers do not browse the store while you are updating it.

Step 3 - FTP new files to your server

Upload the files to their respective folders, overwriting the existing files. For instance, you will update the contents of the pc subfolder on your Web server with the files contained in the pc subfolder that you have downloaded from the ProductCart Update Management System.

Refer to the Additional Files section above to see if any additional files need to be uploaded.

DO NOT delete any of the files that are currently on your Web server.

Confirm successful transfer

FTP transfers sometimes fail. Make sure that once the process has finished, your FTP client reported a success message. Most FTP programs have a way to show you whether some files were not uploaded successfully. If that happens, make sure to upload them again until all files have been uploaded successfully. For example, Filezilla separately reports “Failed Transfers” and “Successful Transfers”. The “Failed Transfers” tab should be empty.

Step 4 - Turn your store back on

No database changes are made as part of this Patch. So after uploading the correct files via FTP, you are done with the installation.

  • Log into the Control Panel
  • The version number will be updated to include “SP4” (service pack 4)
  • You can now turn your store back on
  • Verify that the storefront is working properly by placing at least one test order to go through the entire checkout process.

OPC Patch Content

List of fixes and improvements

Service Pack 4 for ProductCart v4.0 SP3 contains the fixes/improvements listed below:
This list is not in any specific order; the order follows an internal “testing” document

  1. Bug in Reward Points redemption when the customer is a wholesale customer. The bug allowed a customer with no points left in his/her balance to be able to still redeem additional points.
  2. Canadian provinces cannot be selected in certain scenarios
  3. Confusing messages when logging in when customer is a guest (e.g. see this forum thread)
  4. Added ability to copy shipping address from billing when adding a separate shipping address
  5. Automatically disallow gift wrapping for electronic Gift Certificates
  6. Do not require shipping address nickname (automatically use street address as nickname)
  7. Added ability to make Guest Checkout an option (see section below for details)
  8. One Page Checkout returns an error because the field “pcCust_Guest” is NULL after upgrading to v4 in some DBs
  9. Preselect shipping country based on store settings when adding a separate shipping address
  10. Shipping address type selection radio buttons (commericial vs. residential) not available when no separate shipping address is used
  11. Issue with Gift Certificates and free shipping
  12. SagePay (Protx) issue that prevents checkout
  13. Phone number not required issue
  14. Coupon restriction issue
  15. Date error in delivery date triggers blackout date message when date format is dd/mm/yy
  16. Postal code validation error with Gift Registry
  17. Bug in shipping settings area (shipping message)
  18. Billing address only and shipping rates
  19. Some customers experience time outs on One Page Checkout when using a very slow connection
  20. Saved cart cannot be restored after starting checkout (see this thread)

Consolidation of previously released fixes

The patch also consolidates the following bugs fixes that had previously been reported in the “Just In” section of the ProductCart Support Center:

  • McAfee Secure Vulnerabilities
    Posted on 02.17.10. Updated on 02.21.10. Issue: the McAfee Secure service reported two separate vulnerabilities. We are not aware of any successful attacks. The attached files address the issue.
  • Authorize.Net Test Mode issue
    Posted on 02.03.10. Issue: when using Authorize.Net in test mode, an expired credit card account used for testing caused test transactions to be declined.
  • Tax Rate Lookup issue
    Posted on 01.27.10. Issue: when using a US tax data file, rates were not returned in some cases. This file addresses the problem. See the ReadMe inside the ZIP for details.
  • Sitemap issue
    Updated on 01.11.10. Issues: sitemap index not generated correctly in some cases (large catalogs); sitemap not generating correct URLs in certain cases; sitemap not generating Keyword Rich URLs for content pages; XML failing with certain special characters.
  • USPS rates not being returned
    Released on 01.06.10. Issue: a change in the USPS API (we were not notified of it) is causing Priority and Express rates not to be returned when USPS Priority and Express boxes are used.
  • Browse by Category Style Issue
    Released on 01.06.10. Issue: an incorrect page style was in some cases passed to subcategories, even if the top-level category used the correct page display style.
  • PayPal Payflow & WPP issue
    Released on 12.20.09. Payflow Link and PayPal issue in the storefront (when shipping address not provided) and in the Control Panel (issue updating payment settings).
  • Tax Zone issue
    Released on 12.20.09. Taxes not being correctly calculated when using tax zones.
  • Content Page issue
    Released on 12.20.09. The issue consisted of content pages not being accessible by wholesale customers. The issue did not affect retail customers or customers belonging to a pricing category.
  • UPS Shipping Wizard issue
    Released on 12.17.09. In some cases, the drop-down in the UPS Shipping Wizard was not being populated with the UPS shipping service chosen by the customer.

New "Guest Checkout" options

The ability to turn off “Guest Checkout” will be a setting controlled directly from the Control Panel in ProductCart v4.1. In this patch, Guest Checkout is not controlled through the Control Panel, but rather via a variable in the file inc_GuestCheckOutOpts.asp, which the patch adds to the pc folder.

The file contains the following code:


private const scGuestCheckoutOpt = 0

' ***********************************************************
' // You have the 3 options described below. Change number above to match your preference.
' // These options will be controlled from within the ProductCart Control Panel in ProductCart v4.1
' 0: Guest Checkout "enabled"
' Customers can checkout as guests (this is how ProductCart v4.0 behaves)
' 1: Guest Checkout "allowed"
' Customers can checkout as guests, but they are asked to register (and they can opt out).
' 2: Guest Checkout "disabled"
' Customers cannot checkout as guests. They must enter a password and use a unique e-mail address.
' ***********************************************************


As you can see, if you have 3 options:

  • To enable Guest Checkout, the line at the top should read:
    private const scGuestCheckoutOpt = 0

    This is the behavior in ProductCart v4, before this patch has been installed.

  • To allow Guest Checkout, it should read:

    private const scGuestCheckoutOpt = 1

    Customers can checkout as guests, but they are asked to register (and they can opt out). So this is similar to the default behavior in ProductCart v4, but customers are prompted to register (you can change the language to specifically indicate why you recommend that they register, for example).

  • To completely disable Guest Checkout, it should read:

    private const scGuestCheckoutOpt = 2

    In this scenario Guest Check out is disabled and customers are required to enter a password. If the e-mail address that they are trying to use already exists, the system will notify them (whereas with Guest Checkout enabled, ProductCart accepts multiple accounts that use the same e-mail address).

QR Code
QR Code ProductCart v4.0 - Service Pack 4 (One Page Checkout Patch) (generated for current page)