You can add messaging functionality to your Android or iOS app.
This article includes the following topics:
About messaging for Android and iOS
On Zendesk mobile apps, messaging functionality is provided through new Android and iOS SDKs. You can customize and configure an SDK’s appearance and other settings via Admin Center, then provide your developer with a Channel ID that they will need to complete the integration following this official developer documentation.
Creating a new Android or iOS channel for messaging
If you want to configure the Android or iOS SDKs you’ll need to create an Android or iOS channel in the Zendesk Admin Center and assign it to a brand before you can customize and configure it, as described below.
To create a new Android/iOS channel
- In Admin Center, click
Channels in the sidebar, then select Messaging and social > Messaging.
- Click the Add Channel button, then select Android or iOS.
- On the Add Android/iOS page, configure each of the sections:
- Start with the basics: Enter a channel name, then use the dropdown to select a brand. Click Next.
- Install in your app: You will be presented with the Channel ID that you or your development team can use to install the Android or iOS SDK into your app. You will also be provided with a link to detailed instructions that you and your development team can use to complete the installation. Click Next.
- Make it your own: Select a Primary color by entering a hexadecimal number or using the picker. You can refine your color selections later, in the Basics tab. Click Next.
Customizing and configuring the Zendesk SDKs for Android and iOS
The Zendesk SDK includes multiple components that you can customize to best represent your business.
To configure messaging for Android or iOS
- In Admin Center, click
Channels in the sidebar, then select Messaging and social > Messaging.
- Hover your cursor over the brand you want to update, click the options icon
(
), then click Edit.
- Click the tab with the components you want to customize. Follow the links
below for more detailed information on the options for that tab:
- Basics (channel name)
- Style (SDK appearance)
- Responses (Business hours and bot enablement)
- Notifications (Push notification settings)
- Authentication (Security settings)
- Installation (Channel ID and help center embed)
The Basics tab
The Basics tab includes an editable Channel name field, and a link to the SDK's Flow Builder configuration page.

The Channel name field is automatically populated with the brand name. To make it easier to find in your channels list, you may want to update it to something more unique.
Click the Save settings button after making any updates.
The Style tab
The Style tab includes the appearance-related components of the SDK for Android or iOS.
In the Frame section, you can update the following:
- Primary color , the main color of the launcher button and SDK header. Enter a hexadecimal number, or click the color swatch to open a color picker.
- Message color, the color of the bubble around customer messages. Enter a hexadecimal number, or click the color swatch to open a color picker.
- Action color, the color of any buttons or tappable elements in the conversation, such as Quick Reply messages. Enter a hexadecimal number, or click the color swatch to open a color picker.
- Title, text which appears at the top of the SDK's conversation screen – usually your business or brand name.
- Description (optional) a short piece of text under the title. This can be information you want to share, or a tagline, for example. Enter the description in the text box.
The Responses tab
The Responses tab allows you to customize the default messaging response, which greets your customers when they initiate a Web Widget interaction. Here, you can apply a support schedule to create separate responses for your working hours, customize automated responses, and enable a conversation bot.
Applying Support schedules to the channel
When you apply an established Support schedule to your mobile channel, you can create different responses for customers based on whether they contact you during your set office hours, or outside of those hours. You can apply any of your Support schedules to the responses.
To apply a business hours schedule to your mobile channel
- In Admin Center, click
Channels in the sidebar, then select Messaging and social > Messaging.
- Click the name of the channel you want to edit. The Edit channel page opens.
- Click the Responses tab.
- Expand the Business hours section, and use the dropdown to select a saved Support schedule. If you have not created a Support schedule, skip to step 5.
- Expand the Response during business hours section and update as described in Customizing the default messaging response. Repeat for the Response outside of business hours section, if applicable.
- Click Save settings.
If you remove the business hours schedule, the Response during business hours settings are applied.
Customizing the default messaging response
Whether you are using the business hours option or not, you can customize the response your customers receive when they launch a conversation.
To customize your automated response
- In Admin Center, click
Channels in the sidebar, then select Messaging and social > Messaging.
- Click the name of the channel you want to edit. The Edit channel page opens.
- Click the Responses tab.
- Expand the Response during business hours section. The default messaging response information is displayed in the text boxes.
- Update the following:
- First message: Enter the text that appears when a customer launches the Web Widget.
-
Customer details: Use the drop-down to select the
information (Name and/or Email) you want to request from
the customer before handing them off to an agent.
Customers must enter information into these fields
before behind handed off to an agent.Note: These settings may be impacted by your end-user authentication configuration.
- Follow-up message: Enter the text that appears after the customer submits their details, if enabled.
- If using business hours, expand the Response outside of business hours section and update the information as described in the previous step.
- Click Save settings.
Enabling a messaging bot
At the bottom of the tab, you have the option to add a bot to your messaging configuration, which allows you to offer highly customized and automated conversation bots to your customers.
See Using a messaging bot for web or mobile channel.
If you have already enabled a messaging bot, you have the option of disabling it and returning to the default messaging response.
The Notifications tab
The Notifications tab is where you can set up push notifications for the Zendesk SDK for Android or iOS.
For Android, provide Firebase Cloud Messaging "Key" and "Sender ID":
For iOS, upload the .p12 file from APNs. You'll also be asked for the certificate password:
To generate the .p12 file, you must be logged in to your Apple Developer account. If you don’t have a developer account yet, you can enroll here.
- Log in to Apple Developer Member Center, and navigate to the certificates list.
- Click the + button at the top of the page to create a new certificate, and select Apple Push Notification service SSL (Sandbox & Production).
- Select your app ID from the dropdown and click continue.
- Follow the instructions to generate a Certificate Signing Request (CSR) using Keychain Access, and upload it to generate your certificate.
- Once the certificate is ready, download it to your computer and double-click it to open it in Keychain Access.
- Right click on the certificate you created, and select Export "Apple Push Services: {your-app-id}".
- Choose a password, if desired, and save the .p12 file to your computer.
The Authetication tab
Obtaining the Channel ID for installation
To install messaging on your mobile app, your you'll need to provide your developers with a Channel key. You can find the Channel key, along with a link to the official Zendesk developer documentation, in the Installation tab.

To obtain the Channel ID
- In Admin Center, click
Channels in the sidebar, then select Messaging and social > Messaging.
- Hover your cursor over the brand you want to update, click the options icon
(
), then click Edit.
- Click the Installation tab.
- Under Channel ID, click the Copy button to copy the key to your clipboard, and send this information to your developers.
15 Comments
hi.. i have some problem with zendesk messaging sdk for android..
our existing apps using okhttp3 and we cant upgrading this because its risk..
sdk messaging using okhttp4.. when we force okhttp4 to okhttp3, messaging sdk is not working..
how to implement android messaging sdk in existing apps with okhttp3?
To use okhttp3, the latest version of the messaging sdk that you'll be able to use is 5.0.1 and 3.1.0 for the chat sdk. Any later versions will require okhttp4.
Hope this helps!
Hey, is it possible to add a header or a close button with the messaging SDK?
My widget is working fine, but no header and no close button.
Unfortunately as these SDK's are still very new we have limited ability for customizing them at this time, we talk about it here.
Eric Nelson
So it is not possible to add a Back or Close(x) button to close the widget?
Right now the only way to close it is to scroll through all the conversation to the end and then it will close this Modal, it is bad user experience.
Not that I'm aware of as these SDK's are still pretty new, though I'm looping in the dev team who owns these SDK's to confirm. I'll let you know if they say otherwise.
Hey Zendesk team.
I'm unable to get the push notifications to work in iOS. I had a ticket open about this #9868566 and unfortunately it has been closed.
As far as I can see, the Zendesk Messaging doesn't support the sandbox p12, which makes it hard to test in debug mode.
I have tried installing `AppStore` provisioning profiles signed builds (via TestFlight) and `AdHoc` provisioning profiles signed builds (via Xcode) in my iPhone, which should take the production p12. However, I'm still unable to see any push notifications.
I'm 100% sure I uploaded a valid production p12 file as I use the same one in other push notifications services that work fine.
I'm using the SDK v2.1.0 and have followed those instructions https://developer.zendesk.com/documentation/zendesk-web-widget-sdks/sdks/ios/push_notifications/. I'm also testing with a sandbox Zendesk account and am able to display the chat without issues.
I'd like to know what I'm missing here. My app hasn't implemented end user authentication. It should still work as the push notifications feature was present before end user auth, right? First of all, could you please let me know when push notification would be delivered? It would be great to see a demo video showing push notifications working in an iOS app (and Android too) as well as a demo repo.
Thanks in advance!
Danilo
Eric Nelson
How can we track dismissal of zendesk ui view?
Danilo Figueiredo I'm having the same notifications issue on my production chat environment. There's a thread about it here: https://support.zendesk.com/hc/en-us/community/posts/4420341629850-New-Apple-Intermediate-certificate-for-Push-Notifications?page=1#community_comment_4422847761178
Hopefully if more people complain they look into it faster, but you never know with Zendesk and their poor technical support.
Hi , Facing Few issue with Mobile Messaging , trying to contact the customer support , but no resolution till now even no ETA for same has been provided.
Issues - 1. Bot responses being added on top of your first reply and not giving the option to continue - Android 11 Samsung
2. Crash For Android 12 via selecting image from Camera from Zendesk AttachmentActivity
Logs
Caused by java.lang.IllegalArgumentException
Couldn't find meta-data for provider with authority com.zendesk.native_messaging.fileprovider
androidx.core.content.FileProvider.parsePathStrategy (FileProvider.java:662)
androidx.core.content.FileProvider.getUriForFile (FileProvider.java:441)
zendesk.messaging.android.internal.conversationscreen.attachments.AttachmentActivity.startCamera (AttachmentActivity.kt:220)
Danilo Figueiredo Were you able to get zendesk messaging push notifications working? Having the same problems right now as your last message and at this point, not sure if it's a me problem or a Zendesk problem
On the android sdk, when talk to a human is clicked, it does connect the user to a human support representative.

Hi, can we install 2 different bot in 1 android apk?
for example: on the home screen I will show bot1, then if the user click on the payment section it will show bot2.
Hi Zendesk team,
I would like to know how my team can add "back" button to messaging. Based on above comment, it seems that some people have while some people don't? Thank you.
As it turns out the actual back button is not yet supported in Flow Builder. You can engage on similar requests. Conversations with a high level of engagement ultimately get flagged for product managers to review when they go through roadmap planning.
Please sign in to leave a comment.