Approval workflows in Bitrix24 are built around the stock document approval action: requests, memos and contracts travel a route of approvers, and the system records who decided what and when. Everything the stock action does not cover — routes that follow the org structure, completeness checks, deadlines in business days, escalation to a manager — is assembled from conditions and robots. This guide covers route order, sourcing approvers, the approval sheet and deadline control.
Which stock action should run the approval?
The workflow designer has two candidates (if you are building your first workflow, start with the workflow guide). The approval action is a vote: you set a list of approvers and a decision threshold — everyone, anyone, majority — and it returns approved or rejected. The acknowledgement-style action is weaker: it only records that an employee viewed the document. For contracts and requests use the approval action: it blocks the workflow until a decision is made and stores who voted and when. The rejecting approver's comment comes back as a result value — write it into the card so the manager sees the reason without digging through the workflow log.
Should the route be sequential, parallel or mixed?
Sequential — approvers receive the document one by one: legal, then finance, then the director. Each sees the previous decision, but the total time is the sum of all steps. Parallel — everyone receives it at once and the decision follows the threshold; faster, but approvers do not see each other's remarks. A mixed route is assembled from several approval blocks: specialists in parallel first, executives sequentially after them. The practical rule: expert checks (legal, accounting, security) run in parallel; authority decisions run sequentially and come last.
Where should approvers come from so the route does not break?
The worst option is names hardcoded in the template: one person's vacation stops every approval in the company. Take approvers from the org structure instead: the Get employee manager robot returns an employee's direct manager from the department structure — with the manager's name and email — so one template serves any department; keep role-based approvers in workflow constants. Before the route starts, verify the package: Check if a field is filled returns Y/N for the attachment and the justification field, and Compound condition (AND / OR / NOT) handles combinations, such as requiring an estimate when the amount exceeds a threshold. A document that reaches the director with empty fields discredits the whole process.
How do I build an approval sheet in the card?
The workflow log stores every decision, but nobody opens it — the approval sheet should live in the card. The technique: after each approval block, the workflow appends a line to a text field — who, decision, date, comment, all taken from the approval action's results. By the end the card holds the full history: legal approved on the 10th, the CFO approved on the 11th with a remark about payment terms. The same field can be inserted into a document template, so the printed form ships with its approval sheet already included.
How do I control deadlines and escalate?
The approval action has its own due date, but without escalation it simply expires. The working scheme: compute a control date in business days rather than calendar days, so a deadline never lands on a holiday week — on Russian portals the Date + N working days (Russia) robot does this against the Russian holiday calendar and returns the date in two formats. A parallel branch waits for that date and, if there is no decision, reminds the approver — and a day later their manager, found again with Get employee manager. Silence must not last forever: after the second escalation either auto-reject and return to the initiator, or move the decision a level up — and write that rule into the schema.
Where to go from here
A reliable approval is the right route order, approvers resolved from the org structure, an approval sheet in the card, and business-day deadlines with escalation. The building bricks — manager lookup, completeness checks, compound conditions — are in the robot catalog: free to install, they appear in the workflow designer next to the stock actions. If a brick is missing, describe the task — we build the robot for free and add it to the shared library.