*This integration is supported for both SMB & Enterprise businesses.
Integrating BirdEye with RealPage
User Manual
Table of Contents
Introduction
Integration Requirements
Details required from the BirdEye client
Triggers Supported
Trigger details
Property name and property site ID
Details required from the BirdEye dashboard
Enterprise ID for multi-location account
Business ID in case of a single-location account
SFTP username and password
Integration Process
SDE Integration Setup
Business Integration Group
Create Integration Group (Curl Command)
Fetch information for all the triggers (Curl Command)
Find business integration group details (Curl Command)
Update Trigger Information (Curl Command)
Integration Mapping
Without customization (Curl Command)
Introduction
RealPage is a comprehensive property management software and analytics tool that helps businesses maximize profits by providing personalized services like- accounting, business intelligence, spend management, online payments, revenue management. Integrating BirdEye with RealPage will automate the process of review request solicitation for BirdEye clients using RealPage.
Integration Requirements:
Supported triggers
BirdEye allows you to fetch data from your CRM using some predefined triggers. You can choose any combination from the list of available triggers and inform the support team about your selection. Here are the supported triggers for RealPage:
Trigger Name | Trigger Description |
RealPage Move In Trigger | This trigger is used to fetch customer data based on move-in to the property from the files received at BirdEye SFTP site |
RealPage Lease Start Trigger | This trigger is used to fetch customer data based on the start of lease period from the files received at BirdEye SFTP site |
RealPage Prospect Visit Trigger | This trigger is used to fetch customer data based on prospect visit to the property from the files received at BirdEye SFTP site |
RealPage Completed Work Order Trigger | This trigger is used to fetch customer data based on completed work orders from the files received at BirdEye SFTP site |
Information required from BirdEye Dashboard
For single location SMB account - Business ID
For multi-location account - Enterprise ID of all locations
Enterprise ID
SDE Integration Setup
Begin by logging in to your RealPage OneSite account. Fill in your 'Sign-on name’ and 'Password' and click on 'Sign-on'.
Select a location for which setup needs to be done from the dropdown of the properties
Next click on the left menu icon (three horizontal lines) placed on the top panel. Once clicked, select the option for Reports,SDE and Tasks.
Next, click on the 'Reports' tab on the left navigation rail and select 'New group' within 'Groups'. You are required to fill in the basic details here. Begin by assigning a name to the group. Then, select the 'Date basis' from the drop-down as 'System date' .Then select the 'Run on' from the drop-down as 'System date' and specify a specific time for the process to occur. Specify the process to be recurring by marking the checkbox of 'Recurring', and set an interval as Every '1 days'. This group will help in generating surveys.
NOTE : Specify the time against the Run on anywhere between 00:00 and 04:00 a.m.
Points to consider while setting the Run On in RealPage for the group
Since the time for the group to run is scheduled in the morning, it would fetch data from the previous day. Therefore while configuring the business integration later, we can set the next run time to send the review requests in the morning itself.
If the customer wants to send the review request the same day, then the time for the file generation should be configured late in the evening and change the next run time of the business integration accordingly.
If the scheduled ‘Run on’ time for the RealPage group is within working business hours, there is a possibility of data loss after the file gets generated. The contacts get updated after that time on the same day.
Now, create another similar group, as done in the previous step. This group will help in receiving the data from the previous group and transferring it ahead.This group would contain the FTP Download Utility only.Creating two separate groups helps ensure that both processes are executed fully and without any interruption.
Mandatory steps to process feed file the same day:
Setup feed file generation on RealPage any time between midnight to 4 am CST.
Configure next run time of business integration any time after feed generation time till 5:30 pm Central Time Zone (CT).
Configure the 'Customer checkin delay’ as 1 for each trigger.
Mandatory steps to process feed file the next day:
Setup feed file generation on RealPage any time between midnight to 4 am CST.
Configure next run time on ‘Integrations’ dashboard any time of the day.
Configure the 'Customer checkin delay’ on integrations dashboard as 2 for each trigger.
Choosing the second option is more convenient, however the check-ins would happen after 2 days as opposed to 1 day in the first option.
NOTE : Ensure that the time specified here in the second group should be at least an hour after the time set in the first group.
NOTE : The next run time for the business integration which would be configured later should always be after the time set for the second group in Realpage here.
Now click on 'SDE' on your left navigation rail and select 'Survey Interfaces'. You will see four survey interfaces, these need to be individually customized and added to the group. Each survey can be customized by clicking on 'More' under 'Actions'.
To add a survey to a particular group, click on 'More' and select 'Add to group'.
You need to add all 4 survey interfaces to the first group created above.
As you proceed to add the survey to a group, you are required to fill in some basic details.
Begin by selecting the group that you had initially created, this can be done from the drop-down alongside 'Group'.
Household Survey Setup
The below screenshot illustrates a screen from 'Household Survey'.
While you fill this, let the 'Format' be 'Standard XML'
'Search based on date type' be 'Move in'.
Set 'Parameters' to either 'Within last 7 days / 30 days / 90 days'.
Click on 'Save' at the bottom right of the pop-up to save your preferences.
Prospect Survey Setup
The below screenshot illustrates a screen from 'Prospect Survey'.
While you fill this, let the 'Format' be 'Standard XML'
Here, select the 'Parameter' as 'Original contact date within last 7 / 30 or 90 days'.
Click on 'Save' to save your choices.
Resident Survey Setup
The below screenshot illustrates a screen from 'Resident Survey'.
The 'Search based on date type' for this will be 'Lease begin'.
Again, assign the 'Parameters' as 'Within last 7 / 30 / 90 days'.
Click on 'Save' to save these preferences.
Work Order Survey Setup
The below screenshot illustrates a screen from 'Work Order Survey'.
The 'Work Order Survey' will be set for the 'Work Order Status' as 'Closed'.
Under 'Extract' select 'Extract all work orders that have not been previously extracted'.
Click on 'Save' to save these preferences.
Now proceed to Site Data Exchange for FTP. To set up 'Site data exchange', go to 'Tasks' on your left navigation rail and select 'FTP'.
The following 'Action' items and 'Name' will be displayed on your screen. click on 'More' and then 'Add To Group'. The FTP Download Utility would be added in the second group created.You will be asked to fill in a few details on the next screen. To fetch these details you will be required to log in to your BirdEye account.
On the BirdEye dashboard, go to 'Account' tab on the left navigation rail and select 'Developers'. Click on the blue 'Generate SFTP credentials' button on the bottom-left of the page.
Copy the required details from the page and paste them to 'FTP Download utility' page that you had last opened on your RealPage OneSite account.
FTP Download Utility Setup
Fill in the Host name/FTP site as com
'Subdirectory' should be 'www'.
Select 'Type of FTP Connection' as 'Secure FTP/SSH'.
The Group to Downloadshould be the first group created as per the above steps
Once filled, click on 'Save', to complete and end the process. RealPage has now been successfully integrated with BirdEye.
Integration process
Business Integration Group: A business integration group is a configuration that supports the business hierarchy of individual businesses on the BirdEye platform. The properties that are common for all business integrations are entered at the group level. Setting up a business integration group allows you to associate multiple business locations with the Enterprise account. Below are the list of curl commands that you will need to run to set this up.
(a) Create Integration Group (Curl Command)
Copy this Curl Command
curl -X PUT https://common-services.birdeye.com/integration/add/businessintegrationgroup -H 'cache-control: no-cache' -H 'content-type: application/json' -d '{ "parentBusinessNumber" :150837789850462, "integrationSourceId" : 12,"integrationGroupTriggers":[{"triggerId":31,"triggerTypeId":1},{"triggerId":32,"triggerTypeId":1}], "integrationGroupProperties" :[ { "propertyKey" :"sftp.remote.user.name", "propertyValue" :"kairoiresidential", "isSecure" : true }, { "propertyKey" :"sftp.remote.password", "propertyValue" :"V6WjmoHA7WeZ", "isSecure" : true },{"trigger_id":31,"propertyKey" :"customer.checkin.delay", "propertyValue" :"10" },{"trigger_id":32,"propertyKey" :"customer.checkin.delay", "propertyValue" :"2" },{"trigger_id":33,"propertyKey" :"customer.checkin.delay", "propertyValue" :"5" },{"trigger_id":34,"propertyKey" :"customer.checkin.delay", "propertyValue" :"4"} ] }'150837789850462- Business ID - This is Enterprise ID for multi-location account and Business ID for a single location SMB account
31, 32, 33,34 - Integration Trigger ID - Can be one or more triggers. Ask business what trigger they would like to integrate with and then run the curl command below to fetch all possible triggers for RealPage. Identify the trigger ID(s) and insert (use commas) in case of multiple trigger IDs
2 -customer.checkin.delay : Delay in number of days in sending RR
Kairoiresidential - SFTP Username: SFTP username will be available in the BirdEye dashboard under the Developers’ tab.
V6WjmoHA7WeZ -SFTP Password: SFTP Password will be available in the BirdEye dashboard under the Developer’ tab.
How to set check-in delay and fetch delay:
Check-in Delay: A deliberate delay in sending review requests to contacts updated through check-in fall in the category of ‘Checkin Delay’. The delay in sending requests can be configured to 1 or more days.
Fetch Delay: When a business user wishes to fetch backdated contacts and send out requests, ‘Fetch Delay’ is used. The days can be backdated to 0 or more days.
NOTE: Every business can configure ‘checkin delay’ and ‘fetch delay’ to any given date, however, they need to keep two things in mind:
If the survey file for a trigger has the same date in the name as that of the transferred date in UTC: For instance, 11th October 2019 is the date of transfer and has 10112019 in its name then you must set the fetch delay as 0 for that trigger ONLY
If the survey file for a trigger has previous date in the name as that of the transferred date in UTC: For instance, the file was transferred on 11th October 2019 and has 10102019 in its name then fetch delay and checkin delay needs to be changed for that trigger ONLY. Here you must set the fetch delay as 1 and checkin delay>=2
Troubleshooting steps
(b) Fetch information for all the triggers available for RealPage (Curl Command)
Copy this Curl Command
curl -X GET https://common-services.birdeye.com/integration/trigger/integrationtriggers/sourceid/12 -H 'cache-control: no-cache' -H 'content-type: application/json'
Sample response: A sample response like this would appear after you run the curl command. The response will have the trigger name, description and the ID. This trigger Id will be utilized while creating the integration group. An integration can have one or more triggers. To use more than one trigger, enter comma separated values while creating the integration group.
[{ "id": 31,"integrationSourceId": 12,"triggerService": "realPageMoveInTriggerService","displayName": "RealPage Move In Trigger","description": "This trigger is used to fetch customer data based on move-in to the property from the files received at BirdEye SFTP site","active": true,"integrationSourceName": "RealPage" ,"integrationTriggerType":[{"id":1,"name":"JOB"}] },{ "id": 32,"integrationSourceId": 12,"triggerService": "realPageLeaseStartTriggerService","displayName": "RealPage Lease Start Trigger","description": "This trigger is used to fetch customer data based on the start of lease period from the files received at BirdEye SFTP site","active": true,"integrationSourceName": "RealPage""integrationTriggerType":[{"id":1,"name":"JOB"}]},{ "id": 33,"integrationSourceId": 12,"triggerService": "realPageProspectVisitTriggerService","displayName": "RealPage Prospect Visit Trigger","description": "This trigger is used to fetch customer data based on prospect visit to the property from the files received at BirdEye SFTP site","active": true,"integrationSourceName": "RealPage" ,"integrationTriggerType":[{"id":1,"name":"JOB"}]},{ "id": 34,"integrationSourceId": 12, "triggerService": "realPageCompletedWorkOrderTriggerService", "displayName": "RealPage Completed Work Order Trigger","description": "This trigger is used to fetch customer data based on completed work orders from the files received at BirdEye SFTP site","active": true,"integrationSourceName": "RealPage","integrationTriggerType":[{"id":1,"name":"JOB"}]}]31, 32, 33, & 34 - Trigger IDs
(c) Find business integration group details (Curl Command)
Copy this Curl Command
curl -X GET https://common-services.birdeye.com/integration/businessintegrationgroup/150837789850462 -H 'Cache-Control: no-cache'
150837789850462 - Business ID: Enter the Business ID here to get the integration group ID for the business.
Sample Response
[{
"groupId":57,
"integrationSourceType":{
"id":12,
"integrationSource":"REALPAGE",
"sourceCategory":"Real Estate",
"oauthEnabled":false
},
"integrationGroupTriggers": [
{
"triggerId": 31,
"triggerTypeId": 1
}
]
}
]57- Group ID: A group ID will be returned in the sample response with the details of the existing triggers for the business.
(d) Update Trigger Information (use only if business wants to change) (Curl Command)
Copy this Curl Command
curl -X POST 'https://common-services.birdeye.com/integration/update/businessintegrationgroup?replaceTriggers=true' -H 'cache-control: no-cache' -H 'content-type: application/json' -d '{ "groupId": 14,"integrationGroupTriggers":[{"triggerId":32,"triggerTypeId":1}]}'replaceTriggers=true - To replace existing trigger(s), enter the value for replaceTriggers as To add new trigger(s) to the existing list, the value for replaceTriggers should be false
14- The Group ID that was returned in the previous step will be entered here.
32- Enter the Trigger ID(s) that need to be added or updated to the integration.
(e) Business Integration Mapping: This configuration is developed to create the actual business integration mapping. Each business integration mapping corresponds to an individual business location.
Copy this Curl Command
curl -X PUT https://common-services.birdeye.com/integration/add/businessintegrationmapping -H 'cache-control: no-cache' -H 'content-type: application/json' -d '{ "businessNumber": 151917371962613, "integrationGroupId" : 23, "active": true, "integrationProperties" :[ { "propertyKey" :"realpage.property.detail", "propertyValue" :"{\"Remington Cove\" : 4259668}" } ] } '
151917371962613- Business ID- Enter the Business ID here.
23- Group ID- Enter the Group ID that was returned when the Integration group was created.
Property name and Property site ID (here ‘Remington Cove’ and ‘4259668’ respectively) can be fetched from the RealPage account. DO NOT ADD THE PROPERTY NAME AS PER THE BUSINESS NAME in BirdEye as both can differ. For eg., a property in BirdEye named as "Sandridge Apartment Homes" might have an actual RealPage property name "Sandridge". Thus, the entry should be done with property name as "Sandridge"
NOTE: In case, if more than one property is mapped to a single business in BirdEye, then replace the property value in the curl command by listing property values separated by comma, as shown below.
"propertyValue" :"{\"Remington Cove I\" : 4259668,\"Remington Cove II\" : 4263143}"
Steps to verify that integration is setup correctly
Check in Realpage if the files are getting generated for each property in both the groups at the specified time
If the files are generated in Realpage then check the files at the SFTP location in BirdEye.
If there is no file received at our SFTP location even after a day of the configuration then the SFTP Download Utility has not been setup correctly.Verify the steps again for this group setup
If there are files received at our SFTP location then check if we are receiving files for each property needed and each trigger(surveys) required
If there are files present for each location and each trigger check the date of the file name.It is of the same day as that of transfer date or a day earlier as this would be used to configure the fetch delay and checkin delay accordingly
If the configuration has been done for Realpage Integration for the business at BirdEye end then the files should be processed and moved to the Done folder.
If the files are present in our SFTP server and not getting moved to the Done folder then there would be an issue with the configuration at BirdEye end.
If the files are moved to the done folder and have contacts within the file but the review request are not being sent then check the fetch delay and checkin delay configuration
Troubleshooting steps:
If review requests are not sent out irrespective of correct setup. (Error might be in ‘checkin delay’ and ‘fetch delay’ configuration)
For example : Current Setup as of today:
Date : 2019-10-10
Checkin delay = 1
Customer fetch delay = 1
All feed files transferred contain the date : 10102019 (Each file contains the data of last 7 days as per setup in RealPage : 3th October - 9th October)
Next Run
Date as per yesterday : 2019-10-11 02:43:16 UTC (2019-10-10 19:43:16 PST)
As per the delay and the timezone the fetch date becomes (Next Run Time - Frequency - Delay + 1)
2019-10-10 19:43:16 PST - 1 DAY - 1 DAY + 1 DAY = 2019-10-09 19:43:16 PST
As RealPage is configured basis date type integration, fetch date becomes - 2019-10-09
So, on 10th October it will pick the file for 9th October which contains data between 2nd October - 8th October . Assuming the check-in delay is 1, only those records would be checked where event date >= current time - 1 DAY
Since the file only contains data of 2nd - 8th October, even if there is a record with event date as 8th October it would not be checked in as 8th October < 10th October - 1 DAY and if present day today is 10th October, no records would be eligible for check-ins.
To make this work, either we need to remove the customer fetch delay or increase check-in delay for proper functioning. As an example, removing the customer fetch delay and setting it to 0 will display the following configuration:
As per the delay and the timezone the fetch date becomes (Next Run Time - Frequency - Delay + 1) 2019-10-10 19:43:16 PST - 1 DAY - 0 DAY + 1 DAY = 2019-10-10 19:43:16 PST
As RealPage is configured basis date type integration, fetch date becomes - 2019-10-10. So on 10th October it will pick the file for 10th October which contains data from 3rd October - 9th October. Assuming the check-in delay is 1 that means that only those records would be checked in whose event date >= current time - 1 DAY
Since the file only contains data of 3rd - 9th October, even if there is a record with event date as 9th October it would be checked in as 9th October + 1 DAY = 10th October. Assuming today is 10th October, records would be eligible for check-in.
NOTE: There are a few RealPage integrations where the the date in survey feed files are different for Household,Resident,Prospect Visit and Work Order. You cannot always set the fetch delay to 0 as that would not work for all configurations, few feed files would be marked a day earlier.



















