Install
openclaw skills install receipt-snap-spainProcess receipt photos and PDFs, extract vendor date amount currency, convert to EUR, upload to Google Drive with proper naming Vendor_Date_EURAmount.pdf, and log to a Google Sheet. Use when user sends a receipt with #recibo or processes expense receipts for tax reporting. Handles: PDF invoices, photo screenshots, USD to EUR conversion, Spanish expense categories, quarterly reporting for tax purposes.
openclaw skills install receipt-snap-spainProcess receipts for tax reporting. Handles receipt capture, currency conversion, Drive storage, and logging to Google Sheets.
brew install faradayhq/gog/gog
gog auth login
| Variable | Required | Description |
|---|---|---|
RECEIPT_DRIVE_FOLDER_ID | Yes | Google Drive folder ID for uploads |
RECEIPT_GOOGLE_SHEET_ID | Yes | Google Sheet ID for log rows |
RECEIPT_LOG_FILE | No | Local CSV backup path (default: ~/receipts/log.csv) |
Drive: Create a folder, share it with the Google account authenticated in gog, copy the folder ID from the URL.
Sheets: Create a sheet with a tab named log, add headers in row 1: Date | Vendor | Description | Original Amount | Currency | EUR Amount | Exchange Rate | Category | Drive Link | Notes. Copy the Sheet ID from the URL.
Use local model (free) for simple receipts. Escalate to MiniMax for ambiguous receipts (handwritten, poor lighting).
User sends receipt via Telegram with #recibo tag. Accepts:
#recibo Description: ...)Extract from receipt:
Before processing, check if this receipt already exists:
gog sheets get "$RECEIPT_GOOGLE_SHEET_ID" "log!A:J" --json
Search for matching vendor + date + amount. If duplicate found → warn user and ask before proceeding.
If non-EUR:
https://open.er-api.com/v6/latest/{currency}Spanish tax categories:
gog drive upload <file> --parent "$RECEIPT_DRIVE_FOLDER_ID"
gog drive rename <file-id> "VendorName_2026-01-15_42.50EUR.pdf"
gog sheets append "$RECEIPT_GOOGLE_SHEET_ID" "log!A:J" \
--values-json '[["2026-01-15","Vendor Name","Description","42.50","EUR","42.50","1.0","Software y suscripciones","https://drive.google.com/...","Notes"]]' \
--insert INSERT_ROWS
At quarter-end:
python3 receipt_snap.py summarypython3 receipt_snap.py process receipt.pdf \
--vendor "Vendor Name" \
--date 2026-01-15 \
--amount 42.50 \
--currency EUR \
--category "Software y suscripciones"
python3 receipt_snap.py summary
python3 receipt_snap.py exchange-rate
Create a Google Sheet with a tab named log. Add this header row (A through J):
| Date | Vendor | Description | Original Amount | Currency | EUR Amount | Exchange Rate | Category | Drive Link | Notes |
receipts/ and *.csv to .gitignore — contains real financial datagog manages OAuth tokens locally — verify your Google account is secure