> ## Documentation Index
> Fetch the complete documentation index at: https://moengage.com/docs/llms.txt
> Use this file to discover all available pages before exploring further.

# How to Configure FCM Authentication for Receiving Push Notifications?

> Configure Firebase Cloud Messaging (FCM) authentication to fix push notification delivery on Android. Resolve sender ID mismatches in MoEngage.

## Problem

Push notifications from the MoEngage dashboard are not received on Android devices due to a sender ID mismatch.

## Instructions

Perform the following steps to configure Firebase Cloud Messaging (FCM) authentication:

1. Open the Firebase console and go to the **Projects settings** section.
2. On the **Service accounts** tab, click **Generate new private key** to download the private key in JSON format, regardless of the selected language.
   <img alt="generate new private key.png" src="https://mintcdn.com/moengage/t9d2bz7zij1iE1iP/images/moengage_9f36c9.png?fit=max&auto=format&n=t9d2bz7zij1iE1iP&q=85&s=dd427304cb539cf16852dc1f2eebd9bd" width="1024" height="715" data-path="images/moengage_9f36c9.png" />
3. Open the downloaded private key JSON file and verify that the project\_id matches the one in your google-services.json file in the root directory of your Android project. <img alt="project id google services.png" src="https://mintcdn.com/moengage/N1a7P_mcSpm-5bMa/images/moengage_57c032.png?fit=max&auto=format&n=N1a7P_mcSpm-5bMa&q=85&s=ff5cd4e8ad6350cc853c7073a90142d4" width="1024" height="256" data-path="images/moengage_57c032.png" />
   <img alt="project id.png" src="https://mintcdn.com/moengage/2CGhjk8ZDWEC5ocb/images/moengage_f89e6f.png?fit=max&auto=format&n=2CGhjk8ZDWEC5ocb&q=85&s=ac18ea7d3a55a5b91f346d86798b4079" width="1024" height="310" data-path="images/moengage_f89e6f.png" />
4. On the left navigation menu in the MoEngage dashboard, go to **Settings** > **Channels** > **Push**.
5. On the Push page, click the **App push** tab, and then click **Android (FCM)** tab.
6. Click **Private key file (Recommended)**.
7. Use the **Choose file** button to upload the private key JSON file and click **Save**.   <img alt="choose file.png" src="https://mintcdn.com/moengage/SBG7um9Fqotw1CFo/images/moengage_b4ed21.png?fit=max&auto=format&n=SBG7um9Fqotw1CFo&q=85&s=975a1d1c39327004aa5f118669cc715e" width="1024" height="406" data-path="images/moengage_b4ed21.png" />\
   Now you will see the request body of the report call with the push\_id in the Logcat window of your integrated development environment (IDE), registering the device and project on the MoEngage dashboard.
   <img src="https://mintcdn.com/moengage/Ci8j4F7VOEUnUuwd/images/moengage_ec19ed.png?fit=max&auto=format&n=Ci8j4F7VOEUnUuwd&q=85&s=e93a3ee1565c24a615cb8cad391be57b" alt="register.png" width="1024" height="307" data-path="images/moengage_ec19ed.png" />
8. In the MoEngage dashboard, navigate to **User Profile** > **User Info** > **Reachability** > **Push.** A green tick mark will confirm that the Android device can receive push notifications. <img alt="push reachability edited.png" src="https://mintcdn.com/moengage/DUgG020WbtkVK2Ls/images/moengage_35ff1e.png?fit=max&auto=format&n=DUgG020WbtkVK2Ls&q=85&s=965a2e4085a951986dd68dbe607779fe" width="1024" height="536" data-path="images/moengage_35ff1e.png" />
9. Click **TEST PUSH**. You will see the **STATUS : SENT** indicating that the device was reachable and the notification was received.
   <img alt="test push edited.png" src="https://mintcdn.com/moengage/Ci8j4F7VOEUnUuwd/images/moengage_ec111b.png?fit=max&auto=format&n=Ci8j4F7VOEUnUuwd&q=85&s=69145e910b94df0644abc1959bd0a67a" width="1024" height="584" data-path="images/moengage_ec111b.png" />
   <img alt="test push 2.png" src="https://mintcdn.com/moengage/S2vOz7ciYYqlhjCf/images/moengage_6c92f4.png?fit=max&auto=format&n=S2vOz7ciYYqlhjCf&q=85&s=29a3390e7d933f9d9ef651b974aee9cb" width="640" height="1429" data-path="images/moengage_6c92f4.png" />
