Skip to main content

Fields

What this page is — the tab that defines the questions every document of a type asks its author: each field's label, machine name, datatype, grouping, defaults, merge source, requiredness and visibility.

What it is for — so the template's wording has values to draw on, and the author is asked for exactly what the document needs.

The problem it solves — authors are asked for the wrong things, or not asked at all, and the template renders blanks where values belong.

Route: /org/papers/designer/<type> → Fields · Permission: Create/edit/retire project types and template versions..

Figure 1 — Each row is one field. The order here is the order the author sees.

1. What it is​

A field has two names, and confusing them is the most common way to break a type:

LabelName (machine)
Who sees itThe author, on the formThe template, as {{contract_value}}
ExampleContract Valuecontract_value
RulesFree textLowercase letters, digits, underscores; unique
Change it freely?YesNo — every template token using it silently goes blank

Row order is form order. Fields with the same Group render together as one card on the document form; ungrouped fields land in Details.

DatatypeThe author getsRendered in the document as
TextSingle-line boxAs typed
Long TextLarge box with a dictation micAs typed
NumberNumeric boxFormatted number
CurrencyAmountFormatted amount
DateDate pickerFormatted date
Yes/NoCheckboxYes / No
SelectDropdown of your optionsThe option's label
PartyParticipant boxThe party
Line ItemsEditable rows tableA Table block in the template

2. Why you would use it​

  • Blanks become questions. A template with typed blanks produces a different document every time; a field with a datatype produces the same one.
  • Merge sources remove re-typing. A field mapped to contact.company arrives filled when a document is created from a CRM record.
  • Conditional visibility keeps long forms short. A non-solicitation period only appears when non-solicitation is ticked.
  • Datatypes feed everything downstream. AI auto-fill types its suggestions from them, currency fields feed value-based approval and the signatory matrix, and dates feed obligations and expiry.

3. How a field spreads​

SurfaceUses
The document formLabel, datatype, group, default, required, conditions
The template{{name}} tokens, Dynamic Field and Table blocks
Auto-fill from sourceLabel, datatype and select options, to type its suggestions
Decision rules and the approval guardrailNumeric values, to pick an approval workflow
Merge sourcesPre-fill at creation

4. Step by step​

  1. Add field — appended as new_field, new_field_2, …
  2. Expand the row. Set Label, then Name, then Datatype.
  3. Add a Group, a Default value or a Merge source as needed.
  4. Tick Required on submit for anything the approval or the final PDF cannot do without.
  5. For Select fields, add options; for Line Items, add columns.
  6. Optionally tick Conditional visibility and build the condition.
  7. Save draft, then Publish.

5. Field reference​

SettingRulesNotes
LabelFree textWrite it as a question a non-lawyer can answer
NameLowercase letters, digits, underscores; unique within the typeDuplicates show "Duplicate field names: … — names must be unique." and Save draft is blocked
DatatypeOne of the nine in §1Changing it clears type-specific settings — options and columns
GroupFree textSame group = same card on the form
Merge sourcenamespace.keySee below. Shows as an auto: … tag on the form, and stays overridable
Default valueMatches the datatypeUsed when no merge source applies
Required on submitCheckboxDrafts may stay incomplete. See the caveat below
Options (Select)Value / label pairsmonthly / Monthly
Columns (Line Items)Machine name, label, per-column datatypeRendered by a Table block
Conditional visibilityA condition on other fieldsOperators eq, neq, in, not_in, gt, gte, lt, lte, empty, not_empty, combined in ALL / ANY groups
The template only recognises lowercase names

Template tokens match {{ + lowercase letters, digits and underscores + }}. A name like ContractValue or contract-value never binds, and a token naming no field renders as nothing — no error, just a blank in the finished document.

Merge source namespaces​

NamespaceFills from
org.*Your organisation
contact.*The linked CRM contact
order.*The linked order
deal.*The linked deal — only when the document is created from a deal
product.*The linked product
employee.*The linked employee

A merge source fills a field only when the document is created from a linked record — by a generation trigger, for instance. Created by hand from New Document, there is no record to read.

Required on submit — the caveat​

The check runs only on a lifecycle transition whose action is literally submit. On a type whose first transition has any other action, required fields are never enforced. Hidden conditional fields are never counted.


6. Worked example​

A legal operations lead builds the fields for a Consulting Agreement.

LabelNameDatatypeGroupOther
Client nameclient_namePartyPartiesMerge source contact.company
Consultantconsultant_namePartyPartiesRequired
Effective dateeffective_dateDateTermRequired
Fee basisfee_basisSelectFeesOptions day_rate / Day rate, fixed / Fixed fee
Day rateday_rateCurrencyFeesVisible when fee_basis eq day_rate
Includes non-solicitation?includes_non_solicitYes/NoTerms—
Non-solicit period (months)non_solicit_monthsNumberTermsVisible when includes_non_solicit eq Yes; default 6

The template reads "The Consultant shall be paid {{day_rate}} per day" inside a Conditional block on the same condition, so fixed-fee agreements never mention a day rate.

They rename Client name's label to Client the next day — safe. They also rename its name to client, save, and the preview shows a blank where the client belonged: the template still says {{client_name}}. They change it back.


7. The admin contract​

Must be trueWhereWhat breaks without it
Every template token names an existing fieldTemplate builderBlanks in the rendered document
Names are lowercase and uniqueThis tabTokens never bind; Save draft refuses
The draft's outgoing transition action is submitLifecycleRequired fields are never enforced
Linked records exist for merge sourcesGeneration triggers, CRM, ordersauto: fields arrive empty
The type is publishedHeaderNew fields apply to nothing

8. Downstream​

When you…Then
Publish new fieldsNew documents get them; existing documents keep their version's fields
Rename a nameEvery token and condition using the old name stops working
Change a datatypeOptions or columns are cleared
Make a field requiredEnforced on the next submit of new documents (with the caveat above)

9. Don't confuse this with…​

Smart fieldsValues AI extracts from a finished document. These are questions asked of the author
Filling in the fieldsThe author's side of the same fields
Template builderWhere a field's value is placed
ZonesRegions of a scanned page that zonal extraction reads into these fields

10. Troubleshooting​

SymptomCause
A blank where a value belongsThe token names no field, the name has a capital or hyphen, or the field is empty
Save draft does nothingDuplicate field names — read the red banner
Options disappearedThe datatype was changed, which clears them
An auto: field is emptyThe document was not created from a linked record
Authors can submit with a required field emptyThe transition is not named submit
An existing document lacks the new fieldIt keeps the version it was created from