Upgrading fmAccounting Link (Xero Edition) to OAuth 2.0

Last year Xero began the transition from using OAuth 1.0a for authenticating with the Xero API to OAuth 2.0. We wrote about our plans for OAuth 2.0 and fmAccounting Link (Xero Edition) back in December and released an update shortly afterwards that supported OAuth 2.0. This was mainly aimed at new customers as Xero removed the ability to create new OAuth 1.0a Private Apps in December and we needed a solution for new customers who could only create OAuth 2.0 apps to integrate with.

Existing customers who have been using fmAccounting Link (Xero Edition) prior to December 2019 also need to start planning the transition to OAuth 2.0 as Xero will be removing support for OAuth 1.0a Private Apps in 12 months (you have plenty of time to make the change). Here are the critical dates that you need to be aware of:

  • 2nd December 2019: Developers could no longer create new OAuth 1.0a apps (if you need to create a new private app before June 2020 get in touch and we’ll show you how to do this for the next few months if necessary)
  • December 2020: you should aim to have your existing integration upgraded from OAuth 1.0a to OAuth 2.0 by the end of the year
  • March 2021: OAuth 1.0a will no longer be supported for any integrations. You must have upgraded by March 2021 or your existing integration will stop working.

You can read more about why Xero are changing to OAuth 2.0 here and they have an FAQ on OAuth 2.0 as well. Since the initial release last year they have released a number of improvements to OAuth 2.0 to make for a faster and more seamless authentication process.

If you’re not sure where to start we have some good news for you – we’ve done all the hard work and have 2 new versions of fmAccounting Link (Xero Edition) that support OAuth 2.0. We’ve invested hundreds of hours of development time over the past few months in preparing these updates to have them available as soon as possible so you have as much time as possible to complete the upgrade.

If you’re looking to upgrade your fmAccounting Link (Xero Edition) v1 integration from OAuth 1.0a to OAuth 2.0 we’re pleased to have the following options available.

fmAccounting Link (Xero Edition) v1

Since we first released fmAccounting Link (Xero Edition) back in 2014 we’ve been releasing free updates to v1 for all customers ever since. That’s almost 6 years of free updates which we are very proud of and we’ve decided to also provide a free update to all existing customers to the OAuth 2.0 version. This is a major update from Xero and we didn’t want to leave our hundreds of customers all around the world without an option to update here (see important dates above).

All existing fmAccounting Link (Xero Edition) v1 customers can download the latest v1 release (v1.97 or later) which now supports OAuth 2.0 only. To download the latest v1 file just use the same link on your original order email (contact us if you can’t find the email or need the link to be reset etc) or if you created an account at the time of ordering you can login to our site and download it from your order history page.

We have a dedicated page (see below) that outlines the changes between the OAuth 1.0a and OAuth 2.0 versions and what changes you will need to make if you wish to upgrade an existing version/integration. You can always just use the new file and migrate your data across and perform the initial one off OAuth 2.0 authentication if you haven’t customised or integrated with other FileMaker solutions.

fmAccounting Link (Xero Edition) v1 OAuth 2.0 Update Guide

fmAccounting Link (Xero Edition) v2

As well as providing a free update to v1 of fmAccounting Link (Xero Edition) we’ve also released a new version that supports OAuth 2.0 and no longer requires a FileMaker plug-in to communicate with the Xero API. As we mentioned back in December one of the benefits of the move to OAuth 2.0 is that we can finally remove the plug-in dependency for authenticating with the Xero API that was necessary when using OAuth 1.0a and Xero private apps. This has been the reason why we haven’t been able to release a version of fmAccounting Link that runs natively on the FileMaker 16 Platform or higher without requiring a FileMaker plug-in. There are a number of benefits to removing the plug-in dependency, including faster API request processing and the ability to use other clients like FileMaker Go (without being connected to FileMaker Server).

fmAccounting Link (Xero Edition) v2 is now available and is a paid upgrade (customers who purchased v1 on or after 1 December, 2019 are entitled to a free upgrade!). All v1 customers are entitled to a 50% discount and you should have received your discount coupons in our initial mailout. Please get in touch if you haven’t received your coupon for the free or discount upgrade.

fmAccounting Link (Xero Edition) v2 looks and feels similar to v1 but under the hood it is completely different. We’ve updated every script that touches the Xero API but it all works in a very similar manner. We’re now using native FileMaker script steps and functions which were first introduced in the FileMaker 16 platform, so you must be running FileMaker 16 or higher to use fmAccounting Link (Xero Edition) v2. We’re now using JSON for all data that we send and receive to Xero and are no longer using calculation fields to store the data payload to upload to Xero (we create a calculation as part of the upload scripts). Check out our v2 update guide below for further details on the changes from v1 to v2 that you need to be aware of.

fmAccounting Link (Xero Edition) v2 Update Guide

If you don’t have the time or resources to complete the upgrade to OAuth 2.0 please get in touch as we are available for consulting to work with you on upgrading your existing integration to either v1 or v2 of fmAccounting Link (Xero Edition).

OAuth 2.0 App Setup and Authentication

The way you authenticate with the Xero API changes from the old OAuth 1.0a private app setup where you exchanged a set of keys to the new OAuth 2.0 where a user has to login to Xero to approve access to your new app/integration. We have a video covering the OAuth 2.0 App Setup on our videos page (the authentication process is the same for both versions).

As part of the OAuth 2.0 authentication fmAccounting Link will store the following for the Organisation your authenticated with:

At the successful completion of the OAuth 2.0 flow you will be granted an access token to act on behalf of the user as well as a refresh token. Access tokens expire after 30 minutes and you can refresh an access token without user interaction by using a refresh token.

N.B. Unused refresh tokens expire after 60 days. If you don’t refresh your access token within 60 days the user will need to reauthorize your app.

fmAccounting Link (MYOB AccountRight Edition) Now Runs Natively on FileMaker 16 or Higher Platform

We’re pleased to announce that v1.4 of fmAccounting Link (MYOB AccountRight Edition) is now available and includes a number of new features, including native support for FileMaker Pro v16 and later. This is a free update to all existing customers (simply download using the same link that was on your original order email).

With the release of the FileMaker 16 platform we got a number of new functions and script steps, including support for working with JSON data and being able to specify supported cURL options with the Insert From URL script step. These new features meant that we were no longer dependent on plug-in functions and we could replace these with native FileMaker features.

We’ve updated all the requests for downloading and uploading to the AccountRight API to use native FileMaker functions and script steps so you no longer need to use a FileMaker plug-in if you’re using FileMaker Pro v16 or higher. This means you can also use fmAccounting Link (MYOB AccountRight Edition) on FileMaker Go natively (requires FileMaker Go 16 or higher).

Like our previous updates for native FileMaker functionality for our other products we’ve simply updated the scripts to check which version of FileMaker Pro, FileMaker Go or FileMaker Server is being used and if you’re using v15 or earlier we simply use the previous plug-in functionality, and if you’re using v16 or later we now use native functionality. Everything works exactly the same regardless of which version of FileMaker Pro you’re using, but we can now include support for FileMaker Go as well as having one less dependency to worry about.

This release also includes examples for downloading and uploading Timesheets as well as downloading Payroll Categories, and some example scripts for searching for Contacts in AccountRight by Company/Individual Name and Card ID.

You can get all the details on our version history page – if there are any additional features or examples you would like to see in fmAccounting Link (MYOB AccountRight Edition) please get in touch and let us know. If you’re having any issues with downloading the new version please contact us if you need the link to be reset etc.

fmAccounting Link (Xero Edition) Now Supports OAuth 2.0

Earlier this month Xero said goodbye to OAuth 1.0a and moved to OAuth 2.0 for a simpler, faster and more secure authentication experience (see our earlier post about this). We’ve been busy working on an update to fmAccounting Link (Xero Edition), our solution for integrating the FileMaker Platform with Xero, which we previewed in an previous post where we discussed the changes and the updates we plan to release as a result of the move to OAuth 2.0.

We’re pleased to announce that v1.97 of fmAccounting Link (Xero Edition) now supports OAuth 2.0, so new customers can now create OAuth 2.0 apps for the Xero API and connect them to the FileMaker Platform using fmAccounting Link (Xero Edition). We’ve updated our integration guide and posted a new video showing you how to setup an OAuth 2.0 app. Setting up an OAuth 2.0 app in Xero and connecting this to the fmAccounting Link (Xero Edition) solution only takes a few minutes and once you’ve completed the initial authentication everything works the same as before.

We’re working on documenting the process if you wish to convert your existing fmAccounting Link (Xero Edition) solution from OAuth 1.0a to OAuth 2.0. There’s no immediate rush as you have until December 2020 to update existing OAuth 1.0a integrations to OAuth 2.0. We’re also working on v2.0 of fmAccounting Link (Xero Edition) which will only support OAuth 2.0 and not require a FileMaker plug-in – it will use native FileMaker functions and scripts and will require FileMaker Pro v16 or later.

If you have any questions about fmAccounting Link (Xero Edition) and OAuth 2.0 please get in touch or post a comment below.

fmAccounting Link (Xero Edition) and OAuth 2.0

Xero recently launched a beta version of OAuth 2.0 for the Xero APIs for developers building new integrations. OAuth 2.0 is a replacement for the current OAuth 1.0a which works with various app “types”, including partner, public and private. fmAccounting Link uses the private app type – with OAuth 2.0 the concept of “app types” will be going away and all developers will use OAuth 2.0.

Xero’s OAuth 2.0 implementation is built to the industry standard spec for OAuth 2.0, so if you’ve used it before it will be very familiar (we use this in our fmAccounting Link (MYOB AccountRight Edition) solution for the MYOB AccountRight Cloud).

Last month Xero announced that from 2 December 2019 developers will no longer be able to create OAuth 1.0a apps on the Xero platform and that all new apps will need to use OAuth 2.0. We will be releasing a free update to fmAccounting Link in December that supports OAuth 2.0 – essentially this involves changing how the authentication process works (see preview video below). We will have further details on the changes involved if you wish to update your existing integration when we release this update.

One of the additional benefits of the move to OAuth 2.0 is that we can finally remove the plug-in dependency for authenticating with the Xero API that was necessary when using OAuth 1.0a. This has been the reason why we haven’t been able to release a version of fmAccounting Link that runs natively on the FileMaker 16 Platform or higher without requiring a FileMaker plug-in. There are a number of benefits to removing the plug-in dependency, including faster API request processing and the ability to use other clients like FileMaker Go (without being connected to FileMaker Server).

As part of the migration to OAuth 2.0 Xero have announced that existing OAuth 1.0a apps will continue to be supported until at least December 2020, allowing you sufficient time to migrate across to the new platform. This means by December 2020 you will need to update your integration to use OAuth 2.0.

fmAccounting Link (Xero Edition) currently supports FileMaker Pro v12 or higher and the native functions and script steps that replace the plug-in calls were only introduced in FileMaker Pro v16, so we will be releasing 2 updates to fmAccounting Link (Xero Edition) over the next few months:

  1. our first update that we are planning to release in December, 2019 will be for new customers and those who are happy to continue using the plug-in (e.g. if you are using FileMaker Pro v15 or earlier). This will be a free update so all users will have a solution to the OAuth 2.0 migration (we’ve been releasing free updates for fmAccounting Link for over 5 years now).
  2. we are also working on an update to fmAccounting Link (Xero Edition) that will not require the plug-in and will require FileMaker Pro v16 or later. As you can imagine this is a massive undertaking (having been through this process for our WooCommerce, Shopify, fmSMS and MYOB AccountRight solutions we know the time commitment involved) and this release will be the first paid update to fmAccounting Link in over 5 years. We will have discounted upgrades for existing customers who also wish to make the transition to a native integration. We are planning to release this update in the first quarter of 2020.

We will be in contact with all existing customers once we have the first free update available and will have further instructions on our website about how to make the transition to OAuth 2.0. If you would like to see how this will look here’s a preview video showing the changes to the authentication – you can also watch this directly on YouTube here.

fmAccounting Link (Xero Edition) Now Supports Batch Payments

The Xero web application has long had the ability to create a Batch Deposit for multiple Invoices and a Batch Payment for multiple Bills, but this hasn’t been available via the Xero API until recently.

The Xero API was recently updated to support creating Batch Payments for Bills and Invoices as well as retrieving Batch Payments. We’ve just released a new version of fmAccounting Link (Xero Edition) that also supports creating Batch Payments and downloading them from Xero.

It works the same way as it does in Xero – you first select the Authorised Bills or Invoices that you wish to create a Batch Payment for. You would create a found set by using the FileMaker find/omit commands to generate the found set of record and switch to the list view layout which has the Create Batch Payment – Found Set button:

Clicking this button will create a Batch Payment for the found set of Invoices or Bills and use the amount outstanding as the amount to allocate to each Invoice or Bill:

You can adjust each individual Amount on this screen and select the Bank Account, Date and Reference for the Batch Payment then click the Push to Xero – Current Record button which will upload the Batch Payment to Xero. This also creates a Payment record against each Invoice or Bill so the balance of each of these will be reduced by the allocated Amount.

Here’s a video that demonstrates creating a Batch Payment in fmAccounting Link (Xero Edition) – you can also watch it on YouTube here:

Once again this is a this free update to all our existing customers who can download this version from the link on your original order email (contact us if you need the link to be reset etc).

fmAccounting Link (MYOB AccountRight Edition) v1.3 Update

We’ve just released an update to fmAccounting Link (MYOB AccountRight Edition), our FileMaker solution for integrating with MYOB AccountRight in Australia and New Zealand. Version 1.3 is a big release packed with lots of new examples. Here’s some of the highlights:

  • added Sale Orders examples (download and upload Sale Orders)
  • added Supplier Payments examples (download and upload Supplier Payments)
  • added Inventory Adjustments examples (download and upload Inventory Adjustments)
  • added Inventory Item Price Matrix (Custom Price Levels) examples (download and update Custom Price Levels)
  • added new button/script to just get the Contact Balances from MYOB
  • added button to download current balance from MYOB for an Invoice
  • added button to download any Customer Payments from MYOB for an Invoice

Once again this is a free update for all existing customers. You can view the full release notes on our version history page.

Xero surpasses one million subscribers across Australia and New Zealand

The announcement this week by Xero, the global small business platform (it no longer positions itself as just an accounting platform) that it had surpassed one million subscribers across Australia and New Zealand made me check where our fmAccounting Link (Xero Edition) customers are located.

We now have hundreds of customers around the world using our fmAccounting Link (Xero Edition) solution every day to automate the exchange of data between Xero and the FileMaker platform. Typical integrations involve automating the uploading of Contacts, Invoices, Bills, and Purchase Orders and the downloading of Payments, all at the click of a button or automated via FileMaker Server schedules.

Last time we mapped our fmAccounting Link (Xero Edition) customers in February 2017 Xero had a total of 862,000 subscribers spread across their four main market regions of:

  • Australia
  • New Zealand
  • UK
  • North America

with Australian and New Zealand being the two largest markets and our customer map reflected this spread.

Xero now has 1.6 million subscribers in over 180 countries, including 355,000 in the UK. We’ve just updated our map again:

and we now have many more pins in the same four markets, with a few in South Asia as well as South Africa. We’re noticing an increase in interest from Canada, the United States and South Asia where Xero is just getting started in the market. According to Xero the penetration of cloud accounting sits at around 40 percent in Australia and New Zealand, more than double what it is worldwide.

We expect as other regions adopt cloud accounting at the rate we have here in Australia and New Zealand that Xero will continue to grow it’s subscriber base worldwide. We look forward to revisiting the Xero subscriber numbers in 12 months time and updating our customer map again.

fmAccounting Link (Xero Edition) Update – Notes & History and Attachments

In Xero, you can view the history of changes made to invoices, bills, transactions, inventory items, contacts and more. This audit trail also shows any notes recorded by users in the Xero app but until recently this information was not available via the Accounting API.

Earlier this year Xero added a new endpoint to the Accounting API to allow developers to be able to download the notes/history and also add new notes. We’ve just released an update to fmAccounting Link (Xero Edition) that includes examples for downloading and creating Notes for Contacts and Invoices.

The history and notes for an Invoice in the Xero web app looks like this:

and contains important information, such as when the Invoice was sent to the customer and if they have viewed the invoice online. We’ve added a new Notes tab to display the same information in the fmAccounting Link file:

You can download all the Notes from Xero for an Invoice and a Contact and create a new Note and upload that to Xero for a Invoice and a Contact. We started adding support for the new History and Notes endpoint for Contacts and Invoices as these are two of the most popular modules, but will gradually add them to the other supported modules such as Bills, Credit Notes, Items etc.

We also took this opportunity to extend the support for working with Attachments to also include the ability to download Attachments for an Invoice and create/download Attachments for a Contact.

Here’s a video that demonstrates working with History and Notes and Attachments in fmAccounting Link (Xero Edition):

fmAccounting Link (Xero Edition) and Unit Price Rounding in Xero

By default the Xero API accepts unit prices (UnitAmount) to two decimals places – this means that if you were entering a line item on an Invoice and entered ‘1.795’ for the Unit Price it would be rounded to $1.80 in Xero. For most customers 2 decimal places is sufficient for the line item unit price, however there are some customers that do require greater precision. Xero offer a way to opt-in to 4 decimal places by adding a parameter to your API request.

For example if you wanted to create an Invoice and include 4 decimal places on the unit price for the line items you would change the URL from:

https://api.xero.com/api.xro/2.0/Invoices

to:

https://api.xero.com/api.xro/2.0/Invoices?unitdp=4

Unfortunately it wasn’t as simple as changing the URL in the appropriate fmAccounting Link scripts – even after changing the URL and including unit prices on the line items with 4 decimal places they were still being rounded to two decimals places when uploaded to Xero. We’ve come up with a solution to this to allow you to specify unit prices with 4 decimal places – you’ll need to simply install an updated version of the BaseElements plug-in (v3.3.8) and make sure you change your request URL to include the additional querystring parameter.

If you need to specify unit prices with 4 decimal places please get in touch and we’ll send you the new version of the BaseElements plug-in to use. You can get more information on the Xero developer website here:

https://developer.xero.com/documentation/api-guides/rounding-in-xero

fmAccounting Link and Two-factor authentication with Xero and MYOB

 

As more IT services move to the cloud the risk of unauthorised access and security breaches becomes something that most small business owners need to manage in order to protect access to their critical business systems and sensitive data. The past few years has seen a significant increase in the number of online services coming under cyber attack and sustaining security breaches, as well as the rise in identify theft and online fraud. Security industry research shows that over 40% of cyber attacks last year targeted small businesses and this is increasing.

In additional to the traditional username and password login, many online services now offer an extra layer of protection in the form of two-factor authentication, also commonly referred to as 2FA. With two-step authentication enabled you need to provide two authentication “factors” to login alongside your username. The first factor is something you know – typically your account password.  The second factor is something you have – typically a unique code that’s generated by a separate app on your smartphone or sent via SMS to your registered mobile phone.

Some of the largest online services including Google, Microsoft, Apple, Twitter, Facebook and LinkedIn now offer two-factor authentication – users will typically have to first login using their username/password, then immediately have to enter a 2nd level of authentication (typically a one time code that is sent via SMS or generated via an authenticator app like Google Authenticator).

Two-factor authentication is available for both Xero and MYOB, and in Australia the use of 2FA will be mandatory for accountants and bookkeepers by 30 June 2018 to meet new industry standards set out by the Australian Tax Office. We’ve been using two-factor authentication with Xero and MYOB and are pleased to report there are no issues with 2FA and the use of fmAccounting Link (Xero Edition) or fmAccounting Link (MYOB AccountRight Edition).

With our fmAccounting Link (Xero Edition) solution we connect to the Xero API via the use of a Private Application, so users are not required to authenticate each time they connect to the Xero API to upload or download data. With fmAccounting Link (MYOB AccountRight Edition) if you are using the MYOB Cloud to host your AccountRight company file you will simply be presented with the additional login page to enter your 2FA code – here’s a screenshot showing this:

You can learn more about two-factor authentication for Xero and MYOB at the following links: