I want to know if there are some **best practices** to use **Magento 2 as a headless E-commerce solution**. A typical E-commerce in 2017 is to have an omni-channel solution which includes - E-commerce - CMS - Multiplatform - Tier system integration (ERP, ...) I want to know how involve Magento 2 API with this kind of solution. ---------- **My approach:** - Use a different frontend framework (such as angular) for desktop/mobile webapp and mobile app - Only use Magento 2 API in order to retrieve or interact with E-commerce data/action - Only use CMS API in order to retrieve CMS data. **Pro:** Only API's, omnichannel **Cons:** Limitation for performance/features/formatting ---------- Some questions for this approach : - Who is responsible for formatting data, for example prices. Magento API and frontend framework? - Who is responsible for resizing product images and cache them? Because in the native Magento 2 API there is no resize or cache system. - Do I need to create new custom isolated API or extend native for future upgrade purpose? - Do you recommend to use an extra layer in order to combine CMS and Magento API? **I appreciate you to share your return in experience.** Moreover, I found this approach: http://fbrnc.net/blog/2015/10/super-scaling-magento **Usefull links :** - https://blogi.lamia.fi/verkkokaupat/headless-ecommerce/ - http://www.magetitans.it/headless-new-buzzword-magento-2-sander-mangel/ - https://www.youtube.com/watch?v=6OuzAtqtWRE - https://pantheon.io/blog/headless-websites-whats-big-deal-decoupled-architecture - http://buytaert.net/the-future-of-decoupled-drupal - https://creately.com/diagram/example-v2/ihbyjjkf/Example%20Headless%20Architecture - https://www.lullabot.com/articles/should-you-decouple - https://alankent.me/2016/12/14/headless-magento-and-extensions/