Below is the tasks I did to convert EE 1.12 to CE

It was about 2 months work, mostly related to theme/templates

The general gist was:

1. install a fresh copy of magento CE
2. Copy over the theme package from the EE site.
3. Created a theme (not a package), under base, for the downgrade. I used this as a place to copy over fixed templates from the old (EE) package folder
4. Manually, and systematically, go through all the theme template files, and eliminate the unnecessary template edits (silly stuff where templates were taken to theme for changing text in __('XXXXXXXXXXXX') - rather than making use of csv language files. I managed to eliminate a large bulk of unneeded template files.
5. Use n98-magerun to determine leftover templates, and what differs in them from core. Command would be something in the lines of : n98-magerun.phar diff:theme zabada/default enterprise/default - used this a lot, and systematically moved any template customizations from the templates over to their equivalent CE template in the newly created theme folder.

The template work was the bulk of the effort.
Once I had fixed up all the template issues, I deleted the default folder in the package, and copied in the theme under base into the packages as the default.

6. Fixed up styles. Fixed up some more templates. Fixed up some styles and so on.
7. Updated, and changed any 3rd party modules to latest and/or CE versions. - Had to email a few vendors to get the corresponding CE versions, and in some instances had to buy again. (shame on you!)

The entire site was hosted on an internal testing server for another month, and people tested it. Fixed tickets as they arose.

2 months later we were ready to deploy.

I created the following shell script, which was used to convert the EE database to CE. The script also did some clean up of code, removing all enterprise based files

simply run the script from the root of you magento install, passing your db user and password as the params.


On the day to 'go live' we simply set the EE site into maintenance mode.
We then dumped the DB, pulled it over to the new server, and imported
Ran the above noted script.
Adjusted local.xml to new server
Set new server into host file for testing. - did some checkouts, and other tests
Changed DNS
Set old site to old. cname so it can be accessed later.

All in all, it was a lot of work. Nothing major difficult, just time consuming. The theme took the longest work
Also had to fix encryption, as EE encryption differs from CE. See my overflow post about it here:

A week later: First got-cha: Payment method not available

I had to change the payment module used from EE to CE - still stripe, but changed module from radweb_stripe to inchoo_stripe. I had to physically disabled the radweb module, as it caused some excpetion in checkout. Pinging their support - I got no answer, so I just replaced the module with the one from inchoo.

The issue discovered later makes sense: If you try to view any of the orders in admin, you get an exception: Payment method is Not available.

The fix was to simply update the 'sales_flat_order_payment' table, changing 'radweb_stripe' to 'inchoo_stripe' in the column 'method'

mysql> update sales_flat_order_payment set method = 'inchoo_stripe' where method = 'radweb_stripe'

Lesson: Make sure any disabled/removed modules don't break past history view of orders!

UPDATE: 2015-10/27 :

It was found that Paypal payments are stuck on Express Paypal. If you view configuration options in admin, it looks like Paypal Standard settings are in fact displaying Paypal Express settings.

The fix for this is a DB query, setting config values

First, delete all current paypal settings:

DELETE FROM core_config_data WHERE path LIKE '%paypal%'

Then manually activate the paypal standard setting 

UPDATE core_config_data SET value = 1 WHERE path = 'payment/paypal_standard/active';