The XML batch upload is a flexible upload feature that is an excellent option when it comes to integrating with 3rd party systems. It uses 3rd party ID to synchronize locations and allows certain data elements including search log data to persist when updates are made to data within a location record.
The XML upload uses a special caching technique that stores a snapshot of the entire XML for each location on the system. When new XML files are imported, it compares the incoming XML for each location with the last cached version. Through this comparison, Bullseye determines which records have been updated, which records have been deleted and which records are new. Once changes have been identified, it will only act on those records that have changed.
The upside to this is that when there is very little data that is changed, the comparison and update require very little processing time because they don't have to loop through each record even when changes have not been made. However, because of this, it is required that each XML file be a full dataset so deletions and additions can be identified.
By default, the XML upload ignores specific data elements housed in Bullseye. This is to allow content which would be web facing and not part of another system to be maintained in Bullseye while still allowing other core data to be managed within a 3rd party system that is updated via XML. The elements that are excluded by default are:
- SEO information
- Landing page images
- Social media links
These can however also be configured to be updated as part of the XML update.
Likewise, we can configure other elements to be excluded from the XML update. This would be a consideration if you were delegating content management responsibilities to someone who would be updating this data via the Bullseye admin but still having an XML integration with another system.
Elements that can be excluded from the XML upload include:
- Attributes (currently we do not have the ability to exclude specific attributes; it's all or nothing)
- Territory mappings
- Business hours
- Location preview image
Another important data consideration is with the use of holiday hours. Holiday hours can be updated via the XML import or through the Bullseye admin. If the XML file includes holiday hours, the import will compare dates. If a listing already appears in Bullseye, but is not included in the XML import, the import will leave the existing record. If the date matches and hours have changed, Bullseye will update the record with the XML information. If a record does not exist in Bullseye, but is in the XML import, a new record will be added.
This flexibility allows changes to be made through the admin as well as via XML.
Notes on Holiday Hours
Keep in mind that if an XML file contains a holiday hours entry which is then modified through the admin, that record will also need to be updated in the source system for the XML. Otherwise, it runs the risk of being overwritten the next time the XML import is run.
If you wish to have holiday hours maintained only through the Bullseye admin, you should not include these in the XML import.
Updated about 6 years ago