Me extraña que se deba hacer uno nuevo, hay un par muy buenos en el mercado, es cosa de saber usarlos y maquetarlos al gusto del cliente, a menos que haya una necesidad muy puntual de hacer uno nuevo. Para eso hay que contemplar bien la gestión de inventario, facturación, carro de compras, facilidad de uso, SEO, tiempo de respuesta. Muy importante también es tener un buen ciclo de desarrollo con un control de versiones, pruebas de todo tipo para garantizar una aplicación estable al cliente, y un buen modelo de datos para su flexibilidad y escalabilidad, menos esfuerzo, mas calidad. Y sin olvidar toda la infraestructura de servidores para una alta disponibilidad y rendimiento de forma elástica para ahorrar costes, tofo en función de un UpTime y sin hacer perder dinero a la empresa.