Вместо того, чтобы создавать это самостоятельно, вы можете использовать что-то вроде Zuora.com. Пожалуйста, обратите внимание, что я не использовал этих ребят или имел какую-либо связь, я просто помню, как читал что-то об услугах, подобных этой, которые начинают появляться для издателей веб-приложений, которым нужно простое решение для выставления счетов / учета.
Конечно, вам также нужно учитывать, какие платежные шлюзы вы поддерживаете, но я думаю, что Zuora делает это за кадром.