I want to know if there is some **best practices** to use **Magento 2 as an headless E-commerce solution**.

A typical E-commerce in 2017 is to have an omni-canal solution which include

 - 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
   destop/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, omnicanal

**Cons:** Limitation for performance/features/formatting


----------


Some questions for this approach :

 - Who is responsible for formating data, for example prices. Magento API
   and frontend framework ?
 - Who is responsible to resize product image and cache it ? 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 purpuse
 - 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