A continuación pasamos a detallar los pasos que sigue el algoritmo de recepción de datos presente en los procesos de sincronización en las aplicaciones móviles.

- Descargamos configuración de objetos y vistas, menús, propiedades, páginas, plantillas, etc.
- Creamos todas las tablas usando el nombre original pero con prefijo temp_ y añadiendo los siguientes campos a cada tabla: _isInserted, _isUpdated, _isDeleted, _syncDate, _insertDate, _updatedDate, _deletedDate.
- Descargamos e insertamos los datos de cada tabla en distintos hilos de ejecución.
- Con todos los datos descargados, comparamos con la estructura anterior y ejecutamos en una única transacción los siguientes pasos:
I. Las tablas antiguas que ya no existan en el modelo son eliminadas.
II. Las tablas nuevas que no existían en el modelo son renombradas quitando el prefijo _temp.
III. Con las tablas coincidentes en ambos modelos:
A) En caso de "Refrescar datos":
- Se comprueba si ha cambiado la clave primaria, en caso afirmativo se devuelve error y se deshace todo el proceso solicitándole al usuario que realice una sincronización completa (tipo B).
- Se marcan como eliminados aquellos registros que ya estaban marcados como eliminados.
- Se insertan nuevamente los registros marcados como nuevos pero sólo usando los campos coincidentes en ambos modelos.
- Se actualizan los campos coincidentes en ambos modelos de los registros del muevo modelo usando aquellos del viejo que estén marcados como actualizados.
- Se eliminan las tablas antiguas y se renombran las nuevas quitando el prefijo _temp.
B) En caso de "Sobrescribir datos":
- Se eliminan las tablas viejas y se renombran las nuevas quitando el prefijo _temp