Como deve ter visto nos comentários dos colegas, é melhor usar uma solução pronta do que se meter nessa dor de cabeça. Tem muita solução boa e barata por aí.

Qual sua motivação e razões para querer criar um sistema como esse? Pois pelo que vimos você não sabe muito bem qual é toda a complexidade envolvida.