Billing is performed from the saved service order. Perform Invoice Generation processes every pending line quantity, while Selective Invoice lets you choose lines and quantities; each line's posting type decides whether it becomes a customer invoice or a claim.
Current limitation: some tenants show a seeded Perform Generate Quote action on Service Order, but the current Service Order server-action handler does not support that action. The alternate Create Quote path also does not yet produce the documented line set. Do not use either action as an estimate workflow until the implementation is corrected and verified; this procedure covers only the invoicing paths that are currently handled end to end.
Prerequisites
- A saved service order with lines. An order with no lines has nothing to bill.
- Prices on the lines, from price lists and discount groups or typed by hand.
- For work covered by a contract: the line's asset service contract resolved, since the contract supplies the posting type that routes the line to an invoice or a claim.
Procedure
The service order's asset, account, customer voice, service type and service contract are the source context for invoice routing. Confirm them and each line's pending quantity, contract, invoice group and posting type before generating a commercial document.
Step 1 — Review pending quantities and routing
Open the saved order's lines and identify what remains pending to invoice. Verify Invoice Group (Parts or Service), Posting Type, service-contract link and pending invoice quantity for every line. Correct routing before generation: a line already sent to an invoice or claim is no longer pending, so a later configuration change does not pull that quantity back automatically.
Step 2 — Choose full or selective invoicing
Use Perform Invoice Generation when every line's full pending quantity is ready. Use Selective Invoice when only particular lines or quantities are ready: select the eligible rows and enter a requested quantity where a partial amount is needed. Leaving a selected line's requested quantity empty uses its full pending amount; a value above the pending quantity is rejected.
Step 3 — Generate the documents
Confirm the action only after reviewing the selected lines. Either path is refused when no line has pending invoice quantity. One run may create more than one document because invoice group, service contract and posting type are evaluated per line.
What one run produces:
- Separate invoices per invoice group — Parts and Service lines land on separate documents, and lines under different service contracts split into separate invoices too.
- Posting-type routing — lines whose posting type is Generate Invoices (or blank) become customer invoices; Generate Claims and Auto Generate Claims lines become claims on the paying principal instead; Expense lines are invoiced to the servicing partner's own account, kept on their own document.
- Allocation-aware quantities — invoiced quantities draw down the allocations behind the lines, so what was reserved is what gets billed.
- Side effects — accepted service recommendations on the billed lines are marked utilised, the asset's service and maintenance records are updated, and the order is flagged invoice-generated.
Lines that are packaged components of another line are not billed individually — the package parent carries the price.
Step 4 — Verify and collect
Check the order's lines show nothing pending to invoice, then find the documents in the Invoice list (and the claims in the Claims app, where lines routed there). Payment collection against the invoice works exactly as in sales — see Invoicing and payments.
Expected result
Invoice runs consume only pending quantities, split documents by invoice group and service contract, route covered work to claims when configured, and leave traceable links back to the order lines. Customer invoices, claims and remaining pending quantities reconcile; if routing is wrong, correct the line's contract or posting type before another generation run.
Common problems
"No pending invoice quantities found in service order lines." Everything is already invoiced, or the quantities were cancelled. Check the lines' pending counters — partial invoicing from an earlier run leaves only the remainder.
A line I expected to bill the customer became a claim (or vice versa). The line's posting type routed it. Posting type fills from the line's asset service contract, falling back to the contract definition's posting treatment — check the line's contract before invoicing.
Common questions
Can I invoice parts and labour separately?
They separate automatically: the invoice group on each line (Parts or Service) splits one invoicing run into distinct documents. For finer control — this visit's lines now, the rest later — use Selective Invoice with chosen lines and quantities.
Can I invoice the same order twice?
Yes, and that is the normal pattern for staged billing: each run consumes pending quantities, so invoicing half a quantity today leaves the remainder pending for a later run. What is refused is invoicing when nothing is pending.
Does the customer pay for warranty work?
Not when the line is routed to claims: work covered by a contract whose posting treatment is Generate Claims (or Auto Generate Claims) is billed to the paying principal as a claim, not to the customer. The customer invoice carries only the lines routed to Generate Invoices.
