The Square extension can synchronize your OpenCart product base with your Square item library. The OpenCart entities synchronized are:
Catalog Sync ensures your Square orders will contain items from your Square catalog. This allows for more accurate sales reporting within the Square dashboard.
Sync Direction (OpenCart ⇒ Square)
The Square extension can only do Catalog Sync in the direction OpenCart ⇒ Square. This means that you must not edit your Square library from within the Square dashboard, because any changes you make will be overwritten by OpenCart. You must edit your product base only from within OpenCart.
How often Catalog Sync will happen depends on the value you set in Admin > Extensions > Square > tab Settings > Advanced Settings > Catalog Sync Period (in minutes).
On-Demand Sync does the same as Catalog Sync, but it is ran manually instead of at an equal time interval. You can force an On-Demand Sync using the "Refresh" icon at the top right in the Square extension.
Not all OpenCart product fields will be synced in Square because of the differences between both systems. For example, Square does not work with the product Weight or the ISBN field.
Ad-Hoc Items/Discounts in Orders
In some cases, the Square order may contain additional ad-hoc items/discounts to account for OpenCart product special prices, or rounding differences resulting from currency conversions.
Options and Taxes
OpenCart Options and Taxes are not synced with Square. Nevertheless, Options and Taxes will still be visible in your Square orders but as ad-hoc items, not part of your Square library.
Sync During Checkout
During checkout, if an OpenCart item has a different price than the item in Square, or if the item in Square does not exist at all, the Square extension will try to upload only this product to the Square catalog. After that, it will automatically continue processing the order.
The Square extension will sync only your enabled OpenCart products. After the sync, they will become visible in your Square Item Library:
Products - Square Variations
Notice that if the OpenCart product has any required Select or Radio options, they are mapped to a Square item variation:
Products - Required Option Prices
If a required Select or Radio option alters the product price, the end-price is applied to the Square variations:
Your OpenCart categories will be synced during Catalog Sync:
Note that if a product in OpenCart is assigned to more than one category, in Square it will appear as assigned to only the first OpenCart category. This is because a Square item cannot be assigned to more than one category within Square: