You can find here common questions related to Push and In-App configuration and implementation in Adobe Campaign Standard

Adobe Experience Platform SDK and Adobe Campaign integration

Yes, Adobe Experience Platform SDK integration is available for both Adobe Campaign Standard and Adobe Campaign Classic. You need to install the corresponding Extension via Adobe Launch to enable the integration.

For more on this, refer to this page for Campaign Classic and this page for Campaign Standard.

Refer to the table below to learn more about these capabilities.


  AEP SDK SDK V4 Neolane SDK
Campaign   Classic      Campaign  Standard  Campaign Classic Campaign Standard Campaign Classic Campaign Standard 
Push notifications

Learn more

Learn more

Learn more

Learn more


In-App messages


Learn more




Places integration


Learn more



Learn more




Places integration includes places events as triggers for In-App messages (N/A for Push notifications), enriching profiles with Places data and local notifications support. Refer to this page for more information.

Places limited integration includes enriching profiles with Places data. 

The following use cases are supported:

  • Acquire a Mobile Profile in Campaign (identified by ECID in Administration > Channels > Mobile app (AEP SDK) > Mobile Application subscribers tab)
  • Enrich a Mobile Profile in Campaign (requires Custom resource Extension of appSubscriberRcp table)
  • Acquire a Push token for sending Push messages (requires user opt-in to receive Push messages)
  • Send Push and In-App Messages
  • Track user's interaction with Push and In-App Messages and provide reports on that

To do so, follow the steps below:

  1. Configure a Mobile property in Launch.
  2. Install Adobe Campaign Standard extension. Note that Adobe Campaign Standard extension also requires Mobile Core, Profile and Lifecycle extensions which are installed by default in Launch.
    • Users should configure Session timeout in Mobile Core extension which impacts the frequency of lifecycle events.
    • Once the extension is configured, users should add appropriate dependencies in the Mobile App using Cocoapods for iOS and Gradle for Android. Follow the directions here.
    • Always take the latest versions of the libraries.
    • In Mobile App, register Campaign, UserProfile, Identity, Lifecycle and Signal extensions. Follow the directions here
    • Once extensions are registered, start ACPCore. For Android, be sure to setApplication onCreate(). Follow the exact instructions provided in Mobile Install Instructions for your Mobile Property in Launch.
    • Following SDK APIs will also be required. Implement Lifecycle Start and Pause APIs as described here for Android and here for iOS
  3. Configure a Mobile Property in Adobe Campaign Standard. Follow the procedure here.

You need to configure a CollectPII postback (refer to this page) and implement CollectPII API from SDK (refer to this page).

The objective of CollectPII call is to enrich the Mobile Profile in Campaign. It should be fired whenever there is new meaningful information that customers would like to add to the profile depending on their use cases and business needs.

Yes. Depending on your business need, you may fire CollectPII calls in response to user logging in the app, or purchasing something or lifecycle event or user entering a geofence etc. To sum up, an interaction of user with the app that generates information you would want to use for Profile enrichment.

Frequency and design of CollectPII calls should be dictated by business needs and shouldn't be fired blindly as it creates extra load on the DB.

This is a known issue and happens due to token expiration. You should try login out and in.

Check out the resources below:

Check out the resources below:

Refer to Github link below:

Push channel specifics

Check out the resources below:

Ensure that the provisioning team has completed the provisioning of Push channel in Adobe Campaign Standard. Implement setPushIdentifier API from SDK. For more on this, refer to this page.

Customers need to provide a valid Push certificate in .pem format in order to send a Push notification. You do not require a password for this certificate.

You can convert a .p12 certificate into a .pem certificate by running the below command in terminal. There are several online resources also available for conversion instructions.

openssl pkcs12 -in pushcert.p12 -out pushcert.pem -nodes -clcerts

You will see the following message.

  • For AEP apps:
AEP success
  • For SDK V4 apps:
AEP success

No, apps will work in either sandbox or production mode and cannot be changed to the other (i.e. sandbox to production app) once set up. We recommend that you test your app in sandbox mode first and then transition to production mode.

To change to production mode, you will have to create another app. Also be sure to not check the sandbox checkbox and to upload a production certificate. 

Yes, Campaign supports both platforms at the same time and allows you to upload credentials for both platforms.

Please make sure that your push certificates are valid by testing them here.

Please ensure that you are following the Push payload instructions provided here.

Note that for Android, Campaign only supports Data payload not notification payload

An app has to have a valid Push certificate uploaded as well before it could be made available in the delivery properties.

Please ensure that you are following the Push payload instructions provided here.

Note that for Android, Campaign only supports data payload not notification payload.

Please open a customer care ticket.

Mobile App developers need to handle the support for media files in the App. Sometimes network bandwidth may also prevent a media file from rendering. Refer to this page for additional pointers.

Follow the steps below:

  • Configure a Push tracking postback. Instructions can be found here.
  • Implement trackAction API from Mobile Core. Refer to this page for more information.

More detailed instructions can be found in technote here.

An out-of-the-box report is available in Adobe Campaign for Push channel. Refer to this documentation

See this page to understand how each push metrics are calculated.

In-App channel specifics

Since In-App messages are pulled by the SDK from Campaign, we want to provide a secure mechanism to ensure that In-App Messages containing PII data do not fall into malicious hands. As such, we have following mechanism in place to ensure the secure delivery of messages to the device:

  • Customers mark mobile profile fields (appSubscriberRcp table) fields as Personal and Sensitive if they want to ensure that this particular information gets delivered securely.
  • Fields marked as such can only be used in Profile template (not in appSubscriber template or Broadcast template) which has additional security mechanism built in.
  • Messages built using Profile template can only get served when the user has logged in the App. 
  • In order to facilitate this secure handshake, mobile app developers should pass additional authentification details using the setLinkageField API. Please note that the linkage field are the ones that are identified as the link between Mobile Profile and CRM Profile while extending appSubscriberRcp table.
  • They should flush the In-App messages stored on the device and resetLinkagefields when the user logs out of the App using resetLinkageField. This ensures that if a different user logs into the App, they do not see the messages meant for previous user.
  • Refer to Mobile SDK APIs to implement this security mechanism client side.

You need to configure In-App tracking postback. Instructions can be found here.

To implement local notification tracking, refer to this page.

An out-of-the-box report is available in Adobe Campaign for In-App channel. Refer to this documentation

See this page to understand how each In-App metrics are calculated.

There are no multi-lingual templates available for In-App Messaging now.

However, if the objective is to send an In-App message in a language other than English, the content can be directly pasted in the available text boxes.

in app multilingual

No, this is not yet supported.

For alert messages, at least one dismiss button (primary or secondary should have action dismiss) is required. Otherwise, it is possible to save the message but it will not be received.

For custom sound on iOS, you need to provide a file name with extension when creating a local notification (for example, sound.caf). If this extension is not provided, then the default sound is used.

Common questions

Yes, deeplinks are supported in Push and In-App messages but deeplink tracking is only supported via a partner named Branch. For more information on Branch and Adobe Campaign Standard integration, refer to this page.

Yes, these messages are also referred as daisy chain messages. Follow the process below:

  1. Create an In-App Message.
  2.  Define a custom event and select it as an event trigger for this IAM e.g. "Trigger from fall preview Push".
  3. When authoring your Push message, define a custom variable whose value can be set as an event used to trigger IAM e.g. Key = "inappkey" and value = "Trigger from fall preview Push".
  4. In the mobile app code, implement event trigger as follows:
mobile app code

This work is licensed under a Creative Commons Attribution-Noncommercial-Share Alike 3.0 Unported License  Twitter™ and Facebook posts are not covered under the terms of Creative Commons.

Legal Notices   |   Online Privacy Policy