Our inspiration for this application was born from a real world need at Macedon Technologies. Our third party timekeeping applications was a pain point for many of our employees: the system didn't enforce our business rules, so we had to overlay manual processes for checking time sheets. We discovered that Quick Books Online has an endpoint available that allows it to integrate with other applications and decided to leverage this functionality to make the Time Management Application.

What it does

TMA allows users to enter their timesheets in Appian, but also sends our time entries to QBO. Appian allows us the ability to easily create our own interfaces and enforce our own business rules when employees are submitting their time sheets. Additional system enforced validations ensure that all of our employees time sheets are always accurate without a manual manager review step.

Before TMA, our timesheet data was exclusively stored in QBO, but now that we can access that data in Appian we can now use it to add functionality to our existing suite of small business applications. We can use our timekeeping data to enhance other features, like billing financial revenue and cost projections. We used to have to copy time entries from QBO to Appian manually if we wanted to compare our projections to actual time logged, but that data is now available in Appian as soon as an employee enters it. We can aggregate it instantly to enhance our exiting workflows.

Our mobile component is another great quality of life improvement for our employees. QBO's time tracking application does not support mobile, and submitting time without sitting down at a computer can be difficult. Appian's mobile functionality allows us to submit time from anywhere there is internet, and maximizes user accessibility for employees who travel frequently. Our Quick Time Submission site enhances this accessibility further by allowing submission of a single simple time entry with only a few quick taps on your mobile device.

QBO supplies our last piece of important functionality, and by building an integration between Appian and QBO we get the best of both platforms. QBO is a book keeping platform that contains many powerful features for managing your finances. If TMA only leveraged Appian's functionality, we would have to replicate tools in QBO that are useful and well built. Our integration with QBO ensures that we can have all of benefits of both Appian and QBO and forms something that its more powerful than the sum of its parts independently.

How we built it

We used out of the box Appian integration capabilities, as well as the standard low-code interface tools that Appian provides.

Challenges we ran into

While building TMA it was difficult to keep the balance between a powerful Appian application that informs the other applications on its environments, and a modular component that could be deployed on any current Appian environment. TMA needed to supply powerful functionality to our internal Appian environment, while not being dependent on any object outside the application. It was more difficult than originally anticipated to provide both of these needs simultaneously due to conflicting goals.

Another challenge was figuring out how to implement the integration between QBO and Appian. The documentation for the OAuth 2.0 authentication protocol was not always completely accurate and often varied from source to source, and there was some difficulty getting the handshaking to complete successfully between Appian and QBO using connected service objects.

Accomplishments that we're proud of

We quickly (in a matter of a few weeks) built an application that integrated heavily with our existing Appian environment, but we were also able to deploy it modularly to a new environment.

We were also able to troubleshoot the issues we were having with the integration, and managed to construct a solution by examining successful sample calls provided by QBO. Using this information we constructed a web call using out-of-box Appian webservice functions when QBO refused to handshake with a connected service object.

What's next for TMA

TMA is slated for several enhancements over the next few months. To start, we would like to further develop our QBO integration to allow for greater control from our Appian environment. Currently the functionality involves some set up to set values in both environments. Eventually this will all be controlled from Appian, and will allow us to create new clients, and services without logging into QBO. Our immediate next step is to implement this to centralize control of all aspects of our timekeeping in Appian.

In the near future we would like to create detailed and dynamic reports that can give management an easy to read view of employee hours in different contexts. This will be especially useful at the end of each month when employee timesheets are processed for payroll and client invoicing. Management must review each employees time to ensure there are no issues before these processes can be completed. These reports will reduce the time it takes to validate payroll and invoicing and allows users to

Built With

Share this project: