Skip to Content

Syncing your Onboarding Corporate Structure using the Integration Center – Part One

When implementing Onboarding, syncing the corporate structure always seems to come up.  The implementation guide advises “Do not sync the Corporate Structure information, because the sync only brings the label and code information, which can result in information loss”.  I’ve been stuck in that manual maintenance nightmare before and it ends up becoming a full time job to keep up with your company’s ever-changing corporate structure.

Existing Standard Corporate Sync

The corporate structure sync can be done through the foundation import or an adhoc report. Some limitations to these methods include:

  • Integration issues
  • Information loss/ formatting issues
  • Limited to only 3 levels of an organizational hierarchy as there is only an import file for division, department, and location

With Integration Center, our savior, you’re able to:

  • Sync code and name as separate fields
  • Sync more than three levels
  • Sync relationships
  • Sync additional corporate structure details

The below example will walk you through the steps for modifying the foundation import and foundation import mapping files, creating location and department integration center reports, and modifying the LocationImport XSLT file.

Determine Corporate Structure Levels

In Onboarding, go to Onboarding > Reference Files > Corporate Structure



In Super Admin, go to See Also > Corporate Structure


Create the Integration Center Reports

The following reports will be setup similar to the adhoc reports but will have generic field names and a new Org Level column which will determine which corporate structure level the file belongs to.

  1. Go to Admin Tools > Company Settings > Integration Center and select click My Integrations
  2. Click the Create button and then select Scheduled Flat File Output Integration 
  3. Search for “Location” and select Location (FOLocation)
  4. Select Location Code (externalCode) and Location Name (name)
  5. Uncheck Start Date
  6. Click Select                                                     
  7. Enter Integration Details
    1. Integration Name: Onboarding Locations Export
    2. Output File Type: csv
    3. Header Type: Simple
  8. Click Next                                                        
  9. Click Location Code and change the label to ClientID
  10. Click Location Name and change the label to Name
  11. Click Location Code and select Insert Field > Insert Fixed Value Field (You can create a calculated field to calculate count but for demo purposes, we will use a fixed value field)
    1. Label: Count(User Sys ID)
    2. Default Value: 5
  12. Click OK
  13. Repeat steps to create OrgLevel
    1. Label: OrgLevel
    2. Default Value: Your Location Level (In this demo, it’s 4)
  14. Click OK
    Your report should now look like this:

  15. Click Next
  16. Expand the Advanced Filters section and click Browse
  17. Search and select ‘Status (status) in Location (FOLocation)’
  18. Click Change Association to “Status”


  19. Enter A in the Value field to only include Active Locations
  20. Click Next


  21. Enter Destination Settings
    1. Enter SFTP Server Host Address, username, and password
    2. File Name Prefix: <case sensitive Company ID>_Location_Sync
    3. Date Suffix Format: yyyyMMdd
    4. File Extension: csv
    5. File Folder: /ONB/Inbound
  22. Click Save


**Repeat steps to create department report.

  • Starting Entity: Department (FODepartment)
  • Fields: Count(User Sys ID), ClientID, OrgLevel, Name
  • File Prefix: <case sensitive Company ID>_Department_Sync.csv

Modify the Import Files

Location Import File

**This file will be used to import all corporate structure levels versus having one import file per level. It is very important that all of the field names match exactly or the sync will fail.**

  1. In Super Admin, Go to Integration > Import/Export Settings
  2. Under the Integration section, export the ImportLocation file.
  3. Save a backup of the file
  4. Update the xslt file to the following code.
  5. Save as a new file
  6. Return to Import/Export Settings in Super Admin and import the new location import file

Foundation Import File

  1. In Super Admin, Go to Integration > Import/Export Settings
  2. Under the Integration section, export the FoundationImport file.
  3. Save a backup of the file
  4. Change the department import file to ImportLocation and modify the field names
  5. Save as a new file
  6. Return to Import/Export Settings in Super Admin and import the new foundation import file

Foundation Import Field Mapping File

  1. In Super Admin, Go to Integration > Import/Export Settings
  2. Under the Integration section, export the FoundationImportFieldMapping file.
  3. Save a backup of the file
  4. Modify the fields under Department and Location
  5. Save as a new file
  6. Return to Import/Export Settings in Super Admin and import the new foundation import field mapping file

Run the Integration Center Reports

  1. In Provisioning, go to Manage Scheduled Jobs
  2. Find your Location Sync Report and select Run Now from the Actions drop down
  3. Repeat for your Department Sync

Check Import Status in Onboarding Audit Report

  1. Once your report has been picked up from the ftp site, the file should no longer be listed in the inbound folder.
  2. Other than checking your corporate structure, you can determine the status of the import by going to Onboarding > Settings > Audit Report
  3. Select the blank option from the Type drop down, enter INTEGRATION in the Event Code text box and click filter
  4. Find the import file and see if it is complete


Once your report runs successfully and is processed by Onboarding, your corporate structure will be available in Onboarding.


I hope this post will make managing your Onboarding Corporate Structure a little easier. Please stay tuned for parts two and three on syncing relationships and additional attributes.

You must be Logged on to comment or reply to a post.
  • Hi Kayla,

    Thank you for sharing the ONB Corp Structure!

    Is there a way to map the EC MDF objects to ONB Corp structure without using foundation objects import/export in super admin?

    For Ex: If Org/Dept/location updates in EC MDF objects then automatically same objects should get sync in ONB Corp Structure!

    How can we achieve this?

    Thank you,


    • Yes! The above method syncs MDF objects from EC to onboarding if they change or are added in EC. It does not delete inactive objects because you would want them there for historical reporting.

      • Thank you Kayla, Appreciate your quick response.

        For Position Management integrated system also updates the same process?

        For Ex: If Inactive position Id is marked as a active position id to New Organization in EC, then this New Org Id get sync through the Integration Center in ONB Corp structure?

        Thank you,


  • Hi Kayla

    Thanks for the useful write up.

    My requirement is:

    When I add an employee in ONB, I have two custom corp fields in ONB (they are like department or division). The data for these have to flow down from EC to ONB. Do you think using your method will help synchronize this? This is bit urgent. So, appreciate your early reply.

    Thanks a lot again

  • Hi

    I actually want to move two Corporate Structure related MDF objects from EC to ONB. These should reflect while adding an employee in ONB. Now Division and Dept are reflecting in ONB screen. Similarly these, MDF objects should also reflect there.


    • Hi Raj,

      Yes, this will work for that. You might need to add a new level in onboarding super admin if one doesn't already exist for the MDF object but other than that, the steps would be the same.


    • Hi Heidi,

      The count field was in the original sync file, so I left it there and just chose 5 as a static number. In integration center, you can create a fixed column and enter any value and it will be used for all rows.

  • Hi Kayla,

    With this process, if an entry for a company in Onboarding already exists and has, for example, the E-Verify  field set to yes, is that entry overlaid by the update?  Or are only the fields defined in the import updated for an existing record and not the whole company record?



    • It only updates the fields defined in the import. For example, I defined client id, name, and country and then manually populated city and e-verify in onboarding. I updated the location name in EC and then ran the sync. Only the name updated but the fields I manually entered weren't changed.


  • Has anyone attempted to sync user's location with this method?  The user location is showing the concatenated value (location name (location code)), but ONB is expecting the location code only. I tried setting up the separate Integration Center file with User ID and Location Code but could only find Location" for the user.  Thank you in advance if you can assist!

    • Hi Stacey,

      Yes, I know of several people that have done this method and I have implemented it several times now. When looking for location in the integration center, use the location foundation object instead of the location on the user. You don't need to include the user id in this file and you will be able to get the code and name as separate values from the foundation table.



  • Kayla,


    Thanks for sharing your knowledge in this complex topic. Can you confirm if the solution you propose above can be used for updating level 1 Company and if this will also allow all the standard fields available for a company by standard. Thanks in advance


  • Thanks Kayla for sharing and putting nice blog.

    I am sure lot of people must have used your solution and saved the time and energy by NOT replicating the foundation objects as corporate structure. And Sync to avoid the regular maintenance.

    I tried to do the same but some how the files from SFTP site is not read by Onboarding application. Did anyone else had same issue? Appreciate your input.

    Thank you,

    • What did you name the files? The files from integration center have to be like above because Onboarding uses the file mask from the foundation import file to pick up the file. If the title there doesn't match the file name, it won't be picked up by onboarding.

      • Here are the file names and they do match.

        • instanceT1_Location_Sync20170620

        Location file got the date stamp after sync word but I think its should not impact because in foundation import we had put the * after sync.

        Thanks for quick reply.

        • Hi,

          On the foundation import file, try putting the * after the object instead of sync so it'd be like (Account Name)_Department*

  • Hello Kayla,

    This might be a stupid question,I'm just not sure with number 11. on the fixed field or calculated field, I'm not sure what to add or use on this field, hope you can share some idea.

    I'm just wondering on what's that value we are trying to get with this field. Is it the user sys id? If yes what's the use of the fixed field or calculated field.

    Hope you can help.

    Thank you so much.

    • Hi,

      On the sync files by SF, it has a column called Count(User Sys ID) which is a count of users in the org unit. For this integration, I left the column but just hardcoded a random number instead of doing a count. It won’t hurt anything if you do a count of employees in this column instead.  Then #13 is a fixed field and it’s the org level from onboarding.

      Hope this helps!

  • Hi Kayla,


    Thank you for your blog, it would really help the maintenance of corp structure, there's just one thing that I can't seem to do, the "Modify Import File,Location Import File" when I tried to export the Location in super admin, I'm getting a different format than yours.

    Here's what I have.


    Do I need to remove all those code and change it same as your screenshot or do I just need to add your code somewhere here on the above image.

    And what if we have more than 4 levels, is it just the same process?

    Really appreciate your help.

    • Hi,

      Yes, you'll replace everything except for the open and close stylesheet tags.  Below is a screenshot of a full file with 4 levels.  If you have more than that, you'll just add the additional levels.  If you want to sync additional attributes for some of the levels, part 3 of this blog includes that. Hope this helps!



  • Thanks Kayla

    I have followed all the steps,

    but while importing "ImportLocation" file syetm giving me "Failed to validate configuration file." error.

    Am I missing anything.



  • @Kayla

    Hello Kayla,

    Thanks a lot for the steps.

    I have a query though : if we have codes and names differently, in the Work queue screen, in the pending hires screen, in new manager activities, in e-mail notifications; everywhere the codes will be visible and not the text.

    Is that right, or I am missing on some configuration?


    E.g. For Department : Client ID : 101   Name : ABC Department

    So, in all the screens, "101" will be visible and not "ABC Department".



    Mohit Somain




    Mohit Somani