Invoice Processing & Payment
B2BReceive invoice → OCR → match PO → approve → pay.
5 nodes · 4 edgesfinance
systemhumanapi
Visual
Invoice Receivedevent
PDF/email invoice from vendor.
↓sequential→ AI Invoice Extraction
AI Invoice Extractionagent
OCR + AI extracts line items, amounts, vendor ID.
↓sequential→ Match Purchase Order
Match Purchase Ordersystem
3-way match: invoice, PO, goods receipt.
↓conditional→ AP Manager Approval
AP Manager Approvalhuman
↓sequential→ Execute Payment
Execute Paymentapi
ACH/wire transfer via banking API.
uc-invoice-processing.osop.yaml
osop_version: "1.0"
id: "invoice-processing"
name: "Invoice Processing & Payment"
description: "Receive invoice → OCR → match PO → approve → pay."
nodes:
- id: "receive"
type: "event"
name: "Invoice Received"
description: "PDF/email invoice from vendor."
- id: "ocr_extract"
type: "agent"
subtype: "llm"
name: "AI Invoice Extraction"
description: "OCR + AI extracts line items, amounts, vendor ID."
- id: "match_po"
type: "system"
name: "Match Purchase Order"
description: "3-way match: invoice, PO, goods receipt."
- id: "approve"
type: "human"
subtype: "review"
name: "AP Manager Approval"
security:
approval_gate: true
- id: "pay"
type: "api"
name: "Execute Payment"
description: "ACH/wire transfer via banking API."
security:
risk_level: "high"
edges:
- from: "receive"
to: "ocr_extract"
mode: "sequential"
- from: "ocr_extract"
to: "match_po"
mode: "sequential"
- from: "match_po"
to: "approve"
mode: "conditional"
when: "match.discrepancy == false"
- from: "approve"
to: "pay"
mode: "sequential"