๐Ÿงพ Categorize Airtable invoices with OpenAI and TOON token optimization

โšก 6 views ยท ๐Ÿงพ Invoice Processing

Description

> โš ๏ธ Notice:
> This workflow uses the CustomJS JSON to TOON node from CustomJS, which requires a self-hosted n8n instance and a CustomJS API key.


Categorizing Invoices With TOON.png

This workflow demonstrates how to automatically categorize invoices from Airtable using OpenAI, while significantly reducing token usage by converting structured data into TOON (Token-Optimized Object Notation) before sending it to the LLM.

Instead of passing large, nested JSON payloads (clients, invoices, invoice items) directly to OpenAI, the workflow converts the data into TOON, lets the AI focus purely on semantic classification, and then converts the result back into clean JSON that can safely be written back to Airtable.

The result is a reliable, cost-efficient, and production-ready invoice categorization pipeline.


Why This Workflow?

Categorizing invoices based on free-text invoice items is a perfect AI use case โ€” but sending raw JSON to LLMs is:

This workflow applies the TOON pattern, reducing token usage by 40โ€“60%, while ensuring the AI only returns exactly the data you expect.

The LLM never sees raw JSON syntax โ€” only a compact, schema-preserving representation.


What This Workflow Does

All without manual intervention.


Key Features


How It Works

  1. Manual Trigger
    Run the workflow on demand

  2. Load Data from Airtable

    • Fetch ready invoices
    • Resolve related clients
    • Fetch and aggregate invoice items
  3. Prepare Structured Context
    Group client, invoice, and invoice items into a single object

  4. JSON โ†’ TOON
    Convert structured data into token-efficient TOON

  5. AI Categorization

    • OpenAI receives TOON data
    • Assigns exactly one category per invoice
    • Returns only TOON (no JSON, no prose)
  6. TOON โ†’ JSON
    Convert AI output back into valid JSON

  7. Persist Result
    Update the invoice category field in Airtable

๐Ÿ”— Nodes Used

Airtable, OpenAI

๐Ÿ“ฅ Import

Download workflow.json and import into n8n: Workflow menu โ†’ Import from File

๐Ÿ“– Importing guide ยท ๐Ÿ”‘ Credential setup