Features

Everything a DME practice does, in one application.

Seventeen areas, all reading the same data. Nothing below is a roadmap item — this is what version 3.0 does today.

01

Patients

One record carrying the whole patient: contact details, the referring doctor's phone, fax and NPI, the payer and policy, diagnoses, compliance documents with expiry, CGM certifications, prior authorizations, orders, invoices and the balance, shipments with tracking, rentals with their service position, referrals, and who may act for them.

Coverage staleness and any open documentation request sit at the top of the compliance tab, because both have clocks on them. A duplicate patient is warned about at entry — matching on Medicare ID, or name plus date of birth, never name alone.

A patient has two addresses, and the difference decides whether a claim is paid: the service address is where the equipment goes — a care home, a relative's house — and the billing address is where the payer thinks the beneficiary lives, which is what goes in loop 2010BA. Blank means the same, rather than a copy taken at save time that quietly drifts.

One box searches the whole application. Ctrl+K resolves a name, a Medicare ID, an order number, an invoice number or a tracking number to the patient or the order it belongs to, and says which field matched — because finding an order by its invoice number is a different answer from finding it by the patient's name. It is how those things arrive over the telephone.

Search from anywhere Power of attorney Representatives Duplicate detection Secondary coverage
02

Orders & kits

Order entry with HCPCS pricing, units of service per package, modifiers and place of service. A kit puts a whole setup on in one action — a CPAP is a machine, a mask, tubing, a filter and a chamber, and the tubing is the one people forget. "Same as last time" repeats what this patient actually had, priced today.

Approval, dispatch, delivery, invoicing and cancellation with stock returned — and billing an order never closes its delivery, so a practice that invoices on dispatch does not lose its proof of delivery or its ability to start a rental.

Kits Drop shipping Stock movement Cancellation with restock
03

Rentals

Capped rental at thirteen months with RR and KH, KI then KJ; oxygen at thirty-six with RR alone; inexpensive or routinely purchased at ten; and frequently serviced with no cap at all. Months run from the date of service rather than the calendar, and a row per month makes billing the same month twice impossible even from two workstations.

A revenue forecast projects what the book already on the shelf will bill, and names the cliff — a cohort that all started thirteen months ago comes off together. Equipment still out gets a service schedule and a log, which is what an unannounced survey asks to see.

Capped & oxygen Modifier by month Revenue forecast Service log
04

Resupply

Who is running out, worked from the last shipment and how long a unit lasts rather than from a calendar — so a late or short delivery moves the next date instead of the queue firing anyway. Equipment that is not resupplied stays off the list entirely.

Before a run goes out, coverage and same-or-similar can be asked for the whole selection at once rather than one patient at a time, which is the only way anybody actually asks. A line nobody is shipping this time comes off the queue with a reason and a review date recorded, and the hold ends when the next shipment goes — otherwise a hold taken in March suppresses the line for ever and the patient runs out with the queue saying nothing.

Burn rate, not a calendar Preflight checks Holds with a reason
05

Shipping & delivery

Your own delivery routes as well as the carriers — a van has no tracking number, and asking for one is how invented data gets collected. USPS, UPS, FedEx and DHL number recognition, offline address checking that catches a ZIP which cannot belong to the state beside it, and scan history.

Tracking updates itself through EasyPost: the parcels still in flight are asked about on an hourly pass and the scans land on the shipment, so nobody opens a carrier's website or types a number. One account covers USPS, UPS, FedEx and DHL, and buys the labels too. A delivered parcel is never asked about again and nothing is re-checked inside four hours, so a carrier having a bad afternoon does not become a call an hour for every parcel — and an unreachable carrier reads as inconclusive rather than as no movement, because a fabricated delivery is precisely what a Medicare audit asks you to prove.

Delivery tickets and proof of delivery, recording the designee's relationship to the patient when somebody else signs — a required element that a reviewer treats as fatal when it is missing.

Own routes EasyPost tracking Label purchase Address checking Proof of delivery
06

Doing many at once

Batch processing approves, ships, marks delivered or invoices a selection of orders in one pass, reporting per order rather than stopping at the first problem — the same rule every import here follows. The resupply queue does the same for a whole run.

Bulk actions Reported per order
07

Eligibility & claims

270/271 coverage checks and same-or-similar inquiries, with an unreachable payer reported as inconclusive rather than as a refusal — treating "cannot answer" as "no" blocks orders for well-insured patients.

837P built to 005010X222A1: full ISA/GS/ST envelope, loop 2310A naming the ordering physician, twelve diagnoses and no more, ZIP+4 in 2010AA. Claims are refused before they are built when the profile, MBI, payer ID or diagnosis is missing — every reason reported at once, and the NPI checked against its own check digit.

Billing a secondary is a real claim, not a note: loops 2320 and 2330 carry what the primary decided, its reason codes and what it paid, passed through unchanged. And the clearinghouse answers first — a 277CA acknowledgement arrives within hours and tells an accepted claim from one that was thrown back, which is otherwise indistinguishable from one sent yesterday. Claims go out through ABILITY or Availity, whichever you have configured.

837P Secondary 2320/2330 270/271 276 status 277CA Prior authorization
08

Remittance & denials

835 import that walks the file positionally, so a CAS applies to whatever claim or line came before it. All six reason and amount triplets are read, not just the first. Recoupments take an invoice back to submitted rather than reading as paid, and importing the same file twice cannot pay a claim twice.

Provider-level adjustments are read too, so the cash posted reconciles against the deposit — a non-zero difference means the file said something the importer did not read, and it says so.

CAS triplets PLB Recoupments Denial worklist
09

Patient billing

Statements for what the payer actually left with the patient — derived from the remittance, never a second record. Contractual write-offs never reach a statement. A dunning cycle escalates one step per notice, thirty days apart, and then stops: escalated is where the machine hands over to a person.

Emailed, saved as PDFs, or built as one print run with a page per statement — the thing somebody carries to a printer.

Derived balance Dunning Print run Credit balances
10

Deadlines

Timely filing per payer, counted from the date of service and measuring "filed" as actually gone rather than merely raised. Documentation requests with the clock running from the date on the letter. Appeal windows that open automatically when a decision goes against you, because closing there would lose the deadline that matters next.

And claims that went quiet — submitted, never answered, invisible to every other worklist because they are neither denied nor paid.

Timely filing ADR Appeal ladder No-response claims
11

Worklists

The screens somebody works down: denials, clearinghouse rejections, claims that went quiet, appeals, documentation requests, credit balances, rentals due a service, and accounts needing a decision. Each keeps its own clock.

Closing an item takes a note, because these get revisited months later when a payer is chased and "worked" on its own is not a record of anything. Each list can be searched, since these are the screens a telephone call lands on.

Denials Rejections Quiet claims Credit balances
12

Correspondence & documents

Letters, email and fax from templates on the practice's letterhead, with per-destination consent, a cap on what each channel may carry, and a log of what went and what was refused. A subject line never carries a balance — it is the one line that shows on a lock screen.

Inbound faxes arrive in a watched folder and become a queue somebody works: files are copied, never moved, so uninstalling this application tomorrow still leaves you every fax you received.

Templates Consent per destination Fax inbox PDF forms
13

Complaints

The written complaint log a DMEPOS supplier standard requires, measured on when somebody made contact rather than when it was resolved — a complaint still open six weeks later is fine if somebody called on day two; one resolved on day twenty with nobody contacted is a finding.

Supplier standard Response clock
14

Sales, commission & referrals

Reps, territories and credited sales, with commission prepared as a run per period, approved, then recorded as paid. The lines are snapshotted at approval, so editing an order afterwards cannot change what somebody was paid — and a paid line whose order is later cancelled reaches a corrections list rather than vanishing.

Referrals record who actually sent the patient, which in DME is most often a hospital discharge planner rather than a physician. Conversion is measured over the referrals that have been decided, so a source does not look worse for being busy.

Commission runs Clawback worklist Referral sources Conversion rate
15

Reporting

Forty-seven reports with CSV, Excel and PDF export, and saved views the whole practice can share rather than one workstation keeping them to itself. A filter a report does not use is grayed out and cleared, so the numbers can never quietly cover a payer the screen says is not selected.

For anything not on the list there is a builder: pick a subject, some columns and some conditions, and what comes out behaves like every other report — same grid, same column chooser, same three exports. Packs of reports produce themselves on a schedule into the shared folder, each month into its own dated directory.

A decimal is not automatically money: a tax rate does not print as currency or get summed into a grand total. And the dashboard's worklist rows are routes — each one opens the screen that does the work.

47 reports Shared saved views Report builder Scheduled packs CSV / Excel / PDF Sales tax estimate
16

More than one location

A branch is its own database, so two practices genuinely cannot see each other's patients — isolation the database enforces rather than a screen applies. A workstation keeps a list of the branches it serves and asks which one at startup.

A group can also run a roster above them: sign in once, pick a branch, and an administrator adds somebody once rather than at each branch in turn. The roster names which branches have taken an edit and which are still behind, because a partial write that looks finished is how somebody arrives at work unable to sign in and nobody knows why.

Branch per database Central roster Per-branch credentials
17

Administration

Roles, an append-only audit trail, backup and restore through SQL Server's own backup rather than copying files, and CSV import for patients, inventory, HCPCS codes and payer fee schedules. Every import upserts on a natural key, reports per row rather than aborting, and treats an absent column as "not mentioned" rather than zero.

The daily pass expires lapsed documents and certifications and produces any report pack that is due; generating orders stays a thing somebody chooses. Light, dark or whichever Windows is set to, chosen on Settings and applied at once to every window already open — neither is automatically easier on the eyes, which is why it is a setting rather than a decision made for you. Several workstations share one database, and the practice's own details — name, NPI, tax ID, taxonomy and address — are held there too, so every machine bills under the same identifiers.

Audit trail Backup & restore CSV import One practice profile Multi-workstation
Requirements

What it runs on.

ItemRequirement
Operating systemWindows 10 or 11, 64-bit
RuntimeNone to install — the build is self-contained
Database, single machineSQL Server LocalDB
Database, multiple workstationsSQL Server Express or higher, Windows authentication recommended
Shared storageAny UNC path the SQL Server service account can reach, for invoices, labels, delivery tickets and EDI batches
ClearinghouseAn ABILITY/Inovalon or Availity account. ABILITY enrolls the Medicare and commercial lines separately; Availity is where most commercial payers and much of state Medicaid are reached. Either one is enough, and the route is chosen by what you configure rather than by a setting.
Carrier tracking and labelsEasyPost account, optional. One account and one key cover both, across USPS, UPS, FedEx and DHL, with a single test-or-production switch so live labels cannot be bought against a test account. Without one, tracking numbers are still recorded and scans are entered by hand.
Inbound faxAny fax-to-email service that drops a PDF in a folder. No vendor account or API key needed.

Before your first live claim there are four things only you can supply: the billing profile, your clearinghouse credentials and endpoint paths, an eligibility endpoint, and your real HCPCS code list. The application refuses clearly until they are filled in rather than producing a batch the payer rejects. We walk through all four during setup.

Which half of this matters to you?

A rental-heavy supplier and a supply-heavy one want different parts of this application. Tell us which you are and we will show you that.