This article will help:
๐ค if you are an author building applications that contain document automation
๐ถ if you are looking for a beginner level introduction to the topic
๐ if you are in the Prototype phase of the BRYTER ABC
โน๏ธ if you want to understand HOW, WHY, and WHEN to use BRYTER to efficiently automate your documents
โธ NOT if you are looking for specific tutorials for features such as Word commands or conditionals in templates
Why should you automate documents?
No matter where a lawyer works โ law firm, corporate legal department, government, judiciary, or academia โ preparing, analyzing, and discussing documents will be an integral part of a lawyerโs daily routine. Drafting documents, however, can be a tedious and rather thankless task since it requires numerous iterations, adhering to defined style standards and taxonomies, and subsequently managing all created documents.
It can, however, also represent an opportunity for you to serve your clients or business departments. Their main concerns are likely to be accuracy and compliance with internal policies and industry or state regulations, as well as saving resources โ concerns that you can meet with document automation solutions.
Why should you automate documents with BRYTER?
At BRYTER, we know that drafting letters, contracts and other legal documents is at the core of legal and regulatory professions - also because we have to use standard documents regularly. Our no-code platform enables you to depict complex legal processes and to simultaneously create, automate, and manage documents at scale. Without extensive training, you can quickly create several modules and automate existing templates that help areas of your business to operate on a fixed fee level while freeing up resources and improving your overall margin or profitability.
A finished document automation module can easily be customized and tailored towards your or your clientsโ needs, policies, and corporate identity standards. The publishing process will take minutes rather than hours or days and duplicating your modules will ensure that you can quickly scale up your digital solution portfolio.
Why do we automate documents at BRYTER with BRYTER?
Like our customers, we also need documents that are quick to produce, adhere to a consistent style and contain all the relevant information or clauses. With BRYTERโs logic editor, we create modules that navigate us towards the correct document generation module, to subsequently populate the relevant document(s).
With one BRYTER module, we can also create and automate a complete suite of documents simultaneously, while ensuring an auditable recording of your moduleโs session data. In the following, we will present our preferred approach to automate documents.
Approaches to automating documents in BRYTER modules
Populate a document via one Text Block Value (OVO - one value only method)
There are a variety of ways to automate documents in BRYTER. A very easy and quick method is to simply use a Text Block Value to gather the content in one node and use the existing template or upload your own template which only contains the placeholder {{RESULT}}.
The actual content of your Text Block Value then just needs to be mapped into the placeholder of the Create Document Action Node.
We use this technique when creating documents that do not require extensive styling or various formatting options and are primarily directed at internal users. One typical example is offering an overview or a summary of the responses provided by your end-user, which is offered as a download or sent via an Email Action Node to the end-user.
Populate a document via placeholders in custom templates (BYOT - Bring your own template method)
Whenever we want to use more extensive formatting options with defined indentation, several enumeration styles, tables, conditional paragraphs, and clauses, we rely on the placeholder approach in uploaded custom templates.
Below, we explain the two main techniques or functionalities using a simple NDA generator as an example use case.
Document Automation Technique
Direct mapping of user input into placeholders + updated Text Block Value Nodes
Sometimes the input provided by the end-user either via a Text Input Node or via the single or multi-select options can be directly transferred into a placeholder in your template document. In other scenarios, the input or choice of the end-user should trigger a pre-defined text or paragraph to be passed into the document. Knowing which text should appear in your final document, will help you decide which technique is more appropriate. Please note that a combination of the techniques is very common, so consider learning about both techniques:
1) Direct mapping of user input
Let's assume that you have built one module that helps with automatically creating unilateral or bilateral NDA agreements. You would ask the end-user directly which type of NDA they would like to create in a single select node:
In your document template, you thus only need to set one placeholder in the title of the document which can be directly replaced with the input options (either 'Unilateral' or 'Bilateral'): Since {{Type}} can be directly replaced with the options 'Unilateral' or 'Bilateral' of your single-select node, all you need to do is to map the single-select node into the placeholder that appears in the placeholder list after you upload the NDA template in a Create Document Action Node.
After you upload your document, all placeholder set into double-curly brackets in your template will appear as PLACEHOLDER in the lower half of the create document action. Now, all you need to do is click into the placeholder "{{Type}}" and select the node where the content was provided. In the NDA example, we conveniently labeled the single-select node also 'Type', so the easiest way to map the content into the placeholder is by searching the Node title and selecting the node from the drop-down menu of all available values within the module.
๐ก Tip: mapping placeholders is easier and quicker if you label your nodes similarly or exactly the same
2) (Updated) Text Block Value Nodes
The first technique can only be applied when the text in your template can be exactly replaced with the value provided in the respective input node. Whenever the input or option the end-user provides is actually the trigger for a whole paragraph or, for example, requires some grammatical changes depending on the gender selected, an updated Text Block Value is the best technique to populate your document.
In the NDA example, we want to replace the placeholder '{{TimePeriod}}' with either the word indefinitely or with the term for ## years with the '##' to be replaced with the exact number of years entered by the end-user.
The placeholder in the NDA template thus looks as follows:
To populate '{{TimePeriod}}' correctly, we now need to map one Text Block with either indefinitely or for ## years. Whenever the same placeholder can contain different text content, we rely on updated Value Nodes and conditional logic.
First, we declare an empty text block called 'TB_TimePeriod' before we ask the end-user for their input. If 'indefinitely' is chosen, we want to replace the placeholder {{TimePeriod}} with the word indefinitely. We thus create a new Text Block Value on a transition leading to the next node that should only be reached when 'indefinitely' was selected. This new Text Block Value now needs to be linked to the original (empty) content of the node 'TB_TimePeriod'.The easiest way to update a Text Block Value Node is by either copy-pasting it onto the correct transition and then clicking into the label to choose 'Update' or to create a new Text Block Value and labeling it according to the initialized value. Upon clicking on the same label in the drop-down menu, the new Text Block Value Node will now update the previous, original, Text Block Value:
If the end-user selected 'certain amount of years' and entered the number of years in the Multi-Input node 'Time', we set up the alternative Text Block Value Node as displayed below. Like this, we replace the placeholder {{TimePeriod}} with the term for ## years - the '##' will be replaced with the number of years entered in 'Time' using @-referencing:
In the Create Document Action, we now only need to map the Text Block Value Node TB_TimePeriod into the placeholder Time Period for the relevant content to be pulled through into the document:
Clauses + empty paragraphs
Some clauses might only be relevant in a specific scenario and should be omitted in the final document. For dynamic or variable clauses, we would rely on the update logic that we also use for risk scoring. We create an empty Text Block Value Node at the very beginning of our module and update the text block value further down in the module. This updated Text Block Value should then be mapped into the placeholder in the create document action.
If the placeholder is the only text in a paragraph of the word document and is followed by {{\dl}} (for "delete line"), this paragraph will be deleted if the replacement content is empty. In your document template, you should thus use {{TB_clause}}{{\dl}} if the Node labeled โTB_clauseโ within your BRYTER graph contains the clause that might be omitted in your final document or {{first name}}{{last name}}{{\dl}} for optional inputs that might have been left blank by the end-user.
๐ Without {{\dl}}, the placeholder would still be replaced, but the line or paragraph is kept in the document.
Use Case Examples for Document Automation
As outlined above, document automation can be useful for internal and external use. If you choose to provide document automation tools for clients, you should consider establishing a recurring fee whereby your client is able to use your tools on an ongoing basis.
The following use cases have already been successfully created and published with BRYTER โ via both internally and externally facing BRYTER modules:
- Commercial: Non-Disclosure Agreements, Terms & Conditions, Vendor Agreements, Due Diligence Reports
- Corporate: Competition T&C Generator, Gesellschafterlisten, Incorporation Documents, Freelancer Checklists, Sales Documents
- Data Privacy: CCPA Privacy Notice, Data Processing Agreement
- Employment: Settlement Agreements, Employment Contracts, Work from Home Requirement Checklist, Mass Notice
- Financial Services: Shareholder Agreements, Board Minutes Generator, Due Diligence Reports
- Real Estate: Leases, Licences, Statutory Declarations, Agreements for Sale, Notices
BRYTER Document Service
For clients who want to automate a bulk of documents or processes involving documents, BRYTER offers a special โDocument Serviceโ.
End-to-end solution
This service includes an end-to-end solution that allows automating documents at a large scale for minimal time and cost. Our experienced team of Document Solution Architects can deliver on a project in a very short timeframe and offer the following services:
- Ideation and scoping of a specific document or document-based project
- Content and logic setup
- Providing templates, clauses, and best practices
- User testing and feedback gathering
- Rapid prototyping and data flow mapping
- End-to-end building service
- Quality checks and assurances
- Tool and flow improvements
- Frontend development and embedding
- Integration services
Upskill your team
This service can also be used as a โlearning on the jobโ concept. The service is ideal to upskill your own staff during a project and enable them to continue with the project independently. After the initial building, our team can take over the ongoing maintenance and updates.
Get in touch
Are you interested in our Document Service or want to understand how BRYTER can be integrated with existing data, document applications, and templates such as Salesforce, SharePoint, HighQ, iManage, NetDocuments, etc.? Please get in touch with our Business Services Team or your Customer Success Manager to get more information.
Further Reading
- Ellis, M. (2020): Why Document Automation?
- Delwood, R. for NASA: Efficiency Through Document Automation
Keywords: {}; {{}}; brakets; {{; }};