Inboxes & channels
By Michael
By Michael
Connect all your channels (website, WhatsApp, email, social media, SMS, calls) to a single inbox.
Understanding inboxes and channels
π Where to find it: Inboxes β Add a channel An inbox is a point of contact linked to a channel (website, WhatsApp, email, Facebook, Instagram, SMS, Telegram, voice, API...). All the messages from a single channel arrive in the same inbox, then in Conversations. How it works Each channel creates an "inbox" in Madyis Hub. Madyis Hub receives the channel's messages (via webhook, OAuth or API depending on the channel) and groups them into conversations. You reply from Madyis Hub and the reply goes back out through the right channel automatically. Some channels are included in every plan, others (WhatsApp, Facebook/Instagram, Voice) are reserved for higher plans and show a padlock. Step by step 1. In the left-hand menu, under "Channels & configuration", click "Inboxes". 2. Click the "Add an inbox" button (top right). 3. Choose the channel you want from the cards shown (Website, WhatsApp, Email, Facebook, SMS, etc.). 4. Follow the channel-specific form, then assign the agents who will reply. 5. At the end, copy the code or URL provided if the channel requires it, then click "All done". Good to know - Only administrators can add or delete an inbox. - A greyed-out "Coming soon" card (e.g. TikTok) is not yet available; a card with a padlock (e.g. WhatsApp, Voice) requires a higher plan. - You can link the same team mailbox to several channels: everything arrives in the same place in Conversations.
Add the chat widget to your website
π Where to find it: Inboxes β Add a channel β Website The chat widget is the discussion bubble your visitors see on your site to message you live. It's the simplest channel and it's included in every plan. How it works You create a "Website" inbox by entering the name, your site's domain, the color and the welcome message. Madyis Hub generates a small piece of code to paste into your site; once it's in place, the bubble appears and every visitor who writes creates a conversation. Messages arrive in Conversations and you reply live. Step by step 1. Inboxes β "Add an inbox" β "Website" card. 2. Give the inbox a name (e.g. "Website chat"). 3. Enter the URL/domain of your site (e.g. https://mysite.com). 4. Choose the bubble color, a welcome title and a tagline. 5. Turn on the automatic welcome message if needed, then click "Create". 6. Copy the generated code and paste it just before the tag of your site (or via your editor/CMS). 7. Reload your site: the bubble should appear. Send yourself a test message. Good to know - If the bubble doesn't change after an edit, clear your site's cache (service worker / PWA): it's almost never a Madyis Hub bug. - You can re-customize everything later in the inbox settings (color, shape, icon, bubble size). - To limit display to your real domains, fill in the "Allowed domains" in the inbox's Configuration tab.
Customize the bubble and the look of the chat widget
π Where to find it: Inboxes β (your Website inbox) β Settings β "Inbox settings" tab You can change the color, shape, icon, size and position of the chat bubble, as well as the welcome title, the tagline, the displayed response time and the widget features (file sending, emojis, etc.). How it works In the settings of a Website-type inbox, a "Widget builder" shows a live preview on the right while you edit the options on the left. The color, the shape/icon/size of the bubble and its side (left/right) are applied to the widget's SDK. The feature options (attachments, emojis, end conversation, voice call) enable/disable buttons in the chat window. Step by step 1. Inboxes β click the Settings icon of your "Website" inbox. 2. Stay on the "Inbox settings" tab. 3. Open the "Widget features" section to edit the welcome title, the tagline, the color, the shape/icon/size of the bubble, its position and the launcher text. 4. Check the features you want (file picker, emojis, allow ending the conversation, allow voice call). 5. Set the "Response time" shown to visitors (a few minutes / a few hours / a day). 6. Click "Update" and check the result on your site. Good to know - The preview on the right reflects your choices before publishing: no need to retest on the site after every click. - The "Voice call" option only has an effect if the Voice channel is enabled on your account. - Upload an inbox avatar: it serves as the image for the bot and the widget.
Set up the widget's pre-chat form
π Where to find it: Inboxes β (your Website inbox) β Settings β "Pre-chat form" tab The pre-chat form asks the visitor for some information (name, email, etc.) before starting the chat, to better qualify your contacts. How it works You turn on the form and choose which fields to show, which are required, their label and their order (by drag and drop). You can also include your custom attributes. When a visitor opens the chat, they fill in this form before the first message, and the answers automatically feed the contact record. Step by step 1. Inboxes β Settings of your "Website" inbox β "Pre-chat form" tab. 2. Turn on "Enable pre-chat form". 3. Write the message shown before the form. 4. In the table, check/uncheck the fields, make them required if needed, edit the label and the placeholder. 5. Reorder the fields by drag and drop to set the order. 6. Click "Update". Good to know - The "Pre-chat form" tab only appears for Website-type inboxes. - Only ask for the essentials: too many fields discourage visitors.
Secure the widget: allowed domains and identity validation (HMAC)
π Where to find it: Inboxes β (your Website inbox) β Settings β "Configuration" tab You can restrict the sites where the bubble can appear (allowed domains) and enable identity validation (HMAC) to guarantee that logged-in visitors really are who they claim to be. How it works The "Allowed domains" limit the widget's display to your real domains. Identity validation relies on a secret key (HMAC): your site signs the logged-in user's identity, and Madyis Hub verifies that signature. If you make validation mandatory, only correctly signed visitors can chat. An option also lets you allow display inside a mobile webview. Step by step 1. Inboxes β Settings of your "Website" inbox β "Configuration" tab. 2. Enter your "Allowed domains" (one per line) then click "Update". 3. Open the "Identity validation" section: copy the secret key (HMAC). 4. Implement the HMAC signature on your site's side with this key (see the linked documentation). 5. Enable "Make validation mandatory" once the signature is in place. 6. Enable "Allow mobile webview" if you embed the widget in a mobile app. Good to know - Only enable mandatory validation AFTER you've tested the signature, otherwise your visitors will no longer be able to write. - Keep the secret key confidential: it must never be exposed in plain text on the browser side.
Add the chat widget to your Shopify store
π Where to find it: Inboxes β Add a channel β Shopify widget The Shopify widget is the same chat as the website widget, but designed for your connected Shopify store: no domain to enter, the integration takes care of everything. How it works Once your store is connected via the Shopify integration, Madyis Hub automatically detects its domain. You create the inbox with the same options as the website widget (color, title, welcome) but without entering a URL. The Shopify theme extension resolves the token on the server side; there's therefore no code to paste: an "Enable chat on my store" button takes you into the theme editor. Step by step 1. First connect your store in Integrations β Shopify (otherwise the channel redirects you there). 2. Inboxes β "Add an inbox" β "Shopify widget" card. 3. Check the detected store shown at the top of the form. 4. Choose the name, color, welcome title and tagline, then "Create". 5. Click "Enable chat on my store" to open the Shopify theme editor and activate the extension. Good to know - If no store is detected, it means the Shopify integration isn't connected: click the offered button to set it up. - No code to copy: activation happens in the Shopify theme editor.
Retrieve the widget code and QR codes after creation
π Where to find it: Inboxes β Add a channel β (after creating the inbox) At the end of creating an inbox, Madyis Hub shows what you need to finalize: the code to paste for the website widget, or a QR code (WhatsApp, Messenger, Telegram), or the callback URL to configure. How it works The final screen adapts its content to the channel: for a website widget, it shows the script to paste; for WhatsApp/Messenger/Telegram, it generates a QR code leading to your channel; for Twilio/SMS/manual WhatsApp, it reminds you of the callback URL and the token. For a Shopify widget, it offers the activation button in the theme editor. Step by step 1. Finish creating an inbox and assign your agents. 2. On the final screen, copy the widget code (website) or note the QR code / callback URL shown. 3. Paste the code or configure the callback depending on the channel. 4. Click "More settings" to adjust the inbox, or "All done" to go to the conversations. Good to know - You can find the widget code and the tokens later in the inbox settings (Settings / Configuration tabs). - The QR code is handy to print in your shop or share on your social networks.
Connect WhatsApp in one click (guided Meta sign-in)
π Where to find it: Inboxes β Add a channel β WhatsApp β WhatsApp Cloud The guided sign-in (Embedded Signup) lets you link your WhatsApp Business account without copying and pasting credentials: a Meta window guides you step by step. How it works When guided sign-in is available, the button opens an official Meta window where you authenticate and choose your WhatsApp Business account/number. Madyis Hub automatically retrieves the credentials and creates the inbox, with no webhook to set up by hand. The manual connection is still offered below as a fallback. Step by step 1. Inboxes β "Add an inbox" β "WhatsApp" card β "WhatsApp Cloud". 2. Click the WhatsApp guided sign-in button. 3. In the Meta window, log in and select your WhatsApp Business account and your number. 4. Let Madyis Hub finish: the inbox is created automatically. 5. If you run into trouble, use the "manual configuration" link shown below. Good to know - Guided sign-in depends on Meta approving the WhatsApp permissions (App Review): depending on the status, only the manual method may be fully operational. - After connecting, a QR code to your WhatsApp is displayed so you can test quickly.
Connect WhatsApp via the Cloud API (manual method)
π Where to find it: Inboxes β Add a channel β WhatsApp β WhatsApp Cloud Link your WhatsApp Business number to Madyis Hub through Meta's official Cloud API by entering the credentials yourself. All your WhatsApp conversations then land in Conversations. How it works You create an app on Meta for Developers, add the WhatsApp product, verify your number and retrieve three pieces of information (the phone number ID, the WhatsApp Business account ID, and a permanent access token). You enter them into Madyis Hub. Finally, you paste the webhook URL and verify token provided by Madyis Hub into the Meta configuration and subscribe to the "messages" field: that is what brings incoming messages through. WhatsApp is a feature of the higher plans (Pro). Step by step 1. Inboxes β "Add an inbox" β "WhatsApp" card β choose "WhatsApp Cloud". 2. Follow the guide at the top of the page: create a Meta app (type "Business") and add the WhatsApp product. 3. In Meta β WhatsApp β API Setup: verify your number, copy the "Phone number ID" and the "WhatsApp Business Account ID". 4. Create a permanent access token (Meta Business β Settings β System users, with WhatsApp permissions). 5. In Madyis Hub, fill in: inbox name, your number (format +44β¦), the phone number ID, the Business account ID and the token, then "Create". 6. Open the "Configuration" tab of the new inbox and copy the webhook URL and verify token. 7. In Meta β WhatsApp β Configuration β Webhooks: paste the URL and the token, then subscribe to the "messages" field. Good to know - Without subscribing to the "messages" field on the Meta side, incoming messages will never arrive: this is the most forgotten step. - Follow the WhatsApp opt-in rules (consent) to avoid your number being banned by Meta. - WhatsApp is reserved for the higher plans: otherwise a padlock is shown.
Connect WhatsApp via Twilio
π Where to find it: Inboxes β Add a channel β WhatsApp β Twilio If you already use Twilio for WhatsApp, you can link your Twilio WhatsApp number to Madyis Hub with your Twilio credentials. How it works You enter your Twilio Account SID and Auth Token (or an API key), along with the WhatsApp number. Madyis Hub creates the inbox and provides a callback URL. You need to paste this URL into Twilio (Messaging β Senders β WhatsApp senders β your number β Messaging Endpoint Configuration) so that incoming messages flow into Madyis Hub. Step by step 1. Inboxes β "Add an inbox" β "WhatsApp" card β "Twilio". 2. Get your Account SID and Auth Token from the Twilio console. 3. Enter the name, your number (format +44β¦) and your credentials, then "Create". 4. Copy the callback URL shown after creation. 5. In Twilio β Messaging β Senders β WhatsApp senders β your number β "Messaging Endpoint Configuration", paste the URL into "Webhook URL for incoming messages" (HTTP Post) and save. 6. Send a test message from a phone: it should appear in your inbox. Good to know - The webhook step (callback URL) is mandatory: without it, incoming messages never arrive. - You can use a Messaging Service SID instead of a number if your Twilio setup requires it.
Set up a WhatsApp inbox: templates, webhook and API key
π Where to find it: Inboxes β (your WhatsApp inbox) β Settings β "Configuration" tab After connecting, the Configuration tab of a WhatsApp inbox lets you sync your message templates, update the API key, review the webhook and verify token, or relaunch the guided sign-in. How it works Madyis Hub queries Meta to retrieve your approved WhatsApp templates (used for campaigns and follow-ups outside the 24-hour window). For inboxes connected manually, the webhook, the verify token and the API key are displayed and editable. For inboxes using guided sign-in, a button lets you relaunch/reconfigure the connection. An "Account status" tab also shows the number's health (sending tier, etc.). Step by step 1. Inboxes β Settings of your WhatsApp inbox β "Configuration" tab. 2. Click "Sync templates" to retrieve your templates approved by Meta. 3. For a manual connection: copy the displayed webhook/token, or paste a new API key then "Update". 4. For a guided connection: use "Reconfigure" to relaunch the Meta window. 5. Check the "Account status" tab to verify the health and sending tier of your number. Good to know - Sync your templates before launching a WhatsApp campaign, otherwise your templates will not be offered. - An image header is often mandatory for certain templates: an incomplete template can fail silently.
Connect Facebook Messenger
π Where to find it: Inboxes β Add a channel β Facebook Link your Facebook Page to receive and reply to Messenger messages directly in Madyis Hub. Connecting the Page also links the Instagram account attached to it. How it works You log in via the Facebook button: a Meta window asks for permission to manage your Pages' messages (and the linked Instagram accounts). Madyis Hub lists your Pages; you choose one and create the inbox. Messenger messages then arrive in Conversations. Facebook/Instagram are channels of the higher plans (Pro) and require the Meta app to be approved. Step by step 1. Inboxes β "Add an inbox" β "Facebook" card. 2. Click the Facebook connect button and authorize the requested access. 3. Choose the Facebook Page to connect from the list. 4. Give the inbox a name, then "Create an inbox". 5. A Messenger QR code is displayed for testing; send yourself a message. Good to know - A single Facebook connection also links the Instagram attached to the Page: no need to connect Instagram separately. - This channel requires advanced access approved by Meta; until then, its public use is limited. - If the connection breaks (expired token), reconnect the Page from the inbox settings.
Receive Instagram direct messages (DMs)
π Where to find it: Inboxes β Add a channel β Facebook Instagram private messages (DMs) arrive in Madyis Hub by connecting the Facebook Page linked to your professional Instagram account. How it works In Madyis Hub, Instagram has no standalone card: you go through the "Facebook" card. By authorizing access, you also grant the Instagram permissions (instagram_basic, instagram_manage_messages), which brings the DMs of the Instagram account linked to the Page into Conversations. The "Instagram only" path is deliberately absent because it is a dead end on the Meta side. Step by step 1. Make sure your professional Instagram account is linked to your Facebook Page (in Meta Business). 2. Inboxes β "Add an inbox" β "Facebook" card. 3. Log in and accept the permissions (Pages and Instagram). 4. Choose the Page linked to your Instagram account, then create the inbox. 5. Test by sending an Instagram DM: it should appear in Conversations. Good to know - If a duplicate Instagram inbox is detected, Madyis Hub warns you: do not create two inboxes for the same Instagram account. - Like Facebook, this channel depends on Meta advanced access (Pro plan).
Connect a Gmail / Google Workspace mailbox
π Where to find it: Inboxes β Add a channel β Email β Google Manage your Gmail or Google Workspace emails as conversations in Madyis Hub, through a secure Google connection (OAuth). How it works The Google option connects via OAuth: you sign in with your Google account and authorize Madyis Hub to read and send your emails. Every email you receive becomes a conversation, and your replies go back out from that address. This option only appears if the Google connection has been set up on the platform side. Step by step 1. Inboxes β "Add an inbox" β "Email" card. 2. Choose the "Google" provider. 3. Click "Sign in with Google" and grant the requested access. 4. Give the inbox a name and confirm. 5. Send yourself a test email to check that it comes through. Good to know - If the Google button is missing or not working, use the manual IMAP/SMTP connection with an app password. - If access expires, a "Reconnect" banner appears in the inbox settings.
Connect a Microsoft / Outlook mailbox
π Where to find it: Inboxes β Add a channel β Email β Microsoft Manage your Outlook / Microsoft 365 emails in Madyis Hub through a secure Microsoft connection (OAuth). How it works The Microsoft option connects via OAuth: you sign in with your Microsoft account and authorize Madyis Hub to read and send your emails. Incoming emails become conversations, and your replies go back out from that address. The option only appears if the Microsoft connection has been set up on the platform side. Step by step 1. Inboxes β "Add an inbox" β "Email" card. 2. Choose the "Microsoft" provider. 3. Click to sign in with Microsoft and grant access. 4. Name the inbox and confirm. 5. Check reception with a test email. Good to know - If the Microsoft option isn't offered, use the manual IMAP/SMTP connection. - A "Reconnect" banner appears if the authorization expires.
Connect a mailbox manually (IMAP/SMTP)
π Where to find it: Inboxes β Add a channel β Email β Other providers For any mail service (including Gmail without OAuth), connect your email manually with the IMAP (receiving) and SMTP (sending) settings. How it works You first create the inbox with its address, then enter the IMAP (receiving) and SMTP (sending) servers with host, port, username and password. IMAP brings incoming emails in as conversations; SMTP sends your replies. Sending (SMTP) is decoupled from receiving (IMAP) for manual inboxes: you can configure sending on its own. A "forwarding" option also lets you forward your emails to a dedicated Madyis Hub address. Step by step 1. Inboxes β "Add an inbox" β "Email" card β "Other providers". 2. Enter the inbox name and the email address, then create. 3. "Configuration" tab β IMAP section: tick "Enable", enter the server address (e.g. imap.gmail.com), the port (993), the username, the password, and enable SSL. 4. SMTP section: enter the sending server (e.g. smtp.gmail.com), the port, the username and the password. 5. Save, then send yourself a test email. Good to know - For Gmail, use an "app password" (not your usual password), otherwise you'll get "Invalid credentials". - If you only want to forward your emails, use the forwarding address shown in the Configuration tab instead of IMAP.
Connect an SMS channel
π Where to find it: Inboxes β Add a channel β SMS Send and receive text messages in Madyis Hub through a telephony provider (Twilio or Bandwidth). How it works You choose the provider, enter your credentials (Account SID / Auth Token for Twilio) and the number. Madyis Hub creates the inbox and provides a callback URL to paste at your provider so you can receive incoming texts. Text messages become conversations and your replies go back out by SMS. Step by step 1. Inboxes β "Add an inbox" β "SMS" card. 2. Choose the provider (Twilio or Bandwidth). 3. Enter the name, your number and your credentials, then "Create". 4. Copy the callback URL shown and paste it into your number's configuration at the provider. 5. Send a test text to check that it comes through. Good to know - You can set a sender identifier (alphanumeric Sender ID) in the Configuration tab, send-only, depending on your country's rules. - Some countries (e.g. ES/FR) require pre-registration of the number/sender; check with the provider.
Connect a Telegram channel
π Where to find it: Inboxes β Add a channel β Telegram Link a Telegram bot to Madyis Hub to receive and reply to your customers' Telegram messages. How it works You create a Telegram bot with @BotFather, which gives you a "bot token". You paste this token into Madyis Hub; it sets up the link automatically. Messages sent to your bot become conversations, and a QR code to your bot is shown so you can share it easily. Step by step 1. In Telegram, open @BotFather and create a bot with /newbot, then copy the token provided. 2. Inboxes β "Add an inbox" β "Telegram" card. 3. Paste the bot token into the field provided. 4. Click "Create". 5. Share the bot (or its QR code) with your customers and test by writing to it. Good to know - The token is confidential: do not share it publicly. - The bot's name and image are changed on the Telegram side via @BotFather.
Connect a LINE channel
π Where to find it: Inboxes β Add a channel β LINE LINE is a messaging app widely used in Asia (Japan, Thailand, Taiwan, etc.). Madyis Hub lets you connect your LINE official account to receive and reply to your customers' messages directly in your inbox, just like any other channel. How it works You create a "messaging channel" in the LINE Developers console (Messaging API), then copy three identifiers into Madyis Hub: the channel ID, the channel secret and the access token. Madyis Hub then connects to LINE via webhook: each LINE message arrives as a conversation, and your replies go back out to LINE. Step by step 1. Create an account on LINE Developers (developers.line.biz) and a Provider. 2. In the LINE console, create a "Messaging API" channel and note the Channel ID, the Channel secret, and generate a Channel access token. 3. In Madyis Hub, open "Inboxes" β "Add a channel" β choose "LINE". 4. Give your inbox a name, then paste the channel ID, the channel secret and the access token. 5. Confirm: the LINE inbox is created. Then copy the webhook URL provided into your LINE Developers channel settings and enable webhook usage. 6. Choose the agents who will handle this channel, then send yourself a test message from LINE to check reception. Good to know - You need a "LINE Official Account" linked to the Messaging API channel; a personal LINE account is not enough. - Remember to turn off LINE's default auto-replies to avoid double responses. - The access token can expire or be regenerated: if reception stops, recreate the token and update it in Madyis Hub.
Create an API channel (custom integration)
π Where to find it: Inboxes β Add a channel β API The API channel lets you connect a custom message source (your own app, a channel that isn't listed) to Madyis Hub via the API and webhooks. How it works You create an "API" inbox with a name and, optionally, a webhook URL (Madyis Hub will send events there). Madyis Hub generates an inbox identifier and an HMAC token. Your app sends incoming messages to the Madyis Hub API and receives your replies through the webhook. HMAC can be made mandatory to secure the exchanges. Step by step 1. Inboxes β "Add inbox" β "API" card. 2. Give the inbox a name and, if needed, a webhook URL (starting with http). 3. Click "Create". 4. In the "Configuration" tab, copy the "inbox identifier" and the HMAC token. 5. Connect your app to the API using these credentials; enable mandatory HMAC verification if needed. Good to know - The API channel is meant for developers: keep it for when no standard channel fits. - The webhook secret can be reset from the settings if needed.
TikTok channel (coming soon)
β³ Coming soon. This feature is arriving soon in Madyis Hub β here's how it will work. π Where to find it: Inboxes β Add a channel β TikTok The TikTok channel appears in the list but can't be enabled yet: it's marked "Soon". How it works The TikTok card stays visible but greyed out as long as the feature isn't open on the platform (provider-side setup required). It's shown in beta to indicate that it's on the way. Step by step 1. Inboxes β "Add inbox": spot the "TikTok" card marked "Soon". 2. No action is possible for now: come back later once the channel is open. Good to know - A "Soon" card means the channel isn't available yet, not that there's an error.
General settings of an inbox
π Where to find it: Inboxes β (your inbox) β Settings β "Inbox settings" tab The general tab of an inbox lets you change its name and avatar, the greeting message, the sender name, the linked help center, and preferences such as "lock to a single conversation" or email continuity. How it works These settings apply to the selected inbox. The sender name (friendly name or business name) defines how your messages appear. The linked help center lets you suggest articles in the widget. "Lock to a single conversation" keeps the same contact in one ongoing conversation (useful for WhatsApp/SMS/Messenger). Email continuity keeps the discussion going by email when the visitor leaves the site. Step by step 1. Inboxes β click the Settings icon of the inbox you want. 2. Stay on the "Inbox settings" tab. 3. Edit the name, upload an avatar, choose the sender name type (friendly / business name). 4. Link a help center if you have one, and set the preferences (single-conversation lock, greeting message, email collection, email continuity). 5. Click "Update". Good to know - The visible tabs change depending on the channel: some options (pre-chat, email templates, WhatsApp status) only appear for the relevant channels. - Only administrators can see these settings.
Assign agents and set up auto-assignment for an inbox
π Where to find it: Inboxes β (your inbox) β Settings β "Collaborators" tab Choose which agents receive an inbox's conversations, and enable auto-assignment to automatically distribute new conversations. How it works In the Collaborators tab, you add the agents allowed on the inbox. You can enable auto-assignment: Madyis Hub then automatically assigns each new conversation to an available agent, optionally with a limit per agent. An assignment/capacity policy can be linked to fine-tune the distribution. Step by step 1. Inboxes β Inbox settings β "Collaborators" tab. 2. Add the agents who should see and handle this inbox. 3. Enable "Auto assignment" if you want to distribute conversations without any intervention. 4. Set the conversation limit per agent if needed. 5. Save your changes. Good to know - Without auto-assignment, conversations stay "unassigned" until an agent picks them up. - For finer distribution, link an assignment/capacity policy (account settings).
Phone calls in Madyis Hub: what you can do
π Where to find it: Inboxes β Add a channel β Voice Madyis Hub adds a real phone system to your customer service: your agents make and receive calls right from the browser (a "softphone"), with no software to install and no hardware to buy. Everything runs through your Twilio account and a phone number. How it works Madyis Hub connects to Twilio, a telephony provider. When a call comes in or goes out, Madyis Hub links two call "legs" in a mini-conference: your customer's leg (their phone line) and your agent's leg (the microphone and speaker on their computer). Each call automatically creates a conversation and a contact, just like a regular message. You need a microphone and a recent browser. Step by step 1. Check that your plan is at least "Pro": calls are a Pro feature. 2. Create (or retrieve) a Twilio account and a Twilio phone number. 3. In Madyis Hub, go to "Inboxes" then "Add a channel" and choose "Voice". 4. Enter your Twilio credentials (number, Account SID, Auth Token, API Key SID, API Key Secret) and confirm. 5. Assign the agents who will be able to make and receive calls. Good to know - Calls aren't free: Twilio charges for the connection (around 1 cent per minute for a widget call, more for a call to a real number). Keep an eye on your Twilio balance. - The browser microphone must be allowed: the first time, your browser will ask for microphone access, so accept it. - Calls from your website widget require a page on HTTPS (a secure connection). - There is no built-in minute counter in Madyis Hub yet: track your usage on the Twilio side.
Turn on calls: create your Voice channel with Twilio
π Where to find it: Inboxes β Add a channel β Voice The Voice channel is what lets your agents make phone calls from Madyis Hub. To create it, you connect a Twilio number and your Twilio access keys. How it works The Voice channel relies on a Twilio channel. When you turn it on, Madyis Hub automatically configures the "webhooks" on Twilio (the addresses Twilio calls when a call comes in or changes state) and creates the softphone application needed. The API Key is used only to build the secure token for the browser softphone, while the Account SID and Auth Token are used for server-side operations. Step by step 1. Sign in to your Twilio dashboard and note your Account SID and your Auth Token. 2. In Twilio, create an "API Key": you will get an API Key SID and an API Key Secret (the secret is shown only once, so copy it right away). 3. Buy or retrieve a voice-capable Twilio phone number, in international format (e.g. +33XXXXXXXXX). 4. In Madyis Hub: "Inboxes" β "Add a channel" β "Voice". 5. Fill in the number, the Account SID, the Auth Token, the API Key SID and the API Key Secret, then confirm. 6. Add agents to this inbox. Good to know - The number must be in international format with the country code (e.g. +33β¦), otherwise creation fails. - If saving fails, it's almost always a Twilio key that was copied wrong: double-check the API Key Secret (shown only once). - A number using a Twilio "Messaging Service" is not voice-capable: use a real number that can be dedicated. - The "Voice" option only appears in the channel list if your Pro plan is active.
Turn on calls for an existing Twilio inbox
π Where to find it: Inboxes β (your Twilio inbox) β Call settings tab If you already use a Twilio channel (for SMS, for example), you can turn on calls there without creating a new inbox. How it works The call feature layers on top of an existing Twilio channel. A simple "Turn on calls" switch triggers, in the background, the configuration of the Twilio webhooks and the creation of the softphone. If the inbox doesn't have an API key yet, Madyis Hub will ask you for it at that point. Step by step 1. Go to "Inboxes" and open your Twilio inbox. 2. Open the call settings tab ("Call settings" / "Voice"). 3. Turn on the "Turn on calls" switch. 4. If asked, enter your Twilio API Key SID and your API Key Secret. 5. Choose how incoming calls are distributed (see the dedicated article), then save. Good to know - Turning the switch off cleanly removes the voice configuration on Twilio without deleting your inbox. - Once turned on, two webhook addresses (call URL and status URL) are shown: Madyis Hub configures them automatically, so you normally have nothing to paste into Twilio.
Make a call: the "Call" button
π Where to find it: Conversations β (the contact's profile) β "Call" button; or Contacts β (a contact) β "Call" button From the profile of a contact who has a phone number, a "Call" button lets you start the call in one click, right from the browser. How it works When you click "Call", Madyis Hub calls the contact's number via Twilio and connects your microphone to the call. A floating call card opens and you follow the status live ("connectingβ¦", "ringing", then the call timer). The call automatically creates or reopens a conversation with that contact. Step by step 1. Open a conversation or the profile of a contact who has a phone number. 2. Click the "Call" button (phone icon). 3. If you have several Voice numbers, choose the one to use in the window that appears. 4. Allow the microphone if the browser asks, then speak. 5. Click the red button to hang up. Good to know - The button only appears if the contact has a phone number AND at least one Voice inbox is configured. - The outgoing call is tied to you: it doesn't appear for the other agents. - Mind consent and cold-calling rules (e.g. Bloctel in France) before calling a prospect. - Check that your microphone works: if you hear nothing, see the article about choosing the speaker.
Receive calls: ringing and distribution to agents
π Where to find it: Inboxes β (your Voice inbox) β Call settings tab β Call distribution When someone calls your number, a call card rings for your online agents. You choose whether the call rings for everyone or only for the assigned agent. How it works When a call arrives, Madyis Hub creates a conversation and shows an "incoming call" card with a ringtone. There are two modes: "Ring all agents" (all online agents are prompted, the first to pick up takes the call and the card disappears for the others) or "Automatic assignment" (the call only rings for the agent the conversation is assigned to). Step by step 1. Open your Voice inbox in "Inboxes". 2. Go to the call settings tab. 3. Under "Call distribution", choose "Ring all agents" or "Automatic assignment". 4. Save. Make sure your agents are "Online" to receive calls. 5. When a call comes in, click the green button to answer, or red to decline. Good to know - A call only rings for agents marked "Online". - In "Ring all agents" mode, the first to pick up wins the call; the others see their card disappear automatically. - Declining a call that was specifically directed to you (after a transfer) sends it back to the whole team instead of losing it.
During the call: mute the mic, put on hold, choose the speaker
π Where to find it: (during a call) Floating call card β Mute / Hold / Speaker buttons During a call, a floating card brings together the essential controls: mute your mic, put the caller on hold, and choose/test the speaker. How it works The "Mute" button turns off your microphone on the browser side (the caller no longer hears you, but you still hear them). "Hold" puts the other participant on hold on the server side (they wait, and you can resume whenever you want). The speaker selector lets you route the call's sound to the headset or speakers of your choice, with a "Test sound" button. Step by step 1. Once the call is answered, find the row of buttons on the call card. 2. Tap "Mute" to turn off your mic, and again to turn it back on. 3. Tap "Hold" to put the caller on hold, and "Resume" to come back. 4. Tap the speaker icon to choose the output device and click "Test sound" if needed. 5. Hang up with the red button. Good to know - If you only hear the call through a headset, open the speaker selector and choose the right device. - The speaker selector only appears if your browser can list audio devices. - The mute button acts on YOUR mic; hold acts on the caller: they are not the same thing.
Transfer a call to a colleague
π Where to find it: (during or before picking up) Floating call card β Transfer button β choose an agent You can hand a call over to a colleague, either during the call or even before picking up (redirect the incoming call to the right person). How it works The transfer sends the call to a specific agent: it rings only on their screen and disappears from everyone else's. If you transfer during a call, you leave the conversation once your colleague has been briefed. Only agents currently "Online" (other than you) appear in the transfer list. Step by step 1. On the call card (active call or ringing call), click "Transfer". 2. Choose the agent from the list of online colleagues. 3. The call starts ringing on their end; they pick up to take over. 4. You then leave the call automatically. Good to know - You can redirect an incoming call WITHOUT picking it up: use "Transfer" directly on the ringing card. - If no colleague is online, the transfer list is empty: ask an agent to set themselves "Online". - Transferring an OUTBOUND call (one you started) may not show up for the targeted colleague: best used for incoming calls and widget calls.
The floating call card: shrink it and move it
π Where to find it: (during a call) Floating call card β Shrink button / drag the header All calls (incoming, outgoing, from the widget) appear in the same small floating window that you can move around the screen and shrink so you can keep working the conversation during the call. How it works The call card stays visible at all times while a call is in progress, so you can hang up whenever you want. You can drag it by grabbing its header, and shrink it into a mini card that keeps the contact's name, the duration and the "hang up" button. The sound is never cut off when you shrink or move the card. Step by step 1. During a call, grab the top bar of the card to move it wherever you want. 2. Click the arrow to shrink it into a mini card and keep your screen clear. 3. Click again to expand it back and get all the buttons back. 4. Browse freely through the conversation: the call keeps going. Good to know - The card never closes on its own during a call: you always keep the "hang up" button within reach. - Shrinking the card does not interrupt the communication, it is just a compact display.
"Call now" button in your website widget
π Where to find it: Inboxes β (your Voice inbox) β Call settings tab β Enable calls Your visitors can call you live from your website's chat widget, in one click, without dialing a number: a "Call now" button starts a voice call right in the browser. How it works When calls are enabled, the chat widget shows a "Call now" button on its home page. The visitor clicks, their microphone is connected, and the call rings your online agents like an incoming call. The visitor needs no phone number: everything goes through the browser (WebRTC). The button only appears if your team is online, on a secure page (HTTPS). Step by step 1. Enable calls on the inbox that serves your website widget (Call settings tab β "Enable calls"). 2. Make sure your website is on HTTPS (padlock in the browser). 3. Check that your business hours are set and that at least one agent is "Online". 4. Reload your website: the "Call now" button appears on the widget's home screen. 5. Run a test from another device to confirm the sound works both ways. Good to know - The button is hidden automatically if no agent is online, if the site is not on HTTPS, or if calls are not enabled. - If you don't see the change, it is often the widget cache on your site (service worker / PWA): clear the cache, it is not a Madyis Hub bug. - A call through the widget is still billed by Twilio (β 1 cent/minute of conference): it is not entirely free. - If a visitor leaves the page mid-call, Madyis Hub ends the call cleanly on the server side.
Log a call's outcome and sort the contact
π Where to find it: (at the end of an answered call) "Call outcome" window At the end of a call you took, a small window lets you log what happened and sort the contact (folder, pipeline stage, note) in a single step. How it works When an answered call ends, Madyis Hub shows a wrap-up card. You choose an outcome (answered, voicemail, no answer, to call back), you can move the contact into a folder, change their stage in the "Leads" pipeline, and add a note. Each action is independent: you fill in what you want, or you click "Skip". The note is added as a private note in the conversation. Step by step 1. End a call you answered. 2. In the "Call outcome" window, select the outcome. 3. If needed, choose a contact folder and/or a pipeline stage. 4. Add a free-text note, then click "Save" (or "Skip" to ignore). Good to know - The stages offered come from your real "Leads" pipeline: create your stages beforehand to find them here. - This card only appears for calls actually answered, not for a transferred call you handed off to a colleague. - The note is private: it stays visible to your team, not to the customer.
Call recording
β³ Coming soon. This feature is coming soon to Madyis Hub β here's how it will work. π Where to find it: Inboxes β (your Voice inbox) β Call settings tab Madyis Hub can record calls and attach the audio recording to the conversation. This option is currently disabled by default to keep costs under control. How it works The recording engine exists: Twilio records the conference, then Madyis Hub downloads the audio file and attaches it to the right call via a background job. Recording is currently turned off by default because Twilio bills recording and storage by the minute. Turning it back on is a simple change on the configuration side. Step by step 1. Check your plan: recording is highlighted on the most complete offer. 2. Contact Madyis Hub support to request that recording be enabled on your account. 3. Prepare your compliance: inform your callers and plan a retention period. 4. Once enabled, the recording will appear automatically in the call's conversation. Good to know - Recording incurs extra Twilio costs (recording + storage per minute). - Compliance: recording a call generally means informing the other party and respecting a retention period (GDPR). - As long as it is not enabled for your account, no call is recorded.
Set the opening hours of an inbox
π Where to find it: Inboxes β (your inbox) β Settings β "Business hours" tab Set your availability hours by day: outside these time slots, an away message is shown to customers. How it works You enable business hours, choose the time zone, and define the time slots day by day. The widget and channels then show your availability; outside hours, the unavailability message you write is shown to the customer to manage their expectations. Step by step 1. Inboxes β Inbox settings β "Business hours" tab. 2. Enable business hours. 3. Select your time zone. 4. For each day, set the opening time slots (or mark it as closed). 5. Write the unavailability message shown outside hours, then save. Good to know - Double-check the time zone: it's the most common mistake. - The away message is a good chance to state a realistic response time.
Enable the satisfaction survey (CSAT) on an inbox
π Where to find it: Inboxes β (your inbox) β Settings β "CSAT" tab The satisfaction survey (CSAT) asks the customer to rate the exchange once the conversation is resolved. How it works You enable CSAT and choose the display (emojis or stars) and the message. When a conversation is resolved, the customer receives the survey. You can also limit sending based on label rules. For WhatsApp, the survey goes through a message template (to be approved by Meta), and an AI analyzer can help you check that the template is indeed of the "utility" type. Step by step 1. Inboxes β Inbox settings β "CSAT" tab. 2. Enable the satisfaction survey. 3. Choose the display type (emojis/stars) and write the message. 4. Set the sending rules by label if needed. 5. For WhatsApp, fill in the template text, the language and the button, then save (the template will be submitted to Meta). Good to know - On WhatsApp, the template must be approved by Meta: its status (pending / approved / rejected) is shown. - Limit CSAT to relevant conversations via label rules so you don't over-solicit.