Beacon Push Message Overview and Troubleshooting Guide


Beacons Push Messages Overview

Bluetooth beacons are transmitters that use Bluetooth Low Energy (BLE) 4.0, a short-range radio frequency protocol to broadcast an identifier which can be heard by compatible smart devices as they come into close proximity with that beacon.

A beacon deployment consists of one or more beacon devices that transmit their own unique identification number to the local area. Software on a receiving device may then look up the beacon and perform various functions, such as notifying the user. Receiving devices can also connect to the beacon to retrieve values from beacon's GATT (generic attribute profile) service. Beacons do not push notifications to receiving devices (other than their own identity). However, mobile software can use signals received from beacons to trigger their own push notifications.

BLE beacons can be powered by batteries or a fixed power source such as a USB adapter.

Once the Plexure platform has been configured to recognize the identity of specific beacons, apps powered by our platform can perform actions when in range of them, enabling Content Managers to create and deliver personalized messages to consumers in real time when they are in range of a beacon.

Beacons can be strategically positioned in planned locations throughout stores to deliver hyper-contextual content to consumers when they walk in range, and to give you in-store insights into their behaviour.


Plexure Beacon functionality overview:


  • Plexure SDK is initialised when a user first launches the client mobile application. Beacon regions are returned to Plexure SDK in Get configuration API response, by Plexure platform.
  • These Beacon regions are then monitored by Plexure SDK by running a background beacon scanner service which is a system level service on iOS and an SDK level service on Android.
  • For iOS, users should allow Location permission for Plexure SDK to monitor regions.
  • As soon as a device enters a beacon region a Beacon check in activity is triggered by SDK to Plexure platform.
  • Test device needs to have an active internet connection all time to send this activity in real time to Plexure Platform. Please avoid using Hot spots as this could invalidate test results.
  • Once this activity is received by Plexure platform, Plexure platform will then evaluates following before it triggers a push message for the device:
  • Black out period
  • Beacon Push message limit for this customer
  • Duplicate push message limit
  • Push message is active.

 Other factors influencing Beacon push messages: 

  • Faulty Mobile device (Bluetooth)
  • Beacon placements:
  • Faulty Beacons
  • OS limitation: for iOS device, only 20 regions can be monitored at any time, and hence Plexure SDK has allocated 5 regions for monitoring Beacon regions. This limitation can be easily overcome by following Beacon set up guide of having Beacons configured with same Proximity UUID and different Major and minor. For consistency purposes, we have implemented similar region monitoring behaviour in Android Plexure SDK level as well.
  • Device level Battery management system: Few device manufacturers have their own battery management systems called as Battery manager in place which overrides user permissions for effective battery consumption. This could result in stopping and restarting Beacon scanner services which could influence the test results.

Beacon push messages set up

Plexure Platform Beacon Set up:

Beacon set up page is available at Merchant level > Beacons page.

To set up any Beacon’s you would need following details of the beacons:

  • Proximity UUID
  • Major
  • Minor

It is advisable to have Beacon names based on their placements, so that it’s easier to identify Beacons when allocating beacons to a Beacon group.

Plexure Platform Beacon Group Set up:

Beacon push messages are created by associating a Beacon push message to a beacon group. Each beacon should be added to a beacon group. To add or create a new Beacon group, please go to Merchant > Beacons> Beacon groups page and create a new group or add newly created beacon to an existing group. It’s recommended to name Beacon groups based on Beacon placement so that its easier for content managers to select right beacon groups when creating Beacon push messages. For testing purposes, its recommended that you create a new Beacon group which has a list of Test beacons only.

Plexure Platform Beacon Push message set up:

To set up Beacon push message please refer to   


For testing purposes following Beacon push message set up is recommended:

  • Ensure that Beacon push message is active all time. Start date is in past, with no daily start time and end time.
  • Ensure that right beacon group is selected
  • No filters are added to the beacon push messages.

Client Apps and Plexure SDK configuration/integration  

Please ensure that app developers have enabled Beacons functionality when integrating with Plexure SDK. More details can be obtained from

Sanity tests to verify if the apps can receive direct Push messages and Beacon push messages:

  • Please verify if the apps are receiving Direct Push messages from Plexure platform.
  • Please verify if the app displays push notification subject and titles
  • Please verify if the app displays multiple push messages with same mID. (To test this please use direct push messages send same push messages multiple times and validate if the user devices display all the push messages instead of overriding existing old notification.)
  • Also, verify if the Apps requests for ‘Bluetooth Permission’ on first app launch for Android and for iOS it request for Bluetooth and Location permissions. If you don’t see the Permission dialog box, please contact app developers to confirm if Apps have access to use Beacon scanner services on the device.
  • It is recommended to confirm if the device can see Beacon related offers or Advertisements when the device is in Beacon region before testing Beacon push messages.



Mobile Applications

  • Make sure Bluetooth is ON,
  • Launch the app with Plexure SDK,
  • Confirm if you can see Plexure Offers and Ads
  • Validate if the device is in a beacon region the apps can see Beacon related offers and ads.
  • Validate if the apps can receive direct push notification

Device monitoring

Confirm if Device monitoring is enabled in Plexure platform for the device under test. If you are unsure of how to enable device logging please refer to How to enable device logging in Plexure platform. 

Beacon placements

Sanity testing of Apps, device and Platform

  • Direct Push Messages Send a Push message to the device, and confirm if the user can receive push messages from Plexure platform. (Send more than 2 Push message to validate all Push messages are displayed correctly).
  • Confirm if Beacon regions are returned in Plexure Get configuration API response. Also, validate if the Beacon Proximity UUID under test is returned in the Get configuration response.
  • Beacon check in Activity using API test console to confirm if Platform is configured correctly to trigger Beacon push messages(optional).


Beacon Push message testing

Test Data

Create Beacon Push message

  • Navigate to Create New.
  • Select New Push Message.
  • Select Push Message Type Beacon.
  • Fill all the required fields.
  • Enter valid Start and End Date for the Push Message.
  • Select the Beacon or Beacon group which was setup in Backend.
  • Get Approval and Publish the Beacon Push message.
  • Navigate to View All Push messages
  • Sort by “When Last Updated”
  • The Beacon Push message created should be in the list with Status “Published”


Create Beacon Offer

  • Navigate to Create New.
  • Select New Offer.
  • Fill all the required fields.
  • Enter valid Start and End Date.
  • Select Beacon groups for the offer.
  • Publish Offer.
  • Navigate to View All Offers
  • Sort by “When Last Updated”
  • The Offer created should be in the list with Status “Published”

Beacon Push Message Test

Below are the test steps that covers end-to-end Plexure beacon push message functionalities in an ideal scenario where we have less external factors influencing the test results.

For example: Testing beacon push message with app in background instead of in a killed state or having one beacon region instead of overlapping beacon regions. 

Test Steps:

  • Device should have active internet connection, preferably 3G or Wi-Fi and not hot spots
  • Install and Initialise Plexure SDK
  • Give permissions for Bluetooth, Location and Notifications access for the App
  • Send Direct Push message from the Plexure platform and confirm whether the Device receives Push messages.
  • Minimize the App, make sure the App is running in the background
  • Walk closer to beacon and wait for minute.

Note: User should not be at the fringe of the Beacon region as this could trigger Beacon exits and invalidate test results.


Expected Result: User receives Beacon Push message.


If you do not receive a Beacon push message, please follow below steps to troubleshoot:

  1. Validate if the beacon push message is Active.
  2. Download device logs and confirm if the device triggered a Beacon check in activity.

If No Beacon check in activity logged, then:

  1. Kill the app and launch it again, repeat the test steps again.
  2. If Device has not triggered a beacon check in activity, please validate if the apps can see Beacon related offers and ads when device is in the beacon region.
  3. Validate if the Bluetooth is ON, and “x - vmob – beacons” in the request header is populated with a beacon details for any request when user is in the beacon region.
  4. Repeat test with app in background, (App not killed state)
  5. Check Get Configuration API to call to confirm if the test beacon Proximity UUID is returned in the response.
  6. Repeat test with the app in foreground and confirm if the Beacon check in activity is logged by downloading the device logs. Please note that when app is foreground, the push messages may not be displayed. To confirm the actual behaviour, please contact app developers.
  7. Confirm if the user has active internet connection avoid using Hotspots.
  8. Walk out of the beacon region, wait for 5 min and then repeat the tests.

 If Beacon check in Activity logged: 

  1. Confirm if the user is not logged in to multiple devices.
  2. Confirm if user can receive direct push messages.
  3. Confirm if user’s Beacon push message limit has not reached*
  4. Confirm if repeated Beacon push message is allowed*
  5. Confirm if there is no black out period active*
  6. Confirm Beacon set up and Beacon push message set up
  7. Create new user and repeat the test.
  8. Confirm if the user has active internet connection avoid using Hotspots.


* If you are unsure about the push message configuration details, please contact Plexure support via


Root cause analysis

To confirm if Plexure platform can trigger Beacon push messages:

Trigger a beacon check in activity using Plexure Platform API test console with correct beacon details and validate if device receives push messages. If the device receives Push messages, then Plexure platform is configured correctly to Send Beacon push messages when it receives Beacon check in activity. Then the issue could be related to Apps, Plexure SDK integration, device or Beacons.


To confirm if Beacon is active:

Use 3rd party apps such as Dartle, to confirm if the test Beacons is active and can be detected by the app.


To confirm if Device Bluetooth is operational:

Use Dartle app to see if the Beacon is detected correctly by the apps, keep refreshing the app to confirm if the beacon is visible all the times when in beacon region.

Confirm if the Bluetooth permission is given to the client application

Confirm if the location permission is given to the client application


To confirm if there is no SDK integration issue:

Validate if the beacon regions are detected and sent in request headers when user walks in to a beacon region. If there is an active Beacon offer, then this offer should be visible on the device.

Retest the Beacon push messages using a different device and a new user to confirm if it’s not a SDK integration issue.





Was this article helpful?
0 out of 0 found this helpful
Have more questions? Submit a request


Please sign in to leave a comment.