Tutorial: Build a job group
Assemble a split → route → OCR → extract → export pipeline for a mixed batch.
In this tutorial you'll build a Job Group — a single pipeline that takes one mixed scan (invoices from different suppliers plus a couple of receipts, say), splits it into individual documents, routes each one to the right template, reads it, extracts its fields, and files each type in its own place. You'll create the group, add two member templates, attach an AI service, run a real mixed stack, review the type buckets, and click Process to export. By the end you'll have a reusable mixed-batch pipeline you can point at the same kind of stack again and again.
What you'll have at the end: a saved, reusable Job Group that takes a mixed batch in one pass, routes each document to the correct template, runs an AI service to fill fields, and exports each document type to its own output — no pre-sorting by hand.
Before you start
You need a few things in place first:
- Two templates already built, one for each document type you'll route — for this walkthrough, an invoice template and a receipt template. A Job Group routes between templates you've already made; it doesn't create them. If you don't have them yet, build them first in Templates.
- A splitting rule on each member template. Routing inside a group is driven by each member's own splitting configuration, set in the Template Designer. For dependable group routing, use a Barcode, Patch Code, or Fixed Pages matcher on each template.
- A mixed batch to run — a folder or scan that contains both document types in one pass.
One template per type is enough to start
You don't need a separate template for every supplier. Start with one template per type (one invoice template, one receipt template) and let the group route between them. You can add more members later.
Build the group
You'll work mostly in the Job Group Designer, which has five tabs across the top: General, Members, AI Services, Mapped Fields, and Jobs Matching. We'll touch them in order.
Create the group
Open the Job Groups page from the left sidebar and click New (top right). Give the group a Name — something like Mixed AP batch — and an optional Description, then save. The group opens in the Job Group Designer on the General tab, which shows an at-a-glance summary you'll see fill in as you add the rest.
Screenshot placeholder — tutorials-build-a-job-group-01: the Job Groups page with the New button, and the new group open on the General tab of the Job Group Designer.
Add two members
Switch to the Members tab. Use the add panel's search-as-you-type box to find your invoice template and add it, then do the same for your receipt template. Both appear in the member list.
The member list is drag-to-reorder, and the order is the routing priority — Scanix checks members top to bottom and the first match wins. Put the most specific matcher near the top. If one template is a deliberate catch-all (a Fixed Pages matcher with no constraints claims every page), drag it to the bottom so it doesn't shadow the templates above it.
Screenshot placeholder — tutorials-build-a-job-group-02: the Members tab with the invoice and receipt templates listed and the drag-to-reorder handles.
A catch-all at the top shadows everything below it
Because routing is first-match-wins, a member that claims every page placed at position 1 will route the entire batch to itself and starve every member below it. Keep specific matchers high and any catch-all last. The Jobs Matching tab (Step 5) flags this for you.
Attach an AI service
Switch to the AI Services tab. This is where the group reads fields with AI instead of (or alongside) template zones. A Job Group can run several services at once — each routed document segment is passed through every service you select.
- Tick Invoices AI so invoice documents get their header, addresses, and totals read.
- Tick Receipts AI so receipts get their merchant, totals, and category read.
- Service cards carry a checkbox, so it's clear more than one can be on at once. When several are selected, the chips at the top of the right panel switch which service's field schema is previewed.
Leave the routing and privacy controls at their defaults for now (covered in the next step). If you'd rather not call AI at all and capture with template zones + OCR only, the picker's first card is No AI extraction — in a group it acts as a clear-all that switches every service off.
Screenshot placeholder — tutorials-build-a-job-group-03: the AI Services tab with Invoices AI and Receipts AI both checked, and the right-hand schema-preview panel showing the selected service's fields.
Picking a service is half the job
A service tells Scanix what to extract; it doesn't yet wire those values into your index fields. If you want AI values to land in specific index fields, open the Mapped Fields tab and point each field at an AI: <Service> field. Fields left on Use OCR zone (unmapped) keep their template-zone behavior. (Per-module required overrides are read-only in a group — set those on the template instead.)
Choose routing and privacy
Still on the AI Services tab, set how the services run. The defaults are sensible, so you can change these later:
| Control | Options | Default |
|---|---|---|
| Provider routing | Local first, cloud fallback / Local only / Cloud only / Pinned to one provider | Local first, cloud fallback |
| Privacy mode | Allow cloud egress / Local only | per group |
Local only keeps documents on the machine
Privacy mode: Local only overrides any routing policy and hard-blocks documents from leaving the machine — the enterprise opt-out. When cloud calls are allowed, they go straight from your machine to your own Anthropic or OpenAI account; Scanix never sees your key or your documents and never bills for tokens. You'll need to tick I acknowledge cloud egress before any cloud call is made.
Save the group.
Check the routing health
Before you run anything, switch to the Jobs Matching tab. It's a read-only health check that statically analyses your members' splitting rules and catches routing problems before a run — so you don't silently misroute pages. It surfaces things like a catch-all shadowing later members, a matcher that never claims anything, or two members with the same matcher value.
Some matchers aren't wired for group routing yet
For dependable group routing, stick to Barcode, Patch Code, or Fixed Pages matchers. Zonal OCR and Specific Doc matchers are flagged as unwired in the Jobs Matching check — they won't claim documents in a group today. Fix any flags in the Members tab or the Template Designer (the health check is read-only).
Screenshot placeholder — tutorials-build-a-job-group-04: the Jobs Matching tab showing the stat tiles (members / clean / warnings / errors) and the per-member analysis with any findings.
Your pipeline is now assembled and saved. Time to run a real batch through it.
Run the mixed stack
Bring in a mixed batch
Import or scan a batch that contains both document types — your invoices and receipts in one pass. (New to importing or scanning? See Import files and folders.) Open the batch in the Viewer.
Process through the group
Click Process and choose your Job Group. Scanix runs the whole pipeline in order:
- Split and route — pages are separated into individual documents and routed to the matching member template by priority (first match wins).
- OCR — text is read for each resulting document.
- Extract — each AI service you selected runs on the documents it applies to.
- Resolve mappings — any cross-template or AI field values are filled in one sweep.
- Stage for review — documents are placed in their type buckets.
Nothing is written to disk during this run — a group run ends with documents classified and staged, not exported. Files reach their destination only when you click Process again after reviewing (next section).
Review the buckets
When the run finishes, your documents are staged in type buckets — invoices in one, receipts in another — each with its fields filled in. This is the human checkpoint before anything is filed.
Scan the buckets and confirm each document landed under the right type and its fields look right. Pay special attention to the review bucket:
- Unrecognized — documents that no member's matcher claimed in a routed group. Reassign each one to the correct type before exporting.
Let AI place the leftovers (optional)
If documents keep landing in Unrecognized because your batches are too varied for fixed rules, the Members tab has an AI-classify unrecognized documents toggle (off by default). Turn it on and Scanix uses AI to pick the best-matching member template for anything the matchers missed — but it spends tokens on every unrecognised document, so leave it off if your matchers already cover the stack.
Process and find the output
Once the buckets look right, click Process to export. Each document type is filed according to its own template's Output settings — the invoice template's destination receives the invoices, the receipt template's destination receives the receipts. That per-type filing is the whole point of a group: one mixed scan in, each document type delivered to its own place out.
Where each type ends up
A Job Group doesn't have its own export destination. The destination, format, and filename pattern for each document come from the owning template's Output settings. If you want invoices and receipts in separate folders, set each template's destination accordingly. See Export overview for formats and filename tokens.
A template with no destination can't export
If one of your member templates has no export destination configured, documents of that type can't be filed. Make sure every member template has its Output settings destination set before you rely on the group end to end.
What you have now
You've built a reusable mixed-batch pipeline. From now on you can drop the same kind of stack — invoices and receipts in one pass — onto this Job Group, and Scanix will split it, route each document to the right template, read it, extract its fields with the AI services you attached, and file each type in its own destination, with a single review checkpoint in between. Add more member templates as new document types appear, and reorder them on the Members tab to tune routing priority.
Next steps
Job Groups
The mental model behind multi-template batches: split, route, OCR, extract, export.
Build a job group
The full reference for every tab in the Job Group Designer, beyond this walkthrough.
Run a job group
Run a batch, read the type buckets, triage the review bucket, and export.
Related
- Job Groups — what a Job Group is and when to reach for one.
- Build a job group — the tab-by-tab reference for the designer.
- Run a job group — running, reviewing, and exporting a mixed batch.