skills/receipts-ocr/SKILL.md
Extract data from receipt photos using Google Vision API
npx skillsauth add ticruz38/skills skills/receipts-ocrInstall this skill globally with one command. Works with Claude Code, Cursor, and Windsurf.
3 of 9 scanners reported clean
Some scanners were skipped, did not run, or reported a non-clean status. Review each row below.
Extract data from receipt photos using Google Vision API. Automatically identifies merchant names, amounts, dates, and line items with confidence scoring.
cd skills/receipts-ocr
npm install
npm run build
Uses the same Google OAuth profile as other Google services. Ensure you have connected Google OAuth first:
npm run cli -- status
# Check status
npm run cli -- status
# Scan a receipt
npm run cli -- scan receipt.jpg --copy --notes "Business lunch"
# Extract text without saving
npm run cli -- text receipt.jpg
# List all receipts
npm run cli -- list
npm run cli -- list --status pending --limit 10
# Get receipt details
npm run cli -- get 1
# Update receipt
npm run cli -- update 1 --merchant "Starbucks" --total 12.50 --category "Dining"
# Confirm/reject receipt
npm run cli -- confirm 1
npm run cli -- reject 1
# Delete receipt
npm run cli -- delete 1
# Statistics
npm run cli -- stats
# Export to CSV
npm run cli -- export receipts.csv
import { ReceiptsOCRSkill } from '@openclaw/receipts-ocr';
const skill = new ReceiptsOCRSkill({ profile: 'default' });
// Process a receipt
const receipt = await skill.processReceipt('/path/to/receipt.jpg', {
copyImage: true,
notes: 'Business expense'
});
console.log(receipt.merchant); // "Starbucks"
console.log(receipt.totalAmount); // 12.50
console.log(receipt.totalConfidence); // 0.85
// List receipts
const receipts = await skill.listReceipts({ status: 'pending' });
// Update with corrections
await skill.updateReceipt(receipt.id!, {
merchant: 'Corrected Name',
totalAmount: 15.00,
status: 'corrected'
});
// Export to CSV
const csv = await skill.exportToCSV();
fs.writeFileSync('receipts.csv', csv);
await skill.close();
Receipts are stored in ~/.openclaw/skills/receipts-ocr/:
receipts.db - SQLite database with receipt data and line itemsimages/ - Copied receipt images (if --copy flag used)Each extracted field has a confidence score:
Auto-detected categories include:
id - Primary keyimage_path - Path to receipt imagemerchant - Store/restaurant namemerchant_confidence - OCR confidence (0-1)total_amount - Total amounttotal_confidence - OCR confidence (0-1)tax_amount - Tax amounttax_confidence - OCR confidence (0-1)date - Transaction date (ISO format)date_confidence - OCR confidence (0-1)category - Expense categorypayment_method - Payment typeraw_text - Full OCR textstatus - pending/confirmed/corrected/rejectednotes - User notesid - Primary keyreceipt_id - Foreign key to receiptdescription - Item descriptionquantity - Quantity purchasedunit_price - Price per unittotal - Line totalconfidence - OCR confidence (0-1)testing
Suggest recipes based on dietary preferences, available ingredients, and cuisine preferences
business
QuickBooks Online integration for accounting sync - sync customers, invoices, and transactions with two-way sync and conflict resolution
testing
QuickBooks OAuth adapter for QuickBooks Online accounting integration. Built on top of auth-provider for secure token management with automatic refresh, multi-profile support, sandbox/production toggle, and health checks.
development
Natural language to SQL query agent with schema discovery and XML result export. Use when an agent needs to (1) discover and interpret database schemas, (2) convert natural language questions into SQL queries using LLM, (3) execute queries securely, and (4) export results as XML to configurable storage (Google Drive, S3, local, etc.). Fully configurable via environment variables.