Our client, Printed Music Licensing Limited (PMLL), represents the rights of music publishers in the UK and issues licences on their behalf permitting the reproduction of printed music in education and other sectors.
Our client was previously relying on a manual data reporting system where they physically collected photocopies of works used by each school, choir, and university to keep track of their usage during a specific period of time. Doing this manually was not only a tedious task for our client, but also posed challenges for them to maintain data accuracy.
Our client required a custom solution that could automate the data reporting process and eliminate the need for physical paperwork. They also wanted a licensing software that could manage the purchase of licences for various licensee types according to their usage terms. Our client also wanted an in-app purchase system to be implemented so that licensees, depending on their payment scheme, could pay via credit cards through the system.
Bespoke licence management system development required us to fully understand the nuances of our client’s operations and their different customers. A major challenge, however, was the tight deadline of six months that our client had set. This was a key consideration throughout our development process as we strived to manage and successfully deliver the system on time.
Our team brought the client’s vision to life through custom licence management system development. We built an all-in-one system from scratch with web-based portals for licensees, music publishers, and PMLL admin. The system offers a range of tools that makes the processes of reporting data and purchasing licences efficient for all the stakeholders.
Licensees can self-register and purchase or renew licences and report usage of print music using the portal. Music publishers can review and request amendments to the data that’s reported by licensees, making it easier for our client to ensure data accuracy. The administrative portal we developed allows our client to keep a record of the usage data reported by licensees and manage the sale of licences. Within the system, our client can maintain a database of licensees, printed music works, and music publishers, and have the tools available to manage and modify any details.
In terms of design and functionality, the portals we created provide a clean, easy-to-use interface for users and keep the data streamlined. Our main aim was to simplify the process of licence management while ensuring maximum user-friendliness.
Our client offers multiple licensing schemes and the licence management system calculates the bill depending on the customers’ choice of plan, number of singers, and VAT terms. The accounting system generates the invoice and users have the option to pay via cheque and card. The invoice can be downloaded and printed by the customers. Users are also able to view their past invoices and current licences within the system.
One of the main aims of the system was to automate the process of data reporting. The licence management system offers easy to use tools to submit information regarding the works used by music teachers and students. The data submission functionality allows users to upload photos of the works used or enter information by looking through the database of music works or by manually adding the details.
The data submitted by licensees (Choirs, Schools, Music Services, and Higher Education Institutions) can be viewed and amended by the music publishers in the publisher’s portal. However, each amendment made by publishers is managed and approved by our client via the admin portal.
The licence management system was required to be integrated with our client’s accounting system, Xero. The system automatically creates customer accounts in Xero when a licensee signs up. Xero generates the payment invoices when licences are purchased and each successful transaction made by a customer is also updated in Xero subsequently.
The system we created features a Stripe integration to allow seamless and secure online payment functionality for customers when purchasing licences through the portal. Licensees can make payments via cards that are processed through Stripe but they also have the option to pay offline using cheques.
A member database in the admin backend stores all the profiles of music publishers that are signed up to the portal. The search functionality allows admins to search through the member database to look up a specific member by publisher name or other criteria. They can manage the details and generate reports for existing members.
We built the resource management functionality to allow our client to manage the number and details of works or music registered in the system. The resource management tools in the admin portal allow admins to modify details of works and add or delete records.
The reporting tools in the admin portal allow our client to generate reports for usage data, signed up users, and purchases made through the system. To further refine the information reflected in the reports, data can be filtered on the basis of licence types, time duration, and location of licensees.
Our process of building the licence management software followed an agile model of development. We initiated the process by working closely with the client to understand their business process, licensing models, and the different stakeholders that the system was intended for. This helped us ascertain the technical complexities and requirements for the licensing system. We mapped out the functionalities using detailed wireframes and built the first prototype which was finalised by our client. The prototype was beta tested by our client and their feedback was incorporated into the development of the final system.
We developed user-friendly portals for licensees and publishers and a robust administrative portal with extensive tools for the admins to manage and monitor all aspects of the system. We developed the backend system using Node.js and Express.js, and our choice of database was MySQL. We used ReactJS to develop the public-facing frontend of the system and used PHP, jQuery, and HTML for the frontend of the admin and publisher portals. For online payments, we integrated Stripe into the system. Before the licence management system was released, it underwent a rigorous testing process with hundreds of test cases to ensure quality performance.
Our team consisted of business analysts, project managers, backend software developers, frontend developers, and quality assurance engineers. The team’s ability to understand complex requirements and their passion to deliver results made it possible for us to successfully complete the project within our client’s limited timeframe.