Synchronization preferences are discussed in greater detail in the Reference --> Preferences --> QuickBooks Synchronization Preferences. In this section I want to focus on the ‘Send All’ preference (Send all unsent transactions / payments [that are available to be send] to QuickBooks). When this preference is checked, you do not have to use the Trigger or Button in order to record transactions into QuickBooks, rather it occurs during a synchronization. Generally, a transaction is ‘available to send’ when it is saved. The exceptions are the ship doc and work order. A ship doc is available when it is marked as shipped and a work order when it is finished.
During synchronization the following occurs:
The Sync Queue is flushed
Changes made to QuickBooks since the last synchronization will update All Orders (i.e. changes made to a customer in QuickBooks will update All Orders
Transactions (i.e. Invoices and Bill) will be recorded in QuickBooks if the ‘Send All’ preference above is checked.
So before we proceed let’s review what comes into play.
The User: The User can be connected to QuickBooks or not connected to QuickBooks. If the User is not connected it means that the User does not have to have QuickBooks on their machine and therefore cannot synchronize in real-time but can add records that can affect QuickBooks through the Sync Queue.
The ‘Send All’ Preference. If this preference is not checked then in order to record transactions in QuickBooks you will need to ‘Trigger’ it one-at-a-time through the transaction or several through the list.
That being said there are 3 questions to answer:
We already discussed that list records and transactions are synchronized. The default approach is that ALL allowed list records and transactions are synchronized. There are 2 exceptions:
You are hitting the list record limit in QuickBooks or you simply do not want all the items in QuickBooks
There are certain transactions that you do not want to flow into QuickBooks.
For customers, vendors and items All Orders allows you to use 'Proxies' (aka as Aliases). A proxy is a record in QuickBooks that will be used by All Orders to record a transaction. For example, you have a website but you do not want to create every customer in QuickBooks. You first set up a customer called 'Web Customer' which is in both QuickBooks and All Orders. When you create a new customer in All Orders you select 'Web Customer' in the Proxy drop down. When an invoice is generated in QuickBooks you will not see the name of the customer but rather 'Web Customer'. The same approach can be taken with items and vendors.
Note: when you use proxies for items in QuickBooks the average cost in QuickBooks will include all transactions for the All Orders items that use the proxy item.
You may also have some transactions that you do not want to record in QuickBooks. For example, a transaction with no monetary value. On all transactions All Orders provides the 'NC Only' check box. By checking 'NC Only' the transaction will be prevented from going to QuickBooks. You can set the default values for 'NC Only' in QuickBooks Preferences.
All Orders users that also have QuickBooks can synchronize but that does not mean they should. We recommend that only one user synchronize with QuickBooks and the others use All Orders in 'Disconnected mode'. In that way they don't even need QuickBooks on their computers. You set the All Orders user as disconnected under Manage Users. When a user is disconnected he/she can work with items, customers etc. These records are put in the 'Sync Queue' which will be flushed upon the next synchronization.
If the user is connected to QuickBooks and deletes, edits or creates a list record or triggers as transaction then synchronization is done automatically with no further action required.
Otherwise synchronization preferences can be established to in QuickBooks preferences. The options are:
Sync on start up
Manual sync
Auto (timed) sync
You can synchronize manually in one of two ways, both of which are available under Synchronize QuickBooks from the Company menu:
Synch - This syncs all inventory parts and all other lists since the date of the last sync.
Selective Synch - You can custom-select which lists to sync (handy if you have a huge database). You can also filter by date. If you do filter it will sync ALL records.