A key KPI we follow in Expensya is total time, from spend to accounting That time is split between: Time to capture the spend, time to submit, time to get approved and time to integrate into accounting With Expensya deployed, average time to capture goes from 45 days to less than 1 day But average time to approve is “only” improved from 20 to 15 days Based on that, we studied the “why” and realized that managers have way too many tools in the workplace, and each has its own approval flows and apps – and they dream of a single integrated workplace platform – and that is Microsoft Teams.

What it does

A chat bot in Microsoft Teams that proactively notifies managers and employees of business expense report processing with adaptive cards. Managers will be able to accept or reject instantly business expenses through Microsoft Teams. Collaborators will be able to track their buiness expenses processing.

How we built it

  • First, we brainstormed the user experience of the application by taking into consideration what our users want and simplified it as much as possible.
  • Second, we added/refactored our backend code to integrate the Bot authentication and validation logic.
  • Next we used Microsoft Documentation and the samples provided as a base for the new project.
  • We implemented SSO, adaptive cards and static pages, gradually testing the integration within the sandbox environment after each completed feature.
  • We released the bot internally for extensive testing and user feedback.
  • Finally, we pushed the final version for validation by Microsoft.

As a result, our application is currently live on the Microsoft Teams Store.

Challenges we ran into

Expensya allows multiple type of authentication, and allows “multi-company” settings (a same email referenced in multiple environments) and has several test environments. Microsoft Teams supports a single tenant at a time So, Authentication was a challenge - definitely. As a result, communication between our service and Microsofts' are fully encrypted.

Accomplishments that we're proud of

First usage metrics show that we could bring the time to approve to less than a day, thanks to this integration. It also opens up the door for more interactivity inside Expensya (like chatting about an expense report will be in future versions of this integration)

What we learned

Thanks to the guidelines provided by Microsoft, we managed to deliver a high quality App following the proper integration process. Managers hate having multiple tools , Microsoft Teams can be the way to solve that.

What's next for Expensya

Enchancing the App with new features including use cases for employee persona, new command to help our users experience a better interactions with Expensya Bot.

Built With

  • .netcore
  • adaptivecards
  • azureappservice
  • c#
  • sqlserver
  • sso
  • statictab
Share this project: