Invoice ID should be optional to allow for upcoming invoices
added events
updated event tests