* * * PENNYOCR × N8N * * *
OCR in n8n Workflows.
No community node needed: PennyOCR is one HTTP Request node. POST the binary from any trigger — email attachment, Drive upload, webhook — to https://api.pennyocr.com/v1/ocr and the next node receives clean text or markdown.
START FREE — 100 PAGES
$0.75 / 1,000 PAGES
1,333 PAGES PER DOLLAR · NO CREDIT CARD
01 / TRY IT
ONE ENDPOINT.
POST a file, get JSON back — the extracted text, per page and joined. PDF, PNG, JPEG, WebP or TIFF.
curl https://api.pennyocr.com/v1/ocr \
-H "Authorization: Bearer $PENNYOCR_API_KEY" \
-F "file=@receipt.jpg"
# $0.75 per 1,000 pages, first 100 free02 / USE CASES
THE NODE CONFIG.
HTTP REQUEST NODE
Method POST · URL https://api.pennyocr.com/v1/ocr?format=text · Auth: Header 'Authorization: Bearer pk_live_...' · Body: form-data, field 'file' from binary.
EMAIL → SHEET
IMAP trigger → PennyOCR → parse totals → append to Google Sheets. The classic receipt pipeline, four nodes.
DRIVE → SEARCHABLE
Watch a folder, OCR every new scan, write markdown next to it or into your vector store.
ERROR BRANCHES
402 (out of credits) and 413 (too big) are deterministic — route them to a Slack alert node instead of a silent fail.
03 / PRICE CHECK
HALF THE PRICE OF THE BIG CLOUDS.
Per 1,000 pages, public list prices, first tier.
PENNYOCR$0.75
AWS TEXTRACT$1.50
GOOGLE CLOUD VISION$1.50
AZURE DOC INTELLIGENCE$1.50
YOU KEEP50%
IS THERE A DEDICATED N8N NODE?
The HTTP Request node covers everything today; a community node is on the roadmap. The config above is the whole integration.
URLS INSTEAD OF BINARIES?
Yes — POST JSON to /v1/ocr/url with {url, format} when the file lives at a link. Same price, plus optional page ranges.
HOW DO I MONITOR SPEND?
GET /dashboard/usage with a session token, or just watch the dashboard — prepaid credits mean the worst case is your balance.
ALSO ON THE MENU