Forms, Payments & Notes Workflow
This guide chains the Forms, Notes, and Billing APIs into one intake-to-checkout integration. A patient fills out a form (which saves a card on file), that form becomes a note template, a provider’s note pre-fills from the patient’s answers, and you collect payment on an itemized charge through the embedded payment component.Overview
- Create a form and convert it into a note template so the note layout matches the form.
- Save a payment method for the patient (or collect one through the form’s Payment Methods block).
- Submit the form for the patient — answers flow into the patient record.
- Create a note pre-filled with the patient’s submitted answers.
- Create a charge with itemized line items that reference catalog items.
- Collect payment through the embedded payment component.
TENANT and API-KEY headers.
Step 1: Create a form and its note template
Create the form the patient will fill out with Create Form, then convert it into a note template with Create Note Template From Form. The conversion flattens the form’s blocks and questions into template fields (signature, payment, disclaimer, statement, and document questions are skipped).Build the form’s
blocks with Demographics, Medical History, and Measurement fields where you want answers to flow into the patient record — those are the fields that pre-fill the note later. See Form Structure Reference for block and question types, and the Form Editor if you’d rather build the form in the console and just reference its ID here.Step 2: Save a payment method
Collect a card for the patient with Create Payment Method. Thepatient_id goes in the query string. You can also collect the card inside the form itself by adding a Payment Methods block — see Payment Method Collection.
See the Create Payment Method reference for the exact request body your processor integration expects.
Step 3: Submit the form
Submit the patient’s answers with Patient Form Submission. Each entry inblocks carries a blockType (DEMOGRAPHICS, MEDICAL_HISTORY, PAYMENT_METHODS, INSURANCE, or DYNAMIC). Set isCompleteSubmission to true for a finished submission. Answers mapped to patient-record fields save to the chart automatically.
Step 4: Create a pre-filled note
Fetch the patient’s pre-filled answers for the template with Get Prefilled Answers, then pass them straight into Create Note. The prefill response returns each answer keyed byquestionId, in the exact shape answers expects.
Only questions mapped to the patient chart (demographics, medical history, and same-day measurements) come back pre-filled. Weight and height only pre-fill when a measurement was recorded the same day. Custom free-text questions convert to empty note fields — fill those in the note itself or with AI Scribe.
Step 5: Create an itemized charge
Create your catalog items once with Create Item, then reference each item’sid as itemId on the charge’s line items. Build the charge with Create Charge — set totalOutstanding to the sum of the line items minus any discounts.
Already have a cart? Convert Cart to Charge is an alternative that carries the cart’s items and discounts onto the charge. See Payment Embed: Itemized Charges for that path.
Step 6: Collect payment in the embedded component
Point the embedded payment component at the charge. The embed calls Create Embed Payment Config with thecharge_id, shows the full itemized breakdown, and applies the payment to the existing charge — no duplicate charge is created.
postMessage:
allowedMethods (CARD, ACH, APPLE_PAY), theme (light / dark), and showSummary. See Payment Embed: Itemized Charges for the full parameter list and event reference.
Next steps
- Webhook Events — get notified when forms are submitted and payments succeed instead of polling.
- Payment Embed: Itemized Charges — the embedded payment component in depth.
- Patient Onboarding Workflow — create the patient and book the appointment that precede this flow.
