You may first want to look at this comparison of existing Invoice solutions.

Several solutions exist which range in functionality from simply providing PDFs to using Views to generate PDFs, modules that generate and focus on e-mails to send invoices, and configuration of invoice numbers, etc.

Example Invoice Workflow

One use case for invoices using Commerce Billy goes as follows:

  1. During checkout, the customer uses a Pay with Invoice payment type.
  2. After checkout, rules looks at the order and sets the status to Invoiced. This triggers the creation of the invoice PDF.
  3. The order is currently in an invoiced state and is pending payment.
  4. The order payment is received and input manually.
  5. Order status gets updated to Pending.
  6. Order gets fulfilled.
  7. Using rules or manually, the order status moves to completed.

You can optionally set the order status to invoiced to keep the PDF active.

Invoicing with Automatic Payments

Invoices are also commonly used alongside automated billing systems (such as those built with Commerce License Billing) to provide a receipt for what was billed.

  1. An automatic order is generated and ready to be processed.
  2. Commerce License Billing uses the existing Card on File information to automatically charge the order.
  3. Based on the status of the payment, one of two things happen.
  4. A successful order converts to the Invoiced status, generating an invoice, and optionally sending an e-mail with Commerce Billy Mail.
  5. An unsuccessful order would be handled by Dunning.