Although CubeCart has an extensive code hooks system allowing code modifications to be made outside of the core files from time to time the core code does need to be changed. This can prevent developers upgrading to the latest version due to fears of overwriting their work.
Best practise would be to fork the CubeCart code from GitHub and merge in our updates in as they are made.
If you haven't forked our code and already have a modified store then fear not as it is still possible to upgrade. The solution is to firstly seek what current version the store is running on. This can be found in the "Overview" tab of the dashboard in your admin control panel or it can be found in the ini.inc.php file found in the root folder of your store.
Once you know the current version please download the original package from our website. Extract the package and then use a file comparison tool to create a report showing code differences. A very userfriendly option is Beyond Compare but more traditional methods can be used such as a linux "diff". Once you have a diff or report of code changes then can be applied back after upgrade.
If you choose Beyond Compare we recommend performing a folder comparison. Click the button at the top to show "Diffs No Orphans" and then use the "Expand" button to show all differences. In the Edit menu choose "Select Al Files" and then there should be an option and use the "Actions" menu to "File Compare Report". In the next window choose a Side-by-side "HTML report" with report options set to "Differences".
This will give you a nice report of all the code customisations made to your store.
PLease now upgrade to the latest version and use the code difference report to add your customisations back again.