Efiling – Online Companies House Software Case Study
Efiling is an award winning online company formations software product that was originally developed by dotUK and had undertaken a number or significant revisions and expansions in the lifetime of the product
|Client||Efiling Ltd – Online Company Formations Software|
|Platforms||Web, Web Services, Kashflow, XML Gateway|
|Development||Web Development, Web Services Integration, Kashflow Integration, Companies House Integration|
The Efiling Web Based Companies House Software product was initially conceived with the core functional requirements of offering a web based medium through which instruction to the Companies House Gateway could be sent, on receipt of which the gateway would act upon those instructions. Examples of commands which could be instructed include;
- Formation of a UK Company (Eg Ltd, Plc etc)
- Add / Modify / Resign a Director
- Add / Modify / Resign a Company Secretary
- Articles of Association & Memorandum
- Change Registered Office
Version 1 of the software, developed exclusively by dotUK was utilising the Companies House Email Gateway, this protocol mean that instructions were issued by embedding commands in the email message subject and the payload (data fields, attachments etc) were embedded in properly formatted email message body. Responses from the Gateway were equally sent via email to a dedicated mailbox which was polled and monitored at the Efiling end.
Efiling is a multi tenanted system, which means the core platform is used by a near unlimited number of brand owners / companies withcompany formation needs. To function in this way data security and segregation is paramount as under no circumstances can data ‘leak’ between tenants on the system, and we built robust practices and data references into place to ensure this never happened. It also added significantly to the complexity of the system as we then had to manage website templates, company names, Companies House account details, email addresses and domains to manage, in essence near every variable in the system had to be configurable on a per tenant basis.
Billing for orders was another challenge to be managed, end user payments were taken by credit card on order, however brand owners were split between pre-pay (An account with a preloaded positive balance of funds) and credit accounts (Accounts with a preset maximum negative balance according to their credit limit), so we built a complex accounting structure that allowed for both charging models, and of course all associated reporting, statements, and invoicing required. Pricing levels (Both to Efiling, and charged by tenants to their clients) was also configurable and changeable on demand.
As the product matured additional features were added, which included expanding the standard statutory Companies House product offerings to allow tenants to offer bespoke, bundled packages, which included their own value add services (eg Company Secretarial, Mail Room services, offline products such as bound articles, hard copies of certificates etc). These were managed on a per tenant basis so significant upgrades to the tenant administration tools were made, and also to Efiling’s own system administration tools which sat above the tenants as an overview.
Soon Companies House began the process of decommissioning the email gateway service, which worked well, but was limited in terms of speed of service due to the delays faced in email delivery, and introduced a new XML based gateway. This gateway is in essence a secure web service that listens real time for commands sent direct over https (secure web traffic) and using documented (mostly!) XML documents as the payload. The benefits this service offered were that responses to instruction delivery were often available instantly, and it allowed us the option to ‘poll’ the gateway periodically for updates as opposed to wait for an email to arrive. It also increased reliability as we were communicating direct with the gateway as opposed to the round robin route email can on occasion take. dotUK were heavily involved in this transition, and the opportunity was taken to significantly improve other areas of the system such as document generation and storage.
Unfortunately it became apparent as the project progressed that some areas of the new gateway functionality were incomplete, undocumented, or not tested which meant we were frustrated in our ability to communicate progress to the client. However we took steps to optimise our time as efficiently as possible and made sure that we managed the project fully, this included taking responsibility for liaising with Companies House direct (who’s hands were tied by their own third party development team) and on occasion direct with the gateway developers themselves. Ultimately we were able to build and conclude testing of instructions in parallel with Companies House as we moved towards the deadline for switch off of the old email service. This was a regulatory deadline and was immovable.
Since then we have also been involved in other third party integrations, such as feeding bank account application into the Barclays Business accounts service (again an XML based gateway) and integration with the Kashflow web based accounts software using their SOAP based API. The advantages of using Kashflow were that it meant tenant accounting transactions were ultimately delivered direct into their accounts package, new customers automatically created, invoices and credits posted, thus automating tenant admin processes, actually reducing the amount of functionality required within the Efiling Back End, and actually adding significant value to the proposition.