Streamlining Invoice Payment

Using AWS Lambda's and API Gateway to allow Witan Technologies customers to take on-line payments for their invoices.

Ryze Project Management

Witan Technologies builds and licenses a project management solution called Ryze. This software is focused on professional services companies such as Architecture, Engineering and Law Firms.  Ryze allows these companies to track project work and hours allocated to those projects, and generate invoices for payment for these projects. One of the most requested features of the application was the ability to take invoice payments on-line via credit cards.

Creating an Online Payment Portal

Our team worked with the Witan team to define the requirements for online invoice payment and design a serverless based solution.  

Witan had initially been told that they couldn't take credit card payments as the merchant of record would be their clients and not Witan themselves. Through our deep relationships in the ecommerce and retail industry we helped them find a payment processor who was able to support their use case in Bluesnap

For the technology approach we aligned on a React front end hosted in S3 and Cloudfront and backend APIs using API Gateway and Lambda. This allowed for both application specific APIs for Ryze as well as APIs that were focused on the payment portals functionality.

Bringing It All Together

With an aligned understanding of what Witan needed our team got to work creating implementing the solution.  We brought our standard best practices to the project including:

  • Infrastructure as Code (using the AWS Cloud Development Kit in this case)

  • Detailed design documentation

  • AWS Organization structure to allow for test and production environments

The architecture for this application is shown in the following diagram.

Extending Functionality

Since we launched the payment portal with Witan we have worked with them to both support the functionality in production as well as added the ability to pay multiple invoices or make a partial payment on an invoice.

Want to take control of vs. be controlled by, your ecommerce solution?

Interested in how we can help you?  We’re here for you and your business.