# Zap blueprint: Snap a receipt, get an expense row

**This is a blueprint, not an import file.** Zapier has no public format for importing Zaps, so you rebuild these steps by hand in the Zap editor. It takes about 10–20 minutes (our estimate).
Create a new Zap: https://zapier.com/app/editor
Full recipe: https://recipeagents.usestarbase.com/recipes/receipt-photo-expenses

## Steps
1. **Trigger:** Google Drive: New File in Folder
   - Recipe input: Photo emailed or dropped into a folder
2. **Filter by Zapier** (optional): only continue if the input is the kind you want (see the recipe's failure modes).
3. **Action:** ChatGPT (OpenAI): Conversation, or AI by Zapier
   - Paste this prompt and map the trigger fields into the {{...}} placeholders:

```
From this receipt image, return JSON {merchant, date YYYY-MM-DD, currency, total, category: one of [food, travel, software, office, other]}. Null if unreadable; never guess the total.
```
4. **Action:** Formatter by Zapier → Utilities → Import JSON / or Code by Zapier, to split the JSON fields (if the prompt returns JSON).
5. **Action:** Google Sheets: Create Spreadsheet Row
6. **Test each step** with a real example, then turn the Zap on. Keep a human approval on anything customer-facing.

## Recipe steps (from the page)
- Trigger: new image in the 'receipts' folder.
- Vision step extracts the fields.
- Append a row with a link to the image.

## Where it breaks
- Faded thermal paper: Totals come back null. That's correct behaviour, so type them in.

App and step names follow Zapier's current app directory as of 2026-10-16. Names change, so search the app in the editor if a step looks different.
