DH EMR Field guides

Getting started with DH EMR Field

DH EMR Field enters visits from paper charts after clinic. This guide takes one device from blank to its first saved visit and first backup, alone or synced through your organization's cloud. A visit is one patient on one day. The patient number is built from name and date of birth, never typed.

Who Field is for

The clinic runs on paper during the day. Afterward, someone opens Field and enters each chart as a visit, saved on the device with no connection needed.

Way of running FieldWhat it means
One device on its ownRecords never leave the device. The backup file you download is the only other copy.
Several devices, one cloudEach device syncs its visits to a cloud project your organization owns whenever there is signal; after a sync every device holds every visit. No accounts: every device uses the same project address and key from your admin (cloud sync guide).

Field is also the fallback when a DH EMR Clinic backend is down: staff chart on paper and enter the charts in Field afterward. The admin guide says what that does and does not give you.

What Field does not have: accounts or sign-in (the device is the identity), staff roles, a patient-flow board. Those belong to DH EMR Clinic, a separate product.

There is no switch between the two and no way to move records from Field into Clinic today.

What you need

You needNotes
A device with a modern browserTablet, laptop or phone. Open the Field app; most tablets and phones can add it to the home screen.
The project address and project keyCloud path only, from the organization's Supabase project via your admin.
A few paper chartsTo enter.

The setup wizard

On first open the app shows a wizard headed Set up this device: "This takes about a minute and only happens once. You can change any of it later under Settings." One choice, admin device or not, is harder to change than the rest.

The wizard shows until setup finishes; closed part way through, it restarts from the first step. Nothing is stored until the last step succeeds, so a wrong key or a typo cannot leave the device half set up.

Step 1: choose how the device runs

ButtonThe app says
Connect to our clinic cloud"Records sync between every device on the team. Needs the project address and key from your admin."
Use this device on its own"Records stay on this device and are never sent anywhere. Take a backup at the end of each clinic day."

Use this device on its own skips straight to Name this device; there is nothing to connect.

Cloud path: connect to your cloud

  1. Tap Connect to our clinic cloud.

    A step headed Connect to your cloud: "Your admin gets both of these from the Supabase project, under Settings then API Keys."

  2. Paste the Project URL, which looks like https://yourproject.supabase.co.
  3. Paste the Project key: a long string starting with sb_publishable_, or the long legacy anon key.
  4. Tap Check and continue.

    The button reads "Checking…" while the app contacts the project and checks that its tables are really there. Back returns to the first step.

The key rule, in the app's words: "Use the Publishable key, or the legacy anon key. Never a Secret or service_role key: those bypass every database security rule and must not leave the office."

Server keys are refused: an error, not a connection. Ask your admin for the publishable key.

If something is wrong, the wizard says what:

The wizard saysWhat to do
"That does not look like a Supabase project URL. It should look like https://yourproject.supabase.co"Check the address with your admin: it starts with https:// and ends in .supabase.co.
"Paste the project anon key."The key box is empty.
"That is a server key (service_role or sb_secret). It bypasses every database security rule and must never go on a field device. Use the Publishable key, or the legacy anon key."Wrong kind of key. Ask your admin for the publishable key; never work around this.
"Could not reach the project tables:" followed by the reason the project gaveThe project answered but something is wrong with it. Show the reason to your admin.
"Connected, but the records table was not found. Run the setup SQL on this Supabase project first."Not set up yet: your admin finishes the cloud sync setup.
"Could not reach that project. Check the device is online and the URL is right. (...)"Offline, or the address is wrong. Get signal and try again.

After the check passes, both paths share the naming and clinic-lists steps.

Name this device (both paths)

  1. Type a Device name.

    "The name shows up in your device list and on the records this device files, so make it something you can recognise: "iPad 2 - triage", "Grace's tablet"." A blank name is refused: "Give this device a name so it can be told apart from the others."

  2. Answer What is this device allowed to do? Pick Enter and view records (most devices) for a standard device, or Also change the form and clinic settings for everyone for an admin device.

    Under the list, the wizard says which kind of device this is: "This device is offline only. Nothing it records leaves the device." or "This device is connected to your cloud. Records sync automatically."

  3. Tap Next.

    The last step, Where is this device working?, opens.

An admin device changes the clinic lists, formulary, lab tests, presets and visit form for the whole team. Most devices should be standard; one or two admin devices per team is plenty.

Choose the admin question carefully. There is no control in the app to change it later. On a cloud device the admin can change the role in the project's device list; the device picks it up on its next sync (admin guide).

On a device on its own, the choice stands.

Clinic lists, and why empty lists are refused

The last step, Where is this device working?, explains: "These fill the Site and Provider lists on the visit form. Without them every record is filed under the placeholder "Site A", which is no use in a report. One per line, and you can change them later under Settings."

  1. Fill in Clinic or site names: where you see patients, one per line, for example "Kabale Community Clinic" and "Mobile Unit A".
  2. Fill in Clinicians working on this device: who is recorded as the provider on visits, one per line, for example "Dr. A. Mensah" and "Grace N., clinical officer".
  3. Tap Start using the app.

    "Finishing…" while the device is registered; then setup is done.

RuleDetail
One entry per lineCommas belong inside an entry: "Grace N., clinical officer" is one clinician, not two. The app never splits on commas.
Both lists need at least one entryThe step says: "Both lists are needed to finish: a device with an empty list cannot save a visit." An empty box is refused: "You need at least one site. An empty list would block every save." or "You need at least one clinician. An empty list would block every save."

Why the refusal? Every visit must have a site. With an empty site list the form could never be completed, and the device would be set up but useless.

Cloud path. The step adds: "If your organization has already set these up in the cloud, its list replaces these on the first sync." Enter something sensible anyway, so the device works before that first sync.

If the project refuses at this moment, the wizard says "Could not finish setup:" with the reason. Nothing was stored; get signal and try again.

Placeholder names entered to get through setup leave a red warning in Settings until real ones are set. The admin guide covers the Clinic lists card.

Your first visit, end to end

Four tabs: Visits, New visit, Analytics and Settings, at the bottom of the screen on a phone and in the top bar on a tablet or computer. Take one paper chart and enter it.

  1. Tap New visit, or + New visit on the Visits tab.

    A panel titled "New visit" slides in. Under the title: "Patient number generates from name + date of birth".

  2. In the Visit section, pick the Site, set the Date and pick the Provider. Site and Date are required.

    The date starts as today. Change it to the date on the chart, the day the patient was seen, not the day you are typing. A future date is refused.

  3. In the Patient section, enter the Given name and Family name, tap M or F for Sex, and type the Date of birth as DD/MM/YYYY. Phone is optional.
  4. No date of birth on the chart? Tick Estimate from age next to Date of birth unknown and type an Estimated age in years.
  5. Watch the read-only Patient number box fill in by itself.

    Two letters of the given name, two of the family name, then the date of birth: Amara Nakato, born 12 April 1991, becomes AMNA12041991. The same patient always gets the same number; if two patients would collide the app adds a letter. Both names need at least two letters.

  6. Fill in the rest from the chart: Vitals, History, Chief Concern, Labs, Diagnosis, Medications. Procedures, Referral, Imaging, Surgery and Notes start closed; tap a header to open one. Leave the rest empty. The user guide explains every field.
  7. Save with one of the two buttons at the bottom of the panel.
ButtonWhat it does
Save & next patientFiles the visit and keeps the form open for the next chart; Site, Date and Provider stay filled, everything else clears. A green note confirms: "Saved Amara Nakato (AMNA12041991). Ready for the next patient." Use it for a pile of charts.
SaveFiles the visit and closes the panel. For the last chart of the pile.
CancelCloses the form. With anything typed, the app first asks "Discard this visit? Anything you have entered will be lost." OK discards; Cancel keeps working.

A missing required field stops the save: a red summary such as "Check 2 fields" lists each problem, for example "Family name is required.", and the form jumps to the first one. Fix the fields and save again; nothing is lost.

Tapping outside the panel does nothing, on purpose, so a stray touch cannot lose a visit.

Saved visits appear on the Visits tab, one card per patient; tap a card to open the chart. The counts at the top, Visits, Patients, Today and Pediatric (<18), cover everything on the device.

Where your records live

Every visit is saved on the device itself, always; saving never needs a connection. A cloud device also uploads visits to your organization's project whenever there is signal and downloads the other devices' visits.

The chip at the right of the top bar shows sync status. On a device on its own it reads Offline only and does nothing when tapped. On a cloud device, tapping it syncs by hand, and records waiting to upload show as a count like "3 pending".

On a phone the count is in Settings instead, on the Waiting to sync row of the Cloud sync card.

Chip saysWhat it means
Offline onlyCloud sync is off for this device. Records stay on the device.
ConnectedThe cloud is set up but nothing has synced yet this session.
OfflineNo connection right now. Everything is saved on the device and syncs when you reconnect. This is normal.
SyncingRecords are being sent and received right now.
SyncedAll records are backed up to your cloud.
Sync errorThe last sync failed. Tap to retry, or check the connection. Records are still safe on the device.

Take a backup, daily

  1. Open Settings and find the Backup and restore card.

    "A backup is a single file holding every record on this device plus your form and preset settings. It never contains your cloud key or device identity. Take one at the end of each clinic day - it is the safety net if a device is lost, wiped, or replaced."

  2. Tap Download backup.

    A file named dh-emr-backup plus the date, for example dh-emr-backup-2026-10-06.json, and the message "Backup downloaded with 12 records. Keep it somewhere safe."

  3. Move the file off the device: a laptop, a USB stick, a shared drive folder.

Do this at the end of every day of entry. On a device on its own, the backup is the only copy of your records outside the device; if the device is lost, wiped or broken, it is the difference between losing an afternoon and losing a year.

Cloud devices should back up too, for records that have not synced yet.

Restoring is on the same card, with Restore from a backup. It merges: "nothing already on this device is lost, and where the same record exists in both the more recently saved version wins."

Where to go next

ReadFor
User guideDay-to-day work: the visit form section by section, finding and editing visits, returning patients, deleting, analytics, the sync chip, the warning banners and updates.
Admin guideWhoever runs the devices: admin and standard devices, clinic lists, form templates, formulary, lab tests and reference ranges, presets, the device fleet, backups and restore, and the honest limits.
Cloud sync guideThe admin standing up the organization's own cloud project so several Field devices can sync.
Field demoNot ready for a real device? A fictional clinic with sample patients where you can try everything safely.

DH EMR is not a certified EHR and is not HIPAA-compliant. It is intended for global-health use outside the US.