Turn an inbound referral, from a portal, a work queue, or a scanned fax, into a real referral record in the EHR: patient verified, referring provider wired up, documents attached and marked reviewed. Then keep working it, with notes, assignments, and call outcomes logged by agents instead of people.
Go-live in as little as 30 minBrowser agentCustomer portal login
We map your process, volume, and exception paths, then recommend a practical first scope.
Building internally? Read the docs →
Overview
Referrals arrive through payer portals, provider work queues, and fax, and then someone re-types them into the EHR. This workflow replaces the re-typing. An agent verifies the patient in the EHR by name, date of birth, and MRN, creates the incoming referral with the referring provider, receiving provider, reason, and priority, adds ICD-10 codes, specialty, facility, and assignee where supplied, and attaches the referral documents, confirming each one lands in a reviewed state rather than assuming it did. It runs today in eClinicalWorks, an EHR with no referral write API, where the portal UI is the only way in.
Creation is half the job. A companion update workflow opens an existing referral and applies exactly the changes passed to it: a note line, a general note, a new assignee. That’s how call outcomes get logged and referrals move between work queues without a person touching the chart, and it’s built to run unattended at volume.
How Asteroid runs this workflow
A referral arrives from a portal, work queue, or scanned fax; Asteroid verifies the patient, builds the referral with documents attached and reviewed, and a person approves it before it's written. Uncertain matches route to staff, never into the wrong chart.
How it actually runs
A referral arrives via payer portal, provider work queue, or scanned fax
A working referral in the EHR
The referral exists in eClinicalWorks with documents in a reviewed state, ready for scheduling downstream, with notes and assignments logged by agents as it's worked.
Patient not found or ambiguous match: The run stops with the candidates found and the referral's details attached; staff resolve the identity once. A wrong-chart referral is the one error this workflow must never make.
Closing the loop
Nobody on your team reads this JSON. Your system does. Each run delivers its record wherever the work already lives, and the loop closes on its own: requests in, records back, no one in the middle.
{ "from_provider": "SAMPLE, ROBERT MD", "to_provider": "EXAMPLE ORTHOPEDICS", "priority": "Routine", "reason": "Evaluation of right knee pain", "documents_attached": 2, "summary": "Referral created; 2 documents attached, both verified Reviewed."}{ "referral_assigned": "FRONT DESK QUEUE", "note_added": true, "general_note_added": false, "summary": "Call outcome logged; referral moved to the front-desk queue."}That asymmetry is deliberate. A new referral is a chart artifact that downstream scheduling and billing will trust, so a person confirms it before it exists. A note logging a call outcome is low-risk and high-volume, so it runs unattended. Automation vendors tend to offer one dial, everything reviewed or nothing reviewed; the honest answer is that the risk lives per action, and the gates should too.
At scale
In production, this is one link in a closed loop: referral captured, patient verified or created, referral written, then the appointment booked against real slot availability. One production intake deployment processes over 16,000 referrals a month, converting roughly 22% straight through with the rest routed to human review, which is exactly the split you want when referrals arrive incomplete. The rest of the category is in the referral-intake library. In UK general practice, the same intake discipline runs as online-triage referral submission.
Human in the loop
Runs on HIPAA-compliant infrastructure with SOC 2 Type II and a BAA, and every execution leaves a step-by-step audit trail of what was read, written, and attached. Posture in full on the security page.
Patient not found.
Reported as its own clean outcome, ready to compose with patient creation, never a guessed match.
The referral creation itself.
A human confirms before the record is written; the agent prepares, a person approves.
A referral the update can’t unambiguously identify.
If the target referral isn’t clear from the latest-open default or your hint, the run stops and names the ambiguity.
Missing required inputs.
No reason, no referring provider, no invented placeholder; the gap is reported by name.
Questions
The cost of manual referral intake isn’t the typing, it’s the referrals that sit unlogged until someone gets to the queue. The referral-intake library covers the full inbound path.
Disclaimer
Third-party names, including government agencies and registries, are used only to identify systems commonly involved in healthcare operations workflows. Asteroid is not affiliated with, endorsed by, sponsored by, or certified by those third parties unless expressly stated. Workflow availability depends on customer authorization, account permissions, configuration, and applicable system terms.