GOV.UK Trade Tariff

Making GOV.UK Trade Tariff (import/export tool) 3x faster and 10x cheaper to maintain

We rebuilt the complex tool to help users find the information they need easily. We continue to support it, and it now serves more than two million page views a month while meeting government digital standards.

Tech Stack

  • Ruby on Rails
  • PostgreSQL
  • ElasticSearch
  • Redis

Core Services

  • User Research
  • Web App Development
  • API Integration
  • Data Protection & Accessibility
  • Compliance

Additional Services

  • Helpdesk & Incident Response
  • Code & Security Updates
  • Performance Optimization & Scaling
  • Fractional Product & Technical
  • Leadership

The Background

HMRC manages the Trade Tariff tool – an online service used extensively by companies that import or export goods. It supplies vital information such as import duty, VAT rates, restrictions and licences required for international trade.

HMRC needed to rebuild this tool and bring it in line with new government digital standards. Following a code audit, the Government Digital Service selected Bit Zesty for the project because of our Ruby on Rails expertise, and we collaborated closely with the team throughout.

Three Times Faster to Use, Ten Times Cheaper to Maintain

In the world of import and export, there are large volumes of user traffic and little margin for error. We successfully delivered the Trade Tariff service, which allows users to find the information they need faster and more easily. It now serves more than two million page views a month.

The deadlines were extremely tight, but by following agile practices and working to the standard set out in the GOV.UK Government Service Design Manual, we were able to deliver a working system on time, where in the past two large system integrators failed to proceed further than feasibility studies.

Furthermore, the application we built is not only three times faster than its predecessor, more accurate and user friendly, but is also ten times cheaper to maintain.

Replacing a Complex Legacy System

The main objective was to replace the legacy service and migrate the data.

One of the biggest challenges of building the UK Trade Tariff was the size and complexity of the data model. At first glance the tool looked fairly straightforward, but once we delved into the underlying data, the true complexity of the system became apparent – the current Trade Tariff has 134 data models.

Furthermore, we had almost no access to the source code, documentation and database schema of the legacy system that we were replacing – so the majority of the work was focused on reverse engineering the solution.

Special measures had to be taken in order to ensure the integrity of the data being migrated. This meant not having duplicated information or missing information, or any other types of alterations. To ensure this, we implemented automated tests and also manually inspected all the data by double checking the information against the existing system.

Creating Robust Technical Architecture for System Integration

The new tool includes three apps: a back-end API, a front-end web application and an administrative interface. This architecture improves scalability and security.

It is a live system that extracts data daily from files generated by TARIC (the EU database containing the latest import and export rules) and CHIEF (the UK database of VAT and excise rates). We transform the CHIEF data into the same structure and format as the TARIC data and load both into the Trade Tariff database.

The database behind the Trade Tariff service is one of the largest on GOV.UK.

Developing in the Open

The Government Services Design Manual advocates the use of open source software and encourages all code to be made publicly available. This aligned perfectly with our technology preferences and our values.

We used the open source framework Ruby on Rails to build the Trade Tariff due to our expert knowledge of it, and it is a tried and tested platform used for most of GOV.UK. We also incorporated other open source technologies for the project, including PostgreSQL and ElasticSearch.

Furthermore, we made Trade Tariff code open source, contributing back into the Ruby on Rails community as well as to the Government Digital Services.

Working as Part of an Integrated Agile Team

Working in an agile manner was a key driver of the project’s success.

During the five-month alpha and beta phases, we collaborated closely with government team members – including the HMRC product owner, GDS service manager, technical architect and designers – to ensure we were building a service with a unified vision.

We held daily standups, sprint meetings and retrospectives with all team members. As a fully integrated team, we participated in GDS “Show and Tells” as well as impromptu discussions to ensure that we were developing the Trade Tariff in accordance to the Digital by Default Service Standard.

Iterative Development for Continuous Improvement

Our development team worked in an iterative manner. During the Alpha phase we focused on delivering a prototype which helped to engage all the stakeholders and visualise the solution.

During the Beta phase we had to carefully prioritise different user needs in order to deliver a production ready system within the tight deadlines.

Our relationship with GDS and HMRC has extended past the initial build of the service. We provide ongoing support for the Trade Tariff tool, constantly improving its performance and stability as well as adding new functionality.

We continue working in agile manner, actively monitoring user feedback, prioritising requirements and continuously improving the system to better meet user needs.

Do you need help with a similar challenge?

We build, modernise and support complex software, and help organisations apply AI and automation where it creates measurable value.

Tell us what you are trying to achieve, what is getting in the way and where you need additional expertise.

+442081641027client.services@bitzesty.com