Introduction

On July 13, 2017, the Financial Secretary to the Treasury and Paymaster General in the United Kingdom announced that Making Tax Digital (MTD) for value-added tax (VAT) will take effect on April 1, 2019.

Dynamics 365 for Finance and Operations starting from version 10.0.1 supports MTD for VAT of the United Kingdom.

To support the MTD for VAT requirements on Dynamics 365 for Finance and Operations version 7.3 the hotfixes were released: #4492999, #4493076.

The documentation about setting up and usage Dynamics 365 for Finance and Operations for MTD for VAT is published on https://docs.microsoft.com/en-us/dynamics365/unified-operations/financials/localizations/emea-gbr-mtd-vat-integration .

Additionally, HM Revenue and Customs (HMRC) introduced compulsory to supply header information for VAT API from April 2019 to prevent fraud. For more information, see Fraud prevention.

Overview

To prevent fraud, APIs of the HMRC provide HTTP headers that must be used to pass audit data.

Depending on the architecture of the environment used by a company which interoperates with the MTD for VAT different set of HTTP headers for fraud prevention must be transmitted. “Gov-Client-Connection-Method” header must represent the connection method used for the request by the company. It is supposed that most companies using Dynamics 365 for Finance and Operations in cloud architecture use “WEB_APP_VIA_SERVER” connection method during interoperation with HMRC via Electronic messages functionality. It is also possible that a user may initiate a batch job for interoperation with HMRC, in this case connection method will be transmitted as “BATCH_PROCESS_DIRECT”. 

WEB_APP_VIA_SERVER” connection method assumes transmission of the following headers:

HTTP header

Description

Coverage

Gov-Client-Public-IP

The public IP address (IPv4 or IPv6) from which the originating device makes the request.

Not in scope of the current hotfix.

Gov-Client-Public-Port

The public TCP port that the originating device uses when initiating the request.

Not in scope of the current hotfix.

Gov-Client-Device-ID

An identifier unique to an originating device.

Not in scope of the current hotfix.

Gov-Client-User-IDs

A key-value data structure containing the user identifiers.

Not in scope of the current hotfix.

Gov-Client-Timezone

The local time-zone of the originating device.

Not in scope of the current hotfix.

Gov-Client-Local-IPs

A list of all local IP addresses (IPv4 and IPv6) available to the originating device.

Not in scope of the current hotfix.

Gov-Client-Screens

Information related to the originating device’s screens. The fields include:

  • width is the reported width of the screen, in pixels

  • height is the reported height of the screen, in pixels

  • scaling-factor is the reported scaling factor of the screen.

  • color-depth is the color depth of the screen, in bits.

Not in scope of the current hotfix.

Gov-Client-Window-Size

The number of pixels of the window on the originating device in which the user initiated (directly or indirectly) the API call to HMRC.

Not in scope of the current hotfix.

Gov-Client-Browser-Plugins

A list of browser plugins on the originating device.

Not in scope of the current hotfix.

Gov-Client-Browser-JS-User-Agent

JavaScript-reported user agent string from the originating device.

Not in scope of the current hotfix.

Gov-Client-Browser-Do-Not-Track

Whether the Do Not Track option is enabled on the browser.

Not in scope of the current hotfix.

Gov-Client-Multi-Factor

A list of key-value data structures containing details of the multi-factor authentication (MFA) statuses related to the API call.

Not in scope of the current hotfix.

Gov-Vendor-Version

A key-value data structure of software versions involved in handling a request.

Included into the current hotfix.

Gov-Vendor-License-IDs

A key-value data structure of hashed license keys relating to the vendor software initiating the API request on the originating device.

Not in scope of the current hotfix.

Gov-Vendor-Public-IP

The public IP address of the servers to which the originating device sent their requests.

Not in scope of the current hotfix.

Gov-Vendor-Forwarded

A list that details hops over the internet between services that terminate TLS.

Not in scope of the current hotfix.

BATCH_PROCESS_DIRECT” connection method assumes transmission of the following headers:

HTTP header

Description

Coverage

Gov-Client-Device-ID

An identifier unique to an originating device.

Not in scope of the current hotfix.

Gov-Client-User-IDs

A key-value data structure containing the user identifiers.

Not in scope of the current hotfix.

Gov-Client-Timezone

The local time-zone of the originating device.

Included into the current hotfix.

Gov-Client-Local-IPs

A list of all local IP addresses (IPv4 and IPv6) available to the originating device.

Not in scope of the current hotfix.

Gov-Client-User-Agent

An attempt to identify the operating system family, version, device manufacturer and model of the originating device.

Included into the current hotfix.

Gov-Vendor-Version

A key-value data structure of software versions involved in handling a request.

Included into the current hotfix.

Gov-Vendor-License-IDs

A key-value data structure of hashed license keys relating to the vendor software initiating the API request on the originating device.

Not in scope of the current hotfix.

Gov-Client-MAC-Addresses

The list of MAC addresses available on the originating device.

Included into the current hotfix.


Implementation details

To support possibility of detecting parameters required by fraud prevention requirements of the HMRC like time-zone and MAC address in BATCH_PROCESS_DIRECT connection method and version of the software in both WEB_APP_VIA_SERVER and BATCH_PROCESS_DIRECT connection methods, an X++ methods were included into the application part. Here is the information about versions of Dynamics 365 for Finance and Operations including these methods:

Dynamics 365 for Finance and Operations version

Build number

10.0.1

10.0.51.30002

10.0.2

10.0.80.10022

10.0.3

10.0.107.0

For versions 7.3 of Dynamics 365 for Finance and Operations the KB # 4504462 must be installed.

In Dynamics 365 for Finance and Operations request headers are composed by the “MTD VAT web request headers format (UK)” format in Electronic Reporting (ER) module. To support fraud prevention headers this format configuration was extended with necessary nodes:

image.png

Determination of the corresponding values of the headers is supported via calling of the X++ methods by the “MTD VAT model mapping” configuration. “Electronic Messages framework model” was also extended to include nodes used for mapping of the values of fraud prevention headers.

Setup

To activate transmission of fraud prevention headers during interoperating with API of the HMRC, import the following of higher versions of the following ER configurations from the LCS portal:

#

GER configuration name

Type

Version

1

Electronic Messages framework model

Model

22

2

MTD VAT model mapping (UK)

Model mapping (exporting, importing)

22.25

3

MTD VAT web request headers format (UK)

Format (exporting)

22.13


Important note!  When new versions of ER configurations are imported, check that following configurations are marked as Default for model mapping:

  • Tax declaration model mapping

  • MTD VAT model mapping (UK)

When mentioned or higher versions of the ER configurations are imported, fraud prevention parameters will be transmitted as part of the HTTP request the HMRC.

When user initiates a request to the HMRC without activating a batch job, the following dialog will inform about what information is going to be sent to the HMRC:

image.png

If the user aborts the transmission on this stage by clicking the Cancel button of the dialog, transmission will be canceled and the status of the electronic message will be changed to “Error”, attached description of the error to the Action log will include information that the “Request to the HMRC is cancelled by user”. User will be able to proceed with transmission of the same electronic message using “Send report” button.

When user initiates a request to the HMRC in a batch job, the fraud prevention headers will be transmitted to the HMRC and information about what headers were sent will be attached to the batch job. Open System administration > Inquires > Batch jobs, select your batch job and review Message details of the Log (Action pane > Batch job > Log).

If for some reason a company decides to address requests to the HMRC without transmitting fraud prevention headers, the version of the format including the fraud prevention headers can be deleted or not imported at all or alternatively these headers can be disabled in the “MTD VAT web request headers format (UK)” in Electronic Reporting module. For this purpose, the following steps must be done:

  1. Select “MTD VAT web request headers format (UK) in the configurations tree of the ER and create a child format by Deriving it (see more about “Building a format selecting another format as a base”).

  2. Open the child format in the Designer (Designer button the Action pane of ER).

  3. Select “Gov-Client-Connection-Method” node and set “Enabled” parameter to “false”:

image.png

4. Repeat p.3 for other fraud prevention headers: Gov-Client-Timezone, Gov-Client-User-Agent, Gov-Vendor-Version, Gov-Client-MAC-Addresses.

5. Save your configuration and Complete it.

6. Open Tax > Setup > Electronic reporting > Web service settings and select your child format in the “Request headers format mapping” field of all the web services used for interoperation with the HMRC instead of the parent format used by default:

image.png

Important note!  API requests without fraud prevention headers may be rejected by HMRC. It is strictly recommended to address API requests to HMRC with fraud prevention headers.

Hotfix information

Electronic reporting configuration download instruction from Lifecycle Services: https://docs.microsoft.com/en-us/dynamics365/unified-operations/dev-itpro/analytics/download-electronic-reporting-configuration-lcs

How to obtain the Microsoft Dynamics AX updates files

This update is available for manual download and installation from the Microsoft Download Center for version 7.3:

Prerequisites

You must have one of the following products installed to apply this hotfix:

  • Microsoft Dynamics 365 for Finance and Operations (7.3)

Restart requirement

You must restart the Application Object Server (AOS) service after you apply the hotfix.

If you are encountering an issue downloading, installing this hotfix, or have other technical support questions, contact your partner or, if enrolled in a support plan directly with Microsoft, you can contact technical support for Microsoft Dynamics and create a new support request. To do this, visit the following Microsoft website:

https://mbs.microsoft.com/support/newstart.aspx

You can also contact technical support for Microsoft Dynamics by phone using these links for country specific phone numbers. To do this, visit one of the following Microsoft websites:

Partners

https://mbs.microsoft.com/partnersource/resources/support/supportinformation/Global+Support+Contacts

Customers

https://mbs.microsoft.com/customersource/northamerica/help/help/contactus

In special cases, charges that are ordinarily incurred for support calls may be canceled if a Technical Support Professional for Microsoft Dynamics and related products determines that a specific update will resolve your problem. The usual support costs will apply to any additional support questions and issues that do not qualify for the specific update in question.


Need more help?

Expand your skills
Explore Training
Get new features first
Join Microsoft Insiders

Was this information helpful?

What affected your experience?

Thank you for your feedback!

×