How to prepare your Word template
Write your contract as usual and replace each value that changes with a field in double braces. Here are all the rules, and a sample template that uses every one.
Sample template
A short lease contract that uses every field type. Open it in Word, look at it, change it and upload it to your account to try it. The app has already checked it: it has no field it cannot fill.
How each field looks inside the app
| In your Word file | What the person filling it sees |
|---|---|
{{IA.TodayPart[day].Signing day}} | Appears already filled with today’s day; you can change it if you sign on another day. The same for month and year. |
{{A.Landlord name}} | A text box for you (the person preparing the contract). |
{{A.Email.Landlord email}} | An email box: the app warns if the @ is missing. |
{{C.Tenant name}} | A text box the tenant fills in from their private link. |
{{C.Phone.Tenant phone}} | A phone box (on a phone it opens the number keyboard). |
{{C.Select[Single|Married].Marital status}} | Two choices: shown as two buttons, “Single” and “Married”. |
{{C.When[Marital status=Married].Text.Spouse name}} | Hidden at first. It appears only if the marital status is “Married”. Otherwise it stays blank in the document. |
{{C.Opt.Guarantor name}} | A text box marked optional: it can be left empty. |
{{C.TextArea.Property description}} | A large text area, for several lines. |
{{C.Select[Home|Office|Shop].Use of the property}} | Three choices or more: shown as a drop-down list. |
{{C.Number.Area in square meters}} | A box that only accepts numbers. |
{{A.Date.Start date}} | A calendar to pick the date. If you upload the previous contract, the app tries to read it from there. |
{{A.Money.Monthly rent}} | A money box in dollars. |
{{A.Select[Low|Medium|High].If[Politically exposed=Yes=>High;No=>Low].Risk level}} | A list with a suggestion based on the earlier answer (“Yes” suggests “High”). You must confirm or change it before sending the contract. |
{{A.Opt.NoF.Extra note}} | Optional, and artificial intelligence does not look for it in the previous contract: a person writes it. |
All the rules
Write changing values as {{fields}} in a .docx. The label can be any clear name; in the new flow, unknown labels are plain text unless the template declares a type or choices.
Choose who fills the field
C means the client, A means the contract preparer, and IA means Artificial Intelligence. In the new flow, IA by itself does not tell the model to calculate a value; only a supported command such as Today has automatic behavior.
{{C.Name of tenant}}The client fills or confirms this field. Without a prefix, the field is also treated as a client field.
{{A.Name of preparer}}The contract preparer fills or confirms this field.
{{A.Landlord name}} {{C.Guarantor name}}The label also says whose data it is. When reading the previous contract, artificial intelligence looks for the landlord for “Landlord name” and for the guarantor for “Guarantor name”. Write the party (landlord, tenant, guarantor, spouse…) in the label so it finds the right person.
{{IA.Today[day].Signing day}}In the new flow, this exact command inserts today’s day. Use month or year for the other parts. Other IA fields are shown for the preparer to enter or review, except IA.Match (see below), which follows another answer on its own and is not shown; IA alone does not make the model calculate a value.
{{C.Opt.Name of guarantor}}Opt makes a field optional. NoF means the model should not extract it; a person fills it. They can be combined, for example {{C.Opt.NoF.Extra note}}. In the document, a required field left empty prints LLENAR (FILL IN in an English template) in red, so nobody sends it by mistake; an Opt field left empty prints blank.
Field types in the new flow
A type is written after the role prefix. It determines the form control; the words after it are the label.
{{C.Color}}Any unrecognized label becomes a plain text field. You can invent labels for your own contract.
{{C.TextArea.Description of the property}}A larger text area.
{{C.Email.Contact email}} {{C.Phone.Contact phone}}Email and telephone controls.
{{C.Number.Height in meters}} {{A.Money.Monthly rent}}Number and money controls.
{{C.Date.Start date}}A date picker. If an old contract is uploaded, the app tries to extract its date; otherwise a person chooses it.
{{C.Select[Red|Blue|Green].Color}}The choices come from the template. Two choices appear as clear buttons; three or more appear in a menu.
Conditional fields and suggestions
Mistakes in these tags (an answer that is not one of the options, a field that does not exist, a repeated answer) are reported when you upload the template, not in the middle of a contract.
{{C.Select[Single|Married].Marital status}}Select defines the available choices in the uploaded template.
{{C.When[Marital status=Married].Text.Spouse name}}When shows a field only when the named answer matches. It controls visibility; it does not create a value.
Marital status: single, married XWhen a previous contract is read, an X right after an option marks it as the answer; here, Married. If the old contract lists other words than the template, add them after ~ (next example). With no X, or two, the field is left empty and flashes for a person to choose. The app never invents an answer from a list.
{{C.Select[Natural person|Limited company~Ltd.~LLC|Other~Others].Legal form}}Words after ~ are other ways an old contract may print the option. The first name is the option that is saved; the rest only help recognise it when reading a previous contract.
{{IA.Match[Marital title: Mr=the; Ms=the].the}}Match prints a word that follows another field's answer on its own: nobody fills or confirms it. Each tag gives one word; write another tag for another form (capitalised, or a whole phrase). If the answer is missing or not in the list, the document shows FILL IN in red.
{{C.When[Marital status=Married|Civil union].Text.Spouse name}}With several answers separated by | the field opens for any of them and stays blocked for every other answer. Each answer must be an option of the Select.
{{A.Select[Low|Medium|High].If[Politically exposed=Yes=>High;No=>Low].Risk level}}If lists explicit answer-to-suggestion branches. The matching value is only a suggestion. The preparer must confirm or change it before the contract can be sent. Blank or uncertain answers produce no suggestion.
Country and rent increase (new flow)
In Settings → My business you choose the country (Ecuador or Colombia) and your usual increase rule. The contract comes first: when renewing, the app reads the previous contract’s increase clause and suggests it, quoting the sentence.
{{A.Money.Monthly rent}}Give your template a money field for the rent. In the “Increase for this contract” box you pick it as the field that receives the new amount; the previous amount is what was read from the old contract.
{{IA.InWords[Monthly rent].Monthly rent in words}}The amount of the money field named in brackets, written in Spanish words («MIL DOSCIENTOS … DÓLARES DE LOS ESTADOS UNIDOS DE AMÉRICA CON 64/100»). It updates by itself when that amount changes, including after “Apply to the contract”. It already includes the currency and the cents, so don’t repeat them in the template.
Previous year’s inflation + 3%The box shows the whole calculation with the official January–December inflation of the previous year (INEC in Ecuador, DANE in Colombia) and its source. You confirm the figure before it is applied, and you can change the rule for that contract only.
{{A.Landlord name}} {{A.Landlord RUC}}If you save your company in Settings → My business → My company details, filling a contract shows “Fill empty fields”: it puts the name, RUC or NIT and the other details only into fields that are still empty. It never changes what came from the previous contract or what you typed.
{{C.Cédula del arrendatario}} {{A.NIT del arrendador}}IDs are checked for the contract’s country: in Ecuador, cédula and RUC with their check digits; in Colombia, cédula (6 to 10 digits) and NIT with its check digit. Colombian amounts are read in pesos (1.500.000).
Sections and dates
Word heading: Tenant detailsIn the new flow, fields below a real Word heading are grouped under that heading until the next heading. Without a heading, they appear under Other.
{{IA.Today[day].Day}} {{IA.Today[month].Month}} {{IA.Today[year].Year}}Explicit signing-date parts for the new flow. For a date chosen by a person, use C.Date or A.Date.
Older flow behavior
The existing “Nuevo contrato” path remains available as fallback. Its field controls can still be inferred from labels such as “fecha”, “email”, “número”, or “arriendo”, and some exact legacy names have fixed menus. The new flow does not use those label guesses.
{{C.fecha de inicio}}In the older flow, “fecha” in the label causes a date picker. In the new flow, write {{C.Date.Fecha de inicio}} explicitly.
{{C.Select[Sí|No].Es arrendatario}}Use this in the new flow instead of relying on matching legacy Yes/No field names.