Form Builder App Starter · Industry version
Pre-visit packets, consents, and insurance capture — patient intake that runs inside your practice's own boundary.
Patient intake is the most sensitive form-filling there is: health history, insurance identifiers, signed consents. Routing it through a third-party form tool means PHI transiting infrastructure you don't control. This starter generates the intake system inside your boundary — packets, signatures, structured answers, all in your database.
01 · The problem
The moment a form asks about medications or diagnoses, it stops being a form and becomes protected health information handling. Generic form tools weren't built to be part of a covered entity's compliance posture — you end up negotiating business associate agreements with a survey vendor, or worse, discovering that the clipboard was actually the more defensible system. Intake belongs inside the practice's own infrastructure, full stop.
Intake also isn't one form — it's a packet whose contents depend on the visit. A new patient gets demographics, history, insurance, and consents; a returning patient confirms changes; a specific procedure adds its own consent and screening questionnaire. Tools that model forms as isolated documents make the front desk assemble that packet by hand, for every appointment, forever.
And the answers have to go somewhere clinical. A completed history form that lives in a form tool's response list still gets re-typed into the chart — meaning the practice paid for digital intake and kept the transcription step. Structured answers in your own database can flow to your records system; a vendor's response export queue cannot.
02 · Data model
Everything in the base Form Builder starter —
formsform_versionsquestionsresponsesanswer_itemsrespondents— plus the entities this industry actually runs on:
| table | what it holds |
|---|---|
intake_packets | Bundles of forms assigned per appointment type — new patient, follow-up, procedure-specific — tracked to completion before the visit. |
consent_records | Signed consents with signature capture, version of the consent text agreed to, timestamp, and renewal schedule. |
insurance_details | Coverage information captured at intake — carrier, member and group identifiers, subscriber — structured for verification workflows. |
03 · Screens
Packets assemble by appointment type and send ahead of the visit; the front desk sees who's complete, partial, or untouched. Morning-of gaps become a short list to chase, not a waiting-room clipboard scramble.
Consents capture a signature against the exact wording in force, with dated snapshots retained as documents are revised — the difference between 'they consented' and 'here is what they consented to, and when'. Renewal schedules resurface expiring consents automatically.
History and screening responses store as typed, queryable data rather than PDF blobs, so allergy flags can surface to staff and completed forms can feed your chart workflow instead of a retyping queue.
04 · In practice
Booking triggers the new-patient packet by secure link: demographics, history, insurance, consents, completed from the patient's couch. By arrival, the front desk confirms identity instead of distributing clipboards, and the schedule absorbs one less delay.
Scheduling a procedure adds its consent and screening questionnaire to the patient's packet. The signed record stores the exact consent version, and the screening answers flag anything the clinician should see before the day arrives.
Returning patients get a confirm-or-update flow — current insurance and history shown for review, not re-entry from blank. Expiring consents ride along for renewal, and ten minutes of patient annoyance per visit quietly disappears.
The system deploys on your infrastructure, so intake data lives inside the security boundary and controls you already maintain — no third-party form vendor entering your PHI chain of custody. Compliance obligations remain yours, but the architecture stops working against them.
Yes — packets are assembled per appointment type, so new patients, follow-ups, and specific procedures each get exactly the right forms. Defining a new packet is configuration of your own system, not a workaround.
Consent records capture signatures against versioned consent text with timestamps, and renewal schedules resurface expiring consents. When documentation is questioned, you can produce the precise wording that was signed.
Answers are structured rows in your database, which makes feeding downstream systems an integration task you control end to end. The clinic starter pairs naturally here — appointments and patient records sharing one schema with intake.
Dual7 App Starters
Pre-visit packets, consents, and insurance capture — patient intake that runs inside your practice's own boundary. Describe your version to start — the output is a project you own.