# Billing Normalization Worker

*/Agents/Billing_Normalization_Worker*

## Solution Overview

The Billing Normalization Worker ingests raw, unstructured vendor invoices via a dedicated inbox and secure file drop. It extracts individual line items from PDFs and EDI feeds, maps external vendor SKUs to internal general ledger codes, and translates disparate pricing units into standard consumption metrics. The agent outputs a unified, daily reconciliation file formatted natively for NetSuite or Workday Financials, separating matched invoices from flagged anomalies that require human review.

FinOps managers and Accounts Payable directors at mid-market technology companies deploy this worker to eliminate the manual mapping of cloud and SaaS invoices during month-end close. These teams typically lose days untangling overlapping billing periods, hidden overage fees, and constantly changing pricing tiers across fifty or more distinct vendors. The worker removes the need to manually transpose PDF tables into spreadsheets, executing currency conversions and prorated adjustments automatically before routing any unmapped shadow IT charges to a finance analyst for final approval.

Operating as an asynchronous agent, this worker runs continuously via a scheduled polling loop connected to corporate email and messaging instances. It consumes headless document-parsing primitives to extract text from scanned invoices and relies on managed vector databases to maintain internal logs of historical SKU mappings. Upstream, the agent's normalized ledgers feed directly into outsourced Accounts Payable services or automated payment routing software that issues approved wire transfers.

## Icp Opportunities

- [Usage Normalization Engine](/Opportunities/Usage_Normalization_Engine) — Headless SaaS
- [Shadow Billing Service](/Opportunities/Shadow_Billing_Service) — Service-as-Software
- [Dispute Triage Agent](/Opportunities/Dispute_Triage_Agent) — Agent
- [Cloud Spend Reconciler](/Opportunities/Cloud_Spend_Reconciler) — Agent
- [Invoice Lineage Tracer](/Opportunities/Invoice_Lineage_Tracer) — Headless SaaS

## Agent Definition

**Goals**:
- [First-Pass Match Rate](/Metrics/First-Pass_Match_Rate)
- [Invoice Processing Cycle Time](/Metrics/Invoice_Processing_Cycle_Time)
- [GL Mapping Accuracy](/Metrics/GL_Mapping_Accuracy)
**Tools**:
- [NetSuite](/Products/NetSuite)
- [Workday Financials](/Products/Workday_Financials)
- [Amazon Textract](/Products/Amazon_Textract)
- [Pinecone](/Products/Pinecone)
**Skills**:
- [Account Reconciliation](/Skills/Account_Reconciliation)
- [Information Extraction](/Skills/Information_Extraction)
- [Financial Analysis](/Skills/Financial_Analysis)
- [Data Entry Processing](/Skills/Data_Entry_Processing)
**Contacts**:
- Email
- Slack
- API
**Identity**: did:web:finance.corporate.example/billing-normalization-worker
**Core Tasks**:
- [Extract Line Items From PDFs](/Tasks/Extract_Line_Items_From_PDFs)
- [Map Vendor SKUs](/Tasks/Map_Vendor_SKUs)
- [Calculate Prorated Adjustments](/Tasks/Calculate_Prorated_Adjustments)
- [Convert Foreign Currencies](/Tasks/Convert_Foreign_Currencies)
- [Format NetSuite Ledgers](/Tasks/Format_NetSuite_Ledgers)
**Escalation**: Unmapped shadow IT charges or unrecognized vendor SKUs escalate to a finance analyst for manual GL coding and final approval.
**Memory Kind**: persistent
**Memory Note**: Retains historical vendor SKU-to-GL mappings, pricing tier rules, and prior analyst overrides to automatically code recurring shadow IT charges.
**Autonomy Mode**: guarded
**Replaces Role**: [Accounts Payable Analyst](/JobTypes/Accounts_Payable_Analyst)
**Solves Problem**: [Manual Invoice Mapping](/Problems/Manual_Invoice_Mapping)
**Responsibilities**:
- Ingest Raw Vendor Invoices
- Map External SKUs to GL Codes
- Standardize Consumption Metrics
- Compile Daily Reconciliation Files

## Agent Function Cascade

**Ai Role**: AI drives the end-to-end billing normalization loop by extracting invoice line items, calculating conversions, and semantically mapping SKUs, operating autonomously until it encounters unrecognized shadow IT charges which it routes to a finance analyst for manual GL coding and approval.
**Cascade**:
- Kind: Generative · Note: Pulls line items and consumption metrics from raw vendor PDFs. · Step: Extract Invoice Data · Verb: extract · Realizes: Process Financial Documents · Oversight: none
- Kind: Agentic · Note: Uses vector memory to resolve historical SKU-to-GL mappings. · Step: Map Vendor SKUs · Verb: classify · Realizes: Classify Financial Transactions · Oversight: none
- Kind: Code · Note: Deterministically computes prorated amounts and foreign currency conversions. · Step: Calculate Adjustments · Verb: calculate · Realizes: Calculate Financial Adjustments · Oversight: none
- Kind: Human · Note: Finance analyst resolves and approves unknown shadow IT or new SKUs. · Step: Approve Unrecognized Charges · Verb: approve · Realizes: Approve General Ledger Entries · Oversight: approves
- Kind: Code · Note: Formats and pushes finalized reconciliation daily to NetSuite. · Step: Compile Ledger Files · Verb: record · Realizes: Maintain Accounting Records · Oversight: none
**Optimizes**:
- [First-Pass Match Rate](/Metrics/First-Pass_Match_Rate)
- [Invoice Processing Cycle Time](/Metrics/Invoice_Processing_Cycle_Time)
- [GL Mapping Accuracy](/Metrics/GL_Mapping_Accuracy)

## Agent Representative Offer

**Warranty**: Provides prorated billing credits for any submitted invoices that fail to process within the documented turnaround SLA or incorrectly map established SKUs.
**Price Band**: ~$0.15 to $0.50 per processed invoice, depending on line-item density and monthly volume
**Pricing Kind**: UsageMeter
**Deliverables**:
- Dedicated email ingestion channels for raw vendor invoices
- Standardized NetSuite-formatted daily ledger files
- Persistent SKU-to-GL mapping database access
- Unmapped charge escalation queues
**Delivery Mode**: The agent is instantly provisioned through a self-serve portal, directly integrating into the buyer's email, Slack workspaces, and API endpoints to begin processing immediately.
**Business Function**: ProvideService
**Agent Checkout Support**:
- agentic-commerce-protocol
- stored-credential

## Agent Composes Headless Saas

- [Document Extraction API](/Software/Document_Extraction_API) — OCR
- [Semantic Search API](/Software/Semantic_Search_API) — Vector Database
- [Exchange Rate Feed](/Software/Exchange_Rate_Feed) — Financial Data
- [General Ledger API](/Software/General_Ledger_API) — ERP Sync
- [Proration Calculation Engine](/Software/Proration_Calculation_Engine) — Billing Calculation

## Agent Sequence Diagram

```mermaid
sequenceDiagram
actor T as Vendor (Email)
participant W as Billing Normalization Worker
participant DE as Document Extraction API
participant SS as Semantic Search API
participant ER as Exchange Rate Feed
participant PC as Proration Calculation Engine
participant GL as General Ledger API
actor H as Accounts Payable Analyst

T->>W: Send inbound invoice PDF
W->>DE: Extract line items and SKUs from PDF
DE-->>W: Return raw invoice data
W->>SS: Query vector store for SKU-to-GL mappings
SS-->>W: Return GL codes and confidence scores
W->>ER: Request foreign currency conversion rates
ER-->>W: Return current exchange rates
W->>PC: Send metrics for proration calculation
PC-->>W: Return prorated adjustments
alt Unrecognized vendor SKUs or shadow IT charges
    W->>H: Escalate unmapped items
    H-->>W: Provide manual GL coding and approval
end
W->>GL: Format and post reconciled ledger entries
GL-->>W: Return NetSuite transaction IDs
W-->>T: Send processing confirmation
```

## Neighborhood

### Composed into

- [Abeam](/Startups/Abeam) — composes · Startups

### What it does

- [Validate Journal Line Account Codes](/Tasks/Validate_Journal_Line_Account_Codes) — performs · Tasks
- [Convert Units And Rates To Contract Terms](/Tasks/Convert_Units_And_Rates_To_Contract_Terms) — performs · Tasks
- [Map Line Items To UTBMS Codes](/Tasks/Map_Line_Items_To_UTBMS_Codes) — performs · Tasks
- [Calculate Prorated Adjustments](/Tasks/Calculate_Prorated_Adjustments) — performs · Tasks
- [Convert Foreign Currencies](/Tasks/Convert_Foreign_Currencies) — performs · Tasks
- [Extract Line Items From PDFs](/Tasks/Extract_Line_Items_From_PDFs) — performs · Tasks
- [Format NetSuite Ledgers](/Tasks/Format_NetSuite_Ledgers) — performs · Tasks
- [Map Vendor SKUs](/Tasks/Map_Vendor_SKUs) — performs · Tasks

### Uses tool

- [Rate Card Database](/Products/Rate_Card_Database) — uses tool · Products
- [Code Mapping Rules Engine](/Products/Code_Mapping_Rules_Engine) — uses tool · Products
- [Classification](/Action/Classification) — uses tool · Action

### Realizes

- [Billing Code Normalization](/Services/Billing_Code_Normalization) — realizes · Services

### Optimizes

- [GL Mapping Accuracy](/Metrics/GL_Mapping_Accuracy) — optimizes · Metrics
- [Invoice Processing Cycle Time](/Metrics/Invoice_Processing_Cycle_Time) — optimizes · Metrics
- [First-Pass Match Rate](/Metrics/First-Pass_Match_Rate) — optimizes · Metrics

### What it uses

- [Workday Financials](/Products/Workday_Financials) — uses · Products
- [Amazon Textract](/Products/Amazon_Textract) — uses · Products
- [NetSuite](/Software/NetSuite) — uses · Software
- [Pinecone](/Software/Pinecone) — uses · Software

### Replaces this role

- [Accounts Payable Analyst](/JobTypes/Accounts_Payable_Analyst) — replaces · JobTypes

### Required skills

- [Account Reconciliation](/Skills/Account_Reconciliation) — requires skill · Skills
- [Data Entry Processing](/Skills/Data_Entry_Processing) — requires skill · Skills
- [Financial Analysis](/Skills/Financial_Analysis) — requires skill · Skills
- [Information Extraction](/Skills/Information_Extraction) — requires skill · Skills

### What it addresses

- [Manual Invoice Mapping](/Problems/Manual_Invoice_Mapping) — addresses · Problems

### Latent gaps

- [Cloud Spend Reconciler](/Opportunities/Cloud_Spend_Reconciler) — latent gap · Opportunities
- [Dispute Triage Agent](/Opportunities/Dispute_Triage_Agent) — latent gap · Opportunities
- [Usage Normalization Engine](/Opportunities/Usage_Normalization_Engine) — latent gap · Opportunities
- [Shadow Billing Service](/Opportunities/Shadow_Billing_Service) — latent gap · Opportunities
- [Invoice Lineage Tracer](/Opportunities/Invoice_Lineage_Tracer) — latent gap · Opportunities

### Composed of

- [General Ledger API](/Software/General_Ledger_API) — composes · Software
- [Document Extraction API](/Software/Document_Extraction_API) — composes · Software
- [Semantic Search API](/Software/Semantic_Search_API) — composes · Software
- [Proration Calculation Engine](/Software/Proration_Calculation_Engine) — composes · Software
- [Exchange Rate Feed](/Software/Exchange_Rate_Feed) — composes · Software

### Problems this exposes

- [Resolve Customer Billing Disputes](/Problems/Resolve_Customer_Billing_Disputes) — exposes problem · Problems
- [Reduce Billing Cycle Delays](/Problems/Reduce_Billing_Cycle_Delays) — exposes problem · Problems
- [Reconcile Cloud Vendor Spend](/Problems/Reconcile_Cloud_Vendor_Spend) — exposes problem · Problems
- [Prevent Unbilled Revenue Leakage](/Problems/Prevent_Unbilled_Revenue_Leakage) — exposes problem · Problems
- [Standardize Multivendor Usage Data](/Problems/Standardize_Multivendor_Usage_Data) — exposes problem · Problems
- [Retain Billing Operations Staff](/Problems/Retain_Billing_Operations_Staff) — exposes problem · Problems
- [Audit Usage to Invoice Lineage](/Problems/Audit_Usage_to_Invoice_Lineage) — exposes problem · Problems

### Similar Agents

- [Ledger Normalization Engine](/Agents/Ledger_Normalization_Engine) — similar · Agents
- [Accounts Payable Automation Agent](/Agents/Accounts_Payable_Automation_Agent) — similar · Agents
- [Ledger Ingestion Agent](/Agents/Ledger_Ingestion_Agent) — similar · Agents
- [Billing Operations Agent](/Agents/Billing_Operations_Agent) — similar · Agents
- [Invoice Intake Agent](/Agents/Invoice_Intake_Agent) — similar · Agents
- [Accounts Payable Agent](/Agents/Accounts_Payable_Agent) — similar · Agents
- [Financial Intake Agent](/Agents/Financial_Intake_Agent) — similar · Agents
- [AP Orchestration Agent](/Agents/AP_Orchestration_Agent) — similar · Agents
- [Invoice Extraction Agent](/Agents/Invoice_Extraction_Agent) — similar · Agents
- [Payables Processing Agent](/Agents/Payables_Processing_Agent) — similar · Agents
- [AP Automation Agent](/Agents/AP_Automation_Agent) — similar · Agents
- [Accounts Payable Clerk](/Agents/Accounts_Payable_Clerk) — similar · Agents
- [Accounts Payable Reconciliation Agent](/Agents/Accounts_Payable_Reconciliation_Agent) — similar · Agents
- [Ledger Intake Agent](/Agents/Ledger_Intake_Agent) — similar · Agents
- [Invoice Resolution Agent](/Agents/Invoice_Resolution_Agent) — similar · Agents
- [Bank Recon Agent](/Services/Bookkeeping_as_a_Service/Agents/Bank_Recon_Agent) — similar · Agents
- [Ledger Mapping Agent](/Agents/Ledger_Mapping_Agent) — similar · Agents
