A system for data synchronization between two or more computer terminals comprising, at least one client terminal configured to create a new data string and/or modify an existing data string, a server terminal configured to receive, store and process said created or modified data string, a communication network connecting said client terminal and said server terminal, a data string being created on said client terminal, said client terminal being configured to send the created or modified data string to the server terminal for synchronization between the two terminals, - the client terminal is configured to ∘ initiate the data synchronization upon said creation or said modification of the data string, ∘ store, upon a synchronization failure, reconciliation data with the latest synchronization information including said created or modified data string in a database on the client terminal and to be resent according to a retry counter avoiding an infinite number of synchronization retries, ∘ trigger a synchronization retry according to an exponential backoff algorithm, ∘ upon a further synchronization failure, keep the reconciliation data with the latest synchronization information including said created or modified data string in the database and incrementing the retry counter, ∘ upon reaching a maximum number of retries counted by the retry counter, move the reconciliation data with the latest synchronization information including said created or modified data string to a queue for rejected items, ∘ synchronize the reconciliation data with the latest synchronization information including said created or modified data string in the queue for rejected items with a subsequent synchronization in response to a subsequent data string modification, - the system being configured to modify the stored reconciliation data to contain the latest synchronization information, the modification of the reconciliation data being based upon a reconciliation process including adding the modified data string to the original data string, merging the modified data string to the original data string or replacing the original data string by the modified data string. - the client terminal is configured to ∘ initiate the data synchronization upon said creation or said modification of the data string, ∘ store, upon a synchronization failure, reconciliation data with the latest synchronization information including said created or modified data string in a database on the client terminal and to be resent according to a retry counter avoiding an infinite number of synchronization retries, ∘ trigger a synchronization retry according to an exponential backoff algorithm, ∘ upon a further synchronization failure, keep the reconciliation data with the latest synchronization information including said created or modified data string in the database and incrementing the retry counter, ∘ upon reaching a maximum number of retries counted by the retry counter, move the reconciliation data with the latest synchronization information including said created or modified data string to a queue for rejected items, ∘ synchronize the reconciliation data with the latest synchronization information including said created or modified data string in the queue for rejected items with a subsequent synchronization in response to a subsequent data string modification, ∘ initiate the data synchronization upon said creation or said modification of the data string, ∘ store, upon a synchronization failure, reconciliation data with the latest synchronization information including said created or modified data string in a database on the client terminal and to be resent according to a retry counter avoiding an infinite number of synchronization retries, ∘ trigger a synchronization retry according to an exponential backoff algorithm, ∘ upon a further synchronization failure, keep the reconciliation data with the latest synchronization information including said created or modified data string in the database and incrementing the retry counter, ∘ upon reaching a maximum number of retries counted by the retry counter, move the reconciliation data with the latest synchronization information including said created or modified data string to a queue for rejected items, ∘ synchronize the reconciliation data with the latest synchronization information including said created or modified data string in the queue for rejected items with a subsequent synchronization in response to a subsequent data string modification, - the system being configured to modify the stored reconciliation data to contain the latest synchronization information, the modification of the reconciliation data being based upon a reconciliation process including adding the modified data string to the original data string, merging the modified data string to the original data string or replacing the original data string by the modified data string.