Tag: XML Data Mapping

  • Case Study 15: Google Product Review Feed for Kiierr: Building a Google-Ready XML Feed

    Overview

    In July 2024, we worked with Kiierr to develop a custom Google Product Review Feed for its e-commerce product and review data.

    The project involved transforming product review information into a structured XML feed based on Google’s Product Review Feed requirements, making the data easier to consume through Google’s product-review ecosystem.

    This project is a good example of how a standard website’s product and review information can be converted into a specialized XML format for an external platform.

    The Challenge

    Product review data is often stored inside an e-commerce website in a format designed primarily for website visitors.

    External platforms such as Google require that information to follow a specific XML structure, with appropriate elements and relationships between products, reviews, ratings, and other relevant information.

    For Kiierr, the requirement was to create a dedicated feed that could present its product review information in a format aligned with Google’s Product Review Feed specification.

    The key challenge was not simply generating XML. The feed needed to:

    • Follow the required XML structure.
    • Represent product and review information correctly.
    • Map the website’s available data to the appropriate feed fields.
    • Handle product identifiers and review-related information.
    • Produce a consistent, machine-readable feed.
    • Provide a dedicated feed URL that could be accessed by the external platform.

    Our Solution

    We developed a custom Google Product Review Feed specifically for Kiierr.

    Rather than relying on a generic XML export, the feed was structured around Google’s product-review feed requirements.

    The development process included:

    1. Data Mapping

    The available product and review information was mapped to the corresponding fields required by the Google Product Review Feed format.

    This included determining which information should be used for products, reviews, ratings, and other associated data.

    2. Custom XML Generation

    A dedicated XML feed was created to generate the required product-review structure dynamically.

    This allowed the feed to represent the website’s review data in a structured format rather than requiring manual XML updates.

    3. Product and Review Relationships

    Product information and associated reviews need to be represented consistently so that an external system can understand which review belongs to which product.

    The feed therefore handled the relationship between product information and its corresponding review data.

    4. Structured Feed Output

    The final implementation provided a dedicated XML feed endpoint that could be accessed independently from the main website.

    This makes it possible for an external service to retrieve the structured data without depending on the presentation layer of the website.

    Why Custom Feed Development Matters

    A product-review feed is different from a conventional RSS feed.

    An RSS feed primarily communicates content updates such as articles, posts, or other published items. A product-review feed has a much more specific data model and must represent information such as:

    • Products
    • Product identifiers
    • Reviews
    • Review authors
    • Ratings
    • Review content
    • Review dates
    • Product/review relationships

    For this reason, simply exporting website content as XML is not enough.

    The important part of this type of project is understanding the target platform’s specification and building the feed around that specification.

    Project Outcome

    The Kiierr project resulted in a dedicated Google Product Review Feed developed in July 2024.

    The project demonstrated our ability to work with specialized XML specifications, map e-commerce data into structured formats, and develop custom feeds for third-party platforms.

    It also forms part of our broader experience developing XML, RSS, product, real-estate, job, API, and other custom data feeds.

    Our Experience With Custom XML Feeds

    Over the years, we have worked on a wide range of feed-related projects, including:

    • Google product and review feeds
    • RSS feeds
    • Real-estate XML feeds
    • Job-board XML feeds
    • API-to-XML integrations
    • XML-to-CSV conversions
    • XML-to-XML transformations
    • Custom PHP feed generators
    • Product data feeds
    • Marketplace and portal feeds

    Each project requires a slightly different approach because the destination platform often has its own XML structure, required fields, validation rules, and data-mapping requirements.

    Need a Custom Product or XML Feed?

    If your website already contains product, review, property, job, or other structured data but you need it exported into a specific XML format, we can develop a custom feed around your requirements.

    We can help with:

    Custom XML Feeds • Google Feeds • RSS Feeds • Product Feeds • API-to-XML • XML-to-XML • XML Troubleshooting

    Have an existing feed that is no longer working correctly? We can also investigate and fix XML structure, data mapping, validation, and feed-generation issues.

    Contact us to discuss your feed requirements.

  • Case Study 2: Real Estate Feed Development

    WordPress Custom Fields → XML Mapping → Portal-Ready Feed

    Real estate agencies often manage their property listings in WordPress, but their data needs to be distributed across multiple property portals, each with its own XML structure, field names, location formats, and validation requirements.

    In this project, the goal was to automate that process for two real estate websites and distribute their property portfolios to multiple international property platforms.

    The Challenge

    The client operated two real estate websites:

    • sothebysrealty.me
    • nekretnina.me

    They wanted to automatically export their property portfolio to platforms including:

    • Realting
    • Homes Overseas
    • Tranio
    • A Place in the Sun
    • Prian.ru
    • Realitica
    • Green Acres
    • JamesEdition

    Instead of manually entering or maintaining listings on each portal, the requirement was to create WordPress-based XML feeds that could automatically transform the existing property data into the format expected by each destination platform.

    The initial requirement was relatively straightforward: generate XML feeds from WordPress.

    However, the project quickly demonstrated that real estate feed integration is more than simply converting WordPress posts into XML.

    Different portals required different:

    • Field names
    • XML structures
    • Property types
    • Location values
    • Languages
    • Feature/amenity mappings
    • Publication rules
    • Data formats
    • Business rules

    The source data therefore needed to be mapped and normalized before it could become a reliable portal-ready feed.

    The Solution

    The solution was implemented as a collection of custom WordPress feed integrations.

    The basic architecture was:

    WordPress Property Data → Field Mapping → Data Normalization → XML Generation → Portal-Specific Feed

    Each portal received its own XML output while using the property’s existing information from the WordPress websites.

    For example, a WordPress property could contain information such as:

    • Property type
    • Price
    • Location
    • Bedrooms
    • Bathrooms
    • Features
    • Images
    • Description
    • Property ID
    • Publication information

    The feed logic then transformed these values into the XML structure required by the destination portal.

    1. WordPress Data Extraction

    The first step was extracting the existing property information from the two WordPress websites.

    Rather than requiring the client to maintain a separate database for every portal, the existing WordPress property data remained the primary source.

    This allowed the workflow to remain simple:

    Edit the property once in WordPress → Generate the required XML → Portal consumes the feed.

    The project eventually evolved into a broader multi-portal feed system rather than a single XML export.

    2. Portal-Specific XML Mapping

    Each portal had its own requirements.

    For example, the client supplied the Homes Overseas export specification, while Realting provided an XML sample/template for its import structure. The implementation therefore required studying the destination specifications before creating the mapping.

    The mapping process connected the WordPress property fields to the corresponding portal fields.

    A simplified example:

    WordPress DataPortal XML
    Property ID<property_id>
    Property TypePortal-specific property type
    PricePortal price field
    CityPortal location field
    BedroomsBedroom element
    FeaturesPortal feature elements
    ImagesPortal image elements
    DescriptionPortal description field

    The important point is that this was not a one-to-one XML conversion.

    The same WordPress value could need to be transformed differently depending on the destination portal.

    3. Location Normalization

    Location mapping became one of the important parts of the project.

    The source websites and destination portals did not always use identical city or location names.

    This required custom location mapping so that a WordPress location could be translated into a value recognized by the destination portal.

    The project included additional work specifically for mapping locations where the website’s city names did not match the Green Acres database.

    This illustrates an important lesson from real estate feed development:

    Valid XML does not necessarily mean valid portal data.

    A feed can be technically correct XML and still be rejected or incorrectly categorized by the receiving marketplace if its values do not match the portal’s expected taxonomy.

    4. Property Type Standardization

    Property types also required normalization.

    The source website could use one naming convention while a portal could expect a different set of property categories.

    The project included property-type mapping as part of the broader feed system, and a later website change to the property’s type name even caused multiple existing feeds to require correction.

    This highlighted the importance of making feed integrations resilient to changes in the source WordPress data structure.

    5. Multilingual Feed Support

    The project also required English and Russian feed variations for some portals.

    Separate feed endpoints were created for the different language requirements, with the additional work involving fetching translated data rather than simply duplicating the original XML.

    This meant the feed system had to consider:

    Source language → Translation → Portal-specific XML

    rather than simply:

    Source language → XML

    6. Duplicate Prevention

    Another requirement was preventing the same property from being unnecessarily copied to advertising platforms.

    A custom WordPress function was developed to provide an option on the property edit screen to control whether a property should be copied to another website.

    This introduced a simple but important business rule:

    Property enabled for distribution → Include in feed

    Property disabled for distribution → Exclude from feed

    That gave the client more control over which listings were syndicated.

    7. Feed Validation and Testing

    Generating XML was only one part of the work.

    The feeds also needed to be tested against the destination requirements to make sure:

    • Required fields were present
    • Values were correctly mapped
    • Locations were recognized
    • Property types were accepted
    • Images were included correctly
    • Duplicate listings were controlled
    • Portal-specific XML structures were followed

    The later multi-portal project explicitly included feed validation and testing as part of the implementation scope.

    The Project Expanded Over Time

    What began as a small requirement for two websites and two portals gradually became a much larger feed ecosystem.

    The initial implementation covered:

    2 WordPress websites → 2 destination portals

    It subsequently expanded to additional portals and integrations, including A Place in the Sun, Prian.ru, Realitica, Green Acres, and JamesEdition.
    The work also included merging feeds, additional location mappings, and handling portal-specific limitations.

    For example, during the Green Acres integration, some properties could not be added because the portal did not support the source property’s “price upon request” value.

    This is a good example of why portal integrations often require more than coding alone: some limitations originate from the destination platform itself.

    The Result

    The project evolved from a basic XML export into a reusable multi-portal real estate feed system.

    The resulting workflow allowed property information maintained in WordPress to be transformed into portal-specific XML feeds without manually recreating every listing on every platform.

    The overall process became:

    Manage Property in WordPress

    Apply Mapping & Business Rules

    Normalize Location / Property Type / Features

    Generate Portal-Specific XML

    Validate Feed

    Publish to Real Estate Portal

    This significantly reduced repetitive data entry and made it possible to distribute listings across multiple real estate marketplaces using automated feeds.

    Key Takeaways

    1. XML generation is only the beginning

    A technically valid XML document is not enough. The receiving portal must also understand the values and structure.

    2. Mapping is the core of real estate feed development

    Property types, locations, features, languages, and other fields often need normalization before they can be exported.

    3. Every portal is different

    A feed designed for one marketplace should not automatically be assumed to work for another.

    4. Source data changes need to be considered

    A change to a WordPress field name or property-type value can affect multiple downstream feeds.

    5. Business rules matter

    Options such as excluding a property, preventing duplicates, handling missing values, or dealing with unsupported pricing models can be just as important as the XML structure itself.

    The Architecture in One Diagram

    WordPress Websites

    sothebysrealty.me + nekretnina.me

    Property Data Extraction

    Field Mapping

    • Property type
    • Location
    • Price
    • Features
    • Images
    • Languages

    Data Normalization

    Portal-Specific XML Generator

    Validation & Testing

    Real Estate Portals

    • Realting
    • Homes Overseas
    • Tranio
    • A Place in the Sun
    • Prian.ru
    • Realitica
    • Green Acres
    • JamesEdition

    Final Outcome

    The project demonstrates how a WordPress website can become the central source of truth for a real estate company’s property portfolio while custom XML integrations handle the differences between external marketplaces.

    Instead of maintaining property data separately on every portal, the workflow becomes:

    Update once in WordPress. Transform automatically. Distribute everywhere.

    That is the real value of a custom real estate XML feed: not just generating XML, but building a reliable bridge between WordPress property data and the specific data requirements of each marketplace.

    Technologies: WordPress · PHP · Custom Plugins · XML · Data Mapping · Feed Validation · Real Estate Portal Integration