[FEATURE] auto-generate invoice_id if empty

[TEST] auto-generate invoice_id if empty
@cdmcnamara good point!