If you run a managed service provider or a telecom expense management practice, you already know the math. A mid-market client with 75 locations might have service from AT&T for MPLS circuits, Verizon for wireless, Comcast Business for broadband at satellite offices, and Lumen for SIP trunks at headquarters. That is four carriers, four completely different invoice formats, and somewhere between 200 and 800 pages of billing detail every single month for one client. Multiply that across your entire book of business and you are looking at thousands of carrier invoices hitting your inbox between the 1st and the 15th of every billing cycle.
The traditional workflow is painfully manual. Someone opens each PDF, identifies the carrier and account, scrolls through summary pages to find circuit-level detail, and types account numbers, circuit IDs, MRC charges, NRC charges, usage, taxes, and surcharges into a spreadsheet or directly into a TEM platform like Tangoe or Calero-MDSL. At 15 to 30 minutes per invoice, a team processing 300 invoices per month burns 75 to 150 hours on pure data entry before anyone even starts the actual analysis: contract reconciliation, cost allocation by location, variance detection, and client reporting. That is one to two full-time employees doing nothing but reading PDFs and typing numbers. AI-powered OCR eliminates that entire data entry layer. For telecom billing specifically, the extraction challenge is harder than standard AP invoices.
The first problem is sheer volume per document. A standard vendor invoice is one to three pages with a handful of line items. A single AT&T consolidated bill for a multi-location enterprise client can run 50 to 200 pages. Verizon Business bills for clients with dozens of wireless lines, FIOS circuits, and legacy copper services routinely hit 100 pages. Each page contains different sections: account summary, payment history, current charges by service type, circuit-level detail, usage detail, regulatory fees, and taxes. A single invoice might contain charges for 150 individual circuits spread across 40 locations. Traditional invoice OCR tools that expect a two-page document with a header and a line item table cannot handle this structure.
The second problem is format inconsistency across carriers. AT&T organizes charges by billing account number (BAN) and then by circuit ID within each BAN, with separate sections for AVPN, ADI, BVON, and switched services. Verizon groups by account and then by product family, with a different layout for wireline versus wireless. T-Mobile Business bills use yet another hierarchy: account, cost center, and then individual line. Lumen (formerly CenturyLink) has gone through multiple billing system migrations and currently uses at least three different invoice formats depending on whether the service was originally provisioned under CenturyLink, Level 3, or legacy Qwest. Comcast Business, Spectrum Business (Charter), Windstream, Cox Business, and Frontier each have their own formats. Any template-based OCR system needs a separate template for every carrier, and in practice for every carrier billing tier, because the same carrier often uses different formats for small business versus enterprise accounts.
The third problem is that the data you actually need is scattered across multiple sections of the same bill. The circuit ID appears on the detail page, but the corresponding service address might only appear on the account summary page. Monthly recurring charges for a specific circuit might be split across a base rate on one page, a promotional discount on another, and regulatory surcharges on a third. USF (Universal Service Fund) fees, EUCL charges, state taxes, and local taxes are often aggregated at the account level rather than broken out per circuit. To get a complete picture of what a single circuit at a single location actually costs, you need to read and cross-reference three or four different sections of the same bill. This is what separates telecom invoice processing from a standard AP invoice, where all the information for a line item sits on one row of one table.
The core data model for telecom invoice extraction is consistent regardless of carrier. Every invoice contains an account number (sometimes called a BAN, customer ID, or billing account), an invoice number, an invoice date, and a billing period. Within each invoice, the line-level fields that matter are: circuit ID or service ID (the unique identifier for each physical or virtual connection), service address or location name, product or service description (MPLS, SIP, FIOS, broadband, wireless line, PRI, etc.), monthly recurring charge (MRC), non-recurring charge (NRC) if applicable, usage charges for metered services, and the per-line breakdown of taxes, surcharges, and regulatory fees including USF, EUCL, 911 surcharges, and state and local telecom taxes. The invoice-level total matters for reconciliation, but the circuit-level detail is where the real value sits.
The goal of extraction is getting this structured data into a system where it can be analyzed. For TEM-focused firms, that means importing into automated document processing platforms like Tangoe, Calero-MDSL, Cimpl, or Genuity, which need CSV or Excel files formatted to their specific import templates. For MSPs that handle telecom management as part of a broader IT services offering, the output typically goes into client-facing spreadsheets. These show cost per location, cost per circuit, month-over-month variance, and flagged charges that exceed contracted rates. Either way, the extraction step is the bottleneck. Everything downstream depends on the accuracy and completeness of that initial extraction.
The baseline approach is human-powered: open the carrier PDF, navigate to the relevant sections, and type each field into a spreadsheet or TEM import template. An experienced telecom billing analyst who knows a carrier's format well can process a 20-page invoice in about 15 minutes. A 100-page consolidated bill with dozens of circuits takes 45 minutes to an hour. At 200 invoices per month, a modest workload for an MSP with 30 to 50 clients, manual processing consumes 50 to 100 hours of labor. The error rate on manual telecom data entry runs 2 to 5 percent. That sounds low until you realize that a mistyped circuit ID means a charge gets allocated to the wrong location, and a transposed digit in an MRC amount throws off contract reconciliation. At scale, those errors compound into billing disputes, incorrect client invoices, and missed savings opportunities.
Major TEM platforms including Tangoe, Calero-MDSL, and Cimpl offer some level of built-in invoice ingestion. These typically use template-based OCR: the platform has pre-built extraction templates for major carriers, and invoices that match a known template are parsed automatically. This works reasonably well for AT&T, Verizon, and T-Mobile until those carriers update their billing formats, which happens one to two times per year for most major carriers. Each format change breaks the template and requires a rebuild, which can take the TEM vendor days to weeks. Template-based extraction also fails entirely on regional carriers, smaller CLECs, and any carrier the TEM vendor has not pre-built a template for. If you manage telecom for clients who use Windstream, Frontier, Cox, Consolidated Communications, TDS, or any of the hundreds of regional ISPs and CLECs in the US, the built-in OCR does not cover those carriers. You are back to manual entry.
Template-free AI extraction works differently. Instead of matching invoices against pre-built templates, Lido reads the document the way a human analyst would. It understands the structure of the page, identifies headers, labels, tables, and hierarchical relationships between sections. This means Lido extracts circuit-level charges from any carrier invoice without per-carrier configuration. Upload an AT&T consolidated bill and Lido identifies BANs, circuit IDs, MRC/NRC splits, and per-circuit taxes. Upload a Windstream invoice with a completely different layout and the same extraction logic applies. The AI adapts to the document structure rather than requiring the document to match a predefined structure.
For MSPs and TEM firms, this eliminates the carrier coverage gap entirely. Every carrier invoice, regardless of format, goes through the same automated extraction pipeline. Output arrives as Excel or CSV with one row per line item, ready for direct import into any TEM platform or client reporting spreadsheet. For teams that process large batches of documents, the time savings are immediate and dramatic.
Lido extracts line-level charges, circuit IDs, account numbers, and service addresses from any telecom carrier invoice — AT&T, Verizon, T-Mobile, Lumen, Comcast, and every regional carrier. No templates, no per-carrier setup.
Get a demoThe workflow starts with upload. Carrier invoices arrive as PDFs, either downloaded from carrier portals, received via email, or pulled from a shared drive. Lido accepts batch uploads, so an MSP processing a monthly billing cycle can upload an entire folder of carrier invoices at once rather than feeding them one at a time. There is no carrier selection step and no template assignment. Lido auto-detects the carrier and invoice structure from the document itself. A batch can contain AT&T, Verizon, Comcast, Lumen, and Frontier invoices intermixed, and each one is processed correctly.
Extraction produces line-level detail: one row per circuit or service with account number, invoice number, billing period, circuit ID, service address, product description, MRC, NRC, usage charges, and itemized taxes and fees. For multi-page consolidated bills, Lido stitches data across pages. If charges for the same circuit appear on page 12 (base MRC), page 47 (promotional credit), and page 93 (regulatory surcharges), those charges are consolidated into a single circuit-level row. This cross-page consolidation is where template-based tools consistently fail, because they process pages independently without maintaining context across a 150-page document. Lido also handles the common telecom billing quirk of summary-versus-detail discrepancies, where the summary page shows one total but the detail pages itemize to a slightly different amount due to rounding. Both values are captured so you can flag and investigate discrepancies.
Output goes to Excel or CSV, formatted for immediate use. The column structure maps to standard TEM import formats, so importing into Tangoe, Calero-MDSL, Cimpl, or Genuity requires minimal reformatting. For MSPs that deliver client reports in spreadsheets, the output is already organized by account and circuit. Building pivot tables for cost-per-location and cost-per-service views is straightforward. Lido's Smart Lookup feature adds another layer: upload your circuit inventory or contract rate sheet alongside the carrier invoices, and Lido can fuzzy match circuit IDs to flag new circuits not in your inventory (indicating unauthorized provisioning), circuits that appeared in last month's bill but are missing this month (potential disconnect issues), and circuits where the billed MRC exceeds the contracted rate (indicating a billing error or a missed contract renewal). This reconciliation step, the highest-value work in telecom expense management, happens automatically as part of the extraction pipeline rather than requiring a separate manual review.
Upload your carrier invoices and get structured, circuit-level data in minutes instead of days. Works with every carrier format. No templates to build or maintain.
Start free trialYes. Lido processes multi-page documents without page limits. A 200-page AT&T consolidated bill is processed the same way as a 2-page invoice from a regional carrier. Charges are extracted at the line-item level and consolidated per circuit across pages. The system maintains context throughout the entire document so that charges on page 15 and related taxes on page 140 are correctly associated with the same circuit ID. This matters for telecom billing specifically, where consolidated bills for multi-location clients routinely exceed 100 pages.
Lido's template-free extraction works with any carrier format. This includes the major national carriers (AT&T, Verizon, T-Mobile, and Lumen), cable-based carriers like Comcast Business, Spectrum Business (Charter), and Cox Business, regional carriers like Windstream, Frontier, Consolidated Communications, TDS Telecom, and Cincinnati Bell, and any local CLEC or ISP. Because the AI reads document structure rather than matching against pre-built templates, adding a new carrier requires zero configuration. Upload the invoice and extraction works immediately. That is a major advantage over template-based OCR tools that require days or weeks to build support for a new carrier format.
Lido achieves 95 to 99 percent field-level accuracy on telecom invoices. Circuit IDs are the hardest field to extract correctly because they contain mixed alphanumeric characters with formats like 10.ABCD.123456..ATI.000 or DHEC.987654.IL.ATL, and a single character error makes the ID unmatchable against an inventory. Lido handles these with high accuracy because the AI reads surrounding context. It understands that a string next to a "Circuit ID" or "Service ID" label in a charges table is an identifier, not a product code. Dollar amounts, dates, and account numbers follow more predictable formats and consistently hit the higher end of the accuracy range.
Yes. Lido exports to CSV and Excel, which are the standard import formats for all major TEM platforms including Tangoe, Calero-MDSL, Cimpl, and Genuity. The extracted data includes all the fields these platforms expect: account number, circuit ID, service address, charge type, amount, and billing period. Format the output columns to match your TEM platform's import template (typically a one-time column mapping exercise) and import directly. MSPs that use Lido for extraction and a TEM platform for inventory management get the best of both worlds: carrier-agnostic extraction that works on every invoice, plus the analytical and client reporting capabilities of their existing TEM investment.
Processing time depends on page count. A typical monthly billing cycle for a mid-sized MSP, roughly 50 carrier invoices averaging 20 pages each and totaling around 1,000 pages, processes in under 30 minutes with Lido. That same batch would take 25 to 50 hours of manual data entry at 15 to 30 minutes per invoice. Larger batches scale linearly: 200 invoices totaling 4,000 pages process in about two hours. The extraction is fully automated after upload, so there is no analyst time required during processing. Your team's time shifts entirely from data entry to the high-value work: reviewing extracted data, running contract reconciliation, and preparing client reports.