For locum tenens physicians

Every agency gives you an app. None of them can tell you what you made this year.

One ledger across every agency and every state you work in. The license that has to stay current, the invoice nobody chased, and the quarterly estimate that comes out of both, in one place. Built and used by a practicing neurosurgeon who works locums.

Free beta · every feature on · no card See the tax engine →
The beta is invite-only. Getting on the list is how you get in.
YEAR TO DATE · 2026 4 AGENCIES BILLED $342,180 14 invoices COLLECTED $296,940 11 paid in full AWAITING $45,240 3 open BY AGENCY Weatherby Healthcare Sanford Medical Center Fargo · ND $148,900 collected $132,400 MPLT Healthcare Great Plains Health · NE $96,300 collected $88,540 CompHealth Valley Presbyterian · CA $61,480 collected $52,600 Avera Health (direct) Sioux Falls · SD $35,500 collected $23,400 INV-2026-041 is 34 days out Weatherby · partially paid $1,531.25 Set aside on every payment S-corp · resident CO · work states ND, CA, SD, NE 26% 9 states licensed 24 licenses & registrations 1,486 wRVU logged

Example data. Four agencies, one year, one number. No agency app can build this screen, because it can only see its own assignments.

The work is one career. The records are in nine places.

Nothing here is a product gap in any one tool. It is what happens when four companies each hand you a portal scoped to their own contracts.

Four agencies, four portals, no total

Each agency app manages that agency's assignments, time and pay. None of them can show the year: what you billed everywhere, what is still unpaid, what you owe in tax because of it.

Nine states on nine renewal clocks

Different cycles, different CME hour counts, different mandated topics, different fees. A lapse does not cost you a fee, it costs you the assignment while credentialing restarts.

An August invoice nobody chased

An agency paid $5,500 of a $7,031 invoice and the ledger in your head marked it paid. An unpaid balance is invisible until someone goes looking, and nobody is looking.

A quarterly estimate guessed at 30 percent

You worked in four states and live in a fifth. Guess high and cash sits idle all year. Guess low and you pay a penalty for the privilege.

The tool you are actually using is a spreadsheet, and it is a reasonable tool

CompHealth tells you to keep an Excel or Google sheet of licenses and expiration dates. Locumstory tells you to keep a sheet of assignments and hours for quarterly taxes. That advice is not wrong. A spreadsheet is a good list.

It does three things badly, and they are the three that cost money. It does not remind you. It does not do the multistate math. And it cannot attach the hotel receipt to the line on the invoice, so the proof follows in a second email or not at all.

Your license expires on a state's schedule, not your assignment's.

Nine states means nine cycles, nine CME requirements and nine sets of mandated topics. The matrix puts all of it on one screen so a lapse is something you saw coming.

CREDENTIALS › MATRIX SHOWING 5 OF 9 STATES CME SHOWN: AOA TRACK (DO) STATE LICENSE EXPIRES DEA CME LOGGED PRIVILEGES AZ DO-8815 Osteopathic Board 9 days Sep 21, 2026 Active exp Jun 2028 18 / 40 h needs opioid 1 hospital reappt Apr 2027 CA A-118902 Medical Board of CA 47 days Oct 29, 2026 Active exp Mar 2027 50 / 50 h requirement met 1 hospital reappt Jun 2027 CO DO-0018344 resident state 97 days Dec 18, 2026 Active exp Nov 2027 24 / 30 h needs substance use, 2 h 1 hospital reappt Nov 2026 ND 12447 Board of Medicine 191 days Mar 22, 2027 Active exp Jun 2028 36 / 40 h 4 h short, no topic gap 2 hospitals reappt Mar 2027 TX R-90214 Texas Medical Board 289 days Jun 28, 2027 Not registered no DEA in TX 38 / 48 h needs 2 h ethics 0 privileges not credentialed yet One row per state you hold, soonest expiry first. Showing 5 of 9; Nebraska and three others sit further out. CME branches on MD versus DO.

Example data. Wide on a phone: swipe the matrix sideways.

What a row actually contains

  • License number and days to expiry. Not a date you have to subtract from today.
  • The DEA registration in that state, which is its own registration and its own expiry.
  • CME hours logged against that state's requirement, with the unmet mandated topics named. Eighteen of forty is a number. Needs opioid prescribing is an instruction.
  • Hospital privileges in that state and the earliest reappointment date across them.

The fees and cycles are cited to the state's own rule

Behind the matrix, each state carries its renewal fee and cycle with a primary citation: Maryland Health Occ. sec. 1-209, 49 Pa. Code 16.13 and 25.231, Wisconsin DSPS RDAF rev. 08/07/2025, and so on, including the compact processing fee where a state's renewal carries one.

Read the free renewal guide for your state →

Fifty states for licenses and CME. The 50-state claim on this page is about credential tracking only. Tax modeling is a shorter list and is named honestly further down.

Forward the credentialer's email. Reply with the packet.

Every new assignment asks for the same set: driver's license, state licenses, DEA, board certification, ACLS and BLS, immunization records, COI. The request does not have to become its own project.

1. Forward it in

Send the credentialer's request to [email protected]. It lands in your requests inbox as a card, with whatever they attached.

2. Pick the documents

Select from what you already have on file and reply straight from the app. They go out as real attachments, not links to a portal nobody wants an account for.

3. The reply comes to you

Mail is sent as Name, DO via CredentialDOMD with reply-to set to your own inbox, so their answer lands with you and not with us.

The caps, up front: 10 files and 25 MB per send. Anything past that is left out and named for you after sending, so you find out before the credentialer does.

The signed agreement sets the rates. Everything downstream uses them.

Upload the paper once. After that the day is priced, the invoice is built and the payment is tracked from the same set of numbers, so the invoice and the contract cannot drift apart.

Upload the agreement and it reads out the terms

PDF, photo, Word or Excel. The scanner pulls the pay model, day rate, call stipend, the hours the stipend covers, the overage rate, orientation rates, coverage date blocks, billing increment, the minimum per call, and a per-hospital call rate grid, then fills the contract form for you to review.

  • The extraction prompt is built around the mistakes that ruin billing data. It will not file a per-diem figure as an hourly rate.
  • It will not read 24-hour call period as 24 included hours, which is the single most expensive misreading in locum billing.
  • It will not derive a rate by dividing an annual target. If the number is not in the agreement, it does not invent one.
  • Each agreement also carries the state where the work physically happens, which is what routes that money to the right state at tax time.
LOCUM › CONTRACTS SCANNED Locum Agreement (signed).pdf Weatherby Healthcare · 6 pages · uploaded Sep 2 READ FROM THE AGREEMENT Pay model Call stipend + overage Call stipend, 24 h period $1,900.00 Hours included in the stipend 6.0 h Overage beyond included $325.00 / h Orientation rate $150.00 / h Billing increment 15 min, rounded up Minimum per call 30 min Coverage dates Sep 8 – Sep 21, 2026 Work state (routes the tax) North Dakota PER-HOSPITAL CALL RATE GRID Sanford Medical Center Fargo primary / backup $1,900 / $950 Sanford Bismarck primary / backup $1,500 / $750 Nothing saves until you confirm. The scanner fills the form, you sign off on it.

Example data.

A 24-hour call runs 7am to 7am, and the app knows that

Work logged before 7am belongs to the previous day's call coverage and its stipend, not to the new calendar date. The call day is frozen onto the entry in the timezone where the work happened, so opening the app in another state cannot re-partition your days and re-bill a stipend.

  • One tap when the phone rings, one tap when you are done. The time rounds up to the contract's billing increment and honors its per-call minimum. The running timer lives on the device, so a refresh does not lose it.
  • Or say it in one breath. Dictation returns the work type, date, start and end times, duration and a clean billing description, prefilled for review. It never writes to the ledger on its own.
  • Overlap and allowance warnings fire when you save, not at invoice time three weeks later.
  • The double-billing guard checks the date against your coverage blocks and speaks up if your schedule has you at another facility. It warns and never blocks, because you are the authority on where you actually were. Confirming records the override so that day never nags again.
LOCUM › WORK CALL DAY Call day: Fri Sep 11 07:00 Fri → 07:00 Sat (Central) · Sanford Fargo $1,900 6.0 h included Call in progress Rounds up to 15 min · 30 min minimum 00:12:30 ENTRIES Rounds and two floor consults 07:40 – 09:25 · Sanford Fargo 1.75 h Phone consult, emergency department 13:20 – 13:35 · 15 min, billed at the 30 min minimum 0.50 h Bedside procedure and re-evaluation 18:00 – 21:30 3.50 h Phone consult, transfer accepted 02:10 – 03:40 Sat · before 07:00, so it counts to Sep 11 1.50 h Past the 6.0 included hours by 1.25 h 7.25 h on the day · 1.25 h at $325.00 overage Day total stipend $1,900.00 + overage $406.25 $2,306.25 Coverage confirmed: Sanford Fargo, Sep 8 – 21 The guard warns, it never blocks. Minutes already billed on a prior invoice are stamped per day, so re-invoicing the same call day cannot double-charge the stipend.

Example data.

Invoices carry a payment ledger, not a paid flag

Pick which days to bill and the app builds an itemized invoice from the contract's own rates: a branded PDF for the hospital AP department, plus Word and Excel versions of the same content for billing offices that re-key everything anyway.

  • Agencies pay in pieces, so partial payments count. Each payment is a line in the ledger and the open balance is the number on the card.
  • Unpaid invoices age visibly and pass 30 days as overdue. Total billed, total collected and total awaiting payment sit at the top.
  • Billing by month is attributed to the day the work was done, so an invoice spanning two months splits between them instead of landing wherever it was sent.
  • Delete an invoice and its work comes back. Entries, duty days and expenses return to unbilled so they can be re-invoiced, with a warning first if another invoice bills the same call day.
  • A cover letter is generated and copied to the clipboard, because iOS Mail collapses shared text into a single line.
LOCUM › INVOICES 34 DAYS OPEN INV-2026-041 Weatherby Healthcare · Sanford Medical Center Fargo Sent Aug 09 Net 30 LINES Aug 03 Orientation, 4.0 h at $150.00/h $600.00 Aug 04 Call stipend, 24 h (6.0 h included) $1,900.00 Aug 05 Call stipend, 24 h (6.0 h included) $1,900.00 Aug 05 Overage 1.25 h at $325.00/h $406.25 Aug 07 Call stipend, 24 h (6.0 h included) $1,900.00 Aug 07 Overage 1.00 h at $325.00/h $325.00 Invoice total $7,031.25 PAYMENT LEDGER Aug 21 ACH from Weatherby AP $4,000.00 Sep 04 ACH, partial remittance $1,500.00 Open balance Collected $5,500.00 of $7,031.25 $1,531.25 Passed 30 days on Sep 08, marked overdue Share as PDF WORD EXCEL Cover letter generated and copied to the clipboard. Lines sort chronologically, with pre-7am work at the tail of its own call day.

Example data.

Describe the day out loud. Get CPT codes with work RVUs attached.

Every code comes back with units, the CMS work RVU and a one-line reason. You accept, adjust or delete each line before anything saves.

The coder can only pick from the app's own catalog

494 codes weighted to neurosurgery and hospital evaluation and management, carrying CMS CY2026 Physician Fee Schedule work RVUs, status and global period, from a generated data file with the source release named in its header. Every code the model returns is re-validated against that catalog, so an invented code is silently dropped rather than saved.

  • The coding rules know the anatomy. Vertebral segments are counted against interspaces, instrumentation constructs are sized by screw count, and an E/M code is suppressed for routine postoperative care inside a 90-day global.
  • Dictation mangles surgical shorthand, so it gets fixed first. "Tea lift", "T-lif" and "a c d f" are normalized to TLIF and ACDF before the coder ever sees them, and a spoken "for yesterday" or "last Tuesday" sets the entry date.
  • Assistant surgeon modifiers on every line. An 80, 81 or 82 picker sits on each coded line, and saying you assisted preselects 80 and flags that Medicare pays 16 percent of the fee.
  • Operative codes file themselves. A surgery-section code creates a career case log entry with the facility, the CPT string with modifiers and units, and the summed work RVU. An E/M-only encounter correctly does not go, and the app says so and offers a one-tap override for the bedside procedure that should have.
  • Or skip the AI entirely. Type a code number or a procedure name and get ranked matches with the work RVU attached, in the capture box or inside any saved encounter.
LOCUM › RVUs CMS CY2026 wRVU SEP 10 54.42 THIS MONTH 214.63 ALL TIME 1,486.20 Two level tea lift L4 to S1 with pedicle screws, six screws, at Sanford Fargo, for Thursday. "tea lift" → TLIF "Thursday" → Sep 10, 2026 RETURNED, PENDING YOUR REVIEW 3 ADDED BY CONSTRUCT RULE 22633 Arthrodesis with interbody, L4-5, single interspace wRVU 26.13 1 unit · accept, edit, delete 22634 Each additional interspace, L5-S1, add-on wRVU 7.76 1 unit · add-on to 22633 22842 Posterior instrumentation, 3 to 6 vertebral segments wRVU 12.25 1 unit · 6 screws 22853 Biomechanical device, L4-5 and L5-S1 wRVU 8.28 2 units at 4.14 each 20930 Morselized allograft, spine surgery, add-on wRVU 0.00 1 unit · status B, bundled 20936 Local autograft, same incision, add-on wRVU 0.00 1 unit · status B, bundled Assistant modifier Say you assisted and 80 preselects, at 16 percent of the fee. 80 81 82 Case total 26.13 + 7.76 + 12.25 + 8.28 + 0 + 0, six codes 54.42 wRVU Filed to the career case log Sanford Fargo · 22633, 22634, 22842, 22853 ×2, 20930, 20936 Every returned code is re-validated against the app's own catalog before it can be saved.

Example data.

Two jobs, one screen: bill it to the agency or deduct it.

Flights, hotels, rental cars, rideshares and parking, each with the receipt photo or PDF attached, invoiced to the agency in one tap. Everything else becomes a Schedule C line.

Upload the card statement and it becomes deduction lines

CSV and Excel parse on the device. PDF and photos go through the scanner. Every row lands in a review screen already categorized, de-duplicated against the ledger you already have, with credits and payments excluded before you approve the batch.

  • A merchant keyword map is the floor and an AI pass categorizes the rest, so the ledger reaches your CPA sorted rather than as a wall of Other.
  • A travel row can be routed to agency billing instead, and the app refuses to both deduct it and bill it, because that counts the same dollar twice.
  • The expense invoice shares with every receipt file attached alongside the PDF, so the proof travels with the bill instead of following in a second email.
  • The deduction memo builds itself from records you already keep. License renewal fees, DEA registration, malpractice premiums, CME costs and society dues come straight out of your credential records, joined by imported and manual lines, totaled by category, exported to CSV.
  • The memo and the tax estimate cannot disagree, because the deductions derived from your license, insurance, CME and membership records are the same set the estimator subtracts.
FINANCE › DEDUCTIONS REVIEW BEFORE SAVE Business card statement, August.csv 42 rows parsed on this device, nothing uploaded REVIEW 08/02 DELTA AIR LINES Travel · bill to agency $412.30 08/07 HAMPTON INN FARGO Lodging · bill to agency $128.44 08/18 ND BOARD OF MEDICINE License fees · deduct $185.00 08/20 PAYMENT THANK YOU Credit, excluded -$1,900.00 3 rows already in the ledger, skipped as duplicates Billed to the agency, so not also deducted The same dollar is never counted twice. DEDUCTION LEDGER, YEAR TO DATE Total across 5 categories Malpractice, licenses and DEA, CME, travel, society dues $34,153 A merchant keyword map runs first. An AI pass categorizes whatever it did not recognize.

Example data.

You worked in four states and live in a fifth. Here is what you owe, and to whom.

Income counts when a payment actually lands, gets allocated to the state where the work physically happened, and is modeled as either S-corp with a W-2 salary plus K-1 or sole proprietor on Schedule C.

MORE › FINANCE › TAX PREP CASH BASIS · 2026 · SINGLE BY JURISDICTION JURISDICTION ESTIMATED PAID REMAINING Federal income tax plus payroll · next due Sep 15 $58,420 $42,000 $16,420 Colorado, resident all income, credited for tax paid elsewhere $9,110 $9,110 $0 North Dakota, work state nonresident, ratio method $3,240 $2,400 $840 California, work state nonresident, ratio method $6,875 $5,000 $1,875 California franchise S-corp minimum $800 $800 $0 South Dakota, work state no state income tax on wages $0 $0 $0 Nebraska, work state state model not loaded yet, income shown only $88,540 sourced 110 percent safe harbor, federal based on last year's tax · next payment Sep 15 $64,180 SET-ASIDE RATE 26% of every payment that lands in the account 30% of gross once employer payroll tax counts DEDUCTION LEDGER Malpractice premium $18,400 Travel and lodging $6,742 CME and board fees $4,120 State licenses and DEA $2,986 Society dues $1,905 Schedule C total $34,153 S-corp: W-2 $180,000 plus K-1 sole proprietor Schedule C also modeled Verified against IRS Rev. Proc. 2025-32, FTB 2025 rate schedules and 540 booklet, tax.colorado.gov, and ND Form ND-1ES 2026.

Example data. Wide on a phone: swipe the panel sideways.

What the engine actually does

  • Cash basis. Income counts when a payment actually lands, not when the invoice was sent, which is how your quarterly obligation actually works.
  • Allocated to where the work happened. Each agreement carries its work state, so the money follows the contract. Invoices with no contract assigned are named so you can fix them instead of quietly landing in the wrong state.
  • Federal brackets, standard deduction, and the 199A QBI phase-down for physician SSTB income by filing status, plus employer and employee payroll tax or self-employment tax depending on the entity.
  • Resident state taxed on everything, with a credit for tax paid to work states, and each nonresident state by the ratio method.
  • A payment ledger per jurisdiction. Estimated minus paid equals remaining, on screen, for federal, your resident state, each nonresident work state and the California franchise, with the next due date and the 110 percent safe harbor figure.

The limits, stated here rather than in a footnote

Three states are modeled today: California, Colorado and North Dakota, plus the nine states with no income tax. Work in any other state shows the income sourced there, labeled state model not loaded yet. It is never estimated with another state's brackets, because a confident wrong number is worse than an honest gap.

This is a planning estimate. Reasonable compensation for an S-corp and final apportionment are your preparer's call. The job here is that you walk into that conversation with the year already sorted.

Every figure is sourced in the code. IRS Rev. Proc. 2025-32 (sec. 3.01 rate tables, 3.14 standard deduction, 3.26 QBI thresholds), the FTB 2025 rate schedules and 540 booklet, tax.colorado.gov, and ND Form ND-1ES 2026. Extracted August 16, 2026, and named in the app next to the numbers.

The rest of it, without the tour

Six things that ship today and only make sense to someone who has worked a locum contract.

Day-rate duty log

For agreements that pay per day worked plus a flat rate per accepted call period, one row per date records whether the day was worked and which hospitals were covered as primary or backup, priced from the contract's own rate grid.

Detail: several hospitals on one date, each at its own grid rate, with month totals split by hospital and role.

Schedule view

Every contracted coverage block across every agreement in date order, marked active, upcoming with a countdown, or done, each carrying the facility, agency, location and call stipend terms.

Answers: where am I next, and under whose terms.

Billing forecast

Assign future days per contract with an expected amount, project the year forward, and reconcile every past month, estimated against actually billed, over or under.

Detail: a call day prices from the historical call-day average of stipend plus overage, never the blended number that orientation days drag down.

Contract summary

Tap an agreement's name and see everything it produced: billed and collected, the days and hours on the ground, the RVUs logged, the cases done there, and the signed agreement itself.

Answers: was that assignment actually worth it.

Right contract by default

The RVU log defaults to the agreement whose coverage period contains the entry date, and a contract you picked manually stops holding as soon as the date moves outside its term.

Prevents: a day logged against the agreement you happened to use last.

Interrupted-work to do

A call comes in mid-case. Capture it in one line and move on. When you come back, enter the real start and end times and it becomes a billable work entry.

Detail: the capture time is only a reminder of when it came in. It never decides what gets billed.

Not a replacement for your agency. A replacement for the spreadsheet.

The agency app is good at what it is for. So is the sheet. These are the jobs neither one can do, listed as jobs rather than features.

The job Your agency's app Spreadsheet and Drive CredentialDoMD
Show every agency at once Only its own assignments Only what you kept typing Billed, collected and awaiting across every agency and direct contract
Warn you before a license or DEA lapses Not its job No reminders at all Days remaining on every state you hold, with unmet CME topics named
Price a day from your signed agreement Its own rates, its own timesheet You redo the math each time Reads the agreement, then prices stipend, included hours and overage on a 7am call day
Track a partial payment on one invoice Its remittance, not your ledger A cell you have to remember to edit A payment ledger per invoice, with the open balance on the card and aging past 30 days
Tell you what you owe and to whom No No Federal, resident state and each work state, estimated minus paid, per jurisdiction
Keep the receipt with the bill Reimbursement submission, one agency at a time In a Drive folder somewhere Receipt files go out attached to the expense invoice itself
Hand your CPA a clean ledger in March One 1099 per agency Whatever you typed Categorized deduction ledger as CSV, plus billing by month attributed to the work date
Stop a day being logged to the wrong contract Cannot see your other contracts No Checks the date against your coverage blocks and warns, without blocking you

Wide on a phone: swipe the table sideways.

There is no HIPAA claim here, because there is no patient data here.

The app holds credential paperwork and billing data. That is a deliberate design choice, not a gap waiting to be filled.

The private vault

The note saying which patient a two-minute phone call was about stays in this device's own storage and is never uploaded. The billing description that reaches the invoice stays free of identifiers. Dictation routes any patient name it hears into the private note rather than the synced billing field.

The trade, stated plainly

Those private notes do not follow you to another device. The app says so, in the app. The only way to make them follow you is to send them to a server, and that is exactly the thing this design refuses to do.

The upload guard

The document scanner warns when an upload reads like a chart rather than a credential, because the fastest way to create a PHI problem is to photograph the wrong page in a hurry.

About 45 minutes, most of it confirming what the scanner already filled in.

Not "minutes". You are moving a career's worth of records, and the honest number is under an hour because almost nothing is typed by hand.

  1. Photograph the credentials. Each state license, each DEA registration, board certificates, ACLS and BLS cards, malpractice COI. The scanner reads the type, issuing authority, number, issue date and expiry, and you confirm.
  2. Upload each signed agreement. The scanner reads out the pay model, day rate, call stipend, included hours, overage rate, orientation rates, billing increment, per-call minimum, coverage dates and the per-hospital call grid.
  3. Set the work state on each contract. One field per agreement. It is the field that routes your income to the right state for the rest of the year.
  4. Import last month's business card statement. CSV or Excel parses on the device, PDF or a photo goes through the scanner, and the rows come back categorized and de-duplicated for you to approve as a batch.
  5. Then stop setting up. The next credentialer email gets forwarded to your requests inbox. The next call gets a timer tap. The next agreement gets uploaded when it is signed.

Where each of these lives

Locum tab

Work, RVUs, Sched., Invoices, Contracts, Exp. and To do.

More › Finance

Tax Prep and the Deduction Memo, including the statement import.

Credentials › Matrix

The multi-state license, DEA, CME and privilege matrix.

Free beta. Every feature on. No card.

Access is invited from the list, which is how the beta stays small enough to fix things quickly.

Request access

One email when your invite is ready. Paid pricing is being finalized, and every beta member sees the number before anything is ever charged.

30 seconds · no card · founding-member perks by signup order

The questions locums actually ask

Three things. It reminds you before a license or DEA registration lapses. It does the multistate math, allocating collected income to the state where the work physically happened and crediting your resident state for tax paid elsewhere. And it keeps the receipt attached to the expense, so the proof goes out with the bill instead of following in a second email. A spreadsheet is a fine list. It is not a system that acts.
The agency ledger covers that agency's assignments. Your CPA sees the year in March. Neither one tells you in September that an August invoice is still short by $1,531. This is your own copy of the record, and in March it hands the preparer a categorized deduction ledger as CSV plus billing by month attributed to the day the work was done.
The 2026 figures are verified against IRS Rev. Proc. 2025-32, the FTB 2025 rate schedules and 540 booklet, tax.colorado.gov, and ND Form ND-1ES 2026, extracted August 16, 2026. The sources are named in the app next to the numbers, not buried in a changelog. It is a planning estimate: reasonable compensation for an S-corp and final apportionment are your preparer's call.
California, Colorado and North Dakota, plus the nine states with no income tax: Alaska, Florida, Nevada, New Hampshire, South Dakota, Tennessee, Texas, Washington and Wyoming. Work in any other state shows the income sourced there and is labeled state model not loaded yet. It is never estimated with another state's brackets. License and CME tracking, separately, covers all 50 states.
There is no HIPAA compliance claim, because the design is no PHI at all. The app holds credential paperwork and billing data. The note saying which patient a phone call was about stays in that device's own storage and is never uploaded, and the billing description that reaches the invoice stays free of identifiers. The scanner warns when an upload reads like a chart rather than a credential. The trade is stated in the app: those private notes do not follow you to another device.
Right now it is a free invite beta with every feature on and no card. Paid pricing is being finalized, and every beta member sees the number before anything is ever charged.
Budget about 45 minutes, most of it confirming what the scanner already filled in. Photograph each license, DEA registration and board certificate. Upload each signed agreement and let it read out the pay model, rates, included hours, overage and coverage dates. Set the work state on each contract. Import last month's card statement. Then forward the next credentialer email to the requests inbox instead of hunting through your files.
Invoices export as a branded PDF plus Word and Excel versions of the same content for billing offices that re-key. Expense invoices go out with every receipt file attached. The Schedule C deduction memo exports to CSV for your accountant. Document packets go out as real email attachments, up to 10 files and 25 MB per send.
It installs as a Progressive Web App and your data is cached on the device, so you can pull up a license number in a hospital basement. The running call timer lives on the device too, so a refresh or an app close does not lose it.
Yes. The entity models are the same at any volume: S-corp with a W-2 salary plus K-1, or sole proprietor on Schedule C with self-employment tax. Income is still allocated to the state where the work physically happened, and the deduction ledger still pulls your license, DEA, malpractice, CME and society costs whether you take four weeks of locums a year or fifty.
No. The catalog is 494 codes weighted to neurosurgery and hospital evaluation and management, carrying CMS CY2026 Physician Fee Schedule work RVUs, status and global period. The AI coder can only pick from that catalog and every code it returns is re-validated against it, so an invented code is dropped rather than saved.

Customer number one is a practicing neurosurgeon

Eric Whitney, DO, is a board-certified neurosurgeon who works locum contracts and built this because the spreadsheet stopped holding. The billing vocabulary in the work log came out of his own agreements: call stipends with included hours, overage past them, per-hospital primary and backup grids, a call day that starts at 7am.

Features get cut when they do not match reality. Flat hourly shift blocks were removed outright, because his contracts are stipend and call based and a feature nobody's contract uses is a feature that makes the app harder to read. When the reference material behind a number turns out to be wrong, that gets flagged in the app rather than quietly smoothed over.

That is authorship, not a testimonial. There are no customer reviews on this page, because there are none to quote yet.

Somewhere in your files is an invoice that was never paid in full.

Get on the list, and the first thing the app does is tell you which one it is.

Free beta, every feature on, no card. Founding-member perks for the earliest names on the list.