We recently signed a developer partnership agreement with Sage, UK’s largest pure tech company (that’s right, original tech was all about software products before the term got hijacked by any business who used tech for competitive advantage).
Sage was ridiculed by early adopters of tech and bloggers when they tried to build a cloud product and failed a number of times. This time around, they have succeeded and claim to be winning more accounts in the UK than Xero.
The same pundits also laughed at Microsoft, but they are now back with a vengeance. You cannot keep a sleeping tiger sleep forever. When you start pulling their tails (taking market share), they are likely to eventually wake up. With the force behind these organisations, they could move at a pace that startups can hardly keep up with.
Sage stands out for taking an almost counterintuitive approach. It is making two versions of SageOne. The UK office is developing a SageOne program for the northern hemisphere. South Africa is making one for the southern hemisphere. Why is that? You could argue it’s a form of insurance. Sage’s first attempt at a cloud accounting program was such a failure that they had to write it off and start again.
In the same post, Sholto captures a fascinating interview with Steven Cohen, who built a different version of SageOne for the southern hemisphere, and now responsible for Asia, Australia, the Middle East and African (AAMEA) markets.
Whilst navigating through Sage isn’t as bad as Microsoft (see my post: Taming Microsoft when you return from Google after 8 years), nevertheless, you only find out the complications after development starts. We just have to accept that Sage and Microsoft (and possibly many others) are struggling to build global products than new tech companies such as Xero and Google, who had no legacy software and procedures to battle with.
So let’s get to the bottom of Sage development programme. We signed up to SageOne and Sage Live, and started developing SageOne A/R App which would mirror the App we developed for Xero. Easy peasy, right! Well not quite!
SageOne Developer Self Service
We built our SageOne App first using the resources available at https://developers.sageone.com/. After we tested the App, we invited a friend to trial it, only to discover it did not work due to him having access to an older version. The API was valid for UK, USA, Germany, Spain and Portugal.
SageOne Other Developer Site
Once we were happy with our SageOne App, we started to speak to Sage about repeating the same for Sage Live. At this point, we were referred to second development site at https://developer.columbus.sage.com/, which contained APIs for both Sage One and Sage Live.
For SageOne, there are three different APIs, one for UK and Ireland (V3), one for US (V3) and another for Canada (V3). Unfortunately, no information is given to identify what these differences might be. From a developer point of view, this adds a significant burden, especially if they continue to have differences.
At this stage we were advised to use Sage Columbus API and not the first API we used. Once we switched to Columbus, some of the existing functionality had to be re-coded, as it was not just a simple change of the API endpoints.
UnifiedVU SageOne A/R require you to authenticate with your SageOne account before it can be used. During the authentication process, you are presented with the following screen.
Until this point, we thought the Columbus API was only valid for 4 countries. It seems that’s not the case. In fact, what we built only works for UK and Ireland, even though we are presented with a large number of countries. This also raise the question, what about the countries not listed here?
SageOne South Africa API
At this point we discovered the South African API (https://accounting.sageone.co.za/Marketing/DeveloperProgram.aspx), which I learned from Sholto thanks to his blog post. This is completely different to the two and their variants we tried earlier.
Where do we go from here?
Let’s revisit. Our plan was simple. Replicate the design and functionality of Xero App for SageOne and Sage Live. We thought it was a simple exercise. But it’s not. We don’t just have to cater for differences in APIs based on the country, but also need to support older APIs as latest are not backward compatible. Looks like we got our work cut out for the next few months!
Persevere is a must given how important Sage is. But I cannot help thinking whether they have enough expertise to understand how to make life of development partners easy.
Here’s what we built..
It wouldn’t be right to finish the post without showing what we built, especially side by side with Xero.
Both Apps have the same functionality. UnifiedVU Xero App was built using PHP and the UnifiedVU SageOne App was built in Angular.js and therefore much superior. Sage App has the following functionality:
- Search for a customer and if found, display invoice details.
- Donut shows outstanding invoice data in terms of debtor days.
- Click on little arrow to go to actual invoice in SageOne.
- Displays due, overdue and paid invoices.
- For each invoice, invoice number, name of customer, amount and due or overdue time is shown.
- Graph shows invoices over 12 months period.
- Responds to adjacent apps such as CapsuleCRM, Pipedrive, SugarCRM, Salesforce, MailChimp and others.
Do let us know if you like a free trial.