BotCurrent↗
← Back to examples

Official recipe · Tool workflows

Turn receipt images into a weekly expense dashboard

Implementation guide · untested. Reviewed procedure; no workflow execution or measured results.

The problem

Expense receipts are scattered across images and PDFs, making weekly spending totals difficult to maintain.

Agent job

Extract new receipt fields into a sheet and refresh the expense dashboard.

Expected output

An updated expense ledger and weekly spending view.

Where this framing comes from
  • Core problem: Editorial purpose framing
  • Agent job: Editorial purpose framing
  • Expected output: Editorial purpose framing
  • Relevant job roles: Editorial purpose framing
  • Benefit type: Editorial purpose framing
Editorial framing and outcome limits

Describes the task’s purpose and intended output; measured benefit, safe unsupervised operation and successful delivery are not established by this framing.

Editorial synthesis based on the linked source. This framing does not add evidence of successful delivery or results.

Implementation guide · untested

Source-supported actions are attributed evidence. Proposed steps, prompts, synthetic examples and checks are original editorial guidance; the workflow has not been run.

Why this agent / simpler alternative

Agent contribution

An agent can read varying receipt layouts, identify uncertain fields and explain exceptions while producing a consistent review ledger. Exact sums, duplicate detection and currency separation should be explicit controls rather than free-form narrative.

Simpler alternative

Use an established expense app or manual spreadsheet for a few receipts or a fixed vendor format. An agent is most useful when visual inputs differ and exception explanations matter.

Unsuitable when

The output will automatically reimburse staff, file taxes, post accounting entries or publish personal spending without review; also unsuitable when receipt data cannot be sent to the selected service.

Source-supported scope

See the existing source-backed action summary on this page.

Setup — required, optional and unknown

Required
  1. Editorial pilot: verify that the Manus account exposes receipt reading and the required Sheets operations; account capabilities can vary.

  2. A private folder of synthetic receipt images/PDFs, a proposed ledger schema and an expense owner who defines date, currency and category rules.

  3. A dedicated test output; retain original files and permit no public dashboard or production ledger writes during the first review.

Optional
  1. A prior-period synthetic ledger for trend checks.

  2. A restricted dashboard destination only after its authentication and audience have been reviewed; an unshared report file is enough for the first trial.

Unknown
  1. Actual OCR behavior, account tool availability, scheduling entitlement, dashboard access controls and usage costs were not established.

  2. Tax treatment, reimbursability and accounting categorization require owner review and are not determined by receipt extraction.

Inputs and access

  1. Name

    receipt_batch

    Format

    JPG/PNG/PDF with stable file_id, filename, modified_at and optional content hash

    Source or owner

    Expense owner

    Access scope

    A bounded weekly batch; redact card numbers, unrelated personal details and other unnecessary data

    Permission needed

    Approval for those receipt contents in the named service; use synthetic documents first

  2. Name

    ledger_schema

    Format

    CSV/Sheet columns: receipt_key, source_file_id, vendor, receipt_date, currency, gross, tax, net, category, status and evidence_note

    Source or owner

    Finance/operations owner

    Access scope

    Private staging ledger only

    Permission needed

    No write to a production expense system without explicit approval

  3. Name

    classification_and_period_rules

    Format

    Text/CSV: timezone, inclusive date window, category map, refund convention and duplicate rules

    Source or owner

    Expense policy owner

    Access scope

    No automatic tax or reimbursement rules

    Permission needed

    Approval of the chosen rules; uncertain fields must remain unresolved

  4. Name

    prior_import_manifest

    Format

    CSV of source_file_id, receipt_key, fingerprint and accepted_row_id

    Source or owner

    Ledger owner

    Access scope

    Only rows needed for deduplication

    Permission needed

    Read permission; retain import history unchanged

  5. Name

    prior_week_totals

    Format

    Optional CSV by currency and category with covered dates

    Source or owner

    Report owner

    Access scope

    Comparable periods only

    Permission needed

    Permission to use for a private trend; no sharing implied

Documented source actions

  1. Extract, append, refresh.

    Input: Receipts

    Output: Dashboard.

    Checkpoint: Unspecified.

    Source: second workflow example ↗

Proposed implementation steps — unexecuted

  1. Enumerate each file and page; define the week by receipt date and timezone, not upload date unless the owner explicitly chooses that basis. Check for repeated file IDs or identical content.

    Input: Synthetic batch, period rules and prior import manifest

    Output: batch_manifest with in-period, out-of-period and duplicate-candidate states

    Checkpoint: Every file must have one disposition; a newly uploaded old receipt must not silently enter the current week.

  2. Extract vendor, receipt date, explicit currency, total and any separately printed tax. Record page or image-region evidence for each field and mark illegible values as unknown.

    Input: In-scope files and ledger schema

    Output: staging_rows with raw_text, normalized_value, evidence and review_status

    Checkpoint: Do not infer currency from a dollar sign, replace unreadable digits, or calculate tax treatment from the vendor location.

  3. Compare file fingerprints and a compound receipt identity; keep same-vendor same-amount purchases separate unless supporting details establish a duplicate. Mark refunds with their explicit sign and reference original transactions when known.

    Input: Staging rows, originals and prior ledger keys

    Output: deduplication_report and accepted-versus-held row queue

    Checkpoint: An ambiguous duplicate stays held; a refund is not discarded as a duplicate purchase.

  4. Assign only approved categories; check gross/net/tax arithmetic when all fields are printed and comparable. Preserve discounts, tips and unsupported decompositions as exceptions rather than forcing equality.

    Input: Accepted candidates and expense-owner rules

    Output: review_ledger plus arithmetic and category exceptions

    Checkpoint: No reimbursement, tax deduction or ledger-posting decision. All accepted amounts and currencies require legible source evidence.

  5. Compute spend by currency, category and vendor; build a private dashboard preview with receipt links accessible only to approved reviewers. Show held-item counts and coverage dates beside totals.

    Input: Reviewed ledger and optional comparable prior-week totals

    Output: dashboard_preview with currency-separated totals, exception counts and freshness timestamp

    Checkpoint: Never sum CAD and USD as one total. Omit week-over-week claims if comparison coverage or exchange-rate policy is missing.

  6. Prepare an append-only batch proposal with a unique batch_id and receipt keys. Reconcile candidate count to accepted, duplicate, held and out-of-period counts; document a safe retry check.

    Input: Preview, accepted rows and import manifest

    Output: review_packet and proposed_append_batch; no production write

    Checkpoint: Stop at review. Any later Sheet append, schedule, hosting or sharing needs explicit authorization and a verified access model; a partial write must be reconciled before retry.

Original starter prompt — proposed

Origin

editorial_proposal

Text

Review the synthetic receipts in {receipt_batch} for {week_window} using {timezone}, {ledger_schema} and {category_rules}. Build a private staging ledger with source file and page/region evidence. Leave illegible values and ambiguous currency unresolved. Compare against {import_manifest}; separate confirmed duplicates, uncertain matches and refunds. Reconcile printed totals without inventing tax or accounting treatment. Summarize accepted values separately by currency and display held-file counts. Use {prior_week} only if its period and currency basis match. Produce a dashboard preview and append proposal, but do not update a production Sheet, reimburse anyone, post entries, host or share a report, enable connectors or schedule a run.

Placeholders
  1. receipt_batch

  2. week_window

  3. timezone

  4. ledger_schema

  5. category_rules

  6. import_manifest

  7. prior_week

Limitations

Original proposed draft-only prompt. No receipt extraction or dashboard has been executed; the public recipe does not establish accuracy or safe recurring ingestion.

Synthetic worked example — not an agent run

Status

synthetic

Label

Invented six-file receipt batch and expected private report; not extracted from real receipts

Artifact url

Not specified.

Content
Week

2026-10-05 through 2026-10-11

Batch id

DEMO-W41

Accepted rows
  1. File id

    R1

    Vendor

    Demo Office Supply

    Currency

    CAD

    Gross

    113.0

    Tax

    13.0

    Net

    100.0

    Category

    Office

  2. File id

    R2

    Vendor

    Demo Transport

    Currency

    CAD

    Gross

    56.5

    Tax

    6.5

    Net

    50.0

    Category

    Travel

  3. File id

    R4

    Vendor

    Demo Cafe

    Currency

    USD

    Gross

    24.0

    Tax

    2.0

    Net

    22.0

    Category

    Meals

  4. File id

    R5

    Vendor

    Demo Office Supply

    Currency

    CAD

    Gross

    -11.3

    Tax

    -1.3

    Net

    -10.0

    Category

    Office

    Kind

    refund

Excluded or held
  1. File id

    R3

    Status

    confirmed_duplicate_of_R1

    Reason

    identical synthetic receipt content

  2. File id

    R6

    Status

    held_unreadable_total

    Amount

    Not specified.

Dashboard
Accepted receipts

4

Duplicate files

1

Held files

1

Totals by currency
Cad

158.2

Usd

24.0

Cad category totals
Office

101.7

Travel

56.5

Week over week

Not specified.

Week over week reason

No comparable prior week supplied

Append status

Proposal only; zero rows written and no dashboard hosted.

Costs and effort — unmeasured

Verified prices
    Setup work
    1. Define the ledger columns, currency rules, date basis, duplicate key and private-report destination.

    2. Prepare legible synthetic examples and expected totals; confirm actual account tools and disclosure permissions.

    Recurring work
    1. Resolve illegible receipts, ambiguous duplicates and category questions.

    2. Review batch controls, import history and report audience before any separately authorized append or publication.

    Unknowns
    1. Per-image/PDF agent credits, scheduling and hosting costs, OCR error rate, report latency and reviewer effort were not measured.

    2. No verified savings, reimbursement accuracy or tax-compliance result is claimed.

    Failure modes

    1. Signal

      An image is rotated, faint or clipped near the total.

      Consequence

      A plausible-looking amount can be wrong.

    2. Signal

      A retry appends a previously processed receipt.

      Consequence

      Weekly totals are overstated without an import key.

    3. Signal

      A dollar sign is assumed to mean CAD or a credit note is made positive.

      Consequence

      Currency totals or refunds are materially misstated.

    4. Signal

      Hosted dashboard defaults to a broadly accessible link.

      Consequence

      Receipts or financial details may reach an unauthorized audience.

    5. Signal

      One page of a multi-receipt PDF is missed.

      Consequence

      Coverage is incomplete even if the arithmetic on extracted rows is correct.

    Recovery steps

    1. Trigger

      Illegible amount/date/currency

      Action

      Hold the row with its file/page reference; ask the owner for a clearer image or a documented manual value.

      Stop condition

      Do not include an unresolved amount in accepted totals.

    2. Trigger

      Partial append in a later authorized integration test

      Action

      Read the destination’s batch_id and receipt_key values, compare accepted rows with the manifest and propose only missing rows.

      Stop condition

      Do not retry the whole batch or delete suspected duplicates without authorization.

    3. Trigger

      Ambiguous duplicate or refund linkage

      Action

      Retain both source files and ask the reviewer to decide; exclude ambiguous rows from finalized totals with explicit coverage counts.

      Stop condition

      No silent merge or discard.

    4. Trigger

      Access model cannot be verified

      Action

      Keep the report as an unshared preview and list the exact required destination and audience decision.

      Stop condition

      Do not host, publish or send a link containing receipt data.

    Source-observed and proposed approval boundaries

    Source observed

    Connection authorization required; action-specific approval not specified.

    Editorial recommendations
    1. Approve the exact receipt data and service before processing real receipts.

    2. First trial ends at private staging and a proposed append; writes and recurring triggers require separate authority.

    3. Dashboard publishing or sharing requires the specific audience and minimum access; do not infer public access from a request for a dashboard.

    4. Tax filings, reimbursements, accounting postings and banking actions are outside this guide.

    Unexecuted validation plan

    Fixture

    Proposed six synthetic files matching output_example: CAD 113.00 office purchase, CAD 56.50 travel, an identical duplicate of the first, USD 24.00 meal, CAD -11.30 office refund and an unreadable total. Put one receipt on the second page of a PDF. No fixture generated or run.

    Acceptance checks
    1. All six files and every page have a disposition: four accepted, one duplicate and one held.

    2. Totals are CAD 158.20 and USD 24.00, with CAD Office 101.70 and Travel 56.50; currencies are never combined.

    3. The unreadable total remains null and the refund stays negative; each accepted value has source evidence.

    4. A proposed repeat pass identifies the same receipt keys as already handled; no production rows, external links or scheduled tasks are created.

    5. Week-over-week comparison is omitted without comparable prior data.

    Stop conditions
    1. An amount or currency is invented.

    2. A duplicate is counted or a multi-page input is incompletely inspected.

    3. The agent attempts publication, sharing, payment, a production append or connector authorization.

    Executed

    No

    Limits

    1. This is a recipe plus an editorial pilot design, with no measured extraction result.

    2. The two Manus guides share one original page; source-derived detail is intentionally concise.

    3. The applicable receipt retention, tax and Canadian expense rules were not researched; do not treat categories as legal or tax conclusions.

    Guide source links

    https://www.manus.im/blog/deep-dive-google-drive-connector ↗
    Original recipe or report; see documented_steps locators.

    https://www.manus.im/features/connectors ↗
    Current account-dependent connector and Google Sheets availability.

    Tasks: Money & accountingData & analysis

    Useful for: Finance professionalPersonal and household

    Editorial relevance from the title and source-supported actions; not evidence of the operator’s occupation.
    ManusIndependent testing: No

    Editorial candidate. This is source-backed reporting or a documented workflow. BotCurrent has not independently tested this task. A proposed Canadian adaptation is not evidence of a Canadian deployment or compliance certification.

    Original source

    https://www.manus.im/blog/deep-dive-google-drive-connector ↗

    Attributed to: Manus

    Official recipe
    Original action type
    tool_action
    What the source supports
    Read new receipt images and PDFs, append expense fields to a Sheet and refresh a spending dashboard.
    Source outcome limits
    This official recipe describes a procedure; it does not prove successful execution or independently reproduced results.
    Evidence attribution caveat
    This official recipe describes a procedure; it does not prove successful execution or independently reproduced results.
    Source approval description
    Connection authorization required; action-specific approval not specified.
    Named tools
    Manus; Google Drive; Google Sheets
    Model or version
    Unknown
    Publication date
    2026-05-15
    Source last checked
    2026-10-14
    Demonstrated in Canada
    Unknown
    Canadian availability
    Unknown
    Proposed Canadian adaptation
    Proposed: separate CAD totals and tax fields; detect duplicates; retain original receipts and limit report access.
    Recommended approval boundaries
    Approve source access and data scope first; require human review before production changes, external sharing or consequential decisions.

    More examples of this task

    Source-backed approaches using this or another agent. Not independently tested.

    Gemini Spark

    Maintain an invoice-derived budget workbook

    Build a budget spreadsheet from local invoices and schedule refreshes.

    Official recipe · Published 2026-06-30 · Independently tested: No

    https://blog.google/innovation-and-ai/products/gemini-app/gemini-spark-updates-june-2026/ ↗

    This official recipe describes a procedure; it does not prove successful execution or independently reproduced results.

    Source facts, caveats and approval gates
    Source attribution
    Adam Coimbra and Srinivasan Venkatachary, Google
    Source publication date
    2026-06-30
    Source checked
    2026-10-14
    Model or version
    Unknown
    Named tools
    Gemini Spark; macOS; Google Workspace
    Source approval description
    Only authorized files are accessible.
    Evidence attribution caveat
    This official recipe describes a procedure; it does not prove successful execution or independently reproduced results.
    Source outcome limits
    This official recipe describes a procedure; it does not prove successful execution or independently reproduced results.
    Recommended approval gates
    Approve access scope; review changes and outputs before external sharing or consequential action.
    Canadian availability
    unknown; not inferred from general product availability
    Demonstrated in Canada
    Unknown
    Proposed Canadian adaptation
    Proposed: Validate CAD and foreign-currency handling, GST/HST fields, duplicate invoices, and source-to-cell traceability.