I'm not sure if there's a question there - it seems a perfectly valid approach. All I'll say is for invoicing/book-keeping, you also need to consider voiding invoices, credit notes, reconciling payments to transactions etc.
For that reason I have a hybrid approach where my system generates orders which then get pushed to Xero for the accounts team to deal with, as Xero pulls in bank information and helps the account team reconcile it semi-automatically. When I push an invoice to Xero I get back an invoice number which I store locally.
If you're also doing e-Commerce on your site via Stripe (for instance), it might be that Stripe can do a lot of the invoice generation etc for you. Depends how you're accepting payments really.
T