Skip to main content

AI-Receipt Parser for Zapier

What this action does

What this action does: The PDF4me AI-Receipt Parser action uses machine-learning OCR to convert receipt PDFs and images into structured JSON data inside your Zap. Send in a receipt from Gmail, Google Drive, OneDrive, Dropbox, or a form upload and get back merchant name, transaction date, receipt number, line items, subtotal, tax, total, and payment method - plus type-specific fields for hotel, fuel, healthcare, training, and subscription receipts. Downstream steps can write the parsed data to Google Sheets, QuickBooks, Xero, Airtable, or any Zapier-connected app for hands-free expense management.

Authenticating Your API Request

Every PDF4me action in Zapier requires a valid API key. Authenticate once when you add PDF4me as a connected account - Zapier securely stores the key and reuses it across all your PDF4me Zaps automatically.

Important Facts You Should Not Miss

Both Receipt File and Receipt Name are required
Receipt File carries the binary content; Receipt Name tells the AI which format to expect. Omitting either field causes the action to fail. Always map both from the trigger step - the name must include the file extension (.pdf, .png, .jpg, .jpeg).
Receipt Type is optional but improves accuracy
Leave Receipt Type blank and the AI infers the category automatically. Set it explicitly (hotel, fuel and energy, healthcare, supplies, meal…) when you know the type - the model will prioritise type-specific fields and return roomNumber, fuelQuantity, healthcareProvider, or courseName instead of leaving those blank.
Three toggles control which data groups are extracted
Analyze Items, Extract Merchant Info, and Calculate Totals are all optional and disabled by default. Enable only the groups you need - this reduces processing time and keeps unused output fields empty rather than partially filled, making downstream mapping cleaner.
AI-Receipt Parser action in Zapier – PDF4me
AI-Receipt Parser action configured inside a Zapier workflow

Parameters

⚠️ Parameters marked Required must be provided for the action to run. Optional parameters expand the data groups returned - enable the ones your downstream steps actually need.

ParameterRequiredWhat it doesExample
Receipt FileYesThe source receipt file. Map the file output from a Zapier trigger or previous action - Gmail attachment, Google Drive / OneDrive / Dropbox file, or form upload. Accepts PDF, PNG, JPG, and JPEG.receipt_2024_03_15.pdf (from Gmail trigger)
Receipt NameYesFile name including the extension. Used by the AI to identify the receipt format and optimise extraction. Can be mapped dynamically from trigger metadata. Must end in .pdf, .png, .jpg, or .jpeg.office_supplies_receipt.pdf
Receipt TypeNoOptional category hint for the AI. Supported values: meal · supplies · hotel · fuel and energy · transportation · communication · subscriptions · entertainment · training · healthcare · generic. Leaving this blank triggers automatic type detection.hotel
Analyze ItemsNoEnable line-item extraction. When true, the analyzeItems array is populated with item name, quantity, unit price, total price, category, description, SKU, brand, size, and colour for each line on the receipt.true
Extract Merchant InfoNoEnable merchant information extraction. When true, the output includes merchantName, merchantAddress, merchantPhone, merchantWebsite, storeNumber, and cashierName from the receipt header.true
Calculate TotalsNoEnable financial totals extraction. When true, the output includes subtotal, taxAmount, totalAmount, paymentMethod, and cardLastFour. Disable to skip financial parsing when you only need metadata.true
Custom Field KeysNoOptional list of extra field names to extract beyond the standard set. Pass as a JSON array. Useful for domain-specific fields printed on internal or industry receipts not covered by standard extraction.["costCenter","projectCode"]

Output Fields

The action returns structured receipt data. Map any of these fields in subsequent Zap steps.

Output FieldDescription
receiptTypeDetected or specified receipt category (e.g. supplies, hotel, fuel, healthcare, generic)
transactionDateStrTransaction date in ISO 8601 format (YYYY-MM-DD)
transactionTimeTransaction time (HH:MM:SS) when printed on the receipt
receiptNumberReceipt or transaction identifier extracted from the document
merchantNameName of the merchant - populated when Extract Merchant Info is enabled
merchantAddressFull merchant address - populated when Extract Merchant Info is enabled
merchantPhone / merchantWebsiteContact details extracted from the receipt header
storeNumber / cashierNameStore location code and cashier name when visible on the receipt
subtotal / taxAmount / totalAmountFinancial figures extracted when Calculate Totals is enabled
paymentMethod / cardLastFourPayment type (Cash, Credit Card, etc.) and last 4 card digits
analyzeItems[]Array of line-item objects (name, qty, unitPrice, totalPrice, SKU, brand) - populated when Analyze Items is enabled
roomNumber / checkInDate / checkOutDateHotel-specific fields - populated when Receipt Type is hotel
fuelType / fuelQuantity / fuelUnit / vehicleNumberFuel-specific fields - populated when Receipt Type is fuel and energy
healthcareProvider / patientName / insuranceInfoHealthcare-specific fields - populated when Receipt Type is healthcare
trainingProvider / courseNameTraining-specific fields - populated when Receipt Type is training
warnings[]Array of extraction warning messages - flag these for manual review in your Zap
fallbackUsedtrue when a secondary extraction method was used; consider routing to review queue
rawOcrTextFull OCR text from the receipt - useful for keyword search or audit logging
jobId / success / messageProcessing job ID, boolean success flag, and descriptive result message

Quick Setup

  1. Create or open a Zap and add a trigger that supplies a receipt file - Gmail new attachment, Google Drive new file in folder, OneDrive, Dropbox, or Typeform file upload.
  2. Add an action step → search PDF4me → select AI-Receipt Parser.
  3. Authenticate with your PDF4me API key if not already connected (enter it in the Zapier account dialog).
  4. Map Receipt File from the trigger output (the binary file field, not a URL).
  5. Map Receipt Name - use the filename field from the trigger so the extension is always correct.
  6. Set Receipt Type if you know the category; otherwise leave blank for automatic detection.
  7. Enable Analyze Items if you need line-item data; enable Extract Merchant Info and Calculate Totals for expense workflows.
  8. Add Custom Field Keys as a JSON array if your receipts contain non-standard fields.
  9. Test the step - Zapier will run a sample and show you all returned output fields.
  10. Add downstream steps to write merchantName, totalAmount, transactionDateStr, and other fields to Google Sheets, QuickBooks, Xero, or your database.

Workflow Examples

Workflow ExamplesCommon Zapier patterns using AI-Receipt Parser.
Email Receipts → Google Sheets Expense Log

Capture receipt attachments from Gmail and write parsed expense rows to a Google Sheet automatically.

  1. Gmail: New Attachment - filter by subject containing "Receipt" or sender domain.
  2. PDF4me: AI-Receipt Parser - map File and Filename; enable Extract Merchant Info + Calculate Totals.
  3. Google Sheets: Append Row - map merchantName, transactionDateStr, totalAmount, paymentMethod, receiptType.
  4. Gmail: Send Email - notify finance team with a summary row for each processed receipt.
Google Drive Upload → QuickBooks Expense Record

When an employee drops a receipt in a shared Drive folder, parse it and create a QuickBooks expense automatically.

  1. Google Drive: New File in Folder - watch the shared "Receipts" folder.
  2. PDF4me: AI-Receipt Parser - enable Analyze Items + Calculate Totals + Extract Merchant Info.
  3. Zapier Filter: only continue if success = true and totalAmount > 0.
  4. QuickBooks: Create Expense - map vendor (merchantName), date (transactionDateStr), total (totalAmount).
  5. Google Drive: Move File to "Processed" subfolder to prevent duplicate parsing.
Hotel & Fuel Receipt Router

Detect specialised receipt types and route hotel and fuel receipts to separate tracking sheets automatically.

  1. Dropbox: New File in Folder - team travel receipts folder.
  2. PDF4me: AI-Receipt Parser - leave Receipt Type blank for auto-detection; enable all three toggles.
  3. Zapier Paths: Branch A → hotel → Google Sheets "Travel" tab (roomNumber, checkInDate, totalAmount); Branch B → fuel → "Fleet" tab (fuelType, fuelQuantity, vehicleNumber); Branch C → all others → "General Expenses" tab.
  4. Slack: Post message to #expenses summarising receipt type, merchant, and total.

Frequently Asked Questions

What file formats does the AI-Receipt Parser accept in Zapier?+
The action accepts PDF, PNG, JPG, and JPEG receipt files. Always include the file extension in the Receipt Name field (e.g. receipt.pdf, scan.jpg) so the AI can apply format-specific OCR optimisation.
Is Receipt Type required for every Zap?+
No - Receipt Type is optional. Leave it blank and the model auto-detects the category. Providing it explicitly (e.g. hotel, fuel and energy, healthcare) tells the AI to prioritise type-specific fields and improves accuracy for structured receipt formats.
What happens when Analyze Items is disabled?+
The analyzeItems array in the output will be empty. Line-item details - names, quantities, unit prices, SKUs, brands - are only extracted when Analyze Items is enabled. Disable it when you only need totals or merchant data to reduce processing overhead.
How do I extract hotel or fuel receipt-specific fields?+
Set Receipt Type to hotel to populate roomNumber, checkInDate, and checkOutDate. Set it to fuel and energy to receive fuelType, fuelQuantity, fuelUnit, and vehicleNumber. These specialized fields remain empty for other receipt types regardless of the receipt content.
What does fallbackUsed: true mean in the output?+
fallbackUsed: true means the AI switched to a secondary extraction method because primary model confidence was below threshold. The output data is still valid, but you may want to add a Zapier filter to branch these receipts to a manual review queue or a Slack alert for a human check.

Get Help