Dashboard

Operational overview from the database — throughput, approval rates, and per-client totals.

0 Processed
0 Needs review
0 Approved

Rows missing a title, name, gender, address, post code, DOB, NI number, or work start date are flagged automatically — fix a cell inline, tick the rows you're happy with, then approve them all at once.

Rows where hours couldn't be confidently computed, or where hours/rate were auto-computed from an in-file rate legend, are highlighted below — fix a cell inline, tick the rows you're happy with, then approve them all at once.

S.NoEmployee CodeEmployee Name ClientGross HoursRateGross PayStatus
S.NoEmployee CodeEmployee Name ClientGross HoursRateGross PayStatus
S.NoEmployee CodeEmployee Name ClientGross HoursRateGross PayStatus
S.NoEmployee CodeEmployee Name ClientGross HoursRateGross PayStatus
1

What goes in

2

Approved when

3

File format

New starter batches

Every pack the agent has read, newest first. Tick batches to build a custom download, or use the arrow on a batch to take just that one.

→
Label Status Date Processed Missing fields Updated
1

What goes in

2

Approved when

3

Which clients

4

File format

Timesheet batches

Every timesheet upload, newest first, with its hours and gross pay. Tick batches to build a custom download, or use the arrow on a batch to take just that one.

→
Label Status Date Processed Missing fields Updated

Business metrics

From the database, not just this session.

Throughput & status

Clients attempted per day, and how each import run finished.

Clients attempted per day

Last 7 days

Status breakdown

Client creation outcome

Extras breakdown

Best-effort actions attempted after each client is created — Bank Account, Customer, Supplier, Quote.

FunctionalityAttemptedSucceededSuccess rate

Recent activity

Most recent import attempts, newest first.

ClientStatusExtrasUpdated

Audit log

Every action on this run, in order. Append-only. Click to open.

    + New Agent

    Finishing this wizard adds a draft blueprint to Agent Studio and to the Dashboard's Draft agents section, where you can lay out and inspect its flow. It won't run for real until a backend is wired up for it.

    Choose worker packs — one worker each pick as many files as you like — each file is one worker. .pdf.jpg.png.zip

    One file, one worker. Each PDF, photo or ZIP you pick is one person.

    Drop timesheets on the tray or click anywhere here to browse. Several clients at once is fine. .xlsx.xls.zip

    One click, one batch. Everything you upload together is grouped as a single batch in HITL and History.

    The pipeline behind it Drag agents to change their order. Click a wire to connect or disconnect a handoff. Click a step to inspect it.
    Test with

    Agent line

    Runs top to bottom

      + New Agent

      Finishing this wizard adds a draft blueprint to the Agent page and to the Dashboard's Draft agents section, where you can lay out and inspect its flow. It won't run for real until a backend is wired up for it.

      Capium · Reconciliation Agent

      Feed it a statement. It settles the books.

      Every bank line matched against invoices, receipts and purchases. Certain ones are reconciled, the rest are queued for a person.

      Ready
      CSV Drop your statementBank statement CSV or Excel · click to browse

      You give itOne bank statement, CSV or Excel

      Agent Waiting for a statement

      You get backMatches, confidence, and an exception list

      Sales ledger Invoices & receipts
      Purchase ledger Bills & purchases
      Journals Tasks & adjustments

      It fetchesLive from Capium for Demo Company

      Capium Pull accounts & ledgers
      Confidence 95/80%
      Confidence thresholdsBelow the review line, a person decides.

      Tune from your own results. These aren't accounting rules.

      Pick an account and drop a statement to start.

      Pick the account this statement belongs to.

      Illustrative rows — the real, live version of this list already exists on the Bookkeeping tab's History table.
      Run IDClientStepsStatusDuration
      run_8f3a2dFenwick Roasters Ltd5 / 5Success38s
      run_7c3e1bMarcus Ojo Photography5 / 5Success31s
      run_6d1a9fAshcroft & Bell Surveyors1 / 5Failed21s

      Capium Login

      The Bank, Sales, Purchase and Journal agents sign in to Capium with this. Saved encrypted in this app's own database — change it here any time.

      Loading…

      No model in this pipeline

      Capium's automation is pure browser automation — it drives real screens directly and doesn't call the VLM or any other model. Nothing to configure here.

      Frontend preview — these toggles aren't wired to anything yet.
      Run extra functionalities by defaultBank Account, Customer, Supplier, Quote — attempted automatically after every client.
      Headless browserRun without a visible browser window.
      Stop batch on first failureOff by default — one bad client no longer blocks the rest of the batch.

      Agents

      Two independent agents run this system — each its own pipeline, calling the shared VLM to make judgment calls a fixed rule table couldn't.

      Business metrics

      From the database, not just this session.

      Throughput & status

      Items processed per day, and where each pipeline stands.

      Items processed per day

      Last 7 days

      Status breakdown

      New Starters vs Timesheets

      New Starters
      Timesheets

      Recent activity

      Most recent items from the database, newest first.

      TypeWorkerStatusUpdated

      Per-client totals

      Approved timesheet rows only — figures are final once approved.

      ClientRowsHoursGross Pay

      Observability

      Real counts derived from stored items. This app doesn't instrument per-call latency or token usage today, so those aren't shown here rather than made up.

      Error breakdown

      Items whose notes indicate the agent couldn't confidently extract something.

      ReasonCount

      Live rates

      Auto-approval / review / rejection rates, computed continuously from the real database — a live proxy for extraction confidence, not per-field accuracy (that needs a verified ground-truth answer key, which only ever existed for the one-time benchmark below).

      New Starter Agent

      Timesheet Agent

      Historical validation benchmark

      A one-time offline run against a real, known-correct dataset (w/e 30.08.2026) — a dated reference point, not live production accuracy, and not recomputed automatically.

      ClientRows checkedExact matchesMatch rate
      Banham Poultry61361199.7%
      Poundland174174100%
      ABP Penstonverified against a source screenshot of the file's own rate legend, not row-by-row ground truth——

      Each row is one upload batch — the same grouping HITL already uses — with a status derived from its own items' real statuses, not a separately tracked run concept.

      SourceTypeItemsStatusStartedUpdated

      New Starter Agent

      Reads a worker's onboarding documents and extracts payroll/identity fields.

      Timesheet Agent

      Reads a client's raw timesheet, works out its pay structure, and computes gross pay per worker.

      This system uses one extraction backend — a VLM — not a set of interchangeable providers.

      VLM

      Shared, already-running service on this box — used for both vision extraction and text-only structure reasoning.

      Connection A live check against the real endpoint just now, not a cached flag.
      Checking...
      ModelVLM
      CapabilitiesVision extraction + text reasoning
      Max new tokens—
      Timeout—

      HITL behaviour

      Real, persisted toggles — changes apply from here on (already-decided items aren't retroactively changed).

      Require human sign-off When on, nothing auto-approves — every extracted item waits for a manual Approve click, even with nothing missing.
      Mask PII in summary views Reduces names to initials in the Dashboard activity feed and Runs list. The real stored fields are never changed.

      Timesheet category labels

      Some clients' pay-category tags aren't self-explanatory on their own (e.g. a weekend premium tagged "WP"). Add a client + tag pair here and its S.No will show your label instead — e.g. client "AB Produce Packhouse", tag "WP", label "W Bonus" turns S.No "5WP" into "5 W Bonus". Unconfigured tags are left exactly as they are.

      ClientTag / CodeLabelEnabled