Skip to main content

Agreement Template

An agreement template is the whole document in one place: the wording that prints, the details the document asks somebody to fill in, and the list of people who have to sign. All three are set up here, so a new kind of agreement is a new template rather than a change to the software.

Where
Organization and Setup › Setup › Agreement Template
Who uses it
The implementation consultant, with the wording and the signing rules from the client
When
Before Agreement Configuration can name it
Needs first
Nothing. The template is self contained.

What it is for​

A client will ask for a change to an agreement every few months. A new allowance on the bond. A second witness. The validity changed from a year to two. If any of that needed a developer, the engine would be useless.

So nothing about the document is built into the software. The template carries it:

  • The letter is wording you type on the Letter tab. The parts that differ from one agreement to the next are placeholders, and each placeholder is bound to a value when the document is produced.
  • The inputs are the details the document asks for, grouped for readability. Each input has a label the reader sees, a data type, and optionally a value that is filled in automatically.
  • The signers are roles, not people. One line per signature: the authorized signatory, and a witness. Each line becomes one signature slot on every agreement made from this template, with its own link and its own one time code.

This is the answer to "can you change the agreement for us". You change the template. A different arrangement, a different counterparty type, a different set of terms is a different template, not a code change.

Placeholders​

A placeholder in the letter body is bound to a value when the document is produced. Five are always available:

party the counterparty name
company your company name
agreementno the agreement number
validfrom the date the agreement starts
validto the date it ends

Every input you define on this template is also available as a placeholder, under the input code that is derived from its label. A placeholder that has nothing bound to it comes out empty, so check a produced document before the client does.

The editor offers the five standard placeholders from its toolbar, and shows a sample letter you can start from while the body is still blank.

Every field, in plain words​

FieldWhat it meansWhat to put in itNotes
Template NoYour short code for the template.EMP-UNDERTAKINGRequired. Type a new one when creating. It cannot be changed afterwards.
NameWhat the user and the consultant read when picking this template.Employment undertakingRequired.
NotesA note to yourself or to the next consultant about what this template is for.Signed by every permanent factory hire on joining
ValidityHow the end date of the agreement is worked out.By DaysRequired. Pick from the list. See the values below.
Validity (Days)How many days an agreement from this template is valid for.365Shown only when Validity is By Days. Type 0 if the agreement has no expiry.
Expiry DateThe fixed date on which every agreement from this template expires.30-06-2027Shown only when Validity is By Expiry Date.

Validity takes one of three values:

  • BD By Days - the agreement runs for a number of days from when it starts. Use this for anything that follows the person, such as a bond or an undertaking. This is what a new template starts on.
  • BE By Expiry Date - every agreement from this template expires on the same fixed date, whenever it was signed. Use this for something tied to a financial year or to a scheme that ends.
  • NE No Expiry - the agreement does not expire. Use this for a confidentiality undertaking.

Only the field the chosen mode uses is shown, and the other is cleared, so a stale number cannot be left behind by changing your mind.

Inputs​

The Inputs tab holds the groups. Each group opens its own list of inputs from the link on its line.

FieldWhat it meansWhat to put in itNotes
Group NameThe heading the reader sees above this set of inputs.Salary and allowancesRequired. Each group name must be used only once in a template.
Sort OrderWhere this group sits relative to the others.10, 20, 30Leave gaps so a group can be inserted later.
InputsOpens the inputs that belong to this group.Click itA group with no inputs is refused on save.

The inputs inside a group​

FieldWhat it meansWhat to put in itNotes
Input LabelWhat the reader of the document is asked for.Monthly gross salaryRequired. This is the one thing the signer actually reads, so write it as a question they can answer.
Input CodeThe short name the letter uses for this input as a placeholder.Fills itself from the label. Leave it.Not shown to the signer. It is derived once from the label and then left alone, so renaming a label does not break a letter already written.
Data TypeWhat kind of value this input takes.AmountRequired. See the values below.
GroupWhich group the input belongs to.Fills itself from the group you opened. Leave it.
Default ValueThe value the input starts with if nothing fills it.0
Value SQLA stored lookup that fills this input in automatically when the document is produced, rather than asking for it.Leave it blank to have the input filled in by hand. Fill it when the value is already recorded elsewhere in the system.This is how an agreement comes out already carrying the employee's salary and joining date. Ask a senior consultant to write it.
MinimumThe lowest value accepted.25000Leave 0 for no minimum. The minimum cannot be greater than the maximum.
MaximumThe highest value accepted.500000Leave 0 for no maximum.
MandatoryWhether the document can be signed without this input filled.Tick it for anything the agreement would be meaningless without.
Sort OrderWhere the input sits inside its group.10, 20, 30

Data Type takes one of six values:

  • TXT Text - free wording, such as a job title.
  • NUM Number - a plain count, such as a notice period in months.
  • AMT Amount - money. Use this for a salary, a bond value or an allowance, so it prints as rupees.
  • PCT Percentage - a rate, such as a share of a bonus.
  • DTE Date - a single date, such as a joining date.
  • YSN Yes / No - a switch, such as whether transport is provided.

Signatories​

One line per signature the document needs.

FieldWhat it meansWhat to put in itNotes
Signer RoleWhat this signature is. Picked from the list.Authorized SignatoryRequired. Each role may be used only once in a template, so a template has at most one signatory line and one witness line. SIGNATORY Authorized Signatory, for the person the agreement binds or the person signing for the company. WITNESS Witness, for anybody attesting it.
Role DescriptionThe wording that appears beside the signature slot.Witness, parent or guardianUse it to say in the client's own words who this signature belongs to.
Pick FromWhere the signer's details come from.Employee, for a company signatoryLeave it blank and the signer is typed in by hand. Pick EMPLOYEE or USER and the panel offers a picker that fills the name, email, designation and mobile.
Value SQLA stored lookup that proposes the signer automatically.Leave it blank unless a senior consultant has written one for you.
SequenceThe order the signature slots are listed in.1 for the employee, 2 and 3 for the witnessesRequired. It is the order they are shown in. They can still sign in any order.
WeightageHow much this signature counts for.Leave it at the default unless the client has asked for partial signing rules.
MandatoryWhether the document is complete without this signature.Tick it for the signatory, and for a witness if the client insists on one.
CNIC RequiredWhether this signer must give their identity card number.Tick it. Recommended for witnesses.
Address RequiredWhether this signer must give their address.Tick it for witnesses on a bond.
Designation RequiredWhether this signer must give their job title.Tick it for a company signatory.
Attachments AllowedWhether this signer may attach a file, for example a copy of their identity card.Tick it where the client wants proof on file.
Attachment MandatoryWhether the signature is incomplete without that attachment.Tick it only when the client really will refuse unsigned documents over a missing scan.

Letter​

FieldWhat it meansWhat to put in itNotes
Letter BodyThe wording the agreement prints, with placeholders where the details go.The client's own wording, with the counterparty name, the dates and the amounts put in as placeholdersWhile the body is empty the editor offers a sample letter to start from.

How to configure it​

  1. Get the final wording from the client, and the list of who signs. Both belong to the client, not to you.
  2. Open Agreement Template and create a new record. Type the code and the name. The code cannot be changed later, so get it right now.
  3. Pick the Validity. By Days with 365 covers most undertakings. No Expiry covers a confidentiality agreement.
  4. Go to Inputs and add a group, for example Salary and allowances. Give it a sort order.
  5. Open that group and add the inputs. For each one, write the label as a question the signer can answer, pick the data type, and tick Mandatory where the agreement needs it.
  6. Add further groups for the other sections of the document. Every group must have at least one input or the save is refused.
  7. Go to Signatories and add one line per signature. Put the authorized signatory at sequence 1, and the witness, if the client wants one, at sequence 2. Tick CNIC Required on the witness.
  8. Go to Letter. Use the sample letter as a starting point if the body is blank, then paste or type the client's wording over it.
  9. Put the placeholders where the details belong: the counterparty name, the two dates, and each input you defined.
  10. Save. Then name this template on Agreement Configuration so a screen actually produces it.
  11. Produce one agreement on a test record and read the printed document end to end. A placeholder with nothing bound to it comes out empty and only a read will catch it.

Scenarios​

"Can you add the transport allowance to the bond"​

No, and nobody needs to. Open the template, open the group the allowances are in, add an input called Monthly transport allowance with data type Amount, and put its placeholder in the letter where it should print. Save. The next bond carries it.

"The agreement should already know the salary rather than asking for it"​

That is what Value SQL on the input is for. An input with a stored lookup fills itself when the document is produced, and the signer is handed a document that already carries the figure. An input with nothing there is filled in by hand instead. Ask a senior consultant to write the lookup; the rest of the template is yours.

"The apprentice bond needs a witness but the staff undertaking does not"​

Two templates. The apprentice bond carries a signatory line and a witness line, the staff undertaking carries the signatory line only. Changing one does not touch the other, and Agreement Configuration decides which screen produces which.

Note the limit while you are planning this with the client. There are two signer roles to choose from, authorized signatory and witness, and each may be used only once on a template. A template therefore supports one signatory and one witness. A client who wants two witnesses attesting the same document cannot have both as signature slots on one template.

"Our bond runs for two years from joining, but the pay for performance letter always ends on 30 June"​

Apprentice bondPay for performance letter
ValidityBy DaysBy Expiry Date
Validity (Days)730not shown
Expiry Datenot shown30-06-2027

"The printed agreement has a blank where the salary should be"​

The placeholder in the letter does not match an input on the template, or the input is there and nothing filled it. A placeholder with nothing bound to it prints as nothing rather than as an error.

What it is connected to​

  • Read by Agreement Configuration, which is what attaches a template to a screen. A template nobody has named there produces nothing.
  • A template must be active before a configuration line can name it. A line pointing at an inactive template is refused.
  • The signer roles here are what the signature slots on every agreement are created from. Changing a role on the template does not change agreements already created.
  • Validity here is what sets the end date on each agreement produced.

If something looks wrong​

  • "The save says the template needs at least one input group" - the inputs are the document. A template with none would produce an empty letter.
  • "The save says a group has no inputs" - an empty group was added and left. Either fill it or delete it.
  • "The save says the input code is used more than once in this template" - two inputs have labels that reduce to the same short name, even in different groups. Inputs are stored flat against the document, so a duplicate would overwrite the other one. Reword one label.
  • "The save says the template needs at least one signer role" - with no roles, there is nobody to send the document to.
  • "The save says the signer role is used more than once" - two lines carry the same role, usually because the client asked for two witnesses. Only one line per role is allowed, so one of the two has to go.
  • "The save says minimum cannot be greater than maximum" - the two limits on an input are the wrong way round.
  • "The agreement prints with gaps" - a placeholder has nothing bound to it. Check the placeholder name against the input labels on this template.