Xero integration

1. Use XOAuth(https://github.com/XeroAPI/xoauth) to generate access token:
Use scopes: openid offline_access accounting.transactions accounting.journals.read accounting.settings accounting.contacts
E.g., given 
'xoauth list' output:
name: xero
client_id: 8708ABF4427E450EBF293E8D19FEFCF7
client_secret: ••••••••••••••••••••••
scopes:
 • openid
 • offline_access
 • openid offline_access accounting.transactions accounting.journals.read accounting.settings accounting.contacts

'xero' is the connection with client ID and client secret set by xauth setup.
Then using 'xoauth connect xero' should then open up a browser window, use end customer's login and pass to login into Xero and give access to your client ID - that should generate access & refresh tokens.

2. Enable Xero integration in General settings
After filling client ID, client secret and refresh token, run:
AcadiaWeb.Xero.list_tenants(<company_id>)
Take tenant ID from there and fill it

3. Create AcadiaPOS in Xero dashboard, take contact ID from the URL and fill it as well

In Xero, go to Chart of Accounts and create an account called:
SYNC001
Type should be Revenue / Sales, and tax rate should match the one used in POS. 
Create an additional SYNC002/3/4 for each additional tax rate that needs mapping
Fill those codes in point of sale tax rates('Xero account' field)

Then create 
SYNC005/06/07..etc for each of the payment method that needs syncing(type CURRENT ASSET, click Allow payments to this account checkbox), and fill those codes in each payment methods in point of sale