Memuat
Memuat
Want to go deeper?
Join one of our courses or ask us directly on WhatsApp.
Picked from the software, topic, and level of “Agentic AI Without Coding Class #42: Human-in-the-Loop: AI Waits for Approval Before Sending or Paying”.
Other ways we can help with Agentic AI.
Learn with a mentor
Scheduled AI & Machine Learning courses with live guidance and a certificate.

MATLAB Agentic AI Course: Building Autonomous AI Agents with MATLAB & Simulink

Midjourney Course: Create Stunning AI Images from Text
★ 4.9

DALL-E Course: Creating Professional AI Images from Text
★ 4.9
Have it built for you
No time to learn Agentic AI? Our team can do the project for you.

MATLAB & Simulink Development — Agentic AI for Simulation Automation and Data Analysis

AI Image Creation with Stable Diffusion — Unlimited Custom Visual Production
★ 4.9

AI Image & Video Creation with Leonardo AI — All-in-One Visuals for Business
★ 4.9
Get notified about new Agentic AI classes
At most one email a week. Unfollow anytime with one click.
The full narration of this video. The current sentence is highlighted while the video plays; click any sentence to jump there.
Welcome back to Session 9. In the previous episode we built an agent team: a researcher, a writer, and a reviewer. Now we install a safety brake. It's called human in the loop: the AI prepares the work, then waits for human approval before it sends or pays for anything. We cover the pattern, how to build it in n8n, amount limits, and the decision log.
Human in the loop means there is a person inside the AI's work loop. The agent still works fast, but at certain points it stops and asks first. We got a glimpse of this in Episode 1: the agent asked for approval before changing the delivery schedule for Sari's order. The simple principle is: the agent may prepare, a human decides. Especially before sending to many people, spending money, or changing important data. With this brake in place, you can actually trust the agent with bigger jobs. Not every action needs to wait. Answering a question about opening hours, for example. If it's wrong, the risk is small and easy to correct. Let it run automatically. Logging orders to a spreadsheet can also be automatic, as long as an admin like Dimas checks it every day. If something is wrong, one cell can be fixed in seconds. But sending a promo to three hundred customers at once is different. Once it's sent, you can't take it back. One wrong price could be read by hundreds of people. This must wait for approval. A refund or a discount means money goes out. Wait for approval, and use the amount limits we'll cover shortly. And paying a supplier invoice always goes through owner approval, whatever the amount, because money that's already been transferred is hard to get back. To make it easy to remember, there are four signs that an action needs approval. First, actions that go to many people: broadcasts, social media posts, or mass emails. Second, actions that send money out: refunds, discounts, payments, or purchases. Third, actions that change important data, such as prices, stock, or customer data. One wrong price in the catalog will be picked up by every agent. Fourth, actions that are hard or impossible to undo, such as deleting data or sending official documents. When in doubt, just treat it as approval required. Loosening the rules later is much easier than fixing mistakes.
Now the pattern. Step one, the agent writes a draft: a promo message, a reply to a customer, or invoice details. Step two, the workflow sends that draft to the owner, via Telegram or email. Pick the one you check fastest, because the work is on hold until you reply. Step three, the workflow waits. It truly pauses and sends nothing until there's a reply. Waiting costs nothing in AI fees, because the model isn't being called. Step four, if the owner taps approve, the workflow continues and the draft is sent or processed. And if the owner taps reject, the workflow stops and records the rejection along with the reason. While it waits, nothing goes out. And if there's no reply by the time limit, the workflow stops too. Let's see the pattern in n8n. The example is the Sunset Coffee weekly promo. The trigger is a schedule, every Thursday at ten in the morning. The AI step writes a draft of the weekend promo message, with prices from the official list. You could also use the agent team from Episode 41. Then the key node: send and wait. This node sends the draft to Laras on Telegram, and the workflow pauses right here. n8n has a feature to send a message and then wait for an approval reply. Its exact name may differ slightly in your version. After Laras taps a button, the workflow resumes from the same point and moves into an IF node that checks her answer: approved or not. If she approves, the top path runs: the promo goes out to customers on WhatsApp, using the integration we set up in Session 8. If she rejects, the bottom path runs: nothing is sent, and the rejection is recorded along with the reason. On the approval path, after the promo is sent, the decision is also written to a log. We cover the log in the last step. When it runs, notice this: the first three nodes have check marks, but the execution status is waiting for Laras's approval. The workflow stays fully paused until Laras replies, whether that's five minutes or five hours from now. Click the send and wait node to see its settings. The first field picks the channel: Telegram. It could also be email, depending on which one you check fastest. The next field is the recipient: Laras. The message field holds the draft from the AI step. The yellow expression means it takes the draft from the previous node. The buttons field sets the choices that appear on Laras's phone: approve or reject. Some setups also offer a reason field when rejecting. And the time limit field is very important. If there's no reply within twenty-four hours, the workflow stops. Silence means no, not yes. Never set it the other way around, such as approving automatically when there's no reply.
This is what Laras sees on her phone, say while she's buying supplies at the market. The bot sends the full draft, not just a summary, including the number of recipients: three hundred customers. Below it are two buttons: approve and reject. Laras doesn't need to open her laptop or the n8n app at all. Laras reads the draft. The one-liter price of Rp85,000 is right, and the delivery rule is right. She taps approve at ten twelve. The workflow picks up right where it paused, and the bot reports that the promo is being sent. A few minutes later, the report arrives: two hundred ninety-six sent, four inactive numbers. It took Laras thirty seconds to check, and she stayed in control. Now another example. Budi received a cold brew that leaked during delivery. The customer service agent prepares a refund of Rp55,000, with the reason, then asks for approval. This time Laras chooses reject. In her view, customers are happier with a replacement than with their money back, and Sunset Coffee keeps a good relationship with Budi. The bot then asks for a reason, and Laras writes: replace the product instead, send a new cold brew tomorrow morning. The workflow doesn't process the refund. The agent prepares a new reply for Budi based on Laras's decision: an apology and a promise to deliver a new cold brew tomorrow morning. So a rejection isn't the end, it's new guidance for the agent. For more serious matters like payments, some owners prefer email because it leaves a written record. In Laras's inbox there's an email labeled needs approval. The email opens. It's short and complete: the supplier name, the amount of Rp1,250,000 with the receipt date, and the due date. Laras can match it against the paper receipt in her drawer. Below that are two links: approve and schedule payment, or reject. The last sentence makes it clear that the agent will not process any payment until Laras chooses. Notice that the agent holds no bank access. Approval only schedules a payment that Laras or Dimas will transfer later. When it comes to money, the less access the AI has, the safer you are.
This pattern fits into any workflow, including the agent team from Episode 41. Remember the lineup: the researcher, the writer, then the reviewer. We slot the approval point in after the reviewer. That way Laras only receives content that has already passed the rubric, not a raw draft still full of mistakes. After Laras replies, the IF node checks her choice. If she approves, the content is saved to Sheets with the status ready to publish. If Laras asks for a revision, her notes are saved, and that content won't appear on the ready-to-publish list. We'll assemble a complete chain like this step by step in Episode 45. The same pattern works beyond the coffee shop. Dewi, the operations manager at Maju Bersama Co., uses an agent to draft price quote emails. For amounts over ten million rupiah, the email waits for Dewi's approval before it goes to the client. Mr. Hendra at Bimbel Cerdas, a tutoring center, uses an agent to summarize grades and write reports for parents. Reports about children are very sensitive, so Mr. Hendra always reads them first. Nadia, a social media freelancer, uses an agent to put together posting schedules. Here the approver is the client, through a weekly email, because the account belongs to the client. And stock changes from Dimas's daily recap can simply be automatic, since they're easy to correct, as long as everything is logged. So every job has its own approval point, depending on the risk. Last in this step, how to write approval messages that are easy to decide on. First, send the full draft, not a summary. What gets approved must match exactly what gets sent. Second, the numbers and recipients must be clear: the amount, the number of customers, or the client's name. Don't make the owner guess how many people will receive the message. Third, include a short reason. For example, a refund is suggested because the customer sent a photo of the damage. Fourth, clear buttons: approve, reject, or request changes, without having to type a long reply. Fifth, include a link to the original data, such as the order row in Sheets or the customer chat. A complete message lets the owner decide in seconds, even while standing in line at the checkout.
If every small refund had to wait for Laras, her phone would never stop buzzing. The solution is amount limits. For Sunset Coffee, refunds under Rp50,000 can be automatic, as long as they're reported every day. But outgoing payments, however small, still need Dimas's approval. Between Rp50,000 and Rp300,000, Dimas can approve refunds as the admin. Outgoing payments in this range are approved by Laras. Over Rp300,000, everything must be approved by Laras as the owner, and for payments, the receipt is checked first too. And if there's no reply within twenty-four hours, the workflow stops and sends a reminder to the person who should approve. These numbers are just examples. Adjust them to your own business's revenue and risk. Let's test it on the customer service agent from Session 8, which now has an amount checker. The first message: Andi asks for a Rp18,000 refund because his iced coffee spilled during delivery. The workflow checks the amount limit. Rp18,000 is under Rp50,000, so it can be automatic. The refund is processed, logged, and added to Dimas's daily report. Andi gets a polite reply right away, without waiting for anyone. The second message: Putri asks for a full refund of Rp150,000 because her hampers was damaged on the way. This time the amount is over the Rp50,000 limit, so the amount checker node routes it to the path for Dimas's approval. The agent doesn't process the refund. It sends an approval request to Dimas and replies to Putri honestly: we're checking, and we'll update you by three in the afternoon. The customer is still served quickly, and the money stays safe. Five extra rules make approvals truly safe. First, a time limit. No reply means stop, not automatic approval. Second, amount limits are checked by the workflow, such as an IF or Switch node, not just written in the AI's instructions. Instructions can be talked around by a crafty customer message, but an IF node can't. We cover this in Episode 44. Third, decide who may approve: only Laras's and Dimas's accounts, not whoever happens to be in the Telegram group. Fourth, the agent gets no payment access at all, including bank apps or digital wallets. The agent prepares, a human makes the transfer. Fifth, don't ask for permission too often. If every small thing needs approval, people eventually tap approve without reading. Let small things run automatically, so the important approvals really get attention.
The last step is the decision log. Every time there's an approval request, the workflow adds a row to Google Sheets. The first row: the weekend promo, approved by Laras, two hundred ninety-six sent. Andi's refund was processed automatically because it was under the limit. It's still logged, so Dimas can see it in the daily report. Budi's refund was rejected by Laras, with the reason: replace the product tomorrow. This reason matters when you review decisions at the end of the month. Putri's refund was approved by Dimas, and the supplier payment was approved by Laras, with the receipt date. And the last row: the flash sale promo got no reply within the time limit, so the workflow stopped on its own. Nothing was sent without permission. A log like this is useful for three things: tracing problems when they happen, spotting patterns such as frequent refunds, and judging whether the amount limits need changing. At the end of the month, recap the log. You can ask the AI to summarize this Log tab, just like in Session 5. In this example, there were forty-eight approval requests. Forty-one were approved. That means most of the agent's drafts were already good enough, and approval took only a few seconds. Five were rejected or revised, and the remaining two got no reply by the time limit, so they stopped on their own. On average, Laras and Dimas replied within nine minutes, fast enough that customers didn't feel kept waiting. If you see many rejections of the same kind, such as promo drafts that are always too long, fix the agent's instructions. Don't just keep rejecting them every week. Before we wrap up, check your workflow against this checklist. First, the list of actions that need approval is written down. Second, the send and wait node has a time limit, and silence means stop, not approve. Third, amount limits are checked by the workflow through an IF or Switch node, not just written in the prompt. Fourth, the agent has no direct access to bank accounts or payments. Fifth, every decision is recorded in the log, including the automatic ones and the ones with no reply. If all five are in place, you can give the agent bigger jobs without losing control.
Let's recap. The agent may prepare, a human decides. The pattern: send the draft to the owner, wait for an approve or reject tap, then the workflow continues or stops. Add amount limits, a time limit, and a decision log. In the next episode we turn to quality: how to check AI answers and stop the AI from making things up, including the scoring rubric the reviewer agent uses. See you in Episode 43.
Try these on your own after watching to lock in what you learned.
Type a question or keyword; we find the part of this episode that explains it and jump the video there.
Notes are saved with the current video time and are only visible to you.
Stuck on a step? Ask here; the instructor and other learners can answer.
No questions yet.

Cerdas Inovasi Digital Team
Software developers, BIM & 3D engineers, and AI practitioners
We build software, BIM models, games and AI automations for clients every day, and turn that hands-on work into step-by-step classes: every step is shown on screen and comes with a PDF guide you can keep.
See our clients →