direi che la cosa si può inquadrare in questo modo:
macchina locale dove risiede il gestionale
macchina remota come servizio di backup
la macchina locale invia i dati a quella remota schedulando uno script (forse anche ajax) per l'aggiornamento.
l'aggiornamento avviene tramite operazione pianificate.
per far partire l'aggiornamento dovrai creare un piccolo file batch.
ora una parte un po' noiosa e rognosa:
una volta inviati i dati dovresti controllarne il corretto ricevimento da parte del server remoto interrogandolo e confrontando i dati
se tutto è andato bene ti segni sul db locale un inviato/ok in modo da non riprovare a reinviarli. altrimenti, se qualcosa è andato storto, agirai di conseguenza
questo in linea generale.
in un programma simile ho messo un campo nel db che popolo quando l'altra macchina mi conferma che ha ricevuto
in questo contesto non ci sono grossi problemi inerenti la risoluzione dei nomi a dominio...
se invece potessi rendere raggiungibile dall'esterno il server locale puoi aumentare le prestazioni e ridurre i problemi
ti piace l'idea?