Square POS is a popular and freely available point of sales system for Android and IOS devices. There are no monthly fees. While the primary use is to process credit cards using Square, there is no requirement to do so as other payment methods are supported.

The FrontAccounting (FA) Square POS Connector is a FrontAccounting extension that integrates Square POS into FrontAccounting so that it can be used as a general purpose POS for FrontAccounting.

The extension provides the ability to export stock items from FA to Square. Those stock items then can be sold using the Square POS. The resulting orders can be imported into FrontAccounting.

Square Setup

1. Create an account with Square.

2. Access your Dashboard and go to Apps to obtain a Square Access Token Id. For more information, see https://developer.squareup.com/docs/get-started. This is a developer token that allows the FA extension to manage the Square data. (Note: Square integrates with other desktop accounting software using Square apps that are downloadable from Square. This is NOT available for FA; you will need to create a developer Access Token as described above.)

3. Before you can export FA Inventory to Square, you need to set up taxes in Square. From your Dashboard, go to Items->Sales taxes. The name of the Square tax must be the same as the Square location name and optionally followed by the FA item tax name.

For example, if the Square location is "Somewheresville" and the FA item tax name is "Regular", you must create Square tax of "Somewheresville Regular". (Alternatively, you could create a Square tax of "Somewheresville" which would apply to all FA items, regardless of the FA tax class). The tax percentage should be the total tax that is collected for that item in Somewheresville.

4. Download the Square POS app to your Android or IOS device.

FrontAccounting Setup

To enable Square POS Connector, you install the FA extension, activate it for the desired company, and enable access to it from the desired role.

After successful installation, Square POS Connector appears under the Sales tab. Click on Configuration. You need to set the Square Access Token Id and click Update.

Before you can import orders, you need to create a FA Destination Customer. You also need to create FA customer branches for the FA Destination Customer where the branch name is the same as the Square location. Thus, orders from each Square location will appear under the FA Destination Customer and the FA customer branch. If you do not create a customer branch for the Square location, orders for that location will not be imported for that location.

You need to set up FA Points of Sale for the Square payment types you intend to support. This is done using Setup->Points of Sale. The Square POS names are "Card", "Cash" and "Other". Create these and assign a G/L account. For "Card" and "Cash", click the "Allowed credit sale" and "Allowed cash sale" boxes. For "Other" (which is the Square type for checks), click the "Allowed credit sale" but leave the "Allowed cash sale" box unchecked.

You need to set up two entries in Setup->Payment Terms: one that is type "Cash" and the other "After No. of Days". The "Cash" type payment terms is used for cash and Square credit card payments and the "After No. of Days" type is used for checks. The terminology is a little confusing because "Cash" in FA means that payment does not require a manual collection process.

Square transactions are imported in FA as direct invoices that appear in these POS bank accounts. Payments are created for "Card" and "Cash" but no payment is created for a check. A check must be manually deposited to be collected and this process is recorded in FA using Sales->Customer Payments. This allows the check to be batched with other checks and deposited on a date other than the sale date.

The "Export Inventory" page is used to export FA inventory to Square.

If you have multiple Square locations, choose the one to receive the FA inventory or "All" if you want all locations to receive the FA inventory.

Chose the FA Category to export or "All" to export inventory from all categories. Category names containing inventory will be exported to Square, thus creating a Square category.

The "Stock ID Pattern" is used to match the stock ids to be exported to square. Leave this blank if you want all stock ids to be exported.

Set "Upload Images" to "Yes" if you also want to upload images. This is slow, so you might want to only do this as needed.

Using Square POS and FrontAccounting

Once you have exported your FA inventory to Square, you will be able to see it on your Dashboard under Items. You will also be able to see it under Library on your Android or IOS device.

FA is the the stock master and Square is the slave, so any changes made on Square will be overwritten by the FA Export Items. Inventory changes on FA such as those resulting from supplier purchase invoices, customer sales, and inventory adjustments from FA propagate seamlessly to Square.

You should test the POS by creating an order on your device. The order will appear under Transactions in your Dashboard or device.

Use the FA Square Connector Import Orders to retrieve the order from square.

Tips and Tricks

The import function creates "Card" Square transactions as individual paid FA sales invoices. The default Square deposit plan makes a single bank deposit per day. Install the Bank Daily Summary w/Sweep extension to sweep all transactions from a single day into another bank account as a single transfer.

For example, if you have set up a Square bank account and a Somewheresville bank account in FA, set up the POS to put "Card" Square transactions into the Square bank account. Use Bank Daily Summary w/Sweep extension to sweep the funds into Somewheresville bank as a single deposit each day.

Square also offers a free online storefront (Weebly). This is one way you can list your FA inventory online and accept online orders. The Square POS connector keeps the inventory up to date in Square and Square synchronizes the inventory with the online store.