How do you arrange a visitor pass for a guest?
In a shared office building, the company’s office manager usually orders visitor passes. To do that, they need the guest’s full name, the date and time of the visit and, if the guest is driving, the license plate number. In Pachca, you can collect pass requests in one chat. An employee posts a request using a template or fills out a bot form, and the office manager replies in the thread under the request once the pass is ordered and when the guest arrives. Below is the version with the Office bot. Walk through the employee’s side yourself.
46 members · Office bot
Grace Palmer pinned a message
Pinned message
To request a pass for a guest, click the button and fill out the form. Send requests for tomorrow by 17:00.
Visitor passes
46 members · Office bot
Grace Palmer pinned a message
Why handle visitor passes in your team chat
Usually, an employee asks the office manager for a pass in a DM or in passing. The request often leaves out the guest’s full name, the time of the visit or the license plate, so the office manager has to ask again. The employee doesn’t know whether the pass has been ordered, and if it wasn’t ordered in time, the guest waits at the building entrance until it’s sorted out. When the guest comes up to the office, the office manager has to find out who they’re here to see and call that employee.
In the Visitor passes chat, everyone’s requests sit in one feed, and the employee hears about the pass and the guest’s arrival in the thread under their request.
- All requests in one chat. The office manager sees every guest coming tomorrow in one feed and orders all the passes in the building’s system in one go. A ✅ reaction shows which requests are closed.
- Employees know the pass is ordered. The office manager posts about it in the thread under the request and @mentions the employee, so they get a notification.
- Guest arrivals go to the same thread. The employee’s name is on the request, so the office manager messages them in the thread right away instead of calling around the office.
- With a bot, every request has the guest’s details. The form won’t submit without the required fields, so the office manager doesn’t have to ask again for the guest’s full name or the time of the visit.
- With a bot, people reply with buttons. The office manager clicks “Pass ordered” or “Guest arrived” and the bot messages the employee in the thread with an @mention. The employee replies with the “On my way” button, and the bot tells the office manager that someone is coming for the guest.
How to set it up
You can handle visitor passes in Pachca with or without a bot. Without a bot, employees post requests in a chat using a template, and the office manager replies in the thread under each one. With a bot, employees fill out a form and the office manager clicks buttons, like in the demo above. A bot pays off when there are lots of requests and each one needs the guest’s full details.
Without a bot: a template and thread replies
- 1
Create a chat for requests
Click + next to search, select Chat and name it “Visitor passes.” Add the office managers and the employees who work in the office. If your workspace has a group tag for office employees, add that tag to the chat: new employees with the tag will join it automatically. - 2
Pin a request template
Post a template in the chat: the guest’s full name, the date and time of the visit and the license plate if the guest is driving. Then right-click the message and select Pin. Employees copy the template, fill it in and send the request as a separate message. - 3
Reply in the thread under the request
Once the pass is ordered in the building’s system, the office manager posts about it in the thread under the request and @mentions the employee. When the guest comes up to the office, the office manager posts in the same thread, and once the employee has met the guest, the office manager adds a ✅ to the request.
With a bot: a form and buttons
A bot in Pachca works a lot like a workspace member: you can add it to a chat, and it posts messages with buttons. On its own, a bot doesn’t do anything. When someone clicks a button in its message or submits a form, Pachca sends that event to a handler. A handler is a program that receives events from Pachca and replies on the bot’s behalf. In this use case, the handler opens the form for the employee, posts the request in the Visitor passes chat and, after each button click, writes in the thread under the request.
There are three ways to build a handler. With no code, you can put it together in n8n, an automation tool. A ready-made workflow with a form and buttons is covered in the time-off use case: swap in your own form fields and buttons and add the thread replies. You can also write the handler with an AI coding assistant, such as Claude Code or Cursor with Pachca skills. We explain how to work with an assistant in the “How do you build an AI agent without code?” use case. The third option is to have a developer write the handler using the Pachca API docs.
- 1
Create a chat for requests
Create the Visitor passes chat as in the first step above, or use the chat where requests already come in. Then open the chat in the Pachca web app and copy the number at the end of the page URL. That’s the chat ID, and the handler will need it. - 2
Create a bot
In the Integrations menu, choose Bots and click Create bot. Name it “Office”: that’s the name the bot signs its messages with in the chat. Then, on the API tab, copy the bot’s token and user_id. The handler will need them. - 3
Add the bot to the chat
Open the Visitor passes chat settings, click Add members, go to the Integrations tab and select Office. Without this, the bot can’t post in the chat. Only a workspace Administrator or the chat’s creator can add a bot. - 4
Enter the handler’s URL
Open the bot settings and go to the Outgoing webhook tab. Paste your handler’s URL into the Webhook URL field. Under event types, check New messages, Button clicks and Form submissions. In the command filter, enter /start, so the only message from the chat that reaches the handler is that command. - 5
Set up the form and buttons
In the handler, set up the form fields: the guest’s full name, date, time, a “Parking needed” checkbox and the license plate. Make the name, date and time required so the form can’t be submitted without them. The request needs two buttons, “Pass ordered” and “Guest arrived,” and the bot adds “On my way” and “Bring them to me” to the message about the guest’s arrival. Everyone in the office is in the chat, so the handler should accept “Pass ordered” and “Guest arrived” clicks only from office managers. Pachca tells the handler who clicked the button. - 6
Pin the request button
Send /start in the chat, and the bot replies with a message that has a “Request a pass” button. Pin that message so employees can find the button at the top of the chat. Only a button in the bot’s message can open its form. - 7
Send a test request
For the test, set yourself as the office manager in the handler. Click “Request a pass,” fill out the form and submit it. The request should show up in the chat. Click “Pass ordered” under it, and a bot message with an @mention should appear in the thread under the request.
With your team
Agree on a cutoff for next-day pass requests, for example 17:00. That way, the office manager can order all the passes in the building’s system in one go. The office manager asks any questions about a guest in the thread under the request and @mentions the employee there. Once the employee has met the guest, the office manager adds a ✅ to the request, so requests without a reaction show who’s still expected.
If the bot doesn’t work
- The bot doesn’t respond to /start. Make sure the bot is in the Visitor passes chat, the handler’s URL is on the Outgoing webhook tab, the New messages event is checked and /start is in the command filter.
- The “Request a pass” button doesn’t open the form. Check the Button clicks event.
- The form was submitted, but no request appeared in the chat. Check the Form submissions event and make sure the handler has the Visitor passes chat ID.