Launching your Messenger app is a big deal! To make the review and approval process as smooth as possible, take some time to review our pre-launch checklist before your submit your app for review. Most of the things listed are not required, but they are all things your should consider before submitting your app.
There are many, many, many different approaches to building a Messenger app. Here are a few best practices we think you might find helpful:
Authenticity: Whatever the purpose of your Messenger app, it has a unique voice. Consider how best to reflect that in the style, tone, and language of your messages.
Personalization: Where appropriate, try to personalize the messages you send to people on Messenger. Some features, like the welcome screen's greeting text, can be personalized with built-in template strings. For personalizing other things, take advantage of the User Profile API.
Notifications: Messenger is the perfect place to send people notifications about many different things, from order status updates to reservation confirmations and more. If your Messenger app offers notifications, be sure to include a way for people to manage the frequency or turn off notifications and alerts.
Platform policies & Community Standards: The fastest way to get a Messenger app rejected is by submitting one that violates our Platform policies or the Community Standards. Be sure to review these. Following them is the first step in getting your app approved, and the first step in creating a happy experience for everyone.
Once your Messenger app is in production, lots of unexpected things can occur. Make sure you know what is happening with your app by updating the following notification settings:
Email notifications: Check that your email notification settings are correct. If your email address is incorrect, you will miss important updates about your Messenger app. You should select "All notifications, except the ones you unsubscribe from".
Policy enforcement events: Subscribe your app to receive messaging_policy_enforcement
webhook events. This is one of the places we will notify you if your Messenger app is in violation of one of our Platform policies.
The Messenger Platform offers many ways for you to create unique experiences in Messenger. Before you submit your Messenger app, identify if any of the following core features are missing from your app, and if so, consider including them:
Messages Templates: Templates offer a great way to structure messages, and offer a much richer conversation than plain text.
Persistent Menu: There are a lot of ways to use the persistent menu, such as providing navigation or calling out key features. You can even make it the sole way of interacting with your app. It is also a great way to allow people to recover and restart conversation flows if an unexpected error occurs.
Quick Replies: Asking a person to reply with plain text can make it difficult for your app to anticipate and properly respond to their message. Quick replies allow you to limit the possible responses when needed to create a more seamless experience.
Messenger Webview: Some features can be difficult to offer inside a conversation. The Messenger Platform supports a full webview so your Messenger app can present complex user interfaces when needed.
Your onboarding flow has a huge impact on whether a person on Messenger will choose to interact with your Messenger app. To ensure the best experience for people who are new to your app, take advantage of these key features of the welcome screen:
Get Started Button: Ensure your app sends a brief welcome message when it receives the messaging_postbacks
event from the get started button. This message should introduce newcomers to your Messenger app, and outline the features it has to offer,
Greeting text: The greeting text is your first opportunity to present what your app has to offer and establish the style and 'voice' of your brand. You should also take advantage of the personalization template strings to engage the person by name.
...then test it some more, just in case. No one likes a broken app, so make sure your Messenger app works as expected. Test your features, make sure there is a fallback for edge cases like unexpected message content.
_Try to break your app - it's fun!
Here is a short list of things you should test for before making your Messenger app publicly available:
Responsiveness: Does your app respond quickly? Are you taking advantage of features like sender actions to signal when there may be a delay? Is your app able to handle all user input, including random inputs gracefully? Messenger is a conversational format, so keep in mind expectations differ from other types of apps. Keep your average response time under one minute.
Error/fail states: - When your Messenger app receives an unexpected input, does it fail gracefully? If it fails, are people able to recover or restart the experience?
Conversation flows: Is there a clear path for interacting with your app from start to finish? Do you offer enough guidance and context along the way for a person to know their options at any given point?
Scale: Does your infrastructure scale? Is your webhook able to handle unexpected spikes in webhook events?
The Messenger Platform provides lots of ways for people to discover your experience. Use the Platform's discovery & re-engagement features to get your app in front of lot of people on Messenger. This is just a short list of what is available for you:
Click to Messenger ads: Gain exposure for your app in Facebook, Instagram and Messenger with ads that open new conversations with your Messenger app, or use subscription messages to re-engage existing conversations.
Customer Chat Plugin: The customer chat plugin allows people to message your business while browsing your website.
m.me Link: A shortened URL that redirects users to your Messenger. You can use it on your website, email newsletters, and even add a ref
parameter to add context into the conversation.