INVOICE PROCESSING

No-PO Invoice Triage and Cost-Center Assignment

Catches invoices that arrive with no matching purchase order, has an agent infer the likely cost center and category from the line items.

CategoryInvoice Processing
Enginepaperclip
Difficultyadvanced
Triggerevent
Steps6
Setup~25 min

How it runs

The automated pipeline, trigger to output.

  • TriggerNew invoice email arrivesGmailGmail
  • LogicSearch for matching PO; continue if noneAirtableAirtable
  • ActionAgent infers cost center and budget ownerOpenAI
  • ActionLog unmatched-spend recordAirtableAirtable
  • ActionOpen approval task for budget ownerAsanaAsana
  • OutputPost outcome to AP Slack channelSlack

What it does

Deals with the hardest exception: an invoice with no PO to match against at all. An agent reads the invoice, infers the probable cost center, GL category, and budget owner, and routes it as a maverick-spend approval rather than letting it sit unmatched in the inbox.

When to use it

Use it when a meaningful share of invoices come in for purchases nobody raised a PO for, and AP wastes time guessing who owns the charge. It turns each no-PO invoice into a routed, owned approval task.

How it works

  1. 1A new invoice email triggers the flow.
  2. 2The flow searches Airtable for a matching PO and continues only when none is found.
  3. 3An agent reads the invoice line items and vendor to infer cost center, category, and the likely budget owner.
  4. 4An unmatched-spend record is written to Airtable with the inferred attributes.
  5. 5An Asana task is created for the budget owner with the invoice, inferred coding, and an approve/reject decision.
  6. 6The outcome is posted back to the Slack AP channel for visibility.

Set it up

What you configure once, before turning it on.

  1. 1
    Connect GmailRead, draft, send, label.
  2. 2
    Connect AirtableBases, tables, views, automations.
  3. 3
    Connect AsanaTasks, projects, milestones — everywhere.
  4. 4
    Connect SlackChannels, DMs, threads, mentions.
  5. 5
    Connect OpenAIModels, embeddings, files.
  6. 6
    Set each agent's modelWe leave models unset so you pick the tier — fast + cheap, or top-quality.
  7. 7
    Tune it to your dataEdit the prompts, filters, and field mappings so it matches how your team works.
  8. 8
    Test, then turn it onRun once against a sample, confirm the output, then enable the trigger.

Run this workflow in your colony.

14-day trial. No DevOps. No Sales call. Provisioned in under a minute.