We're a small fashion brand currently selling on Shopify platform.
We have two major problems with Shopify that I would like to know if Magento can solve:
1. Multi-Currency check-out - Yes, we can SHOW different currencies on Shopify, but that's not good enough as the checkout is only in one base currency. We need to be able to accept checkout in EUR GBP and USD. Furthermore, we'll need to have different prices for the same product in the different currencies.
2. Multiple locations - We'd like to have the ability to have localised fronts for USA users and EU users - In Shopify you have to create a completely new shop and then sync all the information between them - nightmare.
Yes, Magento supports both of these out of the box through it's multi-website functionality: http://docs.magento.com/m2/ee/user_guide/stores/websites-stores-views.html
You would need a website for each currency as by default Magento accepts payment in the base currency of the website (even if other currencies are enabled). Though there are some payment gateways and extensions out there that will let you accept in the current of the particular store.
And how will we sync content between the two website automatically? sounds like the same solution Shopify offers (having two shops)
Magento can share products between websites. Out of the box, Magento only allows one stock level per product so if you do share a product between websites, you have to have a single stock value (so no problem syncing there).
Then for most other product details, in a multi-website setup when you share products between websites, there's a default product value, i.e. for name, description, price that is used for all websites. You do have the ability to customise only those fields that are different in a specific website if needed.
So no need to sync because both websites share the same details unless you override them.
For a blog, that depends on how it's implemented as Magento doesn't have a blog out of the box. For CMS Pages, the content of these can be used for both websites by just setting it to be applicable to both websites. Magento talks about "scope" when it's talking about if this value is applicable to one website, the other, or both. See this page about adding cms pages and scope: http://docs.magento.com/m2/ce/user_guide/cms/page-add.html. images are available in both. In general, everything uses this scope system.
To definite different prices for different currencies, you will want to probably want to create additional websites to do this. Prices are set on the website level (where Magento has websites, stores and store views). So yes, that's possible too.