Picking and skipping rules
These two rules decide who appears on which client's invoice, and when. They are the quietest part of invoicing and the most common cause of a wrong bill, because a missing employee looks like nothing at all.
Where: Invoices › the client's configuration You need: invoicing rights for that client
What each rule does
| Rule | Effect |
|---|---|
| Picking rule | Puts an employee on the invoice for a cost centre, over a date range |
| Skipping rule | Excludes an employee over a date range, with a reason |
Both are bounded by dates, which is what makes mid-period changes expressible: someone who moved from one client to another on the 15th is picked for one cost centre until the 14th and the other from the 15th.
Why the date range matters more than it looks
An invoice bills a period. A picking rule that starts mid-period bills only from its start date — which is correct when someone joined then, and wrong when the rule was simply created late.
⚠️ A missing picking rule produces an invoice that is quietly short. Nothing errors, nothing warns, and the invoice looks perfectly normal — it just does not include that person. The client will not tell you, and it may go unnoticed for months. This is the single largest revenue risk in the module.
Check picking rules for every joiner, leaver and internal move before producing invoices, not after.
Skipping, and why the reason matters
A skipping rule excludes someone who would otherwise be picked up — a placement on hold, a person the client has agreed not to be billed for, a duplicate.
The reason field is the whole value. In six months, an unexplained exclusion is indistinguishable from an error, and somebody will either bill the client wrongly by removing it or keep losing revenue by leaving it. Write the reason as though explaining it to a colleague who was not there.
Which one, when
| The situation | Use |
|---|---|
| A new placement with a client | Picking rule from their start date |
| Someone leaves the placement | End-date the picking rule |
| Someone moves between clients mid-period | End one picking rule, start another |
| Temporarily not billable | Skipping rule with a reason |
| Never billable | No picking rule at all |
Prefer end-dating a picking rule over adding a skipping rule when someone has genuinely left the placement — it describes what happened, and it keeps the history readable.
What Happens Next
- Invoices produced for a period include exactly the employees picked and not skipped for it.
- Changing a rule affects invoices produced afterwards; it does not revise an invoice already issued.
- Cost centre determines which client's invoice an employee lands on, so the cost centre and the rule must agree.
Tips
- Make picking rules part of your placement process. The moment a placement is agreed, the rule should exist — not when someone notices the invoice is short.
- Reconcile headcount against the invoice every period. Count the people you believe are placed with a client and compare against the lines. It is a two-minute check that catches the failure nothing else catches.
- Always write a skip reason. An unexplained skip is a decision nobody can revisit safely.
- End-date rather than delete. Deleting a rule removes the record of what was billed and why.
- Check rules after any reorganisation, since cost centre changes move people between clients.
Troubleshooting / FAQ
Q: An employee is missing from an invoice. No picking rule covers them for that cost centre and period, or a skipping rule excludes them.
Q: Someone appeared on the wrong client's invoice. Their cost centre points at that client. Fix the cost centre and the rule together.
Q: An employee was billed for only part of the month. The picking rule's start or end date falls inside the period. If that is not right, correct the dates and reproduce.
Q: Why is this person skipped? Read the skip reason. If there is not one, treat it as unknown and confirm with whoever handles the client before changing anything.
Q: We fixed a rule — does the issued invoice update? No. Reproduce the invoice, or handle the difference as an adjustment on the next one.