How to automatically issue invoices from an order

An invoice that's created on its own the moment an order is finished - no manually retyping the amount, client or line items. Here's how to put it together from ordinary automation blocks.

Marek Raja

Issuing invoices by hand always follows the same pattern: the order is done, someone opens the invoicing tool, manually retypes the client's name, line items and amount from the order, and only then sends the invoice. Every one of those steps is a chance for a typo, a forgotten line item, or a delayed invoice. You can set it up so the invoice creates itself, exactly the moment the order is marked as completed.

How invoice-issuing automation works

The foundation is the same pattern as any other no-code automation - a trigger and a chain of actions behind it:

  1. Trigger - the order status changes to "Done" (or another event, such as a signed handover report).
  2. Condition - checks that the order has its invoicing details filled in (client, line items, amount).
  3. Invoice creation - a new record in the invoices database, filled with data straight from the order.
  4. Notification - an email or message to a colleague that the invoice was created and is waiting to be sent.

You connect a trigger to an action by dragging it.

The order status changes to Done, the automation catches it and prepares the invoice right away - without a single manual retype.

What to keep in mind when building it

Where to pull data from. The invoice should pull directly from the linked order record (a relation between databases), not from manually copied values - that way the link between the invoice and the order stays traceable, even later on.

When to just prepare the invoice and when to send it right away. For smaller companies it often makes sense to have the automation just prepare the invoice and alert a person who checks it and sends it themselves. For a higher volume of orders, you can also add automatic sending, ideally with a condition that verifies the data is complete.

Connecting to the print output. The invoice record itself is one thing, the PDF document to send the client is another. This step can be connected to a template with placeholders that gets filled with data from the record - more on this in the article on generating documents from data.

What this actually saves

Besides the time saved (typically 5–15 minutes per invoice, depending on complexity), automation removes the most common source of errors - a manually mistyped amount or line item that only comes to light once the client notices it. Invoicing tied directly to the order status also means an invoice never stays "forgotten" simply because nobody remembered it.

What's actually left on a job once the hours worked are deducted is shown in The agency that knows what it actually earned.

Frequently asked questions about automatically issuing invoices

Does the invoice have to send automatically, or can I check it first?

The automation can just prepare the invoice and alert you that it's waiting for review and sending - automatic sending is an optional extra step, not a required part.

Can this also be used for recurring invoices (flat fees)?

Yes, instead of a trigger on the order status, you use a time trigger (for example "the first day of the month"), and the rest of the automation stays the same.

What happens if an order is missing invoicing details?

A well-built automation should handle this case with a condition - instead of creating an incomplete invoice, it alerts a person to fill in the missing details.

Describe how you want to invoice.

Apexloop builds a tailored app for you