Yes, you can recognize revenue before you invoice a customer. Revenue is recognized when you satisfy your performance duties under a contract and that may happen before you get around to invoicing your customer.