Many distributed applications require the ability to synchronize databases over a network. Using a service oriented architecture, this poses challenges with regard to the way change information is expressed and merged. We propose a solution for a database synchronization service that is transactional, idempotent and reduces merging conflicts to a minimum. The PDStore system enables fine-grained recording of database changes and incremental synchronization, transmitting only as much data as necessary. Data instances are identified with globally unique identifiers, thus avoiding name clashes and reducing merging conflicts. Merging conflicts do not disturb the integrity of the database and can be resolved later. The approach presented in this paper is used in a municipal database system for earthquake safety assessment data of buildings.