---
title: "“MIRU, RIH w/ 2-3/8 EUE, WOO 4 Hrs” — Why a General AI Bills That Field Ticket Wrong and an Oilfield-Tuned One Doesn’t"
description: "MIRU, WOO, POOH, 2-3/8 EUE: the well service shorthand a general model gets wrong, what tuned reading fixes, and the math on 640 field tickets a month."
canonical: https://callsphere.ai/blog/miru-rih-w-2-3-8-eue-woo-4-hrs-why-a-general-ai-bills-that-field-ticke
category: "Industry Solutions"
tags: ["oilfield services", "field ticket coding", "openinvoice rejections", "well servicing billing", "industry-tuned ai", "master service agreement"]
author: "CallSphere Team"
published: 2026-06-11T15:20:20.000Z
updated: 2026-09-07T15:09:40.961Z
---

# “MIRU, RIH w/ 2-3/8 EUE, WOO 4 Hrs” — Why a General AI Bills That Field Ticket Wrong and an Oilfield-Tuned One Doesn’t

> MIRU, WOO, POOH, 2-3/8 EUE: the well service shorthand a general model gets wrong, what tuned reading fixes, and the math on 640 field tickets a month.

## 6:40 a.m., district office, a pile of tickets and a cold coffee

The billing clerk gets in before anybody else because the tickets from the night crew are already sitting in the tray. Top of the pile is a workover ticket off a Reeves County well: *MIRU 4.5 hrs, N/U BOPE, tested 250/3000, POOH w/ 2-3/8 EUE 8rd, LD 118 jts, WOO 4 hrs, hot oil 200 bbl, RDMO*. Underneath it, a swab job, two hot-oiler tickets, a vacuum truck run, and a rental tool ticket the tool house faxed at 4 a.m. She has to turn all of that into invoice lines that the operator's coding rules will accept, against the right well, the right cost code, and the right authorization for expenditure number, before the 11 a.m. submission cutoff.

Everybody in this business knows what happens when she gets one line wrong. It sits in the operator's queue for two or three weeks, comes back rejected with a code like "description does not support charge," and starts the clock over. The crew got paid Friday; the money shows up in June.

The 2026 change worth your attention is narrow and boring and it is exactly where the money is: models tuned on oilfield service language now read a crew's shorthand the way a district manager reads it, instead of the way a general chatbot reads it.

## What a general model does with "WOO" — and what that costs

Hand a general-purpose assistant the line "WOO 4 hrs" and it will confidently offer you "work order operations" or simply drop it. It is waiting on orders — billable standby, at the standby rate on your Exhibit A, which is usually different from the operating rate and is the single most disputed line in well servicing. Hand it "RU/RD 2 hrs" and it may bill rig-up twice. Hand it "2-3/8" 4.7# J-55 EUE 8rd" and it will call it two and three eighths inch pipe, losing the weight, the grade and the connection — which is the difference between a handling charge, a rental charge, and a loss-and-damage claim. "WOC" is waiting on cement and is billable; "WOW" is waiting on weather and on half your agreements is not. "NPT" is non-productive time and whether you can charge for it depends on whose fault the operator's representative wrote down at 2 a.m.

**A tuned model, in plain terms, is one that has been taught on your trade's own tickets, rate sheets and abbreviations, so that it reads "MIRU," "POOH," "SITP," "7/8 grade D rods" and "11 inch 5M" as billable facts rather than as typing mistakes.** That is the whole category. It is not smarter in general. It is right about your specific words.

The 2024 and 2025 versions of this idea were a bolt-on: you typed the ticket in, and a general model tried to guess a code. It guessed well enough on the clean tickets and badly on the ones that mattered — the three-day jobs with fishing, a stuck packer, and four different cost codes. What is different in 2026 is that the reading and the coding are tuned on trade data as one job, so the words, the units and the rate sheet line up in a single step.

## The tuning that matters is your Exhibit A, not the internet

The most useful thing a tuned reader does is not translate abbreviations. It is matching a translated line to the specific rate sheet attached to the specific master service agreement with the specific operator whose well this is. You may run for thirty-plus operators. One pays portal-to-portal from the yard; one pays mileage from the county line; one has a four-hour minimum call-out; one caps standby at eight hours a day; one requires third-party pass-through to be shown at cost with the markup on a separate line; one will reject any line that does not carry the authorization number and the well identifier in the same field.

Nobody memorizes thirty rate sheets. Your best clerk memorizes six and looks up the rest, and when she is on vacation the accuracy drops. A tuned system holds all of them and applies the right one because it knows which operator owns the well on the ticket.

```mermaid
flowchart TD
  A["Crew closes ticket at 02:10 on location"] --> B["Photo lands in RigER or FieldCap"]
  B --> C["Tuned reader expands MIRU, WOO, POOH w/ 2-3/8 EUE"]
  C --> D{"Line matches this operator's Exhibit A?"}
  D -->|No| E["Flagged to billing clerk, one screen, 40 seconds"]
  D -->|Yes| F["Coded to authorization number and cost code"]
  E --> F
  F --> G["Submitted to OpenInvoice before the 11 a.m. cutoff"]
```

## Tuesday morning, coded before the crew is back at the yard

Here is what the new way looks like in a district that runs eight workover rigs and eleven trucks. The night pusher closes the ticket in the field app at 2:10 a.m. and the operator's representative signs on the tablet. By 2:12 the system has expanded every abbreviation, matched the tubing description to the handling and rental lines, split the standby hours out of the operating hours, pulled the well identifier and the authorization number from the job record in WellView, and built a draft invoice against that operator's rate sheet.

At 6:40 the billing clerk does not retype anything. She reviews nine flagged lines out of about two hundred — the ones where the reader was not confident, usually because the handwriting on the change order was bad or because the standby hours crossed midnight and the day rate rolled. She fixes those, releases the batch into OpenInvoice or Cortex, and is done with the night's work before her second coffee.

The number that changes is not her hours. It is the first-pass acceptance rate on the operator's side, which is what actually controls when the money arrives.

## The arithmetic on 640 tickets a month

These are illustrative assumptions — plug in your own from last quarter's aging report.

| Assumption | Value |
| --- | --- |
| Field tickets submitted per month | 640 |
| Average ticket value | $4,180 |
| First-pass rejection rate today | 11% |
| Billing clerk rework per rejection | 22 minutes at $28/hour loaded |
| Extra days to cash on a rejected invoice | 34 days |
| Cost of money on the revolver | 11% per year |

Eleven percent of 640 is about 70 rejected invoices a month. Rework: 70 rejections times 22 minutes is roughly 26 hours, or about $723 a month in clerk time. Cash: 70 invoices at $4,180 is $294,272 sitting still for an extra 34 days, which at 11% costs about $3,015 a month to carry. Total drag, roughly $3,738 a month — call it $44,900 a year.

Suppose tuned reading and coding takes first-pass rejections from 11% down to 3%. That is about 73% of the drag, or roughly $2,725 a month — near enough to $32,700 a year on a district doing about $32 million in annual billings. It is not transformative. It is one hand's wages, recovered from paperwork, every year, without adding a truck.

## Where this still needs a human, and it is not a small list

Three places to keep your people firmly in charge. First, disputed non-productive time. If the operator's representative wrote "contractor equipment failure" in the remarks and your supervisor says the packer was already junk when they got there, that is a phone call between two men who have to work together next week, not a line item a machine should decide. Let the system flag it and stop.

Second, anything that touches a loss-and-damage claim on downhole tools. When a fishing job ends with your rental crossover left in the hole, the charge can run into five figures and the wording of your claim is the difference between getting paid and eating it. Have the tool coordinator write that one.

Third, the first ninety days on any new operator. Every operator has house rules that are not written on the rate sheet — the coder who always kicks back fuel surcharge, the one who wants the daily report attached as a separate file. Run new accounts with a human check on every invoice until you have seen a full billing cycle come back clean.

## Frequently asked questions

### We use a field ticket app already. Isn't the coding solved?

Field apps solve capture, not translation. They give you a clean digital record of whatever the pusher typed, including "WOO 4" and "misc. rental." The rejection happens downstream, when that record has to become a line the operator's coder will accept against a specific authorization number. That is the gap tuned reading closes.

### What does it do with a job that has four cost codes and a change order mid-tour?

It splits the hours by the timestamps already on the ticket and codes each block, then flags the boundary lines for a person. Multi-code jobs are exactly where the flag rate should be high. If a vendor tells you their system handles those with no review, be skeptical.

### How do I check it isn't quietly over-billing us into an audit?

Most master service agreements give the operator audit rights going back twenty-four months, so over-billing is a slow-motion liability, not a win. Run the first month in parallel: let the system code the batch, have your clerk code it the old way, and compare line by line. You want the disagreements, and you want them before you submit.

### Do our hands have to change anything in the field?

No, and that is the point. They keep writing "RIH w/ 2-7/8 tbg" the way they always have. The tuning exists so the office side can read what the field already writes, instead of asking the field to write like an accountant.

## The one thing to do Monday

Pull last month's rejected invoices for your single largest operator — just that one. Sort the rejection reasons. If more than half trace back to a description, a unit, or a code that a person had to translate from a hand's shorthand, you have found your first candidate, and you can test it against a rate sheet you already know cold.

One knock-on effect nobody plans for: when invoices go out same-day, the operator's accounts payable clerk starts calling the district office with questions on a much faster cycle, and those calls land while your dispatcher is already on two lines with a crew change. [CallSphere](https://callsphere.ai) builds voice and chat agents that answer the business line around the clock, take the caller's well name and invoice number, and route or book from there — so a payables question at 4:50 p.m. on a Friday does not go to voicemail and cost you another billing cycle.

---

Source: https://callsphere.ai/blog/miru-rih-w-2-3-8-eue-woo-4-hrs-why-a-general-ai-bills-that-field-ticke
