# Tutorial: How to qualify a European Union's Business Partner? ## Overview **Use case** This tutorial presents a set of concrete examples users may face during the qualification of a European Union Business Partners by the data source. A French Business Partner will be taken as a representative case. In such cases, at least one of the following data sources should be used: `VIES`, `AT.FON`, and `BZST`. All data sources can be used together, but results are separated by data source. This approach can be useful for ensuring that all suppliers' VAT numbers are valid to avoid compliance risks. As a result, the risk of fines and penalties due to incorrect VAT numbers is reduced, making automated qualification an efficient way to save time and effort. Documentation For more details check the endpoint's [documentation](https://developer.cdq.com/reference-docs/data-validation/V3/tag/Qualification/#tag/Qualification/paths/~1v3~1businesspartners~1qualify/post). **Learning Goals** In this tutorial, the user focuses on: - Qualifying a French Business Partner using the `/businesspartner/qualify` endpoint, - Understanding the qualification results, - Analyzing the qualification results in various scenarios. ## Prerequisites ### Authorization Before trying CDQ APIs, user must be authenticated: 1. Paste the API Key in the console's security bar into the `X-API-KEY` field. ![](/assets/auth7.0d4fb05fa55bc16d828c76e9976f979930ffadb949cfc149a6617cc6518ab57d.6fde6558.png) 1. After pasting the API Key, the green padlock will appear. ![](/assets/auth8.28e02515b78db57ec32c07fd6bd7d296484e64f65ef6a3bc5296520cb1da8d65.6fde6558.png) Be careful Green padlock doesn't mean that the API Key was pasted correctly. 1. Check your API key for missing characters or extra space before trying. #### No API Key? 1. Check how to get one on [authentication page](/documentation/instructions/authentication). 2. Follow the steps above. ## Step 1: Qualification of a French Business Partner To qualify a French Business Partner with correct data: 1. Use the **Qualify Business Partner** endpoint to send the below request, 2. Select **Qualification of a French Business Partner** example, 1. Send the request. ## Step 2: Understand the qualification results In this example, each field and its meaning are explained step by step to ensure that the subsequent examples are easy to understand and interpret. The example response from the Tax Guard contains several key components that will be detailed further. ### Qualification Results (`qualificationResults`) This array contains the results of the qualification process. In this case, the array contains a single object with the following fields: - The `identifier` object contains the validated VAT identifier, in this case, `FR35852293547`, under the value field inside the identifier object. - The VAT identifier type is specified by `type.technicalKey`, which in this case is `EU_VAT_ID_FR`. - The `businessPartnerStatus` object contains the status of a business partner if provided by a reference data source (it might be unknown). It is the same status structure as in our Lookup responses. - The status type is specified by `type.technicalKey`, which in this case is `UNKNOWN`. - The validation was performed at the timestamp provided in the `qualifiedAt` field: `2024-08-27T11:50:30.796757186`. - The `dataSourceTechnicalKey` field indicates that the validation source was `VIES`. - The `dataSourceRequestIdentifiers` array provides details about the request to `VIES`, including the value (request ID) used in the validation process. ### Qualification Decision Summary (`qualificationDecisionSummary`) This object provides a high-level summary of the validation results, including: - The field `identifierQualificationDecision` is set to `VALID`, confirming that the VAT identifier itself is correct. `nameQualificationDecision` and `addressQualificationDecision` fields are both marked as `VALID`, meaning that both the company name and address associated with the VAT ID have been validated successfully. - The `addressQualificationDecisionDetails` object provides a more granular view of the address validation, where components such as `localityQualificationDecision`, `postCodeQualificationDecision`, and `thoroughfareQualificationDecision` are each marked as `VALID`. ### Qualification Decision Details (`qualificationDecisionDetails`) This array contains the detailed decisions for each part of the validation process, such as name, address, postcode, city, and identifier. Each entry in this array has a `businessRule` object, which contains: - `name`: The name of the specific business rule applied (e.g., "Thoroughfare Qualification"). - `url`: A link to the business rule’s metadata. - `ruleStatus`: The current status of the rule, indicated as `RELEASED`. - `violationMessage`: Although the rule is `VALID`, this field indicates what the violation message would have been if the data didn’t match. The `executionContextProperties` array provides further context, such as: - `qualificationTarget`: Indicates, which field was validated (e.g., "`STREET`", "`POST_CODE_REGULAR`", "`NAME_LOCAL`", `CITY` or `IDENTIFIER`). - `targetInputValue` and `targetReferenceValue` fields show the value supplied for validation (e.g., "Rue De Tourcoing") and the reference value used for comparison from `VIES`. The decision field in each entry confirms that the validation decision is `VALID` for each element (street, name, post code, etc.). The `cdqID` field indicates local CDQ identifier. It might not exist in case that an identifier does not exist either. ### Debug Information (`debugInfo`) This section provides technical details about the external service calls, such as: - `status`: The HTTP response status, with 200 indicating success. - `timestamp`: The time of the validation request. - `additionalInformation`: This includes the `requestorId` (e.g., `DE307699628`, the VAT ID of the requester) and the raw JSON response from the `VIES` system (e.g., `rawJson`). ### Business Rules Execution Summary (`businessRulesExecutionSummary`) This summary contains information about the rules applied during validation: - `numberOfRules`: Indicates the total number of business rules executed, which in this case is 5. - `numberOfFails`: Displays 0, confirming that no validation checks failed. - `dataSourcesOn`: Shows the data sources used, such as `VIES`. - `ruleCategoriesOn`: Provides links to further documentation about the rule categories applied (e.g., [EU_TAX_Qualification](https://meta.cdq.com/EU_TAX_Qualification)). ### Complete response to analyze ```json { "qualificationResults":[ { "identifier":{ "value":"FR35852293547", "type":{ "technicalKey":"EU_VAT_ID_FR" } }, "businessPartnerStatus": { "type": { "name": "Unknown", "url": "https://meta.cdq.com/Business_partner/status/type/technical_key/unknown", "technicalKey": "UNKNOWN" } }, "qualifiedAt":"2024-08-27T11:50:30.796757186", "dataSourceTechnicalKey":"VIES", "dataSourceRequestIdentifiers":[ { "dataSourceTechnicalKey":"VIES", "value":"WAPIAAAAZGTrFVHQ" } ], "qualificationDecisionSummary":{ "identifierQualificationDecision":"VALID", "nameQualificationDecision":"VALID", "addressQualificationDecision":"VALID", "addressQualificationDecisionDetails":{ "localityQualificationDecision":"VALID", "postCodeQualificationDecision":"VALID", "thoroughfareQualificationDecision":"VALID" }, "overallQualificationDecision":"VALID" }, "qualificationDecisionDetails":[ { "businessRule":{ "name":"Thoroughfare Qualification (European value added tax identifier (France), Data source:VIES)", "url":"https://meta.cdq.com/Thoroughfare_Qualification_(European_value_added_tax_identifier_(France),_Data_source:VIES)", "ruleStatus":"RELEASED", "violationMessage":"Street deviates from the reference street registered with the European value added tax identifier (France)" }, "executionContextProperties":[ { "name":"qualificationTarget", "value":"STREET" }, { "name":"targetInputValue", "value":"Rue De Tourcoing" }, { "name":"targetReferenceValue", "value":"Rue De Tourcoing" }, { "name":"dataSourceTechnicalKey", "value":"VIES" }, { "name":"dataSourceRequestIdentifier", "value":"WAPIAAAAZGTrFVHQ" } ], "cdqId":"VIES:FR35852293547", "decision":"VALID" }, { "businessRule":{ "name":"Post code Qualification (European value added tax identifier (France), Data source:VIES)", "url":"https://meta.cdq.com/Post_code_Qualification_(European_value_added_tax_identifier_(France),_Data_source:VIES)", "ruleStatus":"RELEASED", "violationMessage":"Post code deviates from the reference post code registered with the European value added tax identifier (France)" }, "executionContextProperties":[ { "name":"qualificationTarget", "value":"POST_CODE_REGULAR" }, { "name":"targetInputValue", "value":"59100" }, { "name":"targetReferenceValue", "value":"59100" }, { "name":"dataSourceTechnicalKey", "value":"VIES" }, { "name":"dataSourceRequestIdentifier", "value":"WAPIAAAAZGTrFVHQ" } ], "cdqId":"VIES:FR35852293547", "decision":"VALID" }, { "businessRule":{ "name":"Name Qualification (European value added tax identifier (France), Data source:VIES)", "url":"https://meta.cdq.com/Name_Qualification_(European_value_added_tax_identifier_(France),_Data_source:VIES)", "ruleStatus":"RELEASED", "violationMessage":"Name deviates from the reference name registered with the European value added tax identifier (France)" }, "executionContextProperties":[ { "name":"qualificationTarget", "value":"NAME_LOCAL" }, { "name":"targetInputValue", "value":"SAS DB COMPANY" }, { "name":"targetReferenceValue", "value":"SAS DB COMPANY" }, { "name":"dataSourceTechnicalKey", "value":"VIES" }, { "name":"dataSourceRequestIdentifier", "value":"WAPIAAAAZGTrFVHQ" } ], "cdqId":"VIES:FR35852293547", "decision":"VALID" }, { "businessRule":{ "name":"Locality Qualification (European value added tax identifier (France), Data source:VIES)", "url":"https://meta.cdq.com/Locality_Qualification_(European_value_added_tax_identifier_(France),_Data_source:VIES)", "ruleStatus":"RELEASED", "violationMessage":"City deviates from the reference city registered with the European value added tax identifier (France)" }, "executionContextProperties":[ { "name":"qualificationTarget", "value":"CITY" }, { "name":"targetInputValue", "value":"Roubaix" }, { "name":"targetReferenceValue", "value":"Roubaix" }, { "name":"dataSourceTechnicalKey", "value":"VIES" }, { "name":"dataSourceRequestIdentifier", "value":"WAPIAAAAZGTrFVHQ" } ], "cdqId":"VIES:FR35852293547", "decision":"VALID" }, { "businessRule":{ "name":"Identifier Qualification (European value added tax identifier (France), Data source:VIES)", "url":"https://meta.cdq.com/Identifier_Qualification_(European_value_added_tax_identifier_(France),_Data_source:VIES)", "ruleStatus":"RELEASED", "violationMessage":"Identifier deviates from the reference identifier registered with the European value added tax identifier (France)" }, "executionContextProperties":[ { "name":"qualificationTarget", "value":"IDENTIFIER" }, { "name":"targetInputValue", "value":"FR35852293547" }, { "name":"targetReferenceValue", "value":"FR35852293547" }, { "name":"dataSourceTechnicalKey", "value":"VIES" }, { "name":"dataSourceRequestIdentifier", "value":"WAPIAAAAZGTrFVHQ" } ], "cdqId":"VIES:FR35852293547", "decision":"VALID" } ] } ], "lookupResults":[], "debugInfo":{ "externalServiceResponses":[ { "status":200, "timestamp":"2024-08-27T11:50:30.746591065Z", "additionalInformation":[ { "key":"requestorId", "value":"DE307699628" }, { "key":"requestId", "value":"WAPIAAAAZGTrFVHQ" }, { "key":"rawJson", "value":"[{\"vatValue\":{\"value\":\"35852293547\"},\"requestDate\":{\"value\":\"2024-08-26T22:00:00.000+00:00\"},\"countryCode\":{\"value\":\"FR\"},\"valid\":{\"value\":true},\"traderAddress\":{\"value\":\"89 RUE DE TOURCOING\\n59100 ROUBAIX\"},\"traderName\":{\"value\":\"SAS DB COMPANY\"},\"traderCompanyType\":{\"value\":\"---\"},\"traderStreet\":{},\"traderPostcode\":{},\"traderCity\":{},\"traderNameMatch\":{},\"traderCompanyTypeMatch\":{},\"traderStreetMatch\":{},\"traderPostcodeMatch\":{},\"traderCityMatch\":{},\"requestIdentifier\":{\"value\":\"WAPIAAAAZGTrFVHQ\"},\"referenceAddressDto\":{\"version\":{\"characterSet\":{\"name\":\"International\",\"technicalKey\":\"INTERNATIONAL\"},\"language\":{\"name\":\"en\",\"technicalKey\":\"en\"}},\"metadata\":{},\"country\":{\"shortName\":\"FR\",\"value\":\"France\"},\"postCodes\":[{\"value\":\"59100\"}],\"localities\":[{\"type\":{\"name\":\"City\",\"url\":\"https://meta.cdq.com/Address/locality/type/city\",\"technicalKey\":\"CITY\"},\"shortName\":\"Roubaix\",\"value\":\"Roubaix\"}],\"thoroughfares\":[{\"type\":{\"name\":\"Street\",\"url\":\"https://meta.cdq.com/Address/thoroughfare/type/street\",\"technicalKey\":\"STREET\"},\"shortName\":\"Rue De Tourcoing\",\"number\":\"89\",\"value\":\"Rue De Tourcoing\",\"name\":\"RUE DE TOURCOING\"}]},\"requesterVatNumber\":\"307699628\",\"requesterCountryCode\":\"DE\",\"refreshReason\":\"FORCED_BY_CUSTOMER\"}]" } ] }, { "status":200, "timestamp":"2024-08-27T11:50:30.746591065Z", "additionalInformation":[ { "key":"requestorId", "value":"DE307699628" }, { "key":"requestId", "value":"WAPIAAAAZGTrFVHQ" }, { "key":"rawJson", "value":"[{\"vatValue\":{\"value\":\"35852293547\"},\"requestDate\":{\"value\":\"2024-08-26T22:00:00.000+00:00\"},\"countryCode\":{\"value\":\"FR\"},\"valid\":{\"value\":true},\"traderAddress\":{\"value\":\"89 RUE DE TOURCOING\\n59100 ROUBAIX\"},\"traderName\":{\"value\":\"SAS DB COMPANY\"},\"traderCompanyType\":{\"value\":\"---\"},\"traderStreet\":{},\"traderPostcode\":{},\"traderCity\":{},\"traderNameMatch\":{},\"traderCompanyTypeMatch\":{},\"traderStreetMatch\":{},\"traderPostcodeMatch\":{},\"traderCityMatch\":{},\"requestIdentifier\":{\"value\":\"WAPIAAAAZGTrFVHQ\"},\"referenceAddressDto\":{\"version\":{\"characterSet\":{\"name\":\"International\",\"technicalKey\":\"INTERNATIONAL\"},\"language\":{\"name\":\"en\",\"technicalKey\":\"en\"}},\"metadata\":{},\"country\":{\"shortName\":\"FR\",\"value\":\"France\"},\"postCodes\":[{\"value\":\"59100\"}],\"localities\":[{\"type\":{\"name\":\"City\",\"url\":\"https://meta.cdq.com/Address/locality/type/city\",\"technicalKey\":\"CITY\"},\"shortName\":\"Roubaix\",\"value\":\"Roubaix\"}],\"thoroughfares\":[{\"type\":{\"name\":\"Street\",\"url\":\"https://meta.cdq.com/Address/thoroughfare/type/street\",\"technicalKey\":\"STREET\"},\"shortName\":\"Rue De Tourcoing\",\"number\":\"89\",\"value\":\"Rue De Tourcoing\",\"name\":\"RUE DE TOURCOING\"}]},\"requesterVatNumber\":\"307699628\",\"requesterCountryCode\":\"DE\",\"refreshReason\":\"FORCED_BY_CUSTOMER\"}]" } ] }, { "status":200, "timestamp":"2024-08-27T11:50:30.746591065Z", "additionalInformation":[ { "key":"requestorId", "value":"DE307699628" }, { "key":"requestId", "value":"WAPIAAAAZGTrFVHQ" }, { "key":"rawJson", "value":"[{\"vatValue\":{\"value\":\"35852293547\"},\"requestDate\":{\"value\":\"2024-08-26T22:00:00.000+00:00\"},\"countryCode\":{\"value\":\"FR\"},\"valid\":{\"value\":true},\"traderAddress\":{\"value\":\"89 RUE DE TOURCOING\\n59100 ROUBAIX\"},\"traderName\":{\"value\":\"SAS DB COMPANY\"},\"traderCompanyType\":{\"value\":\"---\"},\"traderStreet\":{},\"traderPostcode\":{},\"traderCity\":{},\"traderNameMatch\":{},\"traderCompanyTypeMatch\":{},\"traderStreetMatch\":{},\"traderPostcodeMatch\":{},\"traderCityMatch\":{},\"requestIdentifier\":{\"value\":\"WAPIAAAAZGTrFVHQ\"},\"referenceAddressDto\":{\"version\":{\"characterSet\":{\"name\":\"International\",\"technicalKey\":\"INTERNATIONAL\"},\"language\":{\"name\":\"en\",\"technicalKey\":\"en\"}},\"metadata\":{},\"country\":{\"shortName\":\"FR\",\"value\":\"France\"},\"postCodes\":[{\"value\":\"59100\"}],\"localities\":[{\"type\":{\"name\":\"City\",\"url\":\"https://meta.cdq.com/Address/locality/type/city\",\"technicalKey\":\"CITY\"},\"shortName\":\"Roubaix\",\"value\":\"Roubaix\"}],\"thoroughfares\":[{\"type\":{\"name\":\"Street\",\"url\":\"https://meta.cdq.com/Address/thoroughfare/type/street\",\"technicalKey\":\"STREET\"},\"shortName\":\"Rue De Tourcoing\",\"number\":\"89\",\"value\":\"Rue De Tourcoing\",\"name\":\"RUE DE TOURCOING\"}]},\"requesterVatNumber\":\"307699628\",\"requesterCountryCode\":\"DE\",\"refreshReason\":\"FORCED_BY_CUSTOMER\"}]" } ] }, { "status":200, "timestamp":"2024-08-27T11:50:30.746591065Z", "additionalInformation":[ { "key":"requestorId", "value":"DE307699628" }, { "key":"requestId", "value":"WAPIAAAAZGTrFVHQ" }, { "key":"rawJson", "value":"[{\"vatValue\":{\"value\":\"35852293547\"},\"requestDate\":{\"value\":\"2024-08-26T22:00:00.000+00:00\"},\"countryCode\":{\"value\":\"FR\"},\"valid\":{\"value\":true},\"traderAddress\":{\"value\":\"89 RUE DE TOURCOING\\n59100 ROUBAIX\"},\"traderName\":{\"value\":\"SAS DB COMPANY\"},\"traderCompanyType\":{\"value\":\"---\"},\"traderStreet\":{},\"traderPostcode\":{},\"traderCity\":{},\"traderNameMatch\":{},\"traderCompanyTypeMatch\":{},\"traderStreetMatch\":{},\"traderPostcodeMatch\":{},\"traderCityMatch\":{},\"requestIdentifier\":{\"value\":\"WAPIAAAAZGTrFVHQ\"},\"referenceAddressDto\":{\"version\":{\"characterSet\":{\"name\":\"International\",\"technicalKey\":\"INTERNATIONAL\"},\"language\":{\"name\":\"en\",\"technicalKey\":\"en\"}},\"metadata\":{},\"country\":{\"shortName\":\"FR\",\"value\":\"France\"},\"postCodes\":[{\"value\":\"59100\"}],\"localities\":[{\"type\":{\"name\":\"City\",\"url\":\"https://meta.cdq.com/Address/locality/type/city\",\"technicalKey\":\"CITY\"},\"shortName\":\"Roubaix\",\"value\":\"Roubaix\"}],\"thoroughfares\":[{\"type\":{\"name\":\"Street\",\"url\":\"https://meta.cdq.com/Address/thoroughfare/type/street\",\"technicalKey\":\"STREET\"},\"shortName\":\"Rue De Tourcoing\",\"number\":\"89\",\"value\":\"Rue De Tourcoing\",\"name\":\"RUE DE TOURCOING\"}]},\"requesterVatNumber\":\"307699628\",\"requesterCountryCode\":\"DE\",\"refreshReason\":\"FORCED_BY_CUSTOMER\"}]" } ] }, { "status":200, "timestamp":"2024-08-27T11:50:30.746591065Z", "additionalInformation":[ { "key":"requestorId", "value":"DE307699628" }, { "key":"requestId", "value":"WAPIAAAAZGTrFVHQ" }, { "key":"rawJson", "value":"[{\"vatValue\":{\"value\":\"35852293547\"},\"requestDate\":{\"value\":\"2024-08-26T22:00:00.000+00:00\"},\"countryCode\":{\"value\":\"FR\"},\"valid\":{\"value\":true},\"traderAddress\":{\"value\":\"89 RUE DE TOURCOING\\n59100 ROUBAIX\"},\"traderName\":{\"value\":\"SAS DB COMPANY\"},\"traderCompanyType\":{\"value\":\"---\"},\"traderStreet\":{},\"traderPostcode\":{},\"traderCity\":{},\"traderNameMatch\":{},\"traderCompanyTypeMatch\":{},\"traderStreetMatch\":{},\"traderPostcodeMatch\":{},\"traderCityMatch\":{},\"requestIdentifier\":{\"value\":\"WAPIAAAAZGTrFVHQ\"},\"referenceAddressDto\":{\"version\":{\"characterSet\":{\"name\":\"International\",\"technicalKey\":\"INTERNATIONAL\"},\"language\":{\"name\":\"en\",\"technicalKey\":\"en\"}},\"metadata\":{},\"country\":{\"shortName\":\"FR\",\"value\":\"France\"},\"postCodes\":[{\"value\":\"59100\"}],\"localities\":[{\"type\":{\"name\":\"City\",\"url\":\"https://meta.cdq.com/Address/locality/type/city\",\"technicalKey\":\"CITY\"},\"shortName\":\"Roubaix\",\"value\":\"Roubaix\"}],\"thoroughfares\":[{\"type\":{\"name\":\"Street\",\"url\":\"https://meta.cdq.com/Address/thoroughfare/type/street\",\"technicalKey\":\"STREET\"},\"shortName\":\"Rue De Tourcoing\",\"number\":\"89\",\"value\":\"Rue De Tourcoing\",\"name\":\"RUE DE TOURCOING\"}]},\"requesterVatNumber\":\"307699628\",\"requesterCountryCode\":\"DE\",\"refreshReason\":\"FORCED_BY_CUSTOMER\"}]" } ] } ], "businessRulesExecutionSummary":{ "numberOfRules":5, "numberOfExecutions":5, "numberOfFails":0, "failures":[ ], "dataSourcesOn":[ { "prefix":"VIES" }, { "prefix":"AT.FON" } ], "ruleCategoriesOn":[ { "url":"https://meta.cdq.com/EU_TAX_Qualification" } ] } } } ``` ## Step 3: Check other examples After understanding the qualification results, check other examples to see how the qualification process works in different scenarios. Use the examples gathered in the table below. | Example name | Description | Typos | | --- | --- | --- | | Qualification of a French Business Partner with a Typo | The same Business Partner is being qualified as in the previous example, but a typo in the locality value occurred. | `Roubaix` -> `Roubaixe` | | Qualification of a French Business Partner with Significant Typo | The following example is similar to the previous one, but in this case the typo has a significant meaning because it changes the postcode completely. | `59100` -> `591000` | | Qualification of a French Business Partner with more Typos | The last example in this section is an extension of the previous request. We added more typos in the name of the street. | `Rue De Tourcoing` -> `Rue De Tourcoingesop` | 1. Use the **Qualify Business Partner** endpoint to send the below request, 2. Select one of the listed examples, 1. Send the request. ## Step 4: Analyze other qualifications results Based on the example chosen in the previous step, analyze the qualification results. The table below provides a summary of the results. | Example name | Overall Qualification Decision | Description | | --- | --- | --- | | Business Partner with a Typo | `VALID` | The results got only `VALID` decisions because the typo is not significant. | | Business Partner with Significant Typo | `INVALID` | As a result, the qualification decision of the provided address is INVALID because the post code qualification decision is also INVALID (reference data source provides different value). It is worth noticing that in this case address decision affects the overall qualification decision which as aresult equals INVALID. | | Business Partner with more Typos | `INVALID` | As a result not only the post code is INVALID but also the provided thoroughfare since more typos reflect different name than the one provided by a reference data source (VIES in this case). Thus, address qualification decision is INVALID as well as overall qualification decision. | ### Complete responses coresponding with the described examples. Choose the name of the tab coresponding to the used example. ```json { "qualificationResults": [ { "identifier": { "value": "FR35852293547", "type": { "technicalKey": "EU_VAT_ID_FR" } }, "businessPartnerStatus": { "type": { "name": "Unknown", "url": "https://meta.cdq.com/Business_partner/status/type/technical_key/unknown", "technicalKey": "UNKNOWN" } }, "qualifiedAt": "2024-08-27T11:50:57.897943191", "dataSourceTechnicalKey": "VIES", "dataSourceRequestIdentifiers": [ { "dataSourceTechnicalKey": "VIES", "value": "WAPIAAAAZGTrL9VN" } ], "qualificationDecisionSummary": { "identifierQualificationDecision": "VALID", "nameQualificationDecision": "VALID", "addressQualificationDecision": "VALID", "addressQualificationDecisionDetails": { "localityQualificationDecision": "VALID", "postCodeQualificationDecision": "VALID", "thoroughfareQualificationDecision": "VALID" }, "overallQualificationDecision": "VALID" }, "qualificationDecisionDetails": [ { "businessRule": { "name": "Thoroughfare Qualification (European value added tax identifier (France), Data source:VIES)", "url": "https://meta.cdq.com/Thoroughfare_Qualification_(European_value_added_tax_identifier_(France),_Data_source:VIES)", "ruleStatus": "RELEASED", "violationMessage": "Street deviates from the reference street registered with the European value added tax identifier (France)" }, "executionContextProperties": [ { "name": "qualificationTarget", "value": "STREET" }, { "name": "targetInputValue", "value": "Rue De Tourcoing" }, { "name": "targetReferenceValue", "value": "Rue De Tourcoing" }, { "name": "dataSourceTechnicalKey", "value": "VIES" }, { "name": "dataSourceRequestIdentifier", "value": "WAPIAAAAZGTrL9VN" } ], "cdqId": "VIES:FR35852293547", "decision": "VALID" }, { "businessRule": { "name": "Post code Qualification (European value added tax identifier (France), Data source:VIES)", "url": "https://meta.cdq.com/Post_code_Qualification_(European_value_added_tax_identifier_(France),_Data_source:VIES)", "ruleStatus": "RELEASED", "violationMessage": "Post code deviates from the reference post code registered with the European value added tax identifier (France)" }, "executionContextProperties": [ { "name": "qualificationTarget", "value": "POST_CODE_REGULAR" }, { "name": "targetInputValue", "value": "59100" }, { "name": "targetReferenceValue", "value": "59100" }, { "name": "dataSourceTechnicalKey", "value": "VIES" }, { "name": "dataSourceRequestIdentifier", "value": "WAPIAAAAZGTrL9VN" } ], "cdqId": "VIES:FR35852293547", "decision": "VALID" }, { "businessRule": { "name": "Name Qualification (European value added tax identifier (France), Data source:VIES)", "url": "https://meta.cdq.com/Name_Qualification_(European_value_added_tax_identifier_(France),_Data_source:VIES)", "ruleStatus": "RELEASED", "violationMessage": "Name deviates from the reference name registered with the European value added tax identifier (France)" }, "executionContextProperties": [ { "name": "qualificationTarget", "value": "NAME_LOCAL" }, { "name": "targetInputValue", "value": "SAS DB COMPANY" }, { "name": "targetReferenceValue", "value": "SAS DB COMPANY" }, { "name": "dataSourceTechnicalKey", "value": "VIES" }, { "name": "dataSourceRequestIdentifier", "value": "WAPIAAAAZGTrL9VN" } ], "cdqId": "VIES:FR35852293547", "decision": "VALID" }, { "businessRule": { "name": "Locality Qualification (European value added tax identifier (France), Data source:VIES)", "url": "https://meta.cdq.com/Locality_Qualification_(European_value_added_tax_identifier_(France),_Data_source:VIES)", "ruleStatus": "RELEASED", "violationMessage": "City deviates from the reference city registered with the European value added tax identifier (France)" }, "executionContextProperties": [ { "name": "qualificationTarget", "value": "CITY" }, { "name": "targetInputValue", "value": "Roubaixe" }, { "name": "targetReferenceValue", "value": "Roubaix" }, { "name": "dataSourceTechnicalKey", "value": "VIES" }, { "name": "dataSourceRequestIdentifier", "value": "WAPIAAAAZGTrL9VN" } ], "cdqId": "VIES:FR35852293547", "decision": "VALID" }, { "businessRule": { "name": "Identifier Qualification (European value added tax identifier (France), Data source:VIES)", "url": "https://meta.cdq.com/Identifier_Qualification_(European_value_added_tax_identifier_(France),_Data_source:VIES)", "ruleStatus": "RELEASED", "violationMessage": "Identifier deviates from the reference identifier registered with the European value added tax identifier (France)" }, "executionContextProperties": [ { "name": "qualificationTarget", "value": "IDENTIFIER" }, { "name": "targetInputValue", "value": "FR35852293547" }, { "name": "targetReferenceValue", "value": "FR35852293547" }, { "name": "dataSourceTechnicalKey", "value": "VIES" }, { "name": "dataSourceRequestIdentifier", "value": "WAPIAAAAZGTrL9VN" } ], "cdqId": "VIES:FR35852293547", "decision": "VALID" } ] } ], "lookupResults": [], "debugInfo": { "externalServiceResponses": [ { "status": 200, "timestamp": "2024-08-27T11:50:57.854938291Z", "additionalInformation": [ { "key": "requestorId", "value": "DE307699628" }, { "key": "requestId", "value": "WAPIAAAAZGTrL9VN" }, { "key": "rawJson", "value": "[{\"vatValue\":{\"value\":\"35852293547\"},\"requestDate\":{\"value\":\"2024-08-26T22:00:00.000+00:00\"},\"countryCode\":{\"value\":\"FR\"},\"valid\":{\"value\":true},\"traderAddress\":{\"value\":\"89 RUE DE TOURCOING\\n59100 ROUBAIX\"},\"traderName\":{\"value\":\"SAS DB COMPANY\"},\"traderCompanyType\":{\"value\":\"---\"},\"traderStreet\":{},\"traderPostcode\":{},\"traderCity\":{},\"traderNameMatch\":{},\"traderCompanyTypeMatch\":{},\"traderStreetMatch\":{},\"traderPostcodeMatch\":{},\"traderCityMatch\":{},\"requestIdentifier\":{\"value\":\"WAPIAAAAZGTrL9VN\"},\"referenceAddressDto\":{\"version\":{\"characterSet\":{\"name\":\"International\",\"technicalKey\":\"INTERNATIONAL\"},\"language\":{\"name\":\"en\",\"technicalKey\":\"en\"}},\"metadata\":{},\"country\":{\"shortName\":\"FR\",\"value\":\"France\"},\"postCodes\":[{\"value\":\"59100\"}],\"localities\":[{\"type\":{\"name\":\"City\",\"url\":\"https://meta.cdq.com/Address/locality/type/city\",\"technicalKey\":\"CITY\"},\"shortName\":\"Roubaix\",\"value\":\"Roubaix\"}],\"thoroughfares\":[{\"type\":{\"name\":\"Street\",\"url\":\"https://meta.cdq.com/Address/thoroughfare/type/street\",\"technicalKey\":\"STREET\"},\"shortName\":\"Rue De Tourcoing\",\"number\":\"89\",\"value\":\"Rue De Tourcoing\",\"name\":\"RUE DE TOURCOING\"}]},\"requesterVatNumber\":\"307699628\",\"requesterCountryCode\":\"DE\",\"refreshReason\":\"FORCED_BY_CUSTOMER\"}]" } ] }, { "status": 200, "timestamp": "2024-08-27T11:50:57.854938291Z", "additionalInformation": [ { "key": "requestorId", "value": "DE307699628" }, { "key": "requestId", "value": "WAPIAAAAZGTrL9VN" }, { "key": "rawJson", "value": "[{\"vatValue\":{\"value\":\"35852293547\"},\"requestDate\":{\"value\":\"2024-08-26T22:00:00.000+00:00\"},\"countryCode\":{\"value\":\"FR\"},\"valid\":{\"value\":true},\"traderAddress\":{\"value\":\"89 RUE DE TOURCOING\\n59100 ROUBAIX\"},\"traderName\":{\"value\":\"SAS DB COMPANY\"},\"traderCompanyType\":{\"value\":\"---\"},\"traderStreet\":{},\"traderPostcode\":{},\"traderCity\":{},\"traderNameMatch\":{},\"traderCompanyTypeMatch\":{},\"traderStreetMatch\":{},\"traderPostcodeMatch\":{},\"traderCityMatch\":{},\"requestIdentifier\":{\"value\":\"WAPIAAAAZGTrL9VN\"},\"referenceAddressDto\":{\"version\":{\"characterSet\":{\"name\":\"International\",\"technicalKey\":\"INTERNATIONAL\"},\"language\":{\"name\":\"en\",\"technicalKey\":\"en\"}},\"metadata\":{},\"country\":{\"shortName\":\"FR\",\"value\":\"France\"},\"postCodes\":[{\"value\":\"59100\"}],\"localities\":[{\"type\":{\"name\":\"City\",\"url\":\"https://meta.cdq.com/Address/locality/type/city\",\"technicalKey\":\"CITY\"},\"shortName\":\"Roubaix\",\"value\":\"Roubaix\"}],\"thoroughfares\":[{\"type\":{\"name\":\"Street\",\"url\":\"https://meta.cdq.com/Address/thoroughfare/type/street\",\"technicalKey\":\"STREET\"},\"shortName\":\"Rue De Tourcoing\",\"number\":\"89\",\"value\":\"Rue De Tourcoing\",\"name\":\"RUE DE TOURCOING\"}]},\"requesterVatNumber\":\"307699628\",\"requesterCountryCode\":\"DE\",\"refreshReason\":\"FORCED_BY_CUSTOMER\"}]" } ] }, { "status": 200, "timestamp": "2024-08-27T11:50:57.854938291Z", "additionalInformation": [ { "key": "requestorId", "value": "DE307699628" }, { "key": "requestId", "value": "WAPIAAAAZGTrL9VN" }, { "key": "rawJson", "value": "[{\"vatValue\":{\"value\":\"35852293547\"},\"requestDate\":{\"value\":\"2024-08-26T22:00:00.000+00:00\"},\"countryCode\":{\"value\":\"FR\"},\"valid\":{\"value\":true},\"traderAddress\":{\"value\":\"89 RUE DE TOURCOING\\n59100 ROUBAIX\"},\"traderName\":{\"value\":\"SAS DB COMPANY\"},\"traderCompanyType\":{\"value\":\"---\"},\"traderStreet\":{},\"traderPostcode\":{},\"traderCity\":{},\"traderNameMatch\":{},\"traderCompanyTypeMatch\":{},\"traderStreetMatch\":{},\"traderPostcodeMatch\":{},\"traderCityMatch\":{},\"requestIdentifier\":{\"value\":\"WAPIAAAAZGTrL9VN\"},\"referenceAddressDto\":{\"version\":{\"characterSet\":{\"name\":\"International\",\"technicalKey\":\"INTERNATIONAL\"},\"language\":{\"name\":\"en\",\"technicalKey\":\"en\"}},\"metadata\":{},\"country\":{\"shortName\":\"FR\",\"value\":\"France\"},\"postCodes\":[{\"value\":\"59100\"}],\"localities\":[{\"type\":{\"name\":\"City\",\"url\":\"https://meta.cdq.com/Address/locality/type/city\",\"technicalKey\":\"CITY\"},\"shortName\":\"Roubaix\",\"value\":\"Roubaix\"}],\"thoroughfares\":[{\"type\":{\"name\":\"Street\",\"url\":\"https://meta.cdq.com/Address/thoroughfare/type/street\",\"technicalKey\":\"STREET\"},\"shortName\":\"Rue De Tourcoing\",\"number\":\"89\",\"value\":\"Rue De Tourcoing\",\"name\":\"RUE DE TOURCOING\"}]},\"requesterVatNumber\":\"307699628\",\"requesterCountryCode\":\"DE\",\"refreshReason\":\"FORCED_BY_CUSTOMER\"}]" } ] }, { "status": 200, "timestamp": "2024-08-27T11:50:57.854938291Z", "additionalInformation": [ { "key": "requestorId", "value": "DE307699628" }, { "key": "requestId", "value": "WAPIAAAAZGTrL9VN" }, { "key": "rawJson", "value": "[{\"vatValue\":{\"value\":\"35852293547\"},\"requestDate\":{\"value\":\"2024-08-26T22:00:00.000+00:00\"},\"countryCode\":{\"value\":\"FR\"},\"valid\":{\"value\":true},\"traderAddress\":{\"value\":\"89 RUE DE TOURCOING\\n59100 ROUBAIX\"},\"traderName\":{\"value\":\"SAS DB COMPANY\"},\"traderCompanyType\":{\"value\":\"---\"},\"traderStreet\":{},\"traderPostcode\":{},\"traderCity\":{},\"traderNameMatch\":{},\"traderCompanyTypeMatch\":{},\"traderStreetMatch\":{},\"traderPostcodeMatch\":{},\"traderCityMatch\":{},\"requestIdentifier\":{\"value\":\"WAPIAAAAZGTrL9VN\"},\"referenceAddressDto\":{\"version\":{\"characterSet\":{\"name\":\"International\",\"technicalKey\":\"INTERNATIONAL\"},\"language\":{\"name\":\"en\",\"technicalKey\":\"en\"}},\"metadata\":{},\"country\":{\"shortName\":\"FR\",\"value\":\"France\"},\"postCodes\":[{\"value\":\"59100\"}],\"localities\":[{\"type\":{\"name\":\"City\",\"url\":\"https://meta.cdq.com/Address/locality/type/city\",\"technicalKey\":\"CITY\"},\"shortName\":\"Roubaix\",\"value\":\"Roubaix\"}],\"thoroughfares\":[{\"type\":{\"name\":\"Street\",\"url\":\"https://meta.cdq.com/Address/thoroughfare/type/street\",\"technicalKey\":\"STREET\"},\"shortName\":\"Rue De Tourcoing\",\"number\":\"89\",\"value\":\"Rue De Tourcoing\",\"name\":\"RUE DE TOURCOING\"}]},\"requesterVatNumber\":\"307699628\",\"requesterCountryCode\":\"DE\",\"refreshReason\":\"FORCED_BY_CUSTOMER\"}]" } ] }, { "status": 200, "timestamp": "2024-08-27T11:50:57.854938291Z", "additionalInformation": [ { "key": "requestorId", "value": "DE307699628" }, { "key": "requestId", "value": "WAPIAAAAZGTrL9VN" }, { "key": "rawJson", "value": "[{\"vatValue\":{\"value\":\"35852293547\"},\"requestDate\":{\"value\":\"2024-08-26T22:00:00.000+00:00\"},\"countryCode\":{\"value\":\"FR\"},\"valid\":{\"value\":true},\"traderAddress\":{\"value\":\"89 RUE DE TOURCOING\\n59100 ROUBAIX\"},\"traderName\":{\"value\":\"SAS DB COMPANY\"},\"traderCompanyType\":{\"value\":\"---\"},\"traderStreet\":{},\"traderPostcode\":{},\"traderCity\":{},\"traderNameMatch\":{},\"traderCompanyTypeMatch\":{},\"traderStreetMatch\":{},\"traderPostcodeMatch\":{},\"traderCityMatch\":{},\"requestIdentifier\":{\"value\":\"WAPIAAAAZGTrL9VN\"},\"referenceAddressDto\":{\"version\":{\"characterSet\":{\"name\":\"International\",\"technicalKey\":\"INTERNATIONAL\"},\"language\":{\"name\":\"en\",\"technicalKey\":\"en\"}},\"metadata\":{},\"country\":{\"shortName\":\"FR\",\"value\":\"France\"},\"postCodes\":[{\"value\":\"59100\"}],\"localities\":[{\"type\":{\"name\":\"City\",\"url\":\"https://meta.cdq.com/Address/locality/type/city\",\"technicalKey\":\"CITY\"},\"shortName\":\"Roubaix\",\"value\":\"Roubaix\"}],\"thoroughfares\":[{\"type\":{\"name\":\"Street\",\"url\":\"https://meta.cdq.com/Address/thoroughfare/type/street\",\"technicalKey\":\"STREET\"},\"shortName\":\"Rue De Tourcoing\",\"number\":\"89\",\"value\":\"Rue De Tourcoing\",\"name\":\"RUE DE TOURCOING\"}]},\"requesterVatNumber\":\"307699628\",\"requesterCountryCode\":\"DE\",\"refreshReason\":\"FORCED_BY_CUSTOMER\"}]" } ] } ], "businessRulesExecutionSummary": { "numberOfRules": 5, "numberOfExecutions": 5, "numberOfFails": 0, "failures": [], "dataSourcesOn": [ { "prefix": "VIES" }, { "prefix": "AT.FON" } ], "ruleCategoriesOn": [ { "url": "https://meta.cdq.com/EU_TAX_Qualification" } ] } } } ``` ```json { "qualificationResults": [ { "identifier": { "value": "FR35852293547", "type": { "technicalKey": "EU_VAT_ID_FR" } }, "qualifiedAt": "2024-08-27T11:52:15.789875293", "dataSourceTechnicalKey": "VIES", "dataSourceRequestIdentifiers": [ { "dataSourceTechnicalKey": "VIES", "value": "WAPIAAAAZGTre9Jf" } ], "qualificationDecisionSummary": { "identifierQualificationDecision": "VALID", "nameQualificationDecision": "VALID", "addressQualificationDecision": "INVALID", "addressQualificationDecisionDetails": { "localityQualificationDecision": "VALID", "postCodeQualificationDecision": "INVALID", "thoroughfareQualificationDecision": "VALID" }, "overallQualificationDecision": "INVALID" }, "qualificationDecisionDetails": [ { "businessRule": { "name": "Thoroughfare Qualification (European value added tax identifier (France), Data source:VIES)", "url": "https://meta.cdq.com/Thoroughfare_Qualification_(European_value_added_tax_identifier_(France),_Data_source:VIES)", "ruleStatus": "RELEASED", "violationMessage": "Street deviates from the reference street registered with the European value added tax identifier (France)" }, "executionContextProperties": [ { "name": "qualificationTarget", "value": "STREET" }, { "name": "targetInputValue", "value": "Rue De Tourcoing" }, { "name": "targetReferenceValue", "value": "Rue De Tourcoing" }, { "name": "dataSourceTechnicalKey", "value": "VIES" }, { "name": "dataSourceRequestIdentifier", "value": "WAPIAAAAZGTre9Jf" } ], "cdqId": "VIES:FR35852293547", "decision": "VALID" }, { "businessRule": { "name": "Post code Qualification (European value added tax identifier (France), Data source:VIES)", "url": "https://meta.cdq.com/Post_code_Qualification_(European_value_added_tax_identifier_(France),_Data_source:VIES)", "ruleStatus": "RELEASED", "violationMessage": "Post code deviates from the reference post code registered with the European value added tax identifier (France)" }, "executionContextProperties": [ { "name": "qualificationTarget", "value": "POST_CODE_REGULAR" }, { "name": "targetInputValue", "value": "591000" }, { "name": "targetReferenceValue", "value": "59100" }, { "name": "dataSourceTechnicalKey", "value": "VIES" }, { "name": "dataSourceRequestIdentifier", "value": "WAPIAAAAZGTre9Jf" } ], "cdqId": "VIES:FR35852293547", "decision": "INVALID" }, { "businessRule": { "name": "Name Qualification (European value added tax identifier (France), Data source:VIES)", "url": "https://meta.cdq.com/Name_Qualification_(European_value_added_tax_identifier_(France),_Data_source:VIES)", "ruleStatus": "RELEASED", "violationMessage": "Name deviates from the reference name registered with the European value added tax identifier (France)" }, "executionContextProperties": [ { "name": "qualificationTarget", "value": "NAME_LOCAL" }, { "name": "targetInputValue", "value": "SAS DB COMPANY" }, { "name": "targetReferenceValue", "value": "SAS DB COMPANY" }, { "name": "dataSourceTechnicalKey", "value": "VIES" }, { "name": "dataSourceRequestIdentifier", "value": "WAPIAAAAZGTre9Jf" } ], "cdqId": "VIES:FR35852293547", "decision": "VALID" }, { "businessRule": { "name": "Locality Qualification (European value added tax identifier (France), Data source:VIES)", "url": "https://meta.cdq.com/Locality_Qualification_(European_value_added_tax_identifier_(France),_Data_source:VIES)", "ruleStatus": "RELEASED", "violationMessage": "City deviates from the reference city registered with the European value added tax identifier (France)" }, "executionContextProperties": [ { "name": "qualificationTarget", "value": "CITY" }, { "name": "targetInputValue", "value": "Roubaixe" }, { "name": "targetReferenceValue", "value": "Roubaix" }, { "name": "dataSourceTechnicalKey", "value": "VIES" }, { "name": "dataSourceRequestIdentifier", "value": "WAPIAAAAZGTre9Jf" } ], "cdqId": "VIES:FR35852293547", "decision": "VALID" }, { "businessRule": { "name": "Identifier Qualification (European value added tax identifier (France), Data source:VIES)", "url": "https://meta.cdq.com/Identifier_Qualification_(European_value_added_tax_identifier_(France),_Data_source:VIES)", "ruleStatus": "RELEASED", "violationMessage": "Identifier deviates from the reference identifier registered with the European value added tax identifier (France)" }, "executionContextProperties": [ { "name": "qualificationTarget", "value": "IDENTIFIER" }, { "name": "targetInputValue", "value": "FR35852293547" }, { "name": "targetReferenceValue", "value": "FR35852293547" }, { "name": "dataSourceTechnicalKey", "value": "VIES" }, { "name": "dataSourceRequestIdentifier", "value": "WAPIAAAAZGTre9Jf" } ], "cdqId": "VIES:FR35852293547", "decision": "VALID" } ] } ], "lookupResults": [], "debugInfo": { "externalServiceResponses": [ { "status": 200, "timestamp": "2024-08-27T11:52:15.729216694Z", "additionalInformation": [ { "key": "requestorId", "value": "DE307699628" }, { "key": "requestId", "value": "WAPIAAAAZGTre9Jf" }, { "key": "rawJson", "value": "[{\"vatValue\":{\"value\":\"35852293547\"},\"requestDate\":{\"value\":\"2024-08-26T22:00:00.000+00:00\"},\"countryCode\":{\"value\":\"FR\"},\"valid\":{\"value\":true},\"traderAddress\":{\"value\":\"89 RUE DE TOURCOING\\n59100 ROUBAIX\"},\"traderName\":{\"value\":\"SAS DB COMPANY\"},\"traderCompanyType\":{\"value\":\"---\"},\"traderStreet\":{},\"traderPostcode\":{},\"traderCity\":{},\"traderNameMatch\":{},\"traderCompanyTypeMatch\":{},\"traderStreetMatch\":{},\"traderPostcodeMatch\":{},\"traderCityMatch\":{},\"requestIdentifier\":{\"value\":\"WAPIAAAAZGTre9Jf\"},\"referenceAddressDto\":{\"version\":{\"characterSet\":{\"name\":\"International\",\"technicalKey\":\"INTERNATIONAL\"},\"language\":{\"name\":\"en\",\"technicalKey\":\"en\"}},\"metadata\":{},\"country\":{\"shortName\":\"FR\",\"value\":\"France\"},\"postCodes\":[{\"value\":\"59100\"}],\"localities\":[{\"type\":{\"name\":\"City\",\"url\":\"https://meta.cdq.com/Address/locality/type/city\",\"technicalKey\":\"CITY\"},\"shortName\":\"Roubaix\",\"value\":\"Roubaix\"}],\"thoroughfares\":[{\"type\":{\"name\":\"Street\",\"url\":\"https://meta.cdq.com/Address/thoroughfare/type/street\",\"technicalKey\":\"STREET\"},\"shortName\":\"Rue De Tourcoing\",\"number\":\"89\",\"value\":\"Rue De Tourcoing\",\"name\":\"RUE DE TOURCOING\"}]},\"requesterVatNumber\":\"307699628\",\"requesterCountryCode\":\"DE\",\"refreshReason\":\"FORCED_BY_CUSTOMER\"}]" } ] }, { "status": 200, "timestamp": "2024-08-27T11:52:15.729216694Z", "additionalInformation": [ { "key": "requestorId", "value": "DE307699628" }, { "key": "requestId", "value": "WAPIAAAAZGTre9Jf" }, { "key": "rawJson", "value": "[{\"vatValue\":{\"value\":\"35852293547\"},\"requestDate\":{\"value\":\"2024-08-26T22:00:00.000+00:00\"},\"countryCode\":{\"value\":\"FR\"},\"valid\":{\"value\":true},\"traderAddress\":{\"value\":\"89 RUE DE TOURCOING\\n59100 ROUBAIX\"},\"traderName\":{\"value\":\"SAS DB COMPANY\"},\"traderCompanyType\":{\"value\":\"---\"},\"traderStreet\":{},\"traderPostcode\":{},\"traderCity\":{},\"traderNameMatch\":{},\"traderCompanyTypeMatch\":{},\"traderStreetMatch\":{},\"traderPostcodeMatch\":{},\"traderCityMatch\":{},\"requestIdentifier\":{\"value\":\"WAPIAAAAZGTre9Jf\"},\"referenceAddressDto\":{\"version\":{\"characterSet\":{\"name\":\"International\",\"technicalKey\":\"INTERNATIONAL\"},\"language\":{\"name\":\"en\",\"technicalKey\":\"en\"}},\"metadata\":{},\"country\":{\"shortName\":\"FR\",\"value\":\"France\"},\"postCodes\":[{\"value\":\"59100\"}],\"localities\":[{\"type\":{\"name\":\"City\",\"url\":\"https://meta.cdq.com/Address/locality/type/city\",\"technicalKey\":\"CITY\"},\"shortName\":\"Roubaix\",\"value\":\"Roubaix\"}],\"thoroughfares\":[{\"type\":{\"name\":\"Street\",\"url\":\"https://meta.cdq.com/Address/thoroughfare/type/street\",\"technicalKey\":\"STREET\"},\"shortName\":\"Rue De Tourcoing\",\"number\":\"89\",\"value\":\"Rue De Tourcoing\",\"name\":\"RUE DE TOURCOING\"}]},\"requesterVatNumber\":\"307699628\",\"requesterCountryCode\":\"DE\",\"refreshReason\":\"FORCED_BY_CUSTOMER\"}]" } ] }, { "status": 200, "timestamp": "2024-08-27T11:52:15.729216694Z", "additionalInformation": [ { "key": "requestorId", "value": "DE307699628" }, { "key": "requestId", "value": "WAPIAAAAZGTre9Jf" }, { "key": "rawJson", "value": "[{\"vatValue\":{\"value\":\"35852293547\"},\"requestDate\":{\"value\":\"2024-08-26T22:00:00.000+00:00\"},\"countryCode\":{\"value\":\"FR\"},\"valid\":{\"value\":true},\"traderAddress\":{\"value\":\"89 RUE DE TOURCOING\\n59100 ROUBAIX\"},\"traderName\":{\"value\":\"SAS DB COMPANY\"},\"traderCompanyType\":{\"value\":\"---\"},\"traderStreet\":{},\"traderPostcode\":{},\"traderCity\":{},\"traderNameMatch\":{},\"traderCompanyTypeMatch\":{},\"traderStreetMatch\":{},\"traderPostcodeMatch\":{},\"traderCityMatch\":{},\"requestIdentifier\":{\"value\":\"WAPIAAAAZGTre9Jf\"},\"referenceAddressDto\":{\"version\":{\"characterSet\":{\"name\":\"International\",\"technicalKey\":\"INTERNATIONAL\"},\"language\":{\"name\":\"en\",\"technicalKey\":\"en\"}},\"metadata\":{},\"country\":{\"shortName\":\"FR\",\"value\":\"France\"},\"postCodes\":[{\"value\":\"59100\"}],\"localities\":[{\"type\":{\"name\":\"City\",\"url\":\"https://meta.cdq.com/Address/locality/type/city\",\"technicalKey\":\"CITY\"},\"shortName\":\"Roubaix\",\"value\":\"Roubaix\"}],\"thoroughfares\":[{\"type\":{\"name\":\"Street\",\"url\":\"https://meta.cdq.com/Address/thoroughfare/type/street\",\"technicalKey\":\"STREET\"},\"shortName\":\"Rue De Tourcoing\",\"number\":\"89\",\"value\":\"Rue De Tourcoing\",\"name\":\"RUE DE TOURCOING\"}]},\"requesterVatNumber\":\"307699628\",\"requesterCountryCode\":\"DE\",\"refreshReason\":\"FORCED_BY_CUSTOMER\"}]" } ] }, { "status": 200, "timestamp": "2024-08-27T11:52:15.729216694Z", "additionalInformation": [ { "key": "requestorId", "value": "DE307699628" }, { "key": "requestId", "value": "WAPIAAAAZGTre9Jf" }, { "key": "rawJson", "value": "[{\"vatValue\":{\"value\":\"35852293547\"},\"requestDate\":{\"value\":\"2024-08-26T22:00:00.000+00:00\"},\"countryCode\":{\"value\":\"FR\"},\"valid\":{\"value\":true},\"traderAddress\":{\"value\":\"89 RUE DE TOURCOING\\n59100 ROUBAIX\"},\"traderName\":{\"value\":\"SAS DB COMPANY\"},\"traderCompanyType\":{\"value\":\"---\"},\"traderStreet\":{},\"traderPostcode\":{},\"traderCity\":{},\"traderNameMatch\":{},\"traderCompanyTypeMatch\":{},\"traderStreetMatch\":{},\"traderPostcodeMatch\":{},\"traderCityMatch\":{},\"requestIdentifier\":{\"value\":\"WAPIAAAAZGTre9Jf\"},\"referenceAddressDto\":{\"version\":{\"characterSet\":{\"name\":\"International\",\"technicalKey\":\"INTERNATIONAL\"},\"language\":{\"name\":\"en\",\"technicalKey\":\"en\"}},\"metadata\":{},\"country\":{\"shortName\":\"FR\",\"value\":\"France\"},\"postCodes\":[{\"value\":\"59100\"}],\"localities\":[{\"type\":{\"name\":\"City\",\"url\":\"https://meta.cdq.com/Address/locality/type/city\",\"technicalKey\":\"CITY\"},\"shortName\":\"Roubaix\",\"value\":\"Roubaix\"}],\"thoroughfares\":[{\"type\":{\"name\":\"Street\",\"url\":\"https://meta.cdq.com/Address/thoroughfare/type/street\",\"technicalKey\":\"STREET\"},\"shortName\":\"Rue De Tourcoing\",\"number\":\"89\",\"value\":\"Rue De Tourcoing\",\"name\":\"RUE DE TOURCOING\"}]},\"requesterVatNumber\":\"307699628\",\"requesterCountryCode\":\"DE\",\"refreshReason\":\"FORCED_BY_CUSTOMER\"}]" } ] }, { "status": 200, "timestamp": "2024-08-27T11:52:15.729216694Z", "additionalInformation": [ { "key": "requestorId", "value": "DE307699628" }, { "key": "requestId", "value": "WAPIAAAAZGTre9Jf" }, { "key": "rawJson", "value": "[{\"vatValue\":{\"value\":\"35852293547\"},\"requestDate\":{\"value\":\"2024-08-26T22:00:00.000+00:00\"},\"countryCode\":{\"value\":\"FR\"},\"valid\":{\"value\":true},\"traderAddress\":{\"value\":\"89 RUE DE TOURCOING\\n59100 ROUBAIX\"},\"traderName\":{\"value\":\"SAS DB COMPANY\"},\"traderCompanyType\":{\"value\":\"---\"},\"traderStreet\":{},\"traderPostcode\":{},\"traderCity\":{},\"traderNameMatch\":{},\"traderCompanyTypeMatch\":{},\"traderStreetMatch\":{},\"traderPostcodeMatch\":{},\"traderCityMatch\":{},\"requestIdentifier\":{\"value\":\"WAPIAAAAZGTre9Jf\"},\"referenceAddressDto\":{\"version\":{\"characterSet\":{\"name\":\"International\",\"technicalKey\":\"INTERNATIONAL\"},\"language\":{\"name\":\"en\",\"technicalKey\":\"en\"}},\"metadata\":{},\"country\":{\"shortName\":\"FR\",\"value\":\"France\"},\"postCodes\":[{\"value\":\"59100\"}],\"localities\":[{\"type\":{\"name\":\"City\",\"url\":\"https://meta.cdq.com/Address/locality/type/city\",\"technicalKey\":\"CITY\"},\"shortName\":\"Roubaix\",\"value\":\"Roubaix\"}],\"thoroughfares\":[{\"type\":{\"name\":\"Street\",\"url\":\"https://meta.cdq.com/Address/thoroughfare/type/street\",\"technicalKey\":\"STREET\"},\"shortName\":\"Rue De Tourcoing\",\"number\":\"89\",\"value\":\"Rue De Tourcoing\",\"name\":\"RUE DE TOURCOING\"}]},\"requesterVatNumber\":\"307699628\",\"requesterCountryCode\":\"DE\",\"refreshReason\":\"FORCED_BY_CUSTOMER\"}]" } ] } ], "businessRulesExecutionSummary": { "numberOfRules": 5, "numberOfExecutions": 5, "numberOfFails": 0, "failures": [], "dataSourcesOn": [ { "prefix": "VIES" }, { "prefix": "AT.FON" } ], "ruleCategoriesOn": [ { "url": "https://meta.cdq.com/EU_TAX_Qualification" } ] } } } ``` ```json { "qualificationResults": [ { "identifier": { "value": "FR35852293547", "type": { "technicalKey": "EU_VAT_ID_FR" } }, "qualifiedAt": "2024-08-27T11:52:24.828645418", "dataSourceTechnicalKey": "VIES", "dataSourceRequestIdentifiers": [ { "dataSourceTechnicalKey": "VIES", "value": "WAPIAAAAZGTrhLVf" } ], "qualificationDecisionSummary": { "identifierQualificationDecision": "VALID", "nameQualificationDecision": "VALID", "addressQualificationDecision": "INVALID", "addressQualificationDecisionDetails": { "localityQualificationDecision": "VALID", "postCodeQualificationDecision": "INVALID", "thoroughfareQualificationDecision": "INVALID" }, "overallQualificationDecision": "INVALID" }, "qualificationDecisionDetails": [ { "businessRule": { "name": "Thoroughfare Qualification (European value added tax identifier (France), Data source:VIES)", "url": "https://meta.cdq.com/Thoroughfare_Qualification_(European_value_added_tax_identifier_(France),_Data_source:VIES)", "ruleStatus": "RELEASED", "violationMessage": "Street deviates from the reference street registered with the European value added tax identifier (France)" }, "executionContextProperties": [ { "name": "qualificationTarget", "value": "STREET" }, { "name": "targetInputValue", "value": "Rue De Tourcoingesop" }, { "name": "targetReferenceValue", "value": "Rue De Tourcoing" }, { "name": "dataSourceTechnicalKey", "value": "VIES" }, { "name": "dataSourceRequestIdentifier", "value": "WAPIAAAAZGTrhLVf" } ], "cdqId": "VIES:FR35852293547", "decision": "INVALID" }, { "businessRule": { "name": "Post code Qualification (European value added tax identifier (France), Data source:VIES)", "url": "https://meta.cdq.com/Post_code_Qualification_(European_value_added_tax_identifier_(France),_Data_source:VIES)", "ruleStatus": "RELEASED", "violationMessage": "Post code deviates from the reference post code registered with the European value added tax identifier (France)" }, "executionContextProperties": [ { "name": "qualificationTarget", "value": "POST_CODE_REGULAR" }, { "name": "targetInputValue", "value": "591000" }, { "name": "targetReferenceValue", "value": "59100" }, { "name": "dataSourceTechnicalKey", "value": "VIES" }, { "name": "dataSourceRequestIdentifier", "value": "WAPIAAAAZGTrhLVf" } ], "cdqId": "VIES:FR35852293547", "decision": "INVALID" }, { "businessRule": { "name": "Name Qualification (European value added tax identifier (France), Data source:VIES)", "url": "https://meta.cdq.com/Name_Qualification_(European_value_added_tax_identifier_(France),_Data_source:VIES)", "ruleStatus": "RELEASED", "violationMessage": "Name deviates from the reference name registered with the European value added tax identifier (France)" }, "executionContextProperties": [ { "name": "qualificationTarget", "value": "NAME_LOCAL" }, { "name": "targetInputValue", "value": "SAS DB COMPANY" }, { "name": "targetReferenceValue", "value": "SAS DB COMPANY" }, { "name": "dataSourceTechnicalKey", "value": "VIES" }, { "name": "dataSourceRequestIdentifier", "value": "WAPIAAAAZGTrhLVf" } ], "cdqId": "VIES:FR35852293547", "decision": "VALID" }, { "businessRule": { "name": "Locality Qualification (European value added tax identifier (France), Data source:VIES)", "url": "https://meta.cdq.com/Locality_Qualification_(European_value_added_tax_identifier_(France),_Data_source:VIES)", "ruleStatus": "RELEASED", "violationMessage": "City deviates from the reference city registered with the European value added tax identifier (France)" }, "executionContextProperties": [ { "name": "qualificationTarget", "value": "CITY" }, { "name": "targetInputValue", "value": "Roubaixe" }, { "name": "targetReferenceValue", "value": "Roubaix" }, { "name": "dataSourceTechnicalKey", "value": "VIES" }, { "name": "dataSourceRequestIdentifier", "value": "WAPIAAAAZGTrhLVf" } ], "cdqId": "VIES:FR35852293547", "decision": "VALID" }, { "businessRule": { "name": "Identifier Qualification (European value added tax identifier (France), Data source:VIES)", "url": "https://meta.cdq.com/Identifier_Qualification_(European_value_added_tax_identifier_(France),_Data_source:VIES)", "ruleStatus": "RELEASED", "violationMessage": "Identifier deviates from the reference identifier registered with the European value added tax identifier (France)" }, "executionContextProperties": [ { "name": "qualificationTarget", "value": "IDENTIFIER" }, { "name": "targetInputValue", "value": "FR35852293547" }, { "name": "targetReferenceValue", "value": "FR35852293547" }, { "name": "dataSourceTechnicalKey", "value": "VIES" }, { "name": "dataSourceRequestIdentifier", "value": "WAPIAAAAZGTrhLVf" } ], "cdqId": "VIES:FR35852293547", "decision": "VALID" } ] } ], "lookupResults": [], "debugInfo": { "externalServiceResponses": [ { "status": 200, "timestamp": "2024-08-27T11:52:24.789971120Z", "additionalInformation": [ { "key": "requestorId", "value": "DE307699628" }, { "key": "requestId", "value": "WAPIAAAAZGTrhLVf" }, { "key": "rawJson", "value": "[{\"vatValue\":{\"value\":\"35852293547\"},\"requestDate\":{\"value\":\"2024-08-26T22:00:00.000+00:00\"},\"countryCode\":{\"value\":\"FR\"},\"valid\":{\"value\":true},\"traderAddress\":{\"value\":\"89 RUE DE TOURCOING\\n59100 ROUBAIX\"},\"traderName\":{\"value\":\"SAS DB COMPANY\"},\"traderCompanyType\":{\"value\":\"---\"},\"traderStreet\":{},\"traderPostcode\":{},\"traderCity\":{},\"traderNameMatch\":{},\"traderCompanyTypeMatch\":{},\"traderStreetMatch\":{},\"traderPostcodeMatch\":{},\"traderCityMatch\":{},\"requestIdentifier\":{\"value\":\"WAPIAAAAZGTrhLVf\"},\"referenceAddressDto\":{\"version\":{\"characterSet\":{\"name\":\"International\",\"technicalKey\":\"INTERNATIONAL\"},\"language\":{\"name\":\"en\",\"technicalKey\":\"en\"}},\"metadata\":{},\"country\":{\"shortName\":\"FR\",\"value\":\"France\"},\"postCodes\":[{\"value\":\"59100\"}],\"localities\":[{\"type\":{\"name\":\"City\",\"url\":\"https://meta.cdq.com/Address/locality/type/city\",\"technicalKey\":\"CITY\"},\"shortName\":\"Roubaix\",\"value\":\"Roubaix\"}],\"thoroughfares\":[{\"type\":{\"name\":\"Street\",\"url\":\"https://meta.cdq.com/Address/thoroughfare/type/street\",\"technicalKey\":\"STREET\"},\"shortName\":\"Rue De Tourcoing\",\"number\":\"89\",\"value\":\"Rue De Tourcoing\",\"name\":\"RUE DE TOURCOING\"}]},\"requesterVatNumber\":\"307699628\",\"requesterCountryCode\":\"DE\",\"refreshReason\":\"FORCED_BY_CUSTOMER\"}]" } ] }, { "status": 200, "timestamp": "2024-08-27T11:52:24.789971120Z", "additionalInformation": [ { "key": "requestorId", "value": "DE307699628" }, { "key": "requestId", "value": "WAPIAAAAZGTrhLVf" }, { "key": "rawJson", "value": "[{\"vatValue\":{\"value\":\"35852293547\"},\"requestDate\":{\"value\":\"2024-08-26T22:00:00.000+00:00\"},\"countryCode\":{\"value\":\"FR\"},\"valid\":{\"value\":true},\"traderAddress\":{\"value\":\"89 RUE DE TOURCOING\\n59100 ROUBAIX\"},\"traderName\":{\"value\":\"SAS DB COMPANY\"},\"traderCompanyType\":{\"value\":\"---\"},\"traderStreet\":{},\"traderPostcode\":{},\"traderCity\":{},\"traderNameMatch\":{},\"traderCompanyTypeMatch\":{},\"traderStreetMatch\":{},\"traderPostcodeMatch\":{},\"traderCityMatch\":{},\"requestIdentifier\":{\"value\":\"WAPIAAAAZGTrhLVf\"},\"referenceAddressDto\":{\"version\":{\"characterSet\":{\"name\":\"International\",\"technicalKey\":\"INTERNATIONAL\"},\"language\":{\"name\":\"en\",\"technicalKey\":\"en\"}},\"metadata\":{},\"country\":{\"shortName\":\"FR\",\"value\":\"France\"},\"postCodes\":[{\"value\":\"59100\"}],\"localities\":[{\"type\":{\"name\":\"City\",\"url\":\"https://meta.cdq.com/Address/locality/type/city\",\"technicalKey\":\"CITY\"},\"shortName\":\"Roubaix\",\"value\":\"Roubaix\"}],\"thoroughfares\":[{\"type\":{\"name\":\"Street\",\"url\":\"https://meta.cdq.com/Address/thoroughfare/type/street\",\"technicalKey\":\"STREET\"},\"shortName\":\"Rue De Tourcoing\",\"number\":\"89\",\"value\":\"Rue De Tourcoing\",\"name\":\"RUE DE TOURCOING\"}]},\"requesterVatNumber\":\"307699628\",\"requesterCountryCode\":\"DE\",\"refreshReason\":\"FORCED_BY_CUSTOMER\"}]" } ] }, { "status": 200, "timestamp": "2024-08-27T11:52:24.789971120Z", "additionalInformation": [ { "key": "requestorId", "value": "DE307699628" }, { "key": "requestId", "value": "WAPIAAAAZGTrhLVf" }, { "key": "rawJson", "value": "[{\"vatValue\":{\"value\":\"35852293547\"},\"requestDate\":{\"value\":\"2024-08-26T22:00:00.000+00:00\"},\"countryCode\":{\"value\":\"FR\"},\"valid\":{\"value\":true},\"traderAddress\":{\"value\":\"89 RUE DE TOURCOING\\n59100 ROUBAIX\"},\"traderName\":{\"value\":\"SAS DB COMPANY\"},\"traderCompanyType\":{\"value\":\"---\"},\"traderStreet\":{},\"traderPostcode\":{},\"traderCity\":{},\"traderNameMatch\":{},\"traderCompanyTypeMatch\":{},\"traderStreetMatch\":{},\"traderPostcodeMatch\":{},\"traderCityMatch\":{},\"requestIdentifier\":{\"value\":\"WAPIAAAAZGTrhLVf\"},\"referenceAddressDto\":{\"version\":{\"characterSet\":{\"name\":\"International\",\"technicalKey\":\"INTERNATIONAL\"},\"language\":{\"name\":\"en\",\"technicalKey\":\"en\"}},\"metadata\":{},\"country\":{\"shortName\":\"FR\",\"value\":\"France\"},\"postCodes\":[{\"value\":\"59100\"}],\"localities\":[{\"type\":{\"name\":\"City\",\"url\":\"https://meta.cdq.com/Address/locality/type/city\",\"technicalKey\":\"CITY\"},\"shortName\":\"Roubaix\",\"value\":\"Roubaix\"}],\"thoroughfares\":[{\"type\":{\"name\":\"Street\",\"url\":\"https://meta.cdq.com/Address/thoroughfare/type/street\",\"technicalKey\":\"STREET\"},\"shortName\":\"Rue De Tourcoing\",\"number\":\"89\",\"value\":\"Rue De Tourcoing\",\"name\":\"RUE DE TOURCOING\"}]},\"requesterVatNumber\":\"307699628\",\"requesterCountryCode\":\"DE\",\"refreshReason\":\"FORCED_BY_CUSTOMER\"}]" } ] }, { "status": 200, "timestamp": "2024-08-27T11:52:24.789971120Z", "additionalInformation": [ { "key": "requestorId", "value": "DE307699628" }, { "key": "requestId", "value": "WAPIAAAAZGTrhLVf" }, { "key": "rawJson", "value": "[{\"vatValue\":{\"value\":\"35852293547\"},\"requestDate\":{\"value\":\"2024-08-26T22:00:00.000+00:00\"},\"countryCode\":{\"value\":\"FR\"},\"valid\":{\"value\":true},\"traderAddress\":{\"value\":\"89 RUE DE TOURCOING\\n59100 ROUBAIX\"},\"traderName\":{\"value\":\"SAS DB COMPANY\"},\"traderCompanyType\":{\"value\":\"---\"},\"traderStreet\":{},\"traderPostcode\":{},\"traderCity\":{},\"traderNameMatch\":{},\"traderCompanyTypeMatch\":{},\"traderStreetMatch\":{},\"traderPostcodeMatch\":{},\"traderCityMatch\":{},\"requestIdentifier\":{\"value\":\"WAPIAAAAZGTrhLVf\"},\"referenceAddressDto\":{\"version\":{\"characterSet\":{\"name\":\"International\",\"technicalKey\":\"INTERNATIONAL\"},\"language\":{\"name\":\"en\",\"technicalKey\":\"en\"}},\"metadata\":{},\"country\":{\"shortName\":\"FR\",\"value\":\"France\"},\"postCodes\":[{\"value\":\"59100\"}],\"localities\":[{\"type\":{\"name\":\"City\",\"url\":\"https://meta.cdq.com/Address/locality/type/city\",\"technicalKey\":\"CITY\"},\"shortName\":\"Roubaix\",\"value\":\"Roubaix\"}],\"thoroughfares\":[{\"type\":{\"name\":\"Street\",\"url\":\"https://meta.cdq.com/Address/thoroughfare/type/street\",\"technicalKey\":\"STREET\"},\"shortName\":\"Rue De Tourcoing\",\"number\":\"89\",\"value\":\"Rue De Tourcoing\",\"name\":\"RUE DE TOURCOING\"}]},\"requesterVatNumber\":\"307699628\",\"requesterCountryCode\":\"DE\",\"refreshReason\":\"FORCED_BY_CUSTOMER\"}]" } ] }, { "status": 200, "timestamp": "2024-08-27T11:52:24.789971120Z", "additionalInformation": [ { "key": "requestorId", "value": "DE307699628" }, { "key": "requestId", "value": "WAPIAAAAZGTrhLVf" }, { "key": "rawJson", "value": "[{\"vatValue\":{\"value\":\"35852293547\"},\"requestDate\":{\"value\":\"2024-08-26T22:00:00.000+00:00\"},\"countryCode\":{\"value\":\"FR\"},\"valid\":{\"value\":true},\"traderAddress\":{\"value\":\"89 RUE DE TOURCOING\\n59100 ROUBAIX\"},\"traderName\":{\"value\":\"SAS DB COMPANY\"},\"traderCompanyType\":{\"value\":\"---\"},\"traderStreet\":{},\"traderPostcode\":{},\"traderCity\":{},\"traderNameMatch\":{},\"traderCompanyTypeMatch\":{},\"traderStreetMatch\":{},\"traderPostcodeMatch\":{},\"traderCityMatch\":{},\"requestIdentifier\":{\"value\":\"WAPIAAAAZGTrhLVf\"},\"referenceAddressDto\":{\"version\":{\"characterSet\":{\"name\":\"International\",\"technicalKey\":\"INTERNATIONAL\"},\"language\":{\"name\":\"en\",\"technicalKey\":\"en\"}},\"metadata\":{},\"country\":{\"shortName\":\"FR\",\"value\":\"France\"},\"postCodes\":[{\"value\":\"59100\"}],\"localities\":[{\"type\":{\"name\":\"City\",\"url\":\"https://meta.cdq.com/Address/locality/type/city\",\"technicalKey\":\"CITY\"},\"shortName\":\"Roubaix\",\"value\":\"Roubaix\"}],\"thoroughfares\":[{\"type\":{\"name\":\"Street\",\"url\":\"https://meta.cdq.com/Address/thoroughfare/type/street\",\"technicalKey\":\"STREET\"},\"shortName\":\"Rue De Tourcoing\",\"number\":\"89\",\"value\":\"Rue De Tourcoing\",\"name\":\"RUE DE TOURCOING\"}]},\"requesterVatNumber\":\"307699628\",\"requesterCountryCode\":\"DE\",\"refreshReason\":\"FORCED_BY_CUSTOMER\"}]" } ] } ], "businessRulesExecutionSummary": { "numberOfRules": 5, "numberOfExecutions": 5, "numberOfFails": 0, "failures": [], "dataSourcesOn": [ { "prefix": "VIES" }, { "prefix": "AT.FON" } ], "ruleCategoriesOn": [ { "url": "https://meta.cdq.com/EU_TAX_Qualification" } ] } } } ``` ## Conclusion The preceding tutorial provides knowledge no how to qualify a French Business Partner with a European VAT ID and the impact on received results caused by typos in the input data. The tutorial also provides information on how to interpret the results and how to use the results to improve the data quality of the Business Partner. ## Your opinion matters! We are constantly working on providing an outstanding user experience with our products. Please share your opinion about this tutorial!