--- title: "Installation" slug: "mapp-engage-ios-sdk-installation" updated: 2026-05-07T07:19:40Z published: 2026-05-07T07:19:40Z canonical: "docs.mapp.com/mapp-engage-ios-sdk-installation" --- > ## Documentation Index > Fetch the complete documentation index at: https://docs.mapp.com/llms.txt > Use this file to discover all available pages before exploring further. # Installation ## Goals 1. [Enable your iOS application](/v1/docs/mapp-engage-ios-sdk-installation#a-enable-apple-messaging-for-mapp-engage) to send and receive push notifications through Apple Push Notification Service (APNs) and configure it for Mapp Engage. 2. [Enable the iOS channel in Mapp Engage](/v1/docs/mapp-engage-ios-sdk-installation#b-enable-ios-channel-in-mapp-engage) to deliver push notifications and in-app messages via the configured app. --- ## Requirements - **iOS Version Support**: - Mapp Engage iOS SDK 6: requires iOS 12.0 or later. - **Xcode Requirements**: - Base SDK: iOS 12 or above - Deployment Target: iOS 12 or above --- ## Download Install the Mapp Engage iOS SDK via Swift Package Manager, CocoaPods, or as a manual XCFramework. For setup steps, see [Basic Automated Setup](/v1/docs/mapp-engage-ios-sdk-basic-automated-setup). --- ## Installation ### A) Enable Apple Messaging for Mapp Engage #### Prerequisites - Access to the **Apple Developer Member Center**. - A valid Apple Developer Account. - Explicit App ID (Bundle Identifier) for your application. - Installed Xcode with the application project ready for configuration. #### Procedure 1. **Log In to the Apple Developer Member Center** - Navigate to [Apple Developer Member Center](https://developer.apple.com/account/). - Use your Apple ID and password to sign in. 2. **Register an Explicit App ID** - Navigate to *Certificates, Identifiers & Profiles > Identifiers > App IDs*. ![](https://cdn.document360.io/554b9b98-6720-4d8b-9919-c7b203d72648/Images/Documentation/2.1.png) --- ![](https://cdn.document360.io/554b9b98-6720-4d8b-9919-c7b203d72648/Images/Documentation/point 2.1.png) - Select **+** to create a new App ID. - Enter your application details: ![](https://cdn.document360.io/554b9b98-6720-4d8b-9919-c7b203d72648/Images/Documentation/point 2.3.png) - **Description**: Enter a name for your App ID (e.g., `MyApp`). - **Bundle ID**: Use the Bundle Identifier of your app from Xcode (e.g., `com.example.myapp`). - Under **Capabilities**, ensure that **Push Notifications** is enabled. ![](https://cdn.document360.io/554b9b98-6720-4d8b-9919-c7b203d72648/Images/Documentation/2.4.png) - Save your App ID. - More information: [Set the bundle ID](https://help.apple.com/xcode/mac/current/#/deve21d0239c) and [Register an App ID](https://developer.apple.com/help/account/manage-identifiers/register-an-app-id). 3. **Enable Push Notifications for Your App** - Under your newly created App ID, click **Edit**. - In the **App Services** section, enable **Push Notifications**. - Click **Save**. - More information: [Enable push notifications](https://help.apple.com/xcode/mac/current/#/devdfd3d04a1). 4. **Create an APN SSL Certificate** - Under **Certificates, Identifiers & Profiles**, go to *Certificates > +*. ![](https://cdn.document360.io/554b9b98-6720-4d8b-9919-c7b203d72648/Images/Documentation/point 4.1.png) - Select **Apple Push Notification Service SSL (Sandbox & Production)** and click **Continue**. ![](https://cdn.document360.io/554b9b98-6720-4d8b-9919-c7b203d72648/Images/Documentation/point 4.2 .png) - Choose the App ID you created earlier. ![](https://cdn.document360.io/554b9b98-6720-4d8b-9919-c7b203d72648/Images/Documentation/point 4.3.png) - Follow the on-screen instructions to upload a Certificate Signing Request (CSR): - Open **Keychain Access** on your Mac.![](https://cdn.document360.io/554b9b98-6720-4d8b-9919-c7b203d72648/Images/Documentation/4.4.1.png) - Go to *Keychain Access > Certificate Assistant > Request a Certificate from a Certificate Authority*. - Fill in the required details and save the CSR file to your system. - Download the APN certificate and double-click it to add it to your Keychain. - More information: [Create Developer ID certificates](https://developer.apple.com/help/account/create-certificates/create-developer-id-certificates). 5. **Export the p12 Certificate** - Open **Keychain Access**. - Locate your APN certificate under the **My Certificates** section. - Right-click and select **Export**. ![](https://cdn.document360.io/554b9b98-6720-4d8b-9919-c7b203d72648/Images/Documentation/5.3.png) - Save it as a `.p12` file and set a secure password. ![](https://cdn.document360.io/554b9b98-6720-4d8b-9919-c7b203d72648/Images/Documentation/5.4.png) ![](https://cdn.document360.io/554b9b98-6720-4d8b-9919-c7b203d72648/Images/Documentation/5.4_1.png) - More information: [Establishing a certificate-based connection to APNs](https://developer.apple.com/documentation/usernotifications/establishing-a-certificate-based-connection-to-apns?language=objc). 6. **Token-Based Authentication (Optional)** - If you prefer token-based authentication, create a `.p8` key from the **Keys** section under **Certificates, Identifiers & Profiles**. - Save the `.p8` file securely as it will not be retrievable again. - More information: [Establishing a token-based connection to APNs](https://developer.apple.com/documentation/usernotifications/establishing-a-token-based-connection-to-apns?language=objc). 7. **Add the Certificate to Mapp Engage** - Share the `.p12` or `.p8` certificate with your Mapp Project Manager. - Provide the following details: - **Certificate Password** (if using `.p12`). - **Bundle ID** associated with the certificate. - Indicate whether the certificate is for **Development** or **Production**. - For more information, see [iOS Authentication Certificates and Tokens](/v1/docs/ios-authentication-certificates-and-tokens). 8. **Update Provisioning Profiles** - If creating the certificate invalidates existing provisioning profiles, regenerate and update them in Xcode. - More information: [Developer Account Help](https://developer.apple.com/help/account/). ### B) Enable iOS Channel in Mapp Engage #### Prerequisites - Completion of **Step A: Enable Apple Messaging for Mapp Engage**. - Access to the Mapp Engage admin interface. #### Procedure 1. Log In to **Mapp Engage** and navigate to **Channel Settings**: - From the top menu, go to *Administration > Channels > App*. 2. **Create or Select an iOS Channel** - Click **Create App Channel**. - Name the app channel and optionally add a description - Select **iOS** as the channel type and click **Next**. ![](https://cdn.document360.io/554b9b98-6720-4d8b-9919-c7b203d72648/Images/Documentation/image(685).png) 3. **Configure Channel Parameters:** - In the **Configure iOS Channel** section, fill in the following details: - **App Store ID**: (Optional) Enter your app’s App Store ID. - **Bundle ID**: Enter the same Bundle Identifier used in Xcode and for the APNs certificate. ![](https://cdn.document360.io/554b9b98-6720-4d8b-9919-c7b203d72648/Images/Documentation/image(686).png) - **Environment**: Choose between **Production** or **Development** based on the certificate type. ![](https://cdn.document360.io/554b9b98-6720-4d8b-9919-c7b203d72648/Images/Documentation/image(687).png) - **Add Notification Sounds (Optional)** - To add custom sounds for notifications: ![](https://cdn.document360.io/554b9b98-6720-4d8b-9919-c7b203d72648/Images/Documentation/image(688).png) - Add the sound files to your project in Xcode. - Reference these sound names in the channel configuration. - Add **Buttons** (see [Create Localized Button Sets](/v1/docs/create-localized-button-sets)) ![](https://cdn.document360.io/554b9b98-6720-4d8b-9919-c7b203d72648/Images/Documentation/image(689).png) - **Enable Push Notifications and In-App Messages:** use the toggle options ![](https://cdn.document360.io/554b9b98-6720-4d8b-9919-c7b203d72648/Images/Documentation/image(694).png) 4. **Certificate File**: Upload the `.p12` or `.p8` file generated in Step A. **For .p12**: **For .p8**: - Enter the certificate password ![](https://cdn.document360.io/554b9b98-6720-4d8b-9919-c7b203d72648/Images/Documentation/image(692).png) - Enter the **Key ID** and **Team ID**![](https://cdn.document360.io/554b9b98-6720-4d8b-9919-c7b203d72648/Images/Documentation/image(693).png) 5. **Save and Activate the Channel** - Click **Save** to store the configurations. - After saving, click **Activate** to enable the channel. > [!NOTE] > **Keep in mind:** > > - If you encounter errors during configuration, verify that the uploaded certificate matches the Bundle ID and environment. > - For troubleshooting, consult the **Testing and Troubleshooting SDK Integration** section in this documentation. --- ## Installation via SPM 1. Create a new XCode project: *File > New >Project* 2. Then, in the project you created, *Project >Package Dependency > plus sign* ![](https://cdn.document360.io/554b9b98-6720-4d8b-9919-c7b203d72648/Images/Documentation/Untitled.png) Then, follow the steps in [Basic Automated Setup](/v1/docs/mapp-engage-ios-sdk-basic-automated-setup). --- ## Next Step: Integration To proceed, follow the [Integration Guides](/v1/docs/mapp-engage-ios-sdk-integration-guides).