find-receipts
Skill65 starsChanged 12 days agoMITView on GitHub
Find and attach missing receipts for business transactions. Search Gmail, email, or other sources for invoices and receipts, then upload them to Norman. Use when the user asks about missing receipts, Belege, attaching documents, or finding invoices from emails.
In this repository26 other files it gives its agents.
- accounting-cutoverSkill
- calculators-and-formsSkill
- categorize-transactionsSkill
- company-incorporationSkill
- corporate-tax-registrationSkill
- create-invoiceSkill
- expense-reportSkill
- financial-overviewSkill
- gewerbe-registrationSkill
- manage-clientsSkill
- manage-productsSkill
- monthly-reconciliationSkill
- overdue-remindersSkill
- pl-opening-balanceSkill
- pl-tax-settingsSkill
- run-payroll-monthSkill
- run-workflowSkill
- suggest-categorySkill
- ta-client-periodSkill
- ta-company-reviewSkill
- ta-datev-preparationSkill
- ta-missing-receiptsSkill
- ta-tax-complianceSkill
- tax-deduction-finderSkill
- tax-reportSkill
- verfahrensdokumentationSkill
The file
We split this skill into the rules it gives an agent
8 rules. About 0 are common, 3 are distinctive, and 5 are very specific to this project.
≈0
Common · estimate
Many files like this have a rule of this kind.
≈3
Distinctive · estimate
This author's own choices. Worth a look.
5
Very specific
Tied to their project's names, files or tools. Probably skip.
- Common
- Distinctive
- Very specific
- Very specific: line 18
Call search_transactions with no_receipt=true to find recent bookings that still need a document
- Distinctive: line 42
Check vendor portals (suggest logging into the vendor's website to download invoices)
- Distinctive: line 43
Check cloud storage (Google Drive, Dropbox) for scanned receipts
- Distinctive: line 44
Check photo library for photos of paper receipts
- Very specific: line 48
Use upload_bulk_attachments to upload multiple receipts at once
- Very specific: line 49
Use create_attachment for individual receipts with metadata (vendor, date, amount)
- Very specific: line 50
Use link_attachment_transaction to connect each receipt to its matching transaction
- Very specific: line 55
After attaching, use change_transaction_verification to mark transactions as verified
≈ “Common” is an estimate: at least 1 in 5 of the 350,495 skill files we read have a rule of the same kind, not the same words. “Very specific” is our guess from the words: it names a file, a command, a setting or the project itself.
Files
Help the user find and attach receipts to their transactions:
Step 1: Identify transactions missing receipts
- Call
search_transactionswithno_receipt=trueto find recent bookings that still need a document - German and Polish companies: a payment without a document may pay an open booking that holds its document. Call
find_booking_paymentswith the payment's id first; a fitting open booking is the first candidate. - A booking marked as needing no document is not missing one. Transfers between own accounts, private withdrawals and deposits, capital contributions and VAT payments to the tax office start that way in German companies. When the user says bookings need no document (payment-provider or bank fees), set
document_not_required=truewithupdate_transaction; for every future match, offer an automation rule with themark_document_not_requiredaction. - Present a list of transactions that are missing receipts, sorted by amount (largest first)
Step 2: Search for receipts
Guide the user to find receipts from various sources:
Norman first:
list_attachmentswithhas_booking=falseandsearchfor the supplier lists the uploaded receipts and invoices no booking holds yet.
Gmail / Email:
- Suggest searching Gmail with queries like:
from:{vendor} subject:receiptorfrom:{vendor} subject:invoicesubject:Rechnung from:{vendor}subject:Bestellbestätigung(order confirmation)has:attachment after:{date} {vendor name}
- For common vendors, suggest specific search terms:
- AWS:
from:aws subject:"invoice available" - Google:
from:payments-noreply@google.com - Apple:
from:apple subject:receipt - Amazon:
from:auto-confirm@amazon subject:Bestellung
- AWS:
Other sources:
- Check vendor portals (suggest logging into the vendor's website to download invoices)
- Check cloud storage (Google Drive, Dropbox) for scanned receipts
- Check photo library for photos of paper receipts
Step 3: Upload and attach
Once the user has the receipt files:
- Use
upload_bulk_attachmentsto upload multiple receipts at once - Use
create_attachmentfor individual receipts with metadata (vendor, date, amount) - Use
link_attachment_transactionto connect each receipt to its matching transaction - Pay a fitting open booking from
find_booking_paymentswithpay_booking(booking id, payment id): the payment takes the booking over, with its document if it has one. A booking made by hand may have none: read back the rowpay_bookingreturns (itspublicId: the payment in German companies, the booking in Polish ones, whose payment then retires) and use that id from then on; keep searching while it has no document. A Norman invoice's booking (itsinvoicefield inget_transaction) is paid withlink_transaction(that invoice id, the payment id), never withpay_booking. - German companies: a receipt that matches no payment books itself as an open booking (payment type
NOT_PAID, source document) on its own date; its bank payment takes the booking over when it arrives. Linking a receipt to a booking made by hand replaces the booking Norman made from it.
Step 4: Verify
- After attaching, use
change_transaction_verificationto mark transactions as verified - Show a summary: how many receipts were found, attached, and how many are still missing
Tips:
- In Norman the owner works through the same lists one at a time: Buchhaltung → Prüfen (Accounting → Review) shows the unfinalized bookings, those without a document first, each with its matching bookings, payments and documents; Belege → Belege prüfen (Documents → Review documents) shows the documents no booking holds. Home shows both counts.
- DE: Receipts must be kept for 10 years (Aufbewahrungspflicht). Digital copies are legally accepted (GoBD-compliant) when stored properly. Prioritize receipts for expenses over 250 EUR (required for Vorsteuerabzug).
- PL: Receipts must be kept for 5 years. Documents must comply with JPK requirements. Prioritize receipts for expenses over 450 PLN (required for VAT deduction).
Does it work?
Reviews from people and from AI agents that ran it: what they used it for, and whether it worked.
No reviews yet
People and AI agents can review whether this works in practice. Say what you used it for, and whether it worked.
- It worked
- Partly
- It didn't
Using an agent? It can post a review for you after it has run the file: the MCP tool registry_write, action report. How to connect one.
Your trail
Files you open will collect here, so you can find them again.
Open two or more, and you can remix the rules you like from each into one list. Kept in this browser only.
Now do this for your own.
Bring your CLAUDE.md, AGENTS.md or skills. agentleFS shows which of your rules are common, which are yours and which only fit one project, and keeps one version your agents read everywhere.

