---
schema_version: "1"
id: 2b74467236a90cb811f496431bdb00121d78404c17bdd2b55e919af9a40f3965
title: Test Marketing Cloud Engagement Push Notifications
collection: admin
version: current
locale: en-us
portal_url: https://docs.salesforce.com/admin/current/en-us/xcloud/264-0-0/branded_apps_marketing_cloud_test.md
canonical_url: https://help.salesforce.com/s/articleView?id=xcloud.branded_apps_marketing_cloud_test.htm&release=264.0.0&type=5
source_site: help.salesforce.com
content_type: documentation
content_hash: ca6d82e991dba5d31fefc418640e9d91f2e3890801e355718983b9abcb636d1e
description: Test Engagement push notifications by sending them to your branded Mobile Publisher app. You can specify different configurations for production and sandbox. After you set up MobilePush in Engagement, you can enable Engagement push notifications for your Mobile Publisher apps.
products:
  - Experiences
  - Mobile App
  - Cross Cloud
release: "264"
---
# Test Marketing Cloud Engagement Push Notifications

Test Engagement push notifications by sending them to your branded Mobile Publisher app. You can specify different configurations for production and sandbox. After you set up MobilePush in Engagement, you can enable Engagement push notifications for your Mobile Publisher apps.

### Required Editions

<table class="slds-table slds-table_bordered slds-max-medium-table_stacked slds-m-bottom_small edition"><colgroup><col></colgroup><tbody><tr class=""><td class="slds-cell-wrap" style="vertical-align:top;">Available in: Available in Lightning Experience in: <strong>Enterprise</strong>, <strong>Performance</strong>, and <strong>Unlimited</strong> Editions</td></tr></tbody></table>

<table class="slds-table slds-table_bordered slds-max-medium-table_stacked slds-m-bottom_small permission">
        <colgroup>
          <col style="width:50%">
          <col style="width:50%">
        </colgroup>
        <thead class="slds-text-title_caps ">
          <tr class="">
            <th scope="colgroup" class="slds-cell-wrap" colspan="2" style="text-align:center;vertical-align:top;" id="d24037e41">User Permissions
              Needed</th>
          </tr>
        </thead>
        <tbody>
          <tr class="">
            <td data-label="User Permissions Needed" class="slds-cell-wrap" style="vertical-align:top;" headers="d24037e41 ">To create and modify a Mobile Publisher project:</td>
            <td class="slds-cell-wrap" style="vertical-align:top;" headers="d24037e41 ">Manage mySalesforce Apps</td>
          </tr>
          <tr class="">
            <td data-label="User Permissions Needed" class="slds-cell-wrap" style="vertical-align:top;" headers="d24037e41 ">To create and modify a site:</td>
            <td class="slds-cell-wrap" style="vertical-align:top;" headers="d24037e41 ">Create and Setup Experiences</td>
          </tr>
        </tbody>
      </table>

![Important](https://sf-zdocs-cdn-prod.zoominsoftware.com/tdta-xcloud-branded_apps_exp_cloud-264-0-0-production-enus/cf85363c-215e-4784-bb6a-c5c83c4e7140/images/icon_important.png)

Important These instructions are iOS-based. If you want to test push notifications on Android devices, see the Send a test notification message section in [Send a test message to a backgrounded app](https://firebase.google.com/docs/cloud-messaging/android/first-message).

This feature requires a Marketing Cloud Engagement license. To enable Engagement for your org, contact your account executive.

Mobile Publisher apps support Engagement push notifications. Engagement push notifications aren’t supported on Publisher Playground apps.

1. Confirm that the end user is prompted for the push permissions directly after opening the app the first time after installation.
    
    If you see the push notification prompt, proceed with these steps.
    
    If you don’t see the push notification prompt, it can mean that the Mobile Publisher Setup UI or MobilePush account has incorrect information. To test, initially disable the Delay until Contact ID or the Delay Push Prompt flag, as these flags can stop the prompt from being seen. For more information about these settings or how to configure them, see [Enable Marketing Cloud Engagement Push Notifications for Mobile Publisher Apps](https://help.salesforce.com/articleView?id=branded_apps_marketing_cloud_enable.htm&language=en_US). Then proceed with these steps.
2. Run the Brew Install (Mac Only) library installation tool from a terminal window: brew install openssl
    
    OpenSSL is available through Brew Install. See [Homebrew](https://brew.sh), and search for OpenSSL.
3. Copy, paste, and save this code as a shell script.
    
    ```bash
    #!/bin/bash
    ​
    # To get curl with HTTP/2 and openssl with ECDSA: run 'brew install curl-openssl'
    curl=/usr/bin/curl
    openssl=/usr/bin/openssl
    ​
    # --------------------------------------------------------------------------
    ​
    deviceToken=151512744719aefe525b0a65b820a29789ef5f9bfe394f472d3aa451d6bf905c
    authKey=./MK-MKT-Cloud.p8
    authKeyId=RWZX7Y76UW
    teamId=B83JQ6V4B9
    bundleId=com.mysalesforce.mycommunity.C00D6F000002Jk55UAC.A0OT100000004C93GAE
    endpoint=https://api.push.apple.com
    ​
    read -r -d '' payload <<-'EOF'
    {
      "aps": {
         "badge": 1,
         "alert": {
            "title": "Message from Jitu to Jitu",
            "subtitle": "You see this",
            "body": "Hey Jitu, You seeing this? -- Jitu"
         },
         "_sid": "SFMC"
      }
    }
    EOF
    ​
    # --------------------------------------------------------------------------
    ​
    base64() {
      $openssl base64 -e -A | tr -- '+/' '-_' | tr -d =
    }
    ​
    sign() {
      printf "$1"| $openssl dgst -binary -sha256 -sign "$authKey" | base64
    }
    ​
    time=$(date +%s)
    header=$(printf '{ "alg": "ES256", "kid": "%s" }' "$authKeyId" | base64)
    claims=$(printf '{ "iss": "%s", "iat": %d }' "$teamId" "$time" | base64)
    jwt="$header.$claims.$(sign $header.$claims)"
    ​
    $curl --verbose \
      --header "content-type: application/json" \
      --header "authorization: bearer $jwt" \
      --header "apns-topic: $bundleId" \
      --data "$payload" \
      $endpoint/3/device/$deviceToken
    ```
4. Update your saved script with these required values.
    
    Required Values  
    | Field Name | Description |
    | --- | --- |
    | `authKey` | Local file location, for example, `/Users/useralias/Downloads/{filename}.p8` |
    | `bundleId` | Located in AppStore Connect | App Information. |
    | `teamId` | Related to **Apple Developer Account | Membership Details**. |
5. Run the script from a Mac terminal window.
6. If you receive the push notification on the Mobile Publisher app from the script, verify the push notification that's set up on Automation Studio/Journey Builder. It’s possible that you didn’t select the correct Contact Audience, such as `contactkey`, `deviceId`, and so on.
    
    If you don’t receive a push notification, there’s an issue in the Mobile Publisher Setup UI in Engagement. Verify the Engagement parameters set up on the Mobile Publisher Setup UI. Correct any errors that you find, and resubmit the app.