Field Configuration & Auto-Fill

One of the most powerful features of the Otesse document system is auto-fill — the ability to pre-populate document fields from a worker's profile data. This eliminates repetitive data entry, reduces errors, and dramatically speeds up document completion for workers managing dozens of forms.

How Auto-Fill Works

Auto-fill connects template fields to profile data sources. When a worker opens a document for the first time, the system reads the template's field definitions, resolves each auto-fill source against the worker's current profile, and pre-populates the form.

Auto-Fill Lifecycle

StageBehavior
Instance creationFields with auto-fill sources are populated from the worker's current profile data
Draft editingAuto-filled values stay in sync with profile changes (unless manually overridden)
Manual overrideWorker can edit any auto-filled field. Overridden fields stop syncing with the profile
Clearing an overrideIf a worker clears a manually-edited field, it reverts to auto-fill behavior
Submission/SigningAll values are frozen. No further auto-fill sync occurs
Completed documentValues reflect the truth at the time of signing, even if the profile changes later

Sync Rules by Status

Document StatusAuto-Fill on OpenSync on Profile ChangeUser Can Edit
RequiredYes (on first open)N/A (no data yet)N/A
DraftYesYes (mapped fields update)Yes
Pending ReviewNoNoNo
CompletedNoNoNo
ExpiredNoNoNo

Available Data Sources

Auto-fill draws from four categories of worker data:

Profile Data

Source KeyMaps ToExample
user.firstNameLegal first nameNathaniel
user.lastNameLegal last nameMaddox
user.preferredNameDisplay nameNate
user.emailPrimary emailhello@otesse.com
user.phonePrimary phone(541) 555-0123
user.dateOfBirthDate of birth1990-08-11
user.address.streetStreet address123 Main St
user.address.cityCityEugene
user.address.stateStateOR
user.address.zipZIP code97401

Banking Data

Source KeyMaps ToExample
user.banking.bankNameBank nameChase
user.banking.routingNumberABA routing number021000021
user.banking.accountNumberAccount number**4567
user.banking.accountTypeChecking or savingschecking

Travel Data

Source KeyMaps ToExample
user.travel.vehicleMakeVehicle manufacturerToyota
user.travel.vehicleModelVehicle modelCamry
user.travel.vehicleYearVehicle year2020
user.travel.licensePlateLicense plateABC-1234
user.travel.insuranceProviderInsurance companyState Farm
user.travel.insurancePolicyNumberPolicy numberSF-98765

Security Data

Source KeyDisplayStorage
user.ssnLast 4 only (*--4567)Full value encrypted at rest

SSN fields receive special handling. They are always masked in the UI (showing only the last four digits), encrypted during storage, and never returned in full via API responses.

Auto-Fill Examples

W-9 (Tax Information)

FieldAuto-Fill Source
Nameuser.firstName + user.lastName
Business nameManual entry
Federal tax classificationManual entry
Addressuser.address.street
City, state, ZIPuser.address.city, user.address.state, user.address.zip
SSNuser.ssn

Direct Deposit Authorization

FieldAuto-Fill Source
Employee nameuser.firstName + user.lastName
Bank nameuser.banking.bankName
Routing numberuser.banking.routingNumber
Account numberuser.banking.accountNumber
Account typeuser.banking.accountType

Vehicle Insurance Proof

FieldAuto-Fill Source
Driver nameuser.firstName + user.lastName
Vehicleuser.travel.vehicleMake + user.travel.vehicleModel + user.travel.vehicleYear
License plateuser.travel.licensePlate
Insurance provideruser.travel.insuranceProvider
Policy numberuser.travel.insurancePolicyNumber

Manual Override Behavior

Workers can override any auto-filled value by editing the field directly. The system tracks overrides using an internal flag:

  • Auto-filled, not edited — Field syncs with profile changes
  • Auto-filled, manually edited — Worker's manual value is preserved; profile sync skips this field
  • Manually edited, then cleared — Reverts to auto-fill behavior and re-syncs with profile

This ensures that intentional corrections (like using a P.O. box instead of a home address) are preserved, while accidental blanks do not prevent auto-fill from working.

Edge Cases

  • Missing profile data: If a worker's profile does not have data for a mapped field, the form field remains empty. Auto-fill never fails — it simply skips fields with no source data.
  • Profile update during review: If a worker updates their profile while a document is in "pending review" status, the document is not updated. If an admin rejects the document back to draft, auto-fill sync resumes on next open.
  • Multiple fields, same source: If two fields reference the same source (e.g., both "Name" and "Full Name" map to firstName + lastName), both receive the same value. Manual override on one does not affect the other.