связь плохая это проблема, синхронизация будет постоянно рваться, а восстанавливать придется иногда и полными дампами, чудес не бывает.
А 40 филиалов это проблема * 40.
Может есть решение, если к примеру синхронизировать информацию не физикой а логикой. На уровне приложения к примеру.