4WS Suite
Home
API Reference
  • Data mangement API
  • Documents API
Home
API Reference
  • Data mangement API
  • Documents API
Fourwayshop
  1. VATs
  • Login
    • login
      POST
  • Product
    • Brand
      • Get All Brands
      • Get A Brand
      • Insert brand
      • Update brand
    • Season
      • Get All Seasons
      • Get A Season
      • Insert season
      • Update season
    • Attribute
      • Get All Attribute Types
      • Get Attribute Type
      • Get Attribute
      • Insert attribute
      • Update attribute
    • Hierarchy
      • Insert hierarchy
      • Update hierarchy
    • Dimension groups
      • Insert dimension group
      • Update dimension group
    • Dimension
      • Insert dimension
      • Update dimension
      • Delete dimension
    • Product
      • Get products
      • Get product
      • Get product grouping
      • Get SKU's barcodes
      • Get product stock
      • Insert product
      • Update product
    • Activate dimensions on products
      • Insert active dimensions
      • Delete active dimensions
    • Barcode
      • Get SKU from barcode
      • Generate missing barcodes
      • Generate missing barcode for SKU
      • Insert barcode
      • Delete barcode
    • Prices
      • Get product prices
    • Price dimension groupings
      • Get Dimension Price Grouping
      • Get All Dimension Price Grouping
      • Insert dimension grouping
      • Update dimension grouping
      • Delete dimension grouping
    • Assortment
      • insert product assortment
      • delete product assortment
    • Image
      • Get images
      • Add image
      • Replace image
      • Delete image
    • Supplier
      • Get Item suppliers
      • Insert item supplier
      • Delete item supplier
      • Update item supplier
    • Custom category
      • Get Custom code
      • Insert Custom code
      • Update Custom code
    • Vat
      • Vat types
        • Get VAT type
        • Get VAT types
      • VATs
        • Get VATs
          GET
        • Get VATs by type
          GET
        • Get VAT
          GET
      • Vat rates
        • Get VAT rates
        • Get single VAT rates
    • Stock
      • Insert stock
      • Get stock
  • Price lists
    • Get price lists
      GET
    • Get price lists by type
      GET
    • Get price list
      GET
    • Get prices from price list
      GET
    • Get entities from price lists
      GET
    • Insert Price List
      POST
    • Insert Product Price
      POST
    • Insert Entity On Price Lists
      POST
    • Update price list
      PATCH
    • Delete all product prices
      DELETE
    • Delete single product price
      DELETE
    • Delete entity from a price lists
      DELETE
  • Supplier
    • Supplier contacts
    • Supplier addresses
    • Get Suppliers
    • Get A Specific Supplier
    • Insert supplier
    • Update supplier
  • Entities
    • Get entities
    • Get entity
    • Insert entity
    • Update entity
  • Miscellaneous
    • Get requests rate limits
  • Catalog
    • Get Catalogs details
    • Get Catalog details by Code
    • Get products by Catalog Code
  • Export
    • Get bulk CSV Export
  1. VATs

Get VATs by type

GET
/api/v1/vats/{VAT_TYPE}
Last modified:2025-04-08 12:06:32

VATs by Type#

This API retrieves the list of VAT rates and operations for a specified the VAT_TYPE type optionaly.
The API supports pagination to navigate through large lists of VAT rates.
Paginated Responses
The service is paginated to handle large sets of data efficiently.
For detailed information on how to handle pagination, refer to our Paginated Responses

Languages#

The API response includes multilingual descriptions. The fields description_it and description_en provide VATs operation descriptions in Italian and English, respectively.
Manage languages
For detailed information on how to handle languages, refer to our Managing Languages

Actors#

API Client: The system or user initiating the request.
4ws.trade: The backend system that processes the request and returns the VAT data.

Preconditions#

The external system must have the necessary permissions and access to the service, please refer to Authentication.
A valid VAT_TYPE must be provided.
Pagination parameters cursor and nextCursor must be correctly configured in the request.

Main Success Scenario#

The external system call api passing a specific VAT_TYPE NORMALE.
If the request is successful, the system will return an HTTP 200 response with the paginated list of vat rates and a nextCursor indicating whether there are more vat rates to retrieve.
If nextCursor is setted, the external system must be call again, this service, setting cursor as nextCursor value.
Response Example
Explanation of the vat_type Field#
The vat_type field represents the category or nature of the VAT rate applied to a specific operation or product. This field helps distinguish between different taxation scenarios and provides critical information for compliance with tax regulations.
The possible default values for vat_type include:
NO_IMPONIBILE (Not Taxable): Operations or goods exempt from VAT due to specific regulatory conditions.
RIDOTTA (Reduced): A lower VAT rate applied to certain categories of goods or services.
MINIMA (Minimum): The minimum VAT rate set for specific operations or product types.
NORMALE (Standard): The standard VAT rate applied to most goods and services.
MARGINE (Margin): Special VAT calculation rules based on the profit margin instead of the total price.
ESENZIONE (Exemption): Transactions exempt from VAT, often for specific legal reasons.
SPLIT_PAYMENT (PA Split Payment): A VAT mechanism where the VAT is paid directly to the tax authority by the buyer, typically a public administration entity.
These default values are preconfigured in the system but may vary if the tenant has custom configurations. For specific implementations, users should verify the available vat_type values within their application settings.
Explanation of the vat_code Field#
The vat_code field represents the vat code applied to a specific operation or product. This field helps distinguish between different tax rates that are applicable to the tenant's products.
the vat_code and vat_type fields allow you to identify a specific tax rate.
For example, in the case of exemptions, the vat_type could be ESENZIONE and the vat_code diversifies the various exemptions allowed.

Alternate Flows#

Authentication Error: If the client does not provide valid credentials, an error response is returned.
Error Example
Invalid VAT_TYPE: The system returns an error indicating an invalid or unsupported vat type code.
Error Example
Empty Result: If no collections exist, the vats array will be empty.
Cursor & PageSize Used Together: Cursor and PageSize parameters in the request: If you specify a Cursor you cannot specify the page size. This information will already be contained within the cursor.
Error Example
Pagination Error: If invalid cursor parameters are provided, an error response is returned.
Rate Limiting: If the API rate limits are exceeded, the client must respect the retry interval indicated in the response headers Rate Limits.

Sequence Diagram#

Best Practices
Please refer to Best Practices for Error Handling in External System for best practices on implementation.

Code Examples in Node.js#

Node.js Example

Request

Path Params

Query Params

Request Code Samples

Shell
JavaScript
Java
Swift
Go
PHP
Python
HTTP
C
C#
Objective-C
Ruby
OCaml
Dart
R
Request Request Example
Shell
JavaScript
Java
Swift
curl --location --request GET '/api/v1/vats/?page=0&pageSize=100&cursor'

Responses

🟢200OK
application/json
Body

Example
{
    "vats": [
        {
            "prog_id": 6056,
            "vat_code": "1",
            "description_it": "Aliquota ridotta 1",
            "description_en": "Aliquota ridotta 1",
            "description_de": "Aliquota ridotta 1",
            "description_es": "Aliquota ridotta 1",
            "description_fr": "Aliquota ridotta 1",
            "description_pt": "Aliquota ridotta 1",
            "description_ru": "Aliquota ridotta 1",
            "description_zh": "Aliquota ridotta 1",
            "description_ar": "Aliquota ridotta 1",
            "description_ja": "Aliquota ridotta 1",
            "vat_department": 3,
            "intra_cee": false,
            "note": null,
            "vat_type": "RIDOTTA"
        },
        {
            "prog_id": 6057,
            "vat_code": "2",
            "description_it": "Aliquota ridotta 2",
            "description_en": "Aliquota ridotta 2",
            "description_de": "Aliquota ridotta 2",
            "description_es": "Aliquota ridotta 2",
            "description_fr": "Aliquota ridotta 2",
            "description_pt": "Aliquota ridotta 2",
            "description_ru": "Aliquota ridotta 2",
            "description_zh": "Aliquota ridotta 2",
            "description_ar": "Aliquota ridotta 2",
            "description_ja": "Aliquota ridotta 2",
            "vat_department": 2,
            "intra_cee": false,
            "note": null,
            "vat_type": "RIDOTTA"
        }
    ],
    "nextCursor": "eyJwYWdlIjoyLCJwYWdlU2l6ZSI6MTB2"
}
Modified at 2025-04-08 12:06:32
Previous
Get VATs
Next
Get VAT
Built with