A method of aggregating and updating heterogeneous data objects for a client subsystem of a plurality of client subsystems, the method comprising, at an aggregator server: storing a set of data object definitions, each data object definition providing a mapping between an aggregated data object format and a plurality of supplier data object formats; storing a set of update definitions, each update definition providing a mapping between an aggregated update operation and a plurality of supplier-specific supplier update mechanisms; receiving, in response to one or more requests transmitted from the aggregator server following a request from the client subsystem, multiple data objects (400, 404, 408, 412) in multiple of the supplier data object formats from multiple supplier sub-systems (104, 104-1, 104-2); selecting, based on the supplier data object formats of the received multiple supplier data objects (400, 404, 408, 412), corresponding ones of the data object definitions and generating one or more aggregated data objects (524, 536, 548, 560, 564) according to the selected data object definitions; storing the one or more generated aggregated data objects (524, 536, 548, 560, 564) in an aggregated data record in a repository; presenting the one or more generated aggregated data objects (524, 536, 548, 560, 564) to the client subsystem; receiving, via an application programming interface implementing a common set of the aggregated update operations for use by all of the plurality of client subsystems, an aggregated update operation from the client subsystem for updating the one or more presented aggregated data objects (524, 536, 548, 560, 564); updating the aggregated data objects (524, 536, 548, 560, 564) stored in the aggregated data record in the repository in accordance with the aggregated update operation; selecting, based on the received aggregated update operation, corresponding ones of the update definitions and initiating supplier-specific supplier update mechanisms according to the selected update definitions; repeating the receiving, selecting and generating for a further aggregated data object (524, 536, 548, 560, 564); and storing the further aggregated data object (524, 536, 548, 560, 564) in the aggregated data record prior to the presenting. storing a set of data object definitions, each data object definition providing a mapping between an aggregated data object format and a plurality of supplier data object formats; storing a set of update definitions, each update definition providing a mapping between an aggregated update operation and a plurality of supplier-specific supplier update mechanisms; receiving, in response to one or more requests transmitted from the aggregator server following a request from the client subsystem, multiple data objects (400, 404, 408, 412) in multiple of the supplier data object formats from multiple supplier sub-systems (104, 104-1, 104-2); selecting, based on the supplier data object formats of the received multiple supplier data objects (400, 404, 408, 412), corresponding ones of the data object definitions and generating one or more aggregated data objects (524, 536, 548, 560, 564) according to the selected data object definitions; storing the one or more generated aggregated data objects (524, 536, 548, 560, 564) in an aggregated data record in a repository; presenting the one or more generated aggregated data objects (524, 536, 548, 560, 564) to the client subsystem; receiving, via an application programming interface implementing a common set of the aggregated update operations for use by all of the plurality of client subsystems, an aggregated update operation from the client subsystem for updating the one or more presented aggregated data objects (524, 536, 548, 560, 564); updating the aggregated data objects (524, 536, 548, 560, 564) stored in the aggregated data record in the repository in accordance with the aggregated update operation; selecting, based on the received aggregated update operation, corresponding ones of the update definitions and initiating supplier-specific supplier update mechanisms according to the selected update definitions; repeating the receiving, selecting and generating for a further aggregated data object (524, 536, 548, 560, 564); and storing the further aggregated data object (524, 536, 548, 560, 564) in the aggregated data record prior to the presenting.