Guide · Team chat
Get your team's 2FA codes in a Slack or Microsoft Teams channel
Shared company accounts (the bank, the ad platform, the marketplace) send their login codes to one phone. Whoever holds it becomes the bottleneck. Here's how to put those codes in a Slack or Teams channel instead, and what to keep in mind before you do.
By the Cleat team · Updated September 15, 2026
The problem with one phone
Most shared accounts only allow one phone number for text-message codes. When it's a founder's or an ops lead's personal mobile, every login by anyone else means a message asking for the code, and nothing works when that person is asleep, on a plane or has left the company.
How codes reach a channel
Both Slack and Microsoft Teams let a service post into a channel through an incoming-webhook link: a private URL that turns a request into a channel message. The account's code has to arrive somewhere first, so the chain is: the service texts a phone number, the number's provider receives the text, and posts it to the channel's link.
Slack
“Creating an incoming webhook gives you a unique URL to which you send a JSON payload with the message text and some options.”
https://docs.slack.dev/messaging/sending-messages-using-incoming-webhooksSlack, on where it posts
“one that's specific to a single user and a single channel”
https://docs.slack.dev/messaging/sending-messages-using-incoming-webhooksMicrosoft Teams
“You can post to a channel or chat when a webhook request is received.”
https://support.microsoft.com/en-us/office/create-incoming-webhooks-with-workflows-for-microsoft-teams-8ae491c7-0394-4861-ba59-055e33f75498
The phone number is the part that decides whether codes arrive at all: many services refuse internet (VoIP) numbers for verification codes. Why line type matters.
Set it up with a Cleat line
- Get a Cleat line and verify your identity as its owner (about two minutes). Texts stay unreadable until the owner has verified.
- In Slack: create a Slack app, turn on incoming webhooks, choose "Add New Webhook to Workspace" and pick the channel (Slack's steps). Copy the webhook URL.
- In Teams: open Workflows, pick a template that posts to a channel when a webhook request is received, choose the team and channel, save, then copy the webhook URL from the workflow's details page (Microsoft's steps).
- In Cleat, open Settings, paste that URL under Webhooks and add it. Cleat recognises Slack and Teams links and posts each text in the app's own format: the code first, then the message, then who sent it to which line.
- Put the line's number on the shared accounts, one at a time, and trigger a login to see the code land in the channel.
Channel, inbox or email: which to use
| Where codes go | Good for | Keep in mind |
|---|---|---|
| A Slack or Teams channel | A team that already works in the channel | Everyone in the channel sees every code; use a private channel with only the people who need them |
| Cleat's shared inbox | Controlling exactly who sees codes | Only people you invite to the workspace, and you can remove them anytime |
| Email or Telegram, per person | Someone who wants codes on their own phone | Each teammate turns it on for themselves |
| Your own webhook or the API | Automations and scripts | Signed JSON you verify on your side |
Before you post codes to a channel
- Make the channel private and keep its members to the people who log in to those accounts. A code in a channel is as safe as the channel.
- Review the members when someone leaves. Removing them from the channel and from the Cleat workspace ends their access to new codes.
- Prefer an authenticator app or passkey where a service offers one and a single person logs in. Shared text-message codes are for accounts that only offer SMS, or that a team genuinely shares.
Where Cleat fits
Cleat is a receive-only real US mobile line for $24.99 a month per line, cancel anytime, with teammates free. Codes reach a shared inbox, email, Telegram, your own tools, or a Slack or Teams channel, and a call that reads a code out arrives transcribed. You can't place calls or send texts. Most services that refuse VoIP accept a mobile line; no provider can promise that all of them do.
- More on sharing codes across a company: Cleat for teams and agencies.
- What's included and what isn't: pricing.
Questions
Do I need a paid Slack or Teams plan?
Cleat doesn't require one. Check Slack's and Microsoft's own terms for what your plan allows with incoming webhooks and Workflows.
Can I send different lines to different channels?
Every webhook a workspace adds receives every line's texts in that workspace. To split them, keep lines in separate workspaces, each with its own channel.
Is the code posted anywhere else?
Only where you've set it up: the shared inbox always, plus each teammate's email or Telegram if they turned those on, and your webhooks.
Can someone in the channel reply to the code?
They can reply in the channel, but it goes nowhere: Cleat Line only receives.
Sources
Facts about other companies come from their own pages, checked in September 2026.
- Slack developer docs, sending messages using incoming webhooks https://docs.slack.dev/messaging/sending-messages-using-incoming-webhooks
- Microsoft Support, send messages in Teams using incoming webhooks https://support.microsoft.com/en-us/office/create-incoming-webhooks-with-workflows-for-microsoft-teams-8ae491c7-0394-4861-ba59-055e33f75498