Embracing the API Economy
Ah, the joys of cloud computing! No hardware, less waste, reduced costs, remote access, automatic updates, and the list goes on. But the growing selection of solutions might have you feeling like you can have too much of a good thing. Today, small and medium businesses are juggling an average of 14.3 applications, or 5.5 apps per employee. Unless effectively integrated, each of these applications is an information silo, limiting a business’ ability to get a clear picture of its data.
Integrations can provide valuable real time data, reduce human error, improve customer service, boost productivity, and give a big picture view that helps businesses to identify pain points, bottlenecks, and resource sucks. Application programming interfaces (APIs) are key building blocks of this interconnectedness, allowing for the flow of information across organizational boundaries. The growing cloud economy only further impels the so-called “API imperative”. The problem? Building integrations requires time, resources, and a certain amount of IT expertise.
What Are the Key Elements of a Custom API Integration?
It can be tough to commit, but investing in quality integrations will pay off for most businesses. If you don’t already have an in-house IT team, and it’s not a skill set you need full time, an IT consultancy may be the best choice. BeeBole customer Taptu, an IT advisor and API integration specialist based in Australia, has extensive experience building integrations for a variety of businesses. They shared some integration insights with us.
Should you choose to create an integration in-house, Taptu CEO Luca Gnezda offers this advice. “Ideally, you want to try and isolate data down to a single source of truth and held within a single software platform, pushing to one or more customer systems. That makes for the easiest and most robust integration,” he says.
In Taptu’s experience, the key elements that make an API integration strong are:
- Unambiguous primary keys in the source system and, ideally, natural keys whenever possible.
- Limiting integration to what you really need.
- An intermediary system to hold merged copies of data for future disambiguation.
- An external primary key in the consuming system, so you can reliably link data back to its source.
- Great error handling!
- Design integration for self-recovery. No failure should be terminal, and errors should self-correct as data in the source system is fixed.
- Fix the source, not the integration.
- Separation of interests. Separate the functions of data push and synchronization from master data and warehousing and reporting.
Timesheet integration with Xero Payroll and Office 365 via API
While Taptu is usually busy creating integrations for their clients, they recently built their own API integration platform with BeeBole Timesheet, Xero, Office 365, their bespoke platform in Azure, and their data warehouse. It requires a data mashup including client, employee, contractor and service management, client projects, employee and contractor timesheets, client invoicing, remuneration, and reporting. The integration is complex and incorporates many elements, but essentially its steps include:
- A one-way sync of clients from Xero to all other systems
- A two-way sync of employees between Xero and BeeBole
- A one-way sync of projects from BeeBole to the bespoke platform, and then adding master data within the bespoke system
- A one-way sync of time from BeeBole
- The definition of services as the connection between people, time, and client projects
- The auto-generation and one-way write of invoicing to Xero
- The auto-generation and one-way write of remuneration to Xero
Luca explains, “Our business implements client engagements, invoicing, and remuneration in a non-standard way. This allows our business to be far more agile than our competitors and empowers staff to control the type of work engagements they agree on with our clients.” While they’re still finishing the front end user experience, Taptu’s integration is nearly automating their entire business work and invoicing pipeline.
Using BeeBole Timesheet’s API
“We really enjoy using BeeBole,” says Luca Gnezda. “It’s simple but effective. Most other timesheet systems try to be too much, and make usability worse and integration harder. BeeBole is elegant in its simplicity. . . . The API itself is robust and reliable.”
Some clients may take for granted the availability of an API, but it is not in fact offered by all time tracking tools. Before choosing a time tracking platform, treat integration as an important feature to ensure you don’t onboard a tool that is not compatible with your existing software.
BeeBole Timesheet users can enable the API via the “Account” module in the settings page, and learn more via BeeBole’s API documentation.
Photo by Hans-Peter Gauster on Unsplash