{
    "openapi": "3.0.1",
    "info": {
        "title": "SelfAssessedTaxes",
        "description": "**Self-assessed Taxes**\r\n\r\nThis Sandbox API documentation is for preview purposes only. Endpoints are not final and data content can change.\r\n\r\nCalling the API in actual testing and production environments requires a valid data providers client certificate from Incomes Register's certificate service.\r\n\r\nLast updated 2021-12-10",
        "version": "1.0"
    },
    "servers": [
        {
            "url": "https://api-sandbox.vero.fi/Return/SAT"
        }
    ],
    "paths": {
        "/GetVATPeriods/v1": {
            "post": {
                "tags": [
                    "Production",
                    "Self-assessed Taxes"
                ],
                "summary": "Get chosen years VAT periods",
                "description": "<h2 id=\"caption2_c-n\">Overview</h2>\n\n<p>Before filing a return get the VAT filing periods of the customer for the chosen year with this API endpoint. In general, a return must be filed to each filing period (also called tax period). Each filing period is identified with a date which is usually last day of filing period.</p>\n\n<p>Request message structure and content will be validated and if the message passes all validations 200 - OK response is sent. 200 OK - responds with VAT filing periods in json format. If caller receives 400 - Bad Request response with error message then the caller must review the sent data, correct the data and send the request again. If 500 - Internal Server Error is received then the API call can be tried again later because the error might indicate a temporary issue with the service.</p>\n\n<p><strong>More information about VAT filing and payment at Vero.fi:</strong></p>\n\n<ul>\n<li><a href=\"https://www.vero.fi/en/businesses-and-corporations/taxes-and-charges/vat/when-to-file-and-pay/\">Filing and payment - vero.fi</a></li>\n</ul>\n\n<p><strong>Please note:</strong></p>\n\n<ul>\n<li>The current year&#39;s info is only returned til currently active period (month/quarter/year, depending on the filing frequency).</li>\n<li>FilingStatus Expired means the filing period is outside the adjustment period.&nbsp;</li>\n<li>If no periods are found an empty message is returned.&nbsp;</li>\n<li>Suomi.fi authorization is required with role &quot;<strong>Veroasioiden hoito</strong>&quot; when requesting other than own data.</li>\n<li>Suomi.fi authorization check can take about 500 - 1500 milliseconds</li>\n</ul>\n\n<h2>Test data</h2>\n\n<p>The test URL will provide following static calculated responses in addition to input validation errors:</p>\n\n<p>&nbsp;</p>\n\n<table border=\"1\" cellpadding=\"5\" cellspacing=\"1\">\n<thead>\n<tr>\n<th scope=\"col\">Parameters</th>\n<th scope=\"col\">Response</th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td>\n<p>&nbsp;</p>\n\n<p>&nbsp;</p>\n\n<p>&nbsp;</p>\n\n<p>&nbsp;</p>\n\n<p>&nbsp;</p>\n\n<p>&nbsp;</p>\n\n<p>&nbsp;</p>\n\n<p>&nbsp;</p>\n\n<p>&nbsp;</p>\n\n<p>&nbsp;</p>\n\n<p>&nbsp;</p>\n\n<p>&nbsp;</p>\n\n<p>&nbsp;</p>\n\n<p>Any valid request body with FilingYear = 2018</p>\n</td>\n<td>\n<p>200 - OK&nbsp;</p>\n\n<p>&nbsp;</p>\n\n<p>&quot;FilingPeriod&quot;: [</p>\n\n<p>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;{</p>\n\n<p>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&quot;Period&quot;:&nbsp;&quot;2018-01-31&quot;,</p>\n\n<p>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&quot;Frequency&quot;:&nbsp;&quot;VATMON&quot;,</p>\n\n<p>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&quot;StartDate&quot;:&nbsp;&quot;2018-01-01&quot;,</p>\n\n<p>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&quot;EndDate&quot;:&nbsp;&quot;2018-01-31&quot;,</p>\n\n<p>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&quot;Status&quot;:&nbsp;&quot;Processed&quot;,</p>\n\n<p>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&quot;DueDate&quot;:&nbsp;&quot;2018-03-12&quot;</p>\n\n<p>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;},</p>\n\n<p>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;{</p>\n\n<p>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&quot;Period&quot;:&nbsp;&quot;2018-02-28&quot;,</p>\n\n<p>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&quot;Frequency&quot;:&nbsp;&quot;VATMON&quot;,</p>\n\n<p>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&quot;StartDate&quot;:&nbsp;&quot;2018-02-01&quot;,</p>\n\n<p>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&quot;EndDate&quot;:&nbsp;&quot;2018-02-28&quot;,</p>\n\n<p>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&quot;Status&quot;:&nbsp;&quot;Processed&quot;,</p>\n\n<p>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&quot;DueDate&quot;:&nbsp;&quot;2018-04-12&quot;</p>\n\n<p>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;},</p>\n\n<p>-</p>\n\n<p>-</p>\n\n<p>-</p>\n\n<p>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;{</p>\n\n<p>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&quot;Period&quot;:&nbsp;&quot;2018-12-31&quot;,</p>\n\n<p>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&quot;Frequency&quot;:&nbsp;&quot;VATMON&quot;,</p>\n\n<p>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&quot;StartDate&quot;:&nbsp;&quot;2018-12-01&quot;,</p>\n\n<p>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&quot;EndDate&quot;:&nbsp;&quot;2018-12-31&quot;,</p>\n\n<p>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&quot;Status&quot;:&nbsp;&quot;Processed&quot;,</p>\n\n<p>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&quot;DueDate&quot;:&nbsp;&quot;2019-02-12&quot;</p>\n\n<p>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;}</p>\n\n<p>&nbsp;&nbsp;&nbsp;&nbsp;]</p>\n\n<p>}</p>\n</td>\n</tr>\n<tr>\n<td>\n<p>&nbsp;</p>\n\n<p>&nbsp;</p>\n\n<p>&nbsp;</p>\n\n<p>&nbsp;</p>\n\n<p>&nbsp;</p>\n\n<p>Any valid request body with BusinessId = &#39;0040767-9&#39;</p>\n\n<p>and FilingYear = 2021</p>\n</td>\n<td>\n<p>200 - OK&nbsp;</p>\n\n<p>{</p>\n\n<p>&nbsp;&nbsp;&nbsp;&nbsp;&quot;FilingPeriod&quot;: [</p>\n\n<p>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;{</p>\n\n<p>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&quot;Period&quot;:&nbsp;&quot;2021-12-31&quot;,</p>\n\n<p>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&quot;Frequency&quot;:&nbsp;&quot;VATANN&quot;,</p>\n\n<p>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&quot;StartDate&quot;:&nbsp;&quot;2022-01-30&quot;,</p>\n\n<p>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&quot;EndDate&quot;:&nbsp;&quot;2021-12-31&quot;,</p>\n\n<p>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&quot;Status&quot;:&nbsp;&quot;Being Processed&quot;,</p>\n\n<p>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&quot;DueDate&quot;:&nbsp;&quot;2022-03-11&quot;</p>\n\n<p>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;}</p>\n\n<p>&nbsp;&nbsp;&nbsp;&nbsp;]</p>\n\n<p>}</p>\n</td>\n</tr>\n<tr>\n<td>\n<p>&nbsp;</p>\n\n<p>&nbsp;</p>\n\n<p>&nbsp;</p>\n\n<p>&nbsp;</p>\n\n<p>&nbsp;</p>\n\n<p>&nbsp;</p>\n\n<p>&nbsp;</p>\n\n<p>&nbsp;</p>\n\n<p>&nbsp;</p>\n\n<p>&nbsp;</p>\n\n<p>&nbsp;</p>\n\n<p>&nbsp;</p>\n\n<p>Any valid request body with BusinessId = &#39;8763054-9&#39;</p>\n\n<p>and FilingYear = 2021</p>\n</td>\n<td>\n<p>200 - OK&nbsp;</p>\n\n<p>{</p>\n\n<p>&nbsp;&nbsp;&nbsp;&nbsp;&quot;FilingPeriod&quot;: [</p>\n\n<p>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;{</p>\n\n<p>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&quot;Period&quot;:&nbsp;&quot;2021-03-31&quot;,</p>\n\n<p>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&quot;Frequency&quot;:&nbsp;&quot;VATQTR&quot;,</p>\n\n<p>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&quot;StartDate&quot;:&nbsp;&quot;2021-01-01&quot;,</p>\n\n<p>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&quot;EndDate&quot;:&nbsp;&quot;2021-03-31&quot;,</p>\n\n<p>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&quot;Status&quot;:&nbsp;&quot;Processed&quot;,</p>\n\n<p>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&quot;DueDate&quot;:&nbsp;&quot;2021-05-12&quot;</p>\n\n<p>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;},</p>\n\n<p>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;{</p>\n\n<p>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&quot;Period&quot;:&nbsp;&quot;2021-06-30&quot;,</p>\n\n<p>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&quot;Frequency&quot;:&nbsp;&quot;VATQTR&quot;,</p>\n\n<p>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&quot;StartDate&quot;:&nbsp;&quot;2021-04-01&quot;,</p>\n\n<p>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&quot;EndDate&quot;:&nbsp;&quot;2021-06-30&quot;,</p>\n\n<p>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&quot;Status&quot;:&nbsp;&quot;Processed&quot;,</p>\n\n<p>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&quot;DueDate&quot;:&nbsp;&quot;2021-08-12&quot;</p>\n\n<p>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;},</p>\n\n<p>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;{</p>\n\n<p>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&quot;Period&quot;:&nbsp;&quot;2021-09-30&quot;,</p>\n\n<p>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&quot;Frequency&quot;:&nbsp;&quot;VATQTR&quot;,</p>\n\n<p>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&quot;StartDate&quot;:&nbsp;&quot;2021-07-01&quot;,</p>\n\n<p>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&quot;EndDate&quot;:&nbsp;&quot;2021-09-30&quot;,</p>\n\n<p>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&quot;Status&quot;:&nbsp;&quot;Processed&quot;,</p>\n\n<p>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&quot;DueDate&quot;:&nbsp;&quot;2021-11-12&quot;</p>\n\n<p>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;}</p>\n\n<p>&nbsp;&nbsp;&nbsp;&nbsp;]</p>\n\n<p>}</p>\n</td>\n</tr>\n<tr>\n<td>Invalid input</td>\n<td>400 - Bad request with error details</td>\n</tr>\n</tbody>\n</table>\n\n<p>&nbsp;</p>\n\n<p>When using current year as FilingYear in test URL data up until the current month is returned. For older years 12 periods are returned.&nbsp;</p>\n\n<p>&nbsp;</p>\n\n<h2>Using the API&nbsp;</h2>\n\n<p>Custom headers:</p>\n\n<table border=\"1\" cellpadding=\"5\" cellspacing=\"1\" width=\"0\">\n<tbody>\n<tr>\n<td>\n<p><strong>Header</strong></p>\n</td>\n<td>\n<p><strong>Type</strong></p>\n</td>\n<td><strong>Required</strong></td>\n<td>\n<p><strong>Description</strong></p>\n</td>\n</tr>\n<tr>\n<td>\n<p><strong>Vero-SoftwareId</strong></p>\n</td>\n<td>\n<p>string</p>\n</td>\n<td>Yes</td>\n<td>\n<p>Free text to identify the software developer and their software.</p>\n\n<p>Usually a business id of the software developer company and underscore +</p>\n\n<p>two digits.</p>\n\n<p>Used in contacting the developer if problems occur.</p>\n</td>\n</tr>\n</tbody>\n</table>\n\n<p>When input json is structurally invalid or contains invalid values then HTTP status 400 Bad Request is returned with generic error code 1005 with error details in the ErrorText field.</p>\n\n<p>&nbsp;</p>\n\n<h2>Change history</h2>\n\n<table border=\"1\" cellpadding=\"5\" cellspacing=\"1\" width=\"0\">\n<tbody>\n<tr>\n<td>\n<p><strong>Date</strong></p>\n</td>\n<td>\n<p><strong>Version</strong></p>\n</td>\n<td>\n<p><strong>Change</strong></p>\n</td>\n</tr>\n<tr>\n<td><strong>2021-11-30</strong></td>\n<td>v. 1.0</td>\n<td>Production version</td>\n</tr>\n</tbody>\n</table>\n",
                "operationId": "postGetVATPeriods",
                "parameters": [
                    {
                        "name": "Vero-SoftwareId",
                        "in": "header",
                        "description": "Service caller software id, usually business id of the software developer company and their free identifier for the software",
                        "required": true,
                        "schema": {
                            "type": "string"
                        },
                        "examples": {
                            "default": {
                                "value": null
                            }
                        }
                    }
                ],
                "requestBody": {
                    "description": "GetVATPeriods/v1 request body",
                    "content": {
                        "application/json": {
                            "schema": {
                                "$ref": "#/components/schemas/GetVATPeriodsRequest"
                            },
                            "example": {
                                "BusinessId": "9999999-9",
                                "FilingYear": 2021
                            }
                        }
                    }
                },
                "responses": {
                    "200": {
                        "description": "OK - Expected response to a valid request",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/GetVATPeriodsResponse200"
                                },
                                "example": {
                                    "FilingPeriod": [
                                        {
                                            "Period": "string",
                                            "Frequency": "string",
                                            "StartDate": "string",
                                            "EndDate": "string",
                                            "Status": "string",
                                            "DueDate": "string"
                                        }
                                    ]
                                }
                            }
                        }
                    },
                    "400": {
                        "description": "Bad Request - There was something wrong with the input. Fix the input and try again.",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/GetVATPeriodsResponse400"
                                },
                                "example": {
                                    "ErrorCode": "string",
                                    "ErrorText": "string"
                                }
                            }
                        }
                    },
                    "500": {
                        "description": "Internal Server Error - try calling again later",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/GetVATPeriodsResponse500"
                                },
                                "example": {
                                    "ErrorCode": "string",
                                    "ErrorText": "string"
                                }
                            }
                        }
                    }
                }
            }
        },
        "/GetFiledVATReturn/v1": {
            "post": {
                "tags": [
                    "Production",
                    "Self-assessed Taxes"
                ],
                "summary": "Get current filed VAT return",
                "description": "<h2 id=\"caption2_c-n\">Overview</h2>\n\n<p>Get the filed VAT return for the chosen tax period. Message structure and content will be validated and if the message passes all validations 200 - OK response is sent. 200 OK - responds with the filed VAT return in json format. If caller receives 400 - Bad Request response with error message then the caller must review the sent data, correct the data and send the request again. If 500 - Internal Server Error is received then the API call can be tried again later because the error might indicate a temporary issue with the service.</p>\n\n<p>&nbsp;</p>\n\n<p><strong>More information about VAT filing and payment at Vero.fi:</strong></p>\n\n<ul>\n<li><a href=\"https://www.vero.fi/en/businesses-and-corporations/taxes-and-charges/vat/when-to-file-and-pay/\">Filing and payment - vero.fi</a></li>\n</ul>\n\n<p><strong>Please note:</strong></p>\n\n<ul>\n<li>Only the values of the latest return are shown. If a return is being processed the values of the last accepted return are shown. If no return has been accepted yet no values are returned.</li>\n<li>If a new return was recently filed it might not immediately be returned through the API.&nbsp;</li>\n<li>If the return status is &#39;Estimated&#39; only Status, SubmittedDate and TaxPayableOrNegativeTaxThatQualifiesForRefund fields are returned.</li>\n<li>If the return status is &#39;Missing&#39; no other fields will be returned.</li>\n<li>Suomi.fi authorization is required with role &quot;<strong>Veroasioiden hoito</strong>&quot; when requesting other than own data.</li>\n<li>Suomi.fi authorization can take about 500 - 1500 milliseconds</li>\n</ul>\n\n<p>&nbsp;</p>\n\n<h2>Test data</h2>\n\n<p>The test URL will provide following static calculated responses in addition to input validation errors:</p>\n\n<p>&nbsp;</p>\n\n<table border=\"1\" cellpadding=\"5\" cellspacing=\"1\">\n<thead>\n<tr>\n<th scope=\"col\">Parameters</th>\n<th scope=\"col\">Response</th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td>\n<p>&nbsp;</p>\n\n<p>&nbsp;</p>\n\n<p>&nbsp;</p>\n\n<p>&nbsp;</p>\n\n<p>&nbsp;</p>\n\n<p>&nbsp;</p>\n\n<p>&nbsp;</p>\n\n<p>&nbsp;</p>\n\n<p>&nbsp;</p>\n\n<p>&nbsp;</p>\n\n<p>&nbsp;</p>\n\n<p>&nbsp;</p>\n\n<p>&nbsp;</p>\n\n<p>&nbsp;</p>\n\n<p>Any valid request body except ones below&nbsp; &nbsp;</p>\n</td>\n<td>\n<p>200 - OK&nbsp;</p>\n\n<p>{</p>\n\n<p>&nbsp;&nbsp;&nbsp;&nbsp;&quot;SubmittedDate&quot;:&nbsp;&quot;12th of next month&quot;,</p>\n\n<p>&nbsp;&nbsp;&nbsp;&nbsp;&quot;VATOnCashBasis&quot;: false,</p>\n\n<p>&nbsp;&nbsp;&nbsp;&nbsp;&quot;VATOnDomesticSales&quot;: {</p>\n\n<p>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&quot;24Percent&quot;: 2400,</p>\n\n<p>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&quot;14Percent&quot;: 1400,</p>\n\n<p>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&quot;10Percent&quot;: 1000</p>\n\n<p>&nbsp;&nbsp;&nbsp;&nbsp;},</p>\n\n<p>&nbsp;&nbsp;&nbsp;&nbsp;&quot;VATOnPurchasesAndImports&quot;: {</p>\n\n<p>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&quot;GoodsFromEUMemberStates&quot;: 500.12,</p>\n\n<p>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&quot;ServicesFromEUMemberStates&quot;: 368.21,</p>\n\n<p>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&quot;ImportOfGoodsOutsideEU&quot;: 400,</p>\n\n<p>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&quot;ConstructionServicesAndScrapMetal&quot;: 300</p>\n\n<p>&nbsp;&nbsp;&nbsp;&nbsp;},</p>\n\n<p>&nbsp;&nbsp;&nbsp;&nbsp;&quot;DeductibleTax&quot;: {</p>\n\n<p>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&quot;DeductibleVAT&quot;: 120,</p>\n\n<p>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&quot;FileVATRelief&quot;: true,</p>\n\n<p>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&quot;TurnoverForVATRelief&quot;: 100,</p>\n\n<p>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&quot;TaxForVATRelief&quot;: 50,</p>\n\n<p>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&quot;AmountOfVATRelief&quot;: 50</p>\n\n<p>&nbsp;&nbsp;&nbsp;&nbsp;},</p>\n\n<p>&nbsp;&nbsp;&nbsp;&nbsp;&quot;TaxPayableOrNegativeTaxThatQualifiesForRefund&quot;: 6198.33,</p>\n\n<p>&nbsp;&nbsp;&nbsp;&nbsp;&quot;SalesPurchasesImports&quot;: {</p>\n\n<p>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&quot;ZeroVATRateTurnover&quot;: 0,</p>\n\n<p>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&quot;SalesOfGoodsToEUMemberStates&quot;: 150,</p>\n\n<p>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&quot;SalesOfServicesToEUMemberStates&quot;: 125,</p>\n\n<p>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&quot;PurchasesOfGoodsFromEUMemberStates&quot;: 110,</p>\n\n<p>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&quot;PurchasesOfServicesFromEUMemberStates&quot;: 49.99,</p>\n\n<p>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&quot;ImportsOfGoodsFromOutsideEU&quot;: 122,</p>\n\n<p>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&quot;SalesOfConstructionServicesAndScrapMetal&quot;: 800.23,</p>\n\n<p>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&quot;PurchasesOfConstructionServicesAndScrapMetal&quot;: 1250</p>\n\n<p>&nbsp;&nbsp;&nbsp;&nbsp;}</p>\n\n<p>}</p>\n\n<p>&nbsp;</p>\n</td>\n</tr>\n<tr>\n<td>\n<p>&nbsp;</p>\n\n<p>&nbsp;</p>\n\n<p>BusinessId = &quot;0040767-9&quot;&nbsp;</p>\n</td>\n<td>\n<p>200 - OK</p>\n\n<p>{</p>\n\n<p>&nbsp;&nbsp;&nbsp;&nbsp;&quot;Status&quot;:&nbsp;&quot;Estimated&quot;,</p>\n\n<p>&nbsp;&nbsp;&nbsp;&nbsp;&quot;SubmittedDate&quot;:&nbsp;&quot;Current Day&quot;,</p>\n\n<p>&nbsp;&nbsp;&nbsp;&nbsp;&quot;TaxPayableOrNegativeTaxThatQualifiesForRefund&quot;: 2500</p>\n\n<p>}</p>\n</td>\n</tr>\n<tr>\n<td>\n<p>&nbsp;</p>\n\n<p>&nbsp;</p>\n\n<p>BusinessId = &quot;8763054-9&quot;&nbsp;</p>\n</td>\n<td>\n<p>400 - Bad request</p>\n\n<p>{</p>\n\n<p>&nbsp;&nbsp;&nbsp;&nbsp;&quot;ErrorCode&quot;:&nbsp;&quot;1103&quot;,</p>\n\n<p>&nbsp;&nbsp;&nbsp;&nbsp;&quot;ErrorText&quot;:&nbsp;&quot;Invalid Business Id.&quot;</p>\n\n<p>}</p>\n</td>\n</tr>\n<tr>\n<td>Invalid input</td>\n<td>400 - Bad request with error details</td>\n</tr>\n</tbody>\n</table>\n\n<p>&nbsp;</p>\n\n<h2>Using the API&nbsp;</h2>\n\n<p>Custom headers:</p>\n\n<table border=\"1\" cellpadding=\"5\" cellspacing=\"1\" width=\"0\">\n<tbody>\n<tr>\n<td>\n<p><strong>Header</strong></p>\n</td>\n<td>\n<p><strong>Type</strong></p>\n</td>\n<td><strong>Required</strong></td>\n<td>\n<p><strong>Description</strong></p>\n</td>\n</tr>\n<tr>\n<td>\n<p>&nbsp;</p>\n\n<p><strong>Vero-SoftwareId</strong></p>\n</td>\n<td>\n<p>&nbsp;</p>\n\n<p>string</p>\n</td>\n<td>\n<p>&nbsp;</p>\n\n<p>Yes</p>\n</td>\n<td>\n<p>Free text to identify the software developer and their software.</p>\n\n<p>Usually a business id of the software developer company and underscore +</p>\n\n<p>two digits.</p>\n\n<p>Used in contacting the developer if problems occur.</p>\n</td>\n</tr>\n</tbody>\n</table>\n\n<p>&nbsp;</p>\n\n<p>When input json is structurally invalid or contains invalid values then HTTP status 400 Bad Request is returned with generic error code 1005 with error details in the ErrorText field.</p>\n\n<p>&nbsp;</p>\n\n<h2>Change history</h2>\n\n<table border=\"1\" cellpadding=\"5\" cellspacing=\"1\" width=\"0\">\n<tbody>\n<tr>\n<td>\n<p><strong>Date</strong></p>\n</td>\n<td>\n<p><strong>Version</strong></p>\n</td>\n<td>\n<p><strong>Change</strong></p>\n</td>\n</tr>\n<tr>\n<td><strong>2021-11-30</strong></td>\n<td>v. 1.0</td>\n<td>Production version</td>\n</tr>\n</tbody>\n</table>\n",
                "operationId": "postGetFiledVATReturn",
                "parameters": [
                    {
                        "name": "Vero-SoftwareId",
                        "in": "header",
                        "description": "Service caller software id, usually business id of the software developer company and their free identifier for the software",
                        "required": true,
                        "schema": {
                            "type": "string"
                        },
                        "examples": {
                            "default": {
                                "value": null
                            }
                        }
                    }
                ],
                "requestBody": {
                    "description": "GetFiledVATReturn/v1 request body",
                    "content": {
                        "application/json": {
                            "schema": {
                                "$ref": "#/components/schemas/GetFiledVATReturnRequest"
                            },
                            "example": {
                                "BusinessId": "9999999-9",
                                "FilingPeriod": "string"
                            }
                        }
                    }
                },
                "responses": {
                    "200": {
                        "description": "OK - Expected response to a valid request",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/GetFiledVATReturnResponse200"
                                },
                                "example": {
                                    "Status": "string",
                                    "SubmittedDate": "string",
                                    "VATOnCashBasis": true,
                                    "VATOnDomesticSales": {
                                        "24Percent": 0,
                                        "14Percent": 0,
                                        "10Percent": 0
                                    },
                                    "VATOnPurchasesAndImports": {
                                        "GoodsFromEUMemberStates": 0,
                                        "ServicesFromEUMemberStates": 0,
                                        "ImportOfGoodsOutsideEU": 0,
                                        "ConstructionServicesAndScrapMetal": 0
                                    },
                                    "DeductibleTax": {
                                        "DeductibleVAT": 0,
                                        "FileVATRelief": true,
                                        "TurnoverForVATRelief": 0,
                                        "TaxForVATRelief": 0,
                                        "AmountOfVATRelief": 0
                                    },
                                    "TaxPayableOrNegativeTaxThatQualifiesForRefund": 0,
                                    "SalesPurchasesImports": {
                                        "ZeroVATRateTurnover": 0,
                                        "SalesOfGoodsToEUMemberStates": 0,
                                        "SalesOfServicesToEUMemberStates": 0,
                                        "PurchasesOfGoodsFromEUMemberStates": 0,
                                        "PurchasesOfServicesFromEUMemberStates": 0,
                                        "ImportsOfGoodsFromOutsideEU": 0,
                                        "SalesOfConstructionServicesAndScrapMetal": 0,
                                        "PurchasesOfConstructionServicesAndScrapMetal": 0
                                    }
                                }
                            }
                        }
                    },
                    "400": {
                        "description": "Bad Request - There was something wrong with the input. Fix the input and try again.",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/GetFiledVATReturnResponse400"
                                },
                                "example": {
                                    "ErrorCode": "string",
                                    "ErrorText": "string"
                                }
                            }
                        }
                    },
                    "500": {
                        "description": "Internal Server Error - try calling again later",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/GetFiledVATReturnResponse500"
                                },
                                "example": {
                                    "ErrorCode": "string",
                                    "ErrorText": "string"
                                }
                            }
                        }
                    }
                }
            }
        },
        "/FileVATReturn/v1": {
            "post": {
                "tags": [
                    "Production",
                    "Self-assessed Taxes"
                ],
                "summary": "File VAT Return",
                "description": "<h2 id=\"caption2_c-n\">Overview</h2>\n\n<p>File a VAT return with the given values for specific filing period (tax period). Before filing a return, use GetVatPeriods endpoint to get list of valid filing periods.</p>\n\n<p>Message structure and content will be validated and if the message passes all validations 200 - OK response is sent. 200 OK - response with unique identifier confirms that Finnish Tax Administration has received and accepted the return. If caller receives 400 - Bad Request response with error message then the caller must review the sent data, correct the data and send the request again. If 500 - Internal Server Error is received then the API call can be tried again later because the error might indicate a temporary issue with the service.</p>\n\n<p><strong>More information about VAT filing and payment at Vero.fi:</strong></p>\n\n<ul>\n<li><a href=\"https://www.vero.fi/en/businesses-and-corporations/taxes-and-charges/vat/when-to-file-and-pay/\">Filing and payment - vero.fi</a></li>\n</ul>\n\n<p><strong>Please note:</strong></p>\n\n<ul>\n<li align=\"left\">Use ReplacementReturn and ReplacementReason in the body when sending a correction to previously filed return. Every return after the first one needs to be a ReplacementReturn.&nbsp;</li>\n<li>Only 200 - OK response indicates an accepted return. Failing to file the report in time may lead to penalty fees.</li>\n<li align=\"left\">VATOnPurchasesAndImports require the corresponding purchase to be filed under SalesPurchasesImports object.&nbsp;</li>\n<li align=\"left\">FilingPeriods outside the adjustment period will not be accepted. GetVATPeriod endpoint returns expired status if a return is outside of the adjustment period.</li>\n<li align=\"left\">Suomi.fi authorization is required with role &quot;<strong>Veroasioiden hoito</strong>&quot; when requesting other than own data.</li>\n<li align=\"left\">Suomi.fi authorization can take about 500 - 1500 milliseconds.</li>\n</ul>\n\n<p>Valid ReplacementReason values:</p>\n\n<table border=\"1\" cellpadding=\"5\" cellspacing=\"1\">\n<thead>\n<tr>\n<th scope=\"col\">Reason</th>\n<th scope=\"col\">Value</th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td>Calculation Error</td>\n<td>\n<p>CLC</p>\n</td>\n</tr>\n<tr>\n<td>Legal practice</td>\n<td>LGL</td>\n</tr>\n<tr>\n<td>Tax audit guidance</td>\n<td>TXA</td>\n</tr>\n<tr>\n<td>Law interpretation</td>\n<td>LAW</td>\n</tr>\n</tbody>\n</table>\n\n<p>VATRelief Reasons:&nbsp;</p>\n\n<table border=\"1\" cellpadding=\"5\" cellspacing=\"1\">\n<thead>\n<tr>\n<th scope=\"col\">Reason</th>\n<th scope=\"col\">Value</th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td>Final accounting period of the tax year</td>\n<td>\n<p>1</p>\n</td>\n</tr>\n<tr>\n<td>Final quarter of the calendar year</td>\n<td>2</td>\n</tr>\n<tr>\n<td>VAT role is ending this tax period</td>\n<td>3</td>\n</tr>\n<tr>\n<td>Annual filer</td>\n<td>4</td>\n</tr>\n</tbody>\n</table>\n\n<p>Amount of VAT relief and tax payable or tax that qualifies for refund is calculated based on reported values. The Tax Administration will not necessarily approve your return as it is and may change or may already have changed the return details. If the Tax Administration deviates from the details you filed, you will receive a separate decision letter that can be retrieved using ListLetters and GetLetter API endpoints or viewed manually in MyTax. If necessary, you can however submit a replacement return at any stage.</p>\n\n<h2>Test data</h2>\n\n<p>The test URL will provide following static calculated responses in addition to input validation errors:</p>\n\n<p>&nbsp;</p>\n\n<table border=\"1\" cellpadding=\"5\" cellspacing=\"1\">\n<thead>\n<tr>\n<th scope=\"col\">Parameters</th>\n<th scope=\"col\">Response</th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td>\n<p>&nbsp;</p>\n\n<p>&nbsp;</p>\n\n<p>Any valid request body except ones below</p>\n</td>\n<td>\n<p>200 - OK&nbsp;</p>\n\n<p>{</p>\n\n<p>&nbsp;&nbsp; &nbsp;&quot;UniqueIdentifier&quot;:&nbsp;&quot;Gateway Key&quot;,</p>\n\n<p>&nbsp;&nbsp;&nbsp;&nbsp;&quot;AcceptedTimestamp&quot;:&nbsp;&quot;Current time&quot;</p>\n\n<p>}</p>\n\n<p>&nbsp;</p>\n</td>\n</tr>\n<tr>\n<td>\n<p>&nbsp;</p>\n\n<p>&nbsp;</p>\n\n<p>BusinessId = &quot;8763054-9&quot;&nbsp;</p>\n</td>\n<td>\n<p>400 - Bad request</p>\n\n<p>{</p>\n\n<p>&nbsp;&nbsp;&nbsp;&nbsp;&quot;ErrorCode&quot;:&nbsp;&quot;1103&quot;,</p>\n\n<p>&nbsp;&nbsp;&nbsp;&nbsp;&quot;ErrorText&quot;:&nbsp;&quot;Invalid Business Id.&quot;</p>\n\n<p>}</p>\n</td>\n</tr>\n<tr>\n<td>Invalid input</td>\n<td>400 - Bad request with error details</td>\n</tr>\n</tbody>\n</table>\n\n<h2>Using the API&nbsp;</h2>\n\n<p>Custom headers:</p>\n\n<p>&nbsp;</p>\n\n<table border=\"1\" cellpadding=\"5\" cellspacing=\"1\" width=\"0\">\n<tbody>\n<tr>\n<td>\n<p><strong>Header</strong></p>\n</td>\n<td>\n<p><strong>Type</strong></p>\n</td>\n<td><strong>Required</strong></td>\n<td>\n<p><strong>Description</strong></p>\n</td>\n</tr>\n<tr>\n<td>\n<p>&nbsp;</p>\n\n<p><strong>Vero-SoftwareId</strong></p>\n</td>\n<td>\n<p>&nbsp;</p>\n\n<p>string</p>\n</td>\n<td>\n<p>&nbsp;</p>\n\n<p>Yes</p>\n</td>\n<td>\n<p>Free text to identify the software developer and their software.</p>\n\n<p>Usually a business id of the software developer company and underscore +</p>\n\n<p>two digits.</p>\n\n<p>Used in contacting the developer if problems occur.</p>\n</td>\n</tr>\n</tbody>\n</table>\n\n<p>When input json is structurally invalid or contains invalid values then HTTP status 400 Bad Request is returned with generic error code 1005 with error details in the ErrorText field.</p>\n\n<h2>Change history</h2>\n\n<table border=\"1\" cellpadding=\"5\" cellspacing=\"1\" width=\"0\">\n<tbody>\n<tr>\n<td>\n<p><strong>Date</strong></p>\n</td>\n<td>\n<p><strong>Version</strong></p>\n</td>\n<td>\n<p><strong>Change</strong></p>\n</td>\n</tr>\n<tr>\n<td><strong>2021-11-30</strong></td>\n<td>v. 1.0</td>\n<td>Production version</td>\n</tr>\n</tbody>\n</table>\n",
                "operationId": "postFileVATReturn",
                "parameters": [
                    {
                        "name": "Vero-SoftwareId",
                        "in": "header",
                        "description": "Service caller software id, usually business id of the software developer company and their free identifier for the software",
                        "required": true,
                        "schema": {
                            "type": "string"
                        },
                        "examples": {
                            "default": {
                                "value": null
                            }
                        }
                    }
                ],
                "requestBody": {
                    "description": "FileVATReturn/v1 request body",
                    "content": {
                        "application/json": {
                            "schema": {
                                "$ref": "#/components/schemas/FileVATReturnRequest"
                            },
                            "example": {
                                "ReplacementReturn": false,
                                "ReplacementReason": "string",
                                "BusinessId": "9999999-9",
                                "FilingPeriod": "2020-12-31",
                                "NoActivity": false,
                                "VATDetails": {
                                    "VATOnCashBasis": false,
                                    "VATOnDomesticSalesByTaxRate": {
                                        "24Percent": 0,
                                        "14Percent": 0,
                                        "10Percent": 0
                                    },
                                    "VATOnPurchasesAndImports": {
                                        "GoodsFromEUMemberStates": 0,
                                        "ServicesFromEUMemberStates": 0,
                                        "ImportOfGoodsOutsideEU": 0,
                                        "ConstructionServicesAndScrapMetal": 0
                                    },
                                    "DeductibleVAT": 0,
                                    "VATRelief": {
                                        "FileVATRelief": false,
                                        "ReasonForVATRelief": 0,
                                        "TurnoverForVATRelief": 0,
                                        "TaxForVATRelief": 0
                                    },
                                    "SalesPurchasesImports": {
                                        "ZeroVATRateTurnover": 0,
                                        "SalesOfGoodsToEUMemberStates": 0,
                                        "SalesOfServicesToEUMemberStates": 0,
                                        "PurchasesOfGoodsFromEUMemberStates": 0,
                                        "PurchasesOfServicesFromEUMemberStates": 0,
                                        "ImportsOfGoodsFromOutsideEU": 0,
                                        "SalesOfConstructionServicesAndScrapMetal": 0,
                                        "PurchasesOfConstructionServicesAndScrapMetal": 0
                                    }
                                },
                                "ContactDetails": {
                                    "FullName": "John Doe",
                                    "PhoneNumber": "string"
                                }
                            }
                        }
                    }
                },
                "responses": {
                    "200": {
                        "description": "OK - Expected response to a valid request",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/FileVATReturnResponse200"
                                },
                                "example": {
                                    "AcceptedTimestamp": "2021-04-22T14:01:33.478+02.00",
                                    "UniqueIdentifier": "2439209302"
                                }
                            }
                        }
                    },
                    "400": {
                        "description": "Bad Request - There was something wrong with the input. Fix the input and try again.",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/FileVATReturnResponse400"
                                },
                                "example": {
                                    "ErrorCode": "string",
                                    "ErrorText": "string",
                                    "ErrorDetails": [
                                        {
                                            "ErrorCode": "VAT105",
                                            "ErrorReference": "string",
                                            "ErrorDescriptionFI": "string",
                                            "ErrorDescriptionSE": "string",
                                            "ErrorDescriptionEN": "string"
                                        }
                                    ]
                                }
                            }
                        }
                    },
                    "500": {
                        "description": "Internal Server Error - try calling again later",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/FileVATReturnResponse500"
                                },
                                "example": {
                                    "ErrorCode": "string",
                                    "ErrorText": "string"
                                }
                            }
                        }
                    }
                }
            }
        },
        "/FileECSalesList/v1": {
            "post": {
                "tags": [
                    "Production",
                    "Self-assessed Taxes"
                ],
                "summary": "VAT EC Sales List filing",
                "description": "<p align=\"left\" style=\"text-align:left\"><span style=\"font-size:12pt;\"><strong>Overview</strong></span></p>\n\n<p align=\"left\" style=\"text-align:left\">File an EU VAT Recapitulative Statement to give details on sales to EU countries for a specific filing period (tax period).&nbsp;</p>\n\n<p align=\"left\" style=\"text-align:left\">Message structure and content will be validated and if the message passes all validations 200 - OK response is sent. 200 OK - response with unique identifier confirms that Finnish Tax Administration has received and accepted the return. If 400 - Bad Request response with an error message is received then the caller must review the sent data, correct the data and send the request again. If 500 - Internal Server Error is received then the API call can be tried again later because the error might indicate a temporary issue with the service.</p>\n\n<p align=\"left\" style=\"text-align:left\"><strong>More information about filing a recapitulative statement at Vero.fi:</strong></p>\n\n<p align=\"left\" style=\"text-align:left\"><a href=\"https://www.vero.fi/en/businesses-and-corporations/taxes-and-charges/vat/international-commerce/intra-community-trade/eu-vat-recapitulative-statement/\" target=\"_blank\">EU VAT Recapitulative Statement - vero.fi</a></p>\n\n<p align=\"left\" style=\"text-align:left\"><br />\n<strong>Please note:</strong></p>\n\n<ul>\n<li align=\"left\" style=\"text-align: left;\">The first statement of a month cannot contain customers with no sales (i.e. all sales values are zero).</li>\n<li align=\"left\" style=\"text-align: left;\">You can file multiple statements for a specific month. This will have one or both of the following effects depending on what was initially reported:\n<ul>\n<li align=\"left\" style=\"text-align: left;\"><strong>Replaces </strong>the sales volumes to the customer, if that customer has already been reported for that month</li>\n<li align=\"left\" style=\"text-align: left;\"><strong>Adds </strong>a new customer to the statement, if that customer has not yet been reported for that month&nbsp;</li>\n</ul>\n</li>\n<li align=\"left\" style=\"text-align: left;\">When sending a correction to previously submitted information, you must submit a full replacement of what had been specifically reported for that particular customer (for example, you cannot report just a new sales of services value, but must give all the correct information regarding that customer). There is no need to resend the customers where specific reporting has been correct.</li>\n<li align=\"left\" style=\"text-align: left;\">If you had reported some values for a wrong month, you must file a statement, where the information is put right (for example, if there were no sales, enter a zero). You must file your statement again for the month where the values actually relate to.&nbsp;</li>\n<li align=\"left\" style=\"text-align: left;\">If you want to &quot;delete&quot; previously reported information regarding a specific customer, you must file a new statement for the same customer for the month where the error happened and enter the sales values as zeros.&nbsp;</li>\n<li align=\"left\" style=\"text-align: left;\">The seller must be registered for VAT for at least one day in the month for which the statement is being filed.</li>\n<li align=\"left\" style=\"text-align: left;\">Suomi.fi authorization is required with role &quot;<strong>Veroasioiden hoito</strong>&quot; when processing other than own data.</li>\n<li align=\"left\" style=\"text-align: left;\">Suomi.fi authorization can take about 500 - 1500 milliseconds.</li>\n</ul>\n\n<p style=\"text-align: left;\"><br />\n<span style=\"font-size:12pt;\"><strong>Test data</strong></span></p>\n\n<p style=\"text-align: left;\">The test URL will provide following static calculated responses in addition to input validation errors:<br />\n&nbsp;</p>\n\n<table border=\"1\" cellpadding=\"1\" cellspacing=\"1\">\n<tbody>\n<tr>\n<td><strong>Parameters</strong></td>\n<td><strong>Response</strong></td>\n</tr>\n<tr>\n<td>Any valid request body except the one below</td>\n<td>200 - OK&nbsp;<br />\n<br />\n{<br />\n&nbsp; &nbsp; &quot;UniqueIdentifier&quot;: &quot;Gateway Key&quot;,<br />\n&nbsp; &nbsp; &quot;AcceptedTimestamp&quot;: &quot;Current time&quot;<br />\n}</td>\n</tr>\n<tr>\n<td>BusinessId = &quot;8763054-9&quot;&nbsp;</td>\n<td>400 - Bad request<br />\n<br />\n{<br />\n&nbsp; &nbsp; &quot;ErrorCode&quot;: &quot;1103&quot;,<br />\n&nbsp; &nbsp; &quot;ErrorText&quot;: &quot;Invalid Business Id.&quot;<br />\n}</td>\n</tr>\n<tr>\n<td>Invalid input</td>\n<td>400 - Bad request with error details</td>\n</tr>\n</tbody>\n</table>\n\n<p><br />\n<span style=\"font-size:12pt;\"><strong>Using the API</strong></span></p>\n\n<p>Custom headers:&nbsp;<br />\n&nbsp;</p>\n\n<table border=\"1\" cellpadding=\"1\" cellspacing=\"1\">\n<tbody>\n<tr>\n<td><strong>Header</strong></td>\n<td><strong>Type</strong></td>\n<td><strong>Required</strong></td>\n<td><strong>Description</strong></td>\n</tr>\n<tr>\n<td><strong>Vero-SoftwareId</strong></td>\n<td>String</td>\n<td>Yes</td>\n<td>Free text to identify the software developer and their software.<br />\n<br />\nUsually a business id of the software developer company and underscore +<br />\ntwo digits.<br />\n<br />\nUsed in contacting the developer if problems occur.</td>\n</tr>\n</tbody>\n</table>\n\n<p>When input json is structurally invalid or contains invalid values then HTTP status 400 Bad Request is returned with generic error code 1005 with error details in the ErrorText field.&nbsp;</p>\n\n<p>&nbsp;</p>\n\n<h2>Change history</h2>\n\n<table border=\"1\" cellpadding=\"5\" cellspacing=\"1\" width=\"0\">\n<tbody>\n<tr>\n<td>\n<p><strong>Date</strong></p>\n</td>\n<td>\n<p><strong>Version</strong></p>\n</td>\n<td>\n<p><strong>Change</strong></p>\n</td>\n</tr>\n<tr>\n<td><strong>2021-11-30</strong></td>\n<td>v. 1.0</td>\n<td>Production version</td>\n</tr>\n</tbody>\n</table>\n",
                "operationId": "postFileECSalesList",
                "parameters": [
                    {
                        "name": "Vero-SoftwareId",
                        "in": "header",
                        "description": "Service caller software id, usually business id of the software developer company and their free identifier for the software",
                        "required": true,
                        "schema": {
                            "type": "string"
                        },
                        "examples": {
                            "default": {
                                "value": null
                            }
                        }
                    }
                ],
                "requestBody": {
                    "description": "FileECSalesList/v1 request body",
                    "content": {
                        "application/json": {
                            "schema": {
                                "$ref": "#/components/schemas/FileECSalesListRequest"
                            },
                            "example": {
                                "BusinessId": "9999999-9",
                                "FilingPeriod": {
                                    "Month": 5,
                                    "Year": 2021
                                },
                                "Buyers": [
                                    {
                                        "CountryCode": "SE",
                                        "VATIdentifier": "string",
                                        "SalesOfGoods": 0,
                                        "SalesOfServices": 0,
                                        "TriangulationSales": 0
                                    }
                                ],
                                "ContactDetails": {
                                    "FullName": "John Doe",
                                    "PhoneNumber": "+358401234567"
                                }
                            }
                        }
                    }
                },
                "responses": {
                    "200": {
                        "description": "OK - Expected response to a valid request",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/FileECSalesListResponse200"
                                },
                                "example": {
                                    "UniqueIdentifier": "2439209302",
                                    "AcceptedTimestamp": "2021-04-22T12:01:33.4780000+00:00"
                                }
                            }
                        }
                    },
                    "400": {
                        "description": "Bad Request - There was something wrong with the input. Fix the input and try again.",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/FileECSalesListResponse400"
                                },
                                "example": {
                                    "ErrorCode": "string",
                                    "ErrorText": "string",
                                    "ErrorDetails": [
                                        {
                                            "ErrorCode": "1103",
                                            "ErrorReference": "string",
                                            "ErrorDescriptionFI": "string",
                                            "ErrorDescriptionSE": "string",
                                            "ErrorDescriptionEN": "string"
                                        }
                                    ]
                                }
                            }
                        }
                    },
                    "500": {
                        "description": "Internal Server Error - try calling again later",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/FileECSalesListResponse500"
                                },
                                "example": {
                                    "ErrorCode": "string",
                                    "ErrorText": "string"
                                }
                            }
                        }
                    }
                }
            }
        }
    },
    "components": {
        "schemas": {
            "GetVATPeriodsRequest": {
                "required": [
                    "BusinessId",
                    "FilingYear"
                ],
                "type": "object",
                "properties": {
                    "BusinessId": {
                        "maxLength": 9,
                        "minLength": 9,
                        "type": "string",
                        "description": "Business ID of the customer requesting VAT periods.",
                        "example": "9999999-9"
                    },
                    "FilingYear": {
                        "maximum": 2090,
                        "maxLength": 4,
                        "minLength": 4,
                        "type": "integer",
                        "description": "The filing year for which periods are requested.",
                        "example": 2021
                    }
                }
            },
            "GetVATPeriodsResponse200": {
                "required": [
                    "FilingPeriod"
                ],
                "type": "object",
                "properties": {
                    "FilingPeriod": {
                        "type": "array",
                        "items": {
                            "type": "object",
                            "properties": {
                                "Period": {
                                    "type": "string",
                                    "description": "The filing period with leading zeroes in the format 'yyyy-MM-dd'."
                                },
                                "Frequency": {
                                    "type": "string",
                                    "description": "Filing frequency.<br>VATMON - Monthly<br>VATQTR - Quarterly<br>VATANN - Annual<br>VATRND - Reindeer Herder"
                                },
                                "StartDate": {
                                    "type": "string",
                                    "description": "Start date of filing period in the format 'yyyy-MM-dd'."
                                },
                                "EndDate": {
                                    "type": "string",
                                    "description": "End date of filing period in the format 'yyyy-MM-dd'."
                                },
                                "Status": {
                                    "type": "string",
                                    "description": "The status of the VAT return. The statuses are: Processed, Being Processed, Missing, Estimated and Expired."
                                },
                                "DueDate": {
                                    "type": "string",
                                    "description": "Return due date in the format 'yyyy-MM-dd'."
                                }
                            }
                        },
                        "description": "Array of filing periods for the selected array."
                    }
                }
            },
            "GetVATPeriodsResponse400": {
                "required": [
                    "ErrorText"
                ],
                "type": "object",
                "properties": {
                    "ErrorCode": {
                        "type": "string",
                        "description": "Error Code for Processing Request Data"
                    },
                    "ErrorText": {
                        "type": "string",
                        "description": "Error Message for Processing Request Data"
                    }
                }
            },
            "GetVATPeriodsResponse500": {
                "required": [
                    "ErrorText"
                ],
                "type": "object",
                "properties": {
                    "ErrorCode": {
                        "type": "string",
                        "description": "Error Code for Processing Response Data"
                    },
                    "ErrorText": {
                        "type": "string",
                        "description": "Error Message for Processing Response Data"
                    }
                }
            },
            "GetFiledVATReturnRequest": {
                "required": [
                    "BusinessId",
                    "FilingPeriod"
                ],
                "type": "object",
                "properties": {
                    "BusinessId": {
                        "maxLength": 9,
                        "minLength": 9,
                        "type": "string",
                        "description": "Business Id of customer requesting filed return.",
                        "example": "9999999-9"
                    },
                    "FilingPeriod": {
                        "maxLength": 10,
                        "minLength": 10,
                        "type": "string",
                        "description": "The filing period of the VAT return with leading zeroes in the format 'yyyy-MM-dd'.",
                        "format": "date"
                    }
                }
            },
            "GetFiledVATReturnResponse200": {
                "required": [
                    "Status",
                    "SubmittedDate",
                    "VATOnCashBasis",
                    "VATOnDomesticSales",
                    "VATOnPurchasesAndImports",
                    "DeductibleTax",
                    "TaxPayableOrNegativeTaxThatQualifiesForRefund",
                    "SalesPurchasesImports"
                ],
                "type": "object",
                "properties": {
                    "Status": {
                        "type": "string",
                        "description": "The status of the VAT return. The statuses are: Processed, Being Processed, Missing, Estimated and Expired. Expired status overrides the other statuses."
                    },
                    "SubmittedDate": {
                        "type": "string",
                        "description": "The submitted date of the VAT return. If the return is an estimate the SubmittedDate will show the decision date instead."
                    },
                    "VATOnCashBasis": {
                        "type": "boolean",
                        "description": "VAT on a cash basis."
                    },
                    "VATOnDomesticSales": {
                        "required": [
                            "24Percent",
                            "14Percent",
                            "10Percent"
                        ],
                        "type": "object",
                        "properties": {
                            "24Percent": {
                                "type": "number",
                                "description": "24 % VAT in euros."
                            },
                            "14Percent": {
                                "type": "number",
                                "description": "14 % VAT in euros."
                            },
                            "10Percent": {
                                "type": "number",
                                "description": "10 % VAT in euros."
                            }
                        },
                        "description": "VAT on domestic sales by tax rate."
                    },
                    "VATOnPurchasesAndImports": {
                        "required": [
                            "GoodsFromEUMemberStates",
                            "ServicesFromEUMemberStates",
                            "ImportOfGoodsOutsideEU",
                            "ConstructionServicesAndScrapMetal"
                        ],
                        "type": "object",
                        "properties": {
                            "GoodsFromEUMemberStates": {
                                "type": "number",
                                "description": "VAT on goods purchased from other EU Member States."
                            },
                            "ServicesFromEUMemberStates": {
                                "type": "number",
                                "description": "VAT on services purchased from other EU Member States."
                            },
                            "ImportOfGoodsOutsideEU": {
                                "type": "number",
                                "description": "VAT on import of goods from outside the EU."
                            },
                            "ConstructionServicesAndScrapMetal": {
                                "type": "number",
                                "description": "VAT on purchases of construction services and scrap metal."
                            }
                        },
                        "description": "VAT on purchases and imports."
                    },
                    "DeductibleTax": {
                        "required": [
                            "DeductibleVAT",
                            "FileVATRelief",
                            "TurnoverForVATRelief",
                            "TaxForVATRelief",
                            "AmountOfVATRelief"
                        ],
                        "type": "object",
                        "properties": {
                            "DeductibleVAT": {
                                "type": "number",
                                "description": "Deductible VAT for tax period."
                            },
                            "FileVATRelief": {
                                "type": "boolean",
                                "description": "Is customer filing VAT relief details during this tax period?"
                            },
                            "TurnoverForVATRelief": {
                                "type": "number",
                                "description": "Turnover that qualifies for VAT relief."
                            },
                            "TaxForVATRelief": {
                                "type": "number",
                                "description": "Tax that qualifies for VAT relief."
                            },
                            "AmountOfVATRelief": {
                                "type": "number",
                                "description": "Amount of VAT relief."
                            }
                        }
                    },
                    "TaxPayableOrNegativeTaxThatQualifiesForRefund": {
                        "type": "number",
                        "description": "Total amount of payable tax or negative tax that qualifies for refund."
                    },
                    "SalesPurchasesImports": {
                        "required": [
                            "ZeroVATRateTurnover",
                            "SalesOfGoodsToEUMemberStates",
                            "SalesOfServicesToEUMemberStates",
                            "PurchasesOfGoodsFromEUMemberStates",
                            "PurchasesOfServicesFromEUMemberStates",
                            "ImportsOfGoodsFromOutsideEU",
                            "SalesOfConstructionServicesAndScrapMetal",
                            "PurchasesOfConstructionServicesAndScrapMetal"
                        ],
                        "type": "object",
                        "properties": {
                            "ZeroVATRateTurnover": {
                                "type": "number",
                                "description": "Turnover taxable at zero VAT rate."
                            },
                            "SalesOfGoodsToEUMemberStates": {
                                "type": "number",
                                "description": "Sales of goods to other EU member states."
                            },
                            "SalesOfServicesToEUMemberStates": {
                                "type": "number",
                                "description": "Sales of services to other EU member states."
                            },
                            "PurchasesOfGoodsFromEUMemberStates": {
                                "type": "number",
                                "description": "Purchases of goods from EU member states."
                            },
                            "PurchasesOfServicesFromEUMemberStates": {
                                "type": "number",
                                "description": "Purchases of services from EU member states."
                            },
                            "ImportsOfGoodsFromOutsideEU": {
                                "type": "number",
                                "description": "Imports of goods from outside the EU."
                            },
                            "SalesOfConstructionServicesAndScrapMetal": {
                                "type": "number",
                                "description": "Sales of construction services and scrap metal (reverse charge)."
                            },
                            "PurchasesOfConstructionServicesAndScrapMetal": {
                                "type": "number",
                                "description": "Purchases of construction services and scrap metal."
                            }
                        }
                    }
                }
            },
            "GetFiledVATReturnResponse400": {
                "required": [
                    "ErrorText"
                ],
                "type": "object",
                "properties": {
                    "ErrorCode": {
                        "type": "string",
                        "description": "Error Code for Processing Request Data"
                    },
                    "ErrorText": {
                        "type": "string",
                        "description": "Error Message for Processing Request Data"
                    }
                }
            },
            "GetFiledVATReturnResponse500": {
                "required": [
                    "ErrorText"
                ],
                "type": "object",
                "properties": {
                    "ErrorCode": {
                        "type": "string",
                        "description": "Error Code for Processing Response Data"
                    },
                    "ErrorText": {
                        "type": "string",
                        "description": "Error Message for Processing Response Data"
                    }
                }
            },
            "FileVATReturnRequest": {
                "required": [
                    "BusinessId",
                    "FilingPeriod",
                    "ContactDetails"
                ],
                "type": "object",
                "properties": {
                    "ReplacementReturn": {
                        "type": "boolean",
                        "description": "Set this flag value to True if the return that is being sent is a replacement return to previously sent return.<br>If no previous return exists this needs to be false. When filing a ReplacementReturn ReplacementReason needs a value.",
                        "example": false
                    },
                    "ReplacementReason": {
                        "type": "string",
                        "description": "When correcting previously sent and accepted return, the reason for correction must be given.<br>Multiple ReplacementReasons should be separated by a comma. ReplacementReturn must be true when using ReplacementReason."
                    },
                    "BusinessId": {
                        "maxLength": 9,
                        "minLength": 9,
                        "type": "string",
                        "description": "Business ID of the customer filing VAT return.",
                        "example": "9999999-9"
                    },
                    "FilingPeriod": {
                        "maxLength": 10,
                        "minLength": 10,
                        "type": "string",
                        "description": "The filing period of the VAT return with leading zeroes in the format 'yyyy-MM-dd'. Can at the earliest be ongoing period unless it's a NoActivity return.",
                        "format": "date",
                        "example": "2020-12-31"
                    },
                    "NoActivity": {
                        "type": "boolean",
                        "description": "No activities during the tax period. If NoActivity is True VATDetails object needs to be empty or removed. Can be filed for future periods; six months in the future for monthly filers or two quarters for quarterly filers.",
                        "example": false
                    },
                    "VATDetails": {
                        "type": "object",
                        "properties": {
                            "VATOnCashBasis": {
                                "type": "boolean",
                                "description": "During this tax period, will you pay VAT on a cash basis?",
                                "example": false
                            },
                            "VATOnDomesticSalesByTaxRate": {
                                "type": "object",
                                "properties": {
                                    "24Percent": {
                                        "type": "number",
                                        "description": "24 % VAT in euros."
                                    },
                                    "14Percent": {
                                        "type": "number",
                                        "description": "14 % VAT in euros."
                                    },
                                    "10Percent": {
                                        "type": "number",
                                        "description": "10 % VAT in euros."
                                    }
                                },
                                "description": "VAT on domestic sales by tax rate."
                            },
                            "VATOnPurchasesAndImports": {
                                "type": "object",
                                "properties": {
                                    "GoodsFromEUMemberStates": {
                                        "type": "number",
                                        "description": "VAT on goods purchased from other EU Member States."
                                    },
                                    "ServicesFromEUMemberStates": {
                                        "type": "number",
                                        "description": "VAT on services purchased from other EU Member States."
                                    },
                                    "ImportOfGoodsOutsideEU": {
                                        "type": "number",
                                        "description": "VAT on import of goods from outside the EU."
                                    },
                                    "ConstructionServicesAndScrapMetal": {
                                        "type": "number",
                                        "description": "VAT on purchases of construction services and scrap metal."
                                    }
                                },
                                "description": "VAT on Purchases and Imports. If VAT is filed then the corresponding field with Purchases need to be filed under SalesPurchasesImports."
                            },
                            "DeductibleVAT": {
                                "type": "number",
                                "description": "Deductible VAT for tax period."
                            },
                            "VATRelief": {
                                "type": "object",
                                "properties": {
                                    "FileVATRelief": {
                                        "type": "boolean",
                                        "description": "Is customer filing VAT relief details during this tax period?",
                                        "example": false
                                    },
                                    "ReasonForVATRelief": {
                                        "maximum": 4,
                                        "minimum": 1,
                                        "maxLength": 1,
                                        "minLength": 1,
                                        "type": "integer",
                                        "description": "The reason customer is applying for VAT relief?<br>1 - Final accounting period of the tax year<br>2 - Final quarter of the calendar year<br>3 - VAT role is ending this tax period<br>4 - Annual filer"
                                    },
                                    "TurnoverForVATRelief": {
                                        "maximum": 30000,
                                        "minimum": 0,
                                        "type": "number",
                                        "description": "Turnover that qualifies for VAT relief. Value can't be negative."
                                    },
                                    "TaxForVATRelief": {
                                        "minimum": 0,
                                        "type": "number",
                                        "description": "Tax that qualifies for VAT relief. Value can't be negative."
                                    }
                                },
                                "description": "If VATRelief is filed all fields within the object need a value."
                            },
                            "SalesPurchasesImports": {
                                "type": "object",
                                "properties": {
                                    "ZeroVATRateTurnover": {
                                        "type": "number",
                                        "description": "Turnover taxable at zero VAT rate."
                                    },
                                    "SalesOfGoodsToEUMemberStates": {
                                        "type": "number",
                                        "description": "Sales of goods to other EU member states."
                                    },
                                    "SalesOfServicesToEUMemberStates": {
                                        "type": "number",
                                        "description": "Sales of services to other EU member states."
                                    },
                                    "PurchasesOfGoodsFromEUMemberStates": {
                                        "type": "number",
                                        "description": "Purchases of goods from EU member states."
                                    },
                                    "PurchasesOfServicesFromEUMemberStates": {
                                        "type": "number",
                                        "description": "Purchases of services from EU member states."
                                    },
                                    "ImportsOfGoodsFromOutsideEU": {
                                        "type": "number",
                                        "description": "Imports of goods from outside the EU."
                                    },
                                    "SalesOfConstructionServicesAndScrapMetal": {
                                        "type": "number",
                                        "description": "Sales of construction services and scrap metal (reverse charge)."
                                    },
                                    "PurchasesOfConstructionServicesAndScrapMetal": {
                                        "type": "number",
                                        "description": "Purchases of construction services and scrap metal."
                                    }
                                },
                                "description": "Sales, purchases and imports. If VAT is filed under VATOnPurchasesAndImports then the corresponding field with Purchases need to be filed."
                            }
                        }
                    },
                    "ContactDetails": {
                        "required": [
                            "FullName",
                            "PhoneNumber"
                        ],
                        "type": "object",
                        "properties": {
                            "FullName": {
                                "maxLength": 35,
                                "minLength": 1,
                                "type": "string",
                                "description": "Name of the contact.",
                                "example": "John Doe"
                            },
                            "PhoneNumber": {
                                "maxLength": 35,
                                "minLength": 1,
                                "type": "string",
                                "description": "Phone number of the contact, including country code"
                            }
                        }
                    }
                }
            },
            "FileVATReturnResponse200": {
                "required": [
                    "AcceptedTimestamp",
                    "UniqueIdentifier"
                ],
                "type": "object",
                "properties": {
                    "AcceptedTimestamp": {
                        "type": "string",
                        "description": "Date and time when the filing was received by the Finnish Tax Administration.",
                        "example": "2021-04-22T14:01:33.478+02.00"
                    },
                    "UniqueIdentifier": {
                        "type": "string",
                        "description": "Unique key value that identifies the accepted response in Finnish Tax Administration.",
                        "example": "2439209302"
                    }
                }
            },
            "FileVATReturnResponse400": {
                "required": [
                    "ErrorText"
                ],
                "type": "object",
                "properties": {
                    "ErrorCode": {
                        "type": "string",
                        "description": "Error Code for Processing Request Data"
                    },
                    "ErrorText": {
                        "type": "string",
                        "description": "Error Message for Processing Request Data"
                    },
                    "ErrorDetails": {
                        "type": "array",
                        "items": {
                            "type": "object",
                            "properties": {
                                "ErrorCode": {
                                    "enum": [
                                        "VAT105",
                                        "VAT106",
                                        "VAT108",
                                        "VAT114"
                                    ],
                                    "type": "string",
                                    "description": "Error Code for Business Rule\n * `VAT105` - FI: \nJos FileVATRelief (Ilmoita alarajahuojennus) on epätosi, TurnoverForVATRelief (alarajahuojennuksen liikevaihto) ja TaxForVATRelief (huojennuksen oikeuttava veron määrä) tarvitsee positiivisen arvon. Jos FileVATRelief on epätosi kaikki liittyvät kentät pitää olla tyhjänä.\n\nSE: \nOm FileVATRelief (Anmäl lättnad vid momsskyldighetens nedre gräns) är sant behöver TurnoverForVATRelief (omsättningen för lättnaden) och TaxForVATRelief (momsbeloppet som berättigar till lättnad) ett positivt värde. Om FileVATRelief är falskt bör alla fält vara tomma.\n\nEN: \nIf FileVATRelief is true, TurnoverForVATRelief and TaxForVATRelief need a non-negative value. If FileVATRelief is false all fields should be empty.\n * `VAT106` - FI: \nJos ReplacementReturn (Korvaava ilmoitus) on tosi, ReplacementReason (Korjauksen syy) tarvitsee arvon. Jos ReplacementReasonilla on arvo ReplacementReturn pitää olla tosi. Tarkista validit ReplacementReason arvot dokumentaatiosta.\n\nSE: \nOm ReplacementReturn (Ersättande anmälan) är sant, behöver ReplacementReason (Orsak till korrigering) ett värde. Om ReplacementReason har ett värde måste ReplacementReturn vara sant. Kontrollera giltiga ReplacementReason värden från dokumentationen.\n\nEN: \nIf ReplacementReturn is true ReplacementReason needs to have a value. If ReplacementReason has a value ReplacementReturn needs to be true. Check valid ReplacementReason values in documentation.\n * `VAT108` - FI: \nALV ilmoitettu mutta ei ostoja. Tarkista että ilmoitetulla arvonlisäverolla on vastaava ostojen kenttä ilmoitettuna.  Esimerkiksi vero VATOnPurchasesAndImports.GoodsFromEUMemberStates tarvitsee vastaavat ostot SalesPurchasesImports.PurchasesOfGoodsEUMemberStates.\n\nSE: \nMomsen anmäld men inte köpen. Kontrollera att den anmälda momsen har motsvarande köp anmält. T.ex. momsen VATOnPurchasesAndImports.GoodsFromEUMemberStates behöver motsvarande köp SalesPurchasesImports.PurchasesOfGoodsEUMemberStates.\n\nEN: \nVAT reported but no purchases. Check that reported VAT amounts have a responding Purchase parameter filed. E.g. VATOnPurchasesAndImports.GoodsFromEUMemberStates needs corresponding SalesPurchasesImports.PurchasesOfGoodsEUMemberStates.\n * `VAT114` - FI: \nMaksuperusteista arvonlisäveroa voi vain ilmoittaa vuodesta 2018 lähtien.\n\nSE: \nMomsbeskattning enligt kontantprincipen kan endast anmälas fr.o.m. år 2018.\n\nEN: \nVAT on cash basis can only be reported from the year 2018 onward.\n"
                                },
                                "ErrorReference": {
                                    "type": "string",
                                    "description": "Reference to Parameter in Error"
                                },
                                "ErrorDescriptionFI": {
                                    "type": "string",
                                    "description": "Description of Business Rule in Error (FI)"
                                },
                                "ErrorDescriptionSE": {
                                    "type": "string",
                                    "description": "Description of Business Rule in Error (SE)"
                                },
                                "ErrorDescriptionEN": {
                                    "type": "string",
                                    "description": "Description of Business Rule in Error (EN)"
                                }
                            }
                        },
                        "description": "Expanded Details for Business Error Rules"
                    }
                }
            },
            "FileVATReturnResponse500": {
                "required": [
                    "ErrorText"
                ],
                "type": "object",
                "properties": {
                    "ErrorCode": {
                        "type": "string",
                        "description": "Error Code for Processing Response Data"
                    },
                    "ErrorText": {
                        "type": "string",
                        "description": "Error Message for Processing Response Data"
                    }
                }
            },
            "FileECSalesListRequest": {
                "required": [
                    "BusinessId",
                    "FilingPeriod",
                    "Buyers",
                    "ContactDetails"
                ],
                "type": "object",
                "properties": {
                    "BusinessId": {
                        "maxLength": 9,
                        "minLength": 9,
                        "type": "string",
                        "description": "Business ID of the customer whose VAT EU recapitulative statement is filed (business ID of the seller)",
                        "example": "9999999-9"
                    },
                    "FilingPeriod": {
                        "required": [
                            "Month",
                            "Year"
                        ],
                        "type": "object",
                        "properties": {
                            "Month": {
                                "maximum": 12,
                                "minimum": 1,
                                "type": "integer",
                                "description": "Filing month",
                                "example": 5
                            },
                            "Year": {
                                "maximum": 2090,
                                "minimum": 2015,
                                "type": "integer",
                                "description": "Filing year",
                                "example": 2021
                            }
                        },
                        "description": "Filing Period of the EU VAT recapitulative statement (month and year). It is only permissible to submit the current year and past six years for the target year. If the target year is the current year, the target month can be only the current month or earlier."
                    },
                    "Buyers": {
                        "type": "array",
                        "items": {
                            "type": "object",
                            "properties": {
                                "CountryCode": {
                                    "maxLength": 2,
                                    "minLength": 2,
                                    "enum": [
                                        "AT",
                                        "BE",
                                        "BG",
                                        "CY",
                                        "CZ",
                                        "DE",
                                        "DK",
                                        "EE",
                                        "EL",
                                        "ES",
                                        "FR",
                                        "GB",
                                        "HR",
                                        "HU",
                                        "IE",
                                        "IT",
                                        "LT",
                                        "LU",
                                        "LV",
                                        "MT",
                                        "NL",
                                        "PL",
                                        "PT",
                                        "RO",
                                        "SE",
                                        "SI",
                                        "SK",
                                        "XI"
                                    ],
                                    "type": "string",
                                    "description": "The two-letter country code of the buyer in ISO 3166-1 alpha-2 format. Must be an EU country; cannot be Finland. Restrictions to reporting sales: <br> \n- Sales to Great Britain (GB) can be reported only until January 2021 <br> - Sales to Northern Ireland (XI) can be reported as of January 2021\n * `AT` - FI: AT - Itävalta SE: AT - Österrike EN: AT - Austria\n * `BE` - FI: BE - Belgia SE: BE - Belgien EN: BE - Belgium\n * `BG` - FI: BG - Bulgaria SE: BG - Bulgarien EN: BG - Bulgaria\n * `CY` - FI: CY - Kypros SE: CY - Cypern EN: CY - Cyprus\n * `CZ` - FI: CZ - Tšekki SE: CZ - Tjeckien EN: CZ - Czech Republic\n * `DE` - FI: DE - Saksa SE: DE - Tyskland EN: DE - Germany\n * `DK` - FI: DK - Tanska SE: DK - Danmark EN: DK - Denmark\n * `EE` - FI: EE - Viro SE: EE - Estland EN: EE - Estonia\n * `EL` - FI: EL - Kreikka SE: EL - Grekland EN: EL - Greece\n * `ES` - FI: ES - Espanja SE: ES - Spanien EN: ES - Spain\n * `FR` - FI: FR - Ranska SE: FR - Frankrike EN: FR - France\n * `GB` - FI: GB - Iso-Britannia SE: GB - Storbritannien EN: GB - United Kingdom\n * `HR` - FI: HR - Kroatia SE: HR - Kroatien EN: HR - Croatia\n * `HU` - FI: HU - Unkari SE: HU - Ungern EN: HU - Hungary\n * `IE` - FI: IE - Irlanti SE: IE - Irland EN: IE - Ireland\n * `IT` - FI: IT - Italia SE: IT - Italien EN: IT - Italy\n * `LT` - FI: LT - Liettua SE: LT - Litauen EN: LT - Lithuania\n * `LU` - FI: LU - Luxemburg SE: LU - Luxemburg EN: LU - Luxembourg\n * `LV` - FI: LV - Latvia SE: LV - Lettland EN: LV - Latvia\n * `MT` - FI: MT - Malta SE: MT - Malta EN: MT - Malta\n * `NL` - FI: NL - Alankomaat SE: NL - Nederländerna EN: NL - Netherlands\n * `PL` - FI: PL - Puola SE: PL - Polen EN: PL - Poland\n * `PT` - FI: PT - Portugali SE: PT - Portugal EN: PT - Portugal\n * `RO` - FI: RO - Romania SE: RO - Rumänien EN: RO - Romania\n * `SE` - FI: SE - Ruotsi SE: SE - Sverige EN: SE - Sweden\n * `SI` - FI: SI - Slovenia SE: SI - Slovenien EN: SI - Slovenia\n * `SK` - FI: SK - Slovakia SE: SK - Slovakien EN: SK - Slovakia\n * `XI` - FI: XI - Pohjois-Irlanti SE: XI - Nordirland EN: XI - Northern Ireland\n",
                                    "example": "SE"
                                },
                                "VATIdentifier": {
                                    "maxLength": 12,
                                    "minLength": 2,
                                    "type": "string",
                                    "description": "The VAT identification number of the buyer without the two-letter country code. No punctuation, no blankspace characters."
                                },
                                "SalesOfGoods": {
                                    "type": "number",
                                    "description": "The total value of intra-Community supplies of goods to each specific customer for the calendar month."
                                },
                                "SalesOfServices": {
                                    "type": "number",
                                    "description": "The total value of intra-Community supplies of services to each specific customer for the calendar month."
                                },
                                "TriangulationSales": {
                                    "type": "number",
                                    "description": "If you have been the second seller in a triangulation arrangement, enter the total value of your intra-Community supplies to each specific customer for the calendar month."
                                }
                            }
                        },
                        "description": "List all the buyers to whom good were sold, or some services were rendered, in another EU country during the filing period"
                    },
                    "ContactDetails": {
                        "required": [
                            "FullName",
                            "PhoneNumber"
                        ],
                        "type": "object",
                        "properties": {
                            "FullName": {
                                "maxLength": 35,
                                "minLength": 1,
                                "type": "string",
                                "description": "First name and last name of the contact person",
                                "example": "John Doe"
                            },
                            "PhoneNumber": {
                                "maxLength": 35,
                                "minLength": 1,
                                "type": "string",
                                "description": "Phone number of the contact person, including the country code.",
                                "example": "+358401234567"
                            }
                        },
                        "description": "Contact information of the filer of the report."
                    }
                }
            },
            "FileECSalesListResponse200": {
                "required": [
                    "UniqueIdentifier",
                    "AcceptedTimestamp"
                ],
                "type": "object",
                "properties": {
                    "UniqueIdentifier": {
                        "type": "string",
                        "description": "Unique key value that identifies the received return in Finnish Tax Administration.",
                        "example": "2439209302"
                    },
                    "AcceptedTimestamp": {
                        "type": "string",
                        "description": "Date and time when the filing was received by the Finnish Tax Administration.",
                        "example": "2021-04-22T12:01:33.478+00:00"
                    }
                }
            },
            "FileECSalesListResponse400": {
                "required": [
                    "ErrorText"
                ],
                "type": "object",
                "properties": {
                    "ErrorCode": {
                        "type": "string",
                        "description": "Error Code for Processing Request Data"
                    },
                    "ErrorText": {
                        "type": "string",
                        "description": "Error Message for Processing Request Data"
                    },
                    "ErrorDetails": {
                        "type": "array",
                        "items": {
                            "type": "object",
                            "properties": {
                                "ErrorCode": {
                                    "enum": [
                                        "1103",
                                        "EUS110",
                                        "EUS111"
                                    ],
                                    "type": "string",
                                    "description": "Error Code for Business Rule\n * `1103` - FI: \nVirheellinen Y-tunnus.\n\nSE: \nFelaktigt FO-nummer\n\nEN: \nInvalid Business Id.\n * `EUS110` - EN: \nFiling year can only be ongoing year and max 6 years before it (starting from the beginning of the calendar year).\n * `EUS111` - EN: \nFiling period cannot be in the future\n"
                                },
                                "ErrorReference": {
                                    "type": "string",
                                    "description": "Reference to Parameter in Error"
                                },
                                "ErrorDescriptionFI": {
                                    "type": "string",
                                    "description": "Description of Business Rule in Error (FI)"
                                },
                                "ErrorDescriptionSE": {
                                    "type": "string",
                                    "description": "Description of Business Rule in Error (SE)"
                                },
                                "ErrorDescriptionEN": {
                                    "type": "string",
                                    "description": "Description of Business Rule in Error (EN)"
                                }
                            }
                        },
                        "description": "Expanded Details for Business Error Rules"
                    }
                }
            },
            "FileECSalesListResponse500": {
                "required": [
                    "ErrorText"
                ],
                "type": "object",
                "properties": {
                    "ErrorCode": {
                        "type": "string",
                        "description": "Error Code for Processing Response Data"
                    },
                    "ErrorText": {
                        "type": "string",
                        "description": "Error Message for Processing Response Data"
                    }
                }
            }
        },
        "securitySchemes": {
            "apiKeyHeader": {
                "type": "apiKey",
                "name": "Ocp-Apim-Subscription-Key",
                "in": "header"
            },
            "apiKeyQuery": {
                "type": "apiKey",
                "name": "subscription-key",
                "in": "query"
            }
        }
    },
    "security": [
        {
            "apiKeyHeader": []
        },
        {
            "apiKeyQuery": []
        }
    ]
}