Upload consent templates
People who see Consent templates upload the PDF that later capture fills. Independent Providers do this in the Independent Portal. IPS admins and other seats with that menu do it in the Organization Portal.
If Consent templates is missing, your seat cannot manage templates.
Prepare the PDF
Section titled “Prepare the PDF”Upload an unencrypted PDF form (AcroForm). XFA-only PDFs are rejected.
Every name below must exist, including representative slots. Capture still leaves those empty when nobody signs as Representative Signer. Match spelling and capitalization exactly. Extra fields may stay on the page; Vital Link only fills the names listed here.
Each name is the full field path (consent.patient.fullName is one field
name, not three separate names).
Text fields
Section titled “Text fields”These must be text fields. Vital Link writes the values during capture or preview.
| Field path | What Vital Link writes |
|---|---|
consent.patient.fullName |
Patient full name from the patient profile |
consent.patient.documentType |
Patient document type from the patient profile |
consent.patient.documentNumber |
Patient document number from the patient profile |
consent.representative.fullName |
Representative Signer full name, or empty |
consent.representative.documentType |
Representative Signer document type, or empty |
consent.representative.documentNumber |
Representative Signer document number, or empty |
consent.representative.relationship |
Kinship label (same list as consultation history), or empty |
consent.representative.capacity |
Legal standing (legal representative, tutor, or guardian), or empty |
consent.provider.fullName |
Signing provider full name |
consent.provider.licenseNumber |
Signing provider license number |
consent.patient.signedAt |
Patient signature time in the site timezone, or empty |
consent.representative.signedAt |
Representative Signer time in the site timezone, or empty |
consent.provider.signedAt |
Provider signature time in the site timezone |
Patient name and document values on the capture screen come from the patient profile and cannot be edited there.
Signature image buttons
Section titled “Signature image buttons”These three must be button fields. Do not use text, and do not use a digital-signature field. Vital Link stamps the drawn signature image onto the button.
| Field path | Image |
|---|---|
consent.patient.signature |
Patient signature |
consent.representative.signature |
Representative Signer signature, when that person signs |
consent.provider.signature |
Provider signature |
Preview with representative and Preview without representative fill the text fields so you can check layout. Signature buttons stay empty until a real capture.
AcroForm JSON schema
Section titled “AcroForm JSON schema”This is the contract upload validates. Each property name is the full
AcroForm path. acroForm.ft is the PDF field type: Tx (text) or Btn
(button). Signature paths must be buttons, not digital-signature fields.
additionalProperties is true: extra fields may exist. Every required
path must exist exactly once.
{ "$schema": "https://json-schema.org/draft/2020-12/schema", "title": "Consent template AcroForm", "type": "object", "additionalProperties": true, "required": [ "consent.patient.fullName", "consent.patient.documentType", "consent.patient.documentNumber", "consent.representative.fullName", "consent.representative.documentType", "consent.representative.documentNumber", "consent.representative.relationship", "consent.representative.capacity", "consent.provider.fullName", "consent.provider.licenseNumber", "consent.patient.signedAt", "consent.representative.signedAt", "consent.provider.signedAt", "consent.patient.signature", "consent.representative.signature", "consent.provider.signature" ], "properties": { "consent.patient.fullName": { "type": "string", "description": "Patient full name from the patient profile", "acroForm": { "path": "consent.patient.fullName", "ft": "Tx" } }, "consent.patient.documentType": { "type": "string", "description": "Patient document type from the patient profile", "acroForm": { "path": "consent.patient.documentType", "ft": "Tx" } }, "consent.patient.documentNumber": { "type": "string", "description": "Patient document number from the patient profile", "acroForm": { "path": "consent.patient.documentNumber", "ft": "Tx" } }, "consent.representative.fullName": { "type": "string", "description": "Representative Signer full name, or empty", "acroForm": { "path": "consent.representative.fullName", "ft": "Tx" } }, "consent.representative.documentType": { "type": "string", "description": "Representative Signer document type, or empty", "acroForm": { "path": "consent.representative.documentType", "ft": "Tx" } }, "consent.representative.documentNumber": { "type": "string", "description": "Representative Signer document number, or empty", "acroForm": { "path": "consent.representative.documentNumber", "ft": "Tx" } }, "consent.representative.relationship": { "type": "string", "description": "Kinship label, or empty", "acroForm": { "path": "consent.representative.relationship", "ft": "Tx" } }, "consent.representative.capacity": { "type": "string", "description": "Legal standing, or empty", "acroForm": { "path": "consent.representative.capacity", "ft": "Tx" } }, "consent.provider.fullName": { "type": "string", "description": "Signing provider full name", "acroForm": { "path": "consent.provider.fullName", "ft": "Tx" } }, "consent.provider.licenseNumber": { "type": "string", "description": "Signing provider license number", "acroForm": { "path": "consent.provider.licenseNumber", "ft": "Tx" } }, "consent.patient.signedAt": { "type": "string", "description": "Patient signature time in the site timezone, or empty", "acroForm": { "path": "consent.patient.signedAt", "ft": "Tx" } }, "consent.representative.signedAt": { "type": "string", "description": "Representative Signer time in the site timezone, or empty", "acroForm": { "path": "consent.representative.signedAt", "ft": "Tx" } }, "consent.provider.signedAt": { "type": "string", "description": "Provider signature time in the site timezone", "acroForm": { "path": "consent.provider.signedAt", "ft": "Tx" } }, "consent.patient.signature": { "type": "string", "contentMediaType": "image/png", "description": "Patient signature image stamped onto a button", "acroForm": { "path": "consent.patient.signature", "ft": "Btn" } }, "consent.representative.signature": { "type": "string", "contentMediaType": "image/png", "description": "Representative Signer signature image, when that person signs", "acroForm": { "path": "consent.representative.signature", "ft": "Btn" } }, "consent.provider.signature": { "type": "string", "contentMediaType": "image/png", "description": "Provider signature image stamped onto a button", "acroForm": { "path": "consent.provider.signature", "ft": "Btn" } } }}Upload and target
Section titled “Upload and target”- Open Consent templates in your portal.
- Choose Upload template.
- Set title, language, and whether the template is Required or Optional.
- Select at least one item under Configured services. Optional CUPS targets further limit when it applies.
- Choose the PDF and save.
Targets on a consent request lists those catalog services. Shared capture how-to: Capture informed consent.
If the PDF is rejected
Section titled “If the PDF is rejected”| What you see | What to fix |
|---|---|
| Missing field | Add the exact path from the tables |
| Wrong field type | Text names must be text; signature names must be buttons |
| Duplicate field | Use each path once |
| Malformed PDF | Rebuild a valid unencrypted AcroForm PDF |
| Encrypted | Remove PDF password or encryption |
| Not a PDF | Upload a PDF |
| XFA-only | Rebuild or export as AcroForm |
A pending consent request can block replacing or removing that template.