Woo Commerce Custom Field Integration

So we're working with WooCommerce and we would like to switch our E-mail service to CM. I'm not finding any simple solutions or current integrations for my problem, and I'm hoping for some feedback on how to tackle it.

I want to have everything on one list and then sub divided in to segments based on Custom Fields. We Have 10 Products, 3 Free Products, Mailing List, Teaser Leads, Employees, and Press - so 17 Custom Fields:

Sense a user can come sign up for our "Mailing List" option, come back later and sign up for 1 free product, then may later come and purchase 3 items, I need to have each of those reported in a Custom Field, so I'd like to have each custom field only populate when they purchase a specific product or get a certain free product.

For Example:
Custom Field "Product1" will only populate with [Name of product] when Product 1 is purchased.
Custom Field "Product7" will only populate with [Name of product] when Product 7 is purchased.
Custom Field "Mailing List" will only populate with [YES] when the user signs up on our Mailing list web form.
Custom Field "Free Content 2" will only populate with [Name of Content] when Free Content 2 is sign up for on a web form.

This will prevent any thing from being over written, and it will make it easy to segment out many combinations of customers owning a variety of products.

Also, I'd like these to integrate with Transactional e-mails. So when they purchase a product, they get the invoice, account creation e-mail, etc. and become part of an automation workflow.
When they sign up for "Free Content 3" they get the download e-mail and are added to an Automation Workflow.

Is there an easy way to set this up that I'm missing? Or is this going to take a lot of extra development? Or is this not at all possible?

Thank you in advance!

200,000 companies around the world can't be wrong.

From Australia to Zimbabwe, and everywhere in between, companies count on 
Campaign Monitor for email campaigns that drive real business results.

Get started for free