What you need to send
The header data you need to send depends on your software architecture. We refer to your architecture as a connection method.
Your connection method depends on how your application connects to HMRC and your originating device. You might have more than 1 connection method.
To find out what data you need to send, select the connection methods used by your application.
It is your responsibility to choose the right technology stack to support the collection of all header data required for your connection method. Some popular ones do not.
Select your connection method
Desktop application direct
Your application is installed on a desktop connecting directly to HMRC. Desktops include computers and laptops.
Desktop application via server
Your application is installed on a desktop connecting to HMRC through intermediary servers. Desktops include computers and laptops.
Web application via server
Your application is web based, connecting to HMRC through intermediary servers.
Mobile application direct
Your application is installed on a mobile device connecting directly to HMRC. Mobile devices include phones and tablets.
Mobile application via server
Your application is installed on a mobile device connecting to HMRC through intermediary servers. Mobile devices include phones and tablets.
Batch process direct
Only select this for requests when your users do not initiate an action and your application uses batch processes, connecting directly to HMRC.
If your architecture is not listed
You can select other direct or other via server. We may ask you for more details.
Your application connects directly to HMRC but is not covered by the common architectures.
Other via server
Your application connects to HMRC through intermediary servers but is not covered by the common architectures.
Choose the right technology stack
Before building your application, make sure you select technologies that will allow all header data required for your connection method to be sent. For example, some popular load balancers do not pass on users’ public IPs or ports.
If you find out later that your chosen technology stack does not support sending all required values, it may involve effort to change.
We are not able to provide advice on specific technologies.
Connecting to HMRC
If your application connects directly to HMRC, select a direct connection method.
If your application does not connect directly to HMRC, select a server connection method. Only consider intermediary servers that are part of your application domain and are in your control. Do not include third-party servers such as transport layers or internet providers.
Where multiple services manage your intermediary servers, headers must contain data from all services.
Originating device means the device that initiates an action, for example a VAT return. In most connection methods, it is usually the physical device a person uses to initiate a request.
In desktop application direct, or desktop application via server, the originating device might be a hosted desktop environment accessed remotely by the user.
If actions initiated by users are stored on a server and sent in batches, the originating device is the user’s device and not the server. You must only select batch process direct as a connection method when your users do not initiate an action.