What's the best solution for offline db syncing
Bucardo is the standard tool for this sort of job.  It's well tested to run when the two servers are disconnected from each other for a while.  You could use any master/master replication approach instead:  Londiste, Slony, or the early release of BDR from 2ndQuadrant.

With the network setup you've described, you will be hard pressed to avoid race conditions here in all conditions no matter what you do.  The only way to keep someone from spending money in both locations here is to setup a two-phase commit transactions or do some form of synchronous replication, basically only putting the record on one machine if it's coordinated on both.  One nice thing about Bucardo is that it's designed expecting this will happen.  You can setup a conflict resolution mechanism, to recognize and potentially resolve conflicts on nodes when things are changed on both.  The other multi-master solutions are not aiming as directly at the disconnected network / conflicting change problems.