{
  "info": {
    "_postman_id": "97a7f074-6629-47f5-8110-93341115a0f6",
    "name": "fiskaly SIGN IT 2026-05-04",
    "description": "This postman collection consists the basic workflow of SIGN IT (Version 2026-05-04) including SUBMIT IT Payment Device pairing. Further information is provided in the [developer documentation](https://workspace.fiskaly.com/api/sign-it).\n\nWhen this collection is executed with Postman, important parts of the results will be stored in the current selected Postman environment.\n\n**Key Changes from v2 (2025-08-12):**\n- Terminology: Asset::UNIT → Organization, Entity::COMPANY → Taxpayer::COMPANY, Entity::LOCATION → Location::BRANCH\n- New endpoints: /organizations, /taxpayers, /locations (separate)\n- New System type: PAYMENT_DEVICE for SUBMIT IT feature\n- Italian credentials now require tax_id_number field\n\nPostman Collection Version 3.00",
    "schema": "https://schema.getpostman.com/json/collection/v2.1.0/collection.json",
    "_exporter_id": "41815824"
  },
  "item": [
    {
      "name": "tokens (management)",
      "item": [
        {
          "name": "Create a Token",
          "event": [
            {
              "listen": "test",
              "script": {
                "exec": [
                  "pm.test(\"Status code is 200\", function () {",
                  "    pm.response.to.have.status(200);",
                  "    var data = pm.response.json();",
                  "    pm.environment.set(\"apiBearerToken\", data.content.authentication.bearer);",
                  "});"
                ],
                "type": "text/javascript",
                "packages": {}
              }
            }
          ],
          "request": {
            "method": "POST",
            "header": [
              {
                "key": "Content-Type",
                "value": "application/json"
              },
              {
                "key": "X-Api-Version",
                "value": "{{apiVersion}}",
                "description": "API version"
              },
              {
                "key": "X-Idempotency-Key",
                "value": "{{$guid}}",
                "description": "(Required) Idempotency key"
              }
            ],
            "body": {
              "mode": "raw",
              "raw": "{\n  \"content\": {\n    \"type\": \"API_KEY\",\n    \"key\": \"{{apiKey}}\",\n    \"secret\": \"{{apiSecret}}\"\n  }\n}",
              "options": {
                "raw": {
                  "language": "json"
                }
              }
            },
            "url": {
              "raw": "{{apiBaseUrl}}/tokens",
              "host": ["{{apiBaseUrl}}"],
              "path": ["tokens"]
            },
            "description": "Create a token for API authentication"
          },
          "response": []
        }
      ]
    },
    {
      "name": "organizations",
      "item": [
        {
          "name": "Create an Organization",
          "event": [
            {
              "listen": "test",
              "script": {
                "exec": [
                  "pm.test(\"Status code is 200\", function () {",
                  "    pm.response.to.have.status(200);",
                  "    var data = pm.response.json();",
                  "    pm.environment.set(\"organizationId\", data.content.id);",
                  "});"
                ],
                "type": "text/javascript",
                "packages": {},
                "requests": {}
              }
            }
          ],
          "request": {
            "auth": {
              "type": "bearer",
              "bearer": [
                {
                  "key": "token",
                  "value": "{{apiBearerToken}}",
                  "type": "string"
                }
              ]
            },
            "method": "POST",
            "header": [
              {
                "key": "Content-Type",
                "value": "application/json"
              },
              {
                "key": "X-Api-Version",
                "value": "{{apiVersion}}",
                "description": "API version"
              },
              {
                "key": "X-Idempotency-Key",
                "value": "{{$guid}}",
                "description": "(Required) Idempotency key"
              }
            ],
            "body": {
              "mode": "raw",
              "raw": "{\n  \"content\": {\n    \"type\": \"UNIT\",\n    \"name\": \"{{$randomCompanyName}}\"\n  },\n  \"metadata\": {\n    \"key\": \"value\"\n  }\n}",
              "options": {
                "raw": {
                  "language": "json"
                }
              }
            },
            "url": {
              "raw": "{{apiBaseUrl}}/organizations",
              "host": ["{{apiBaseUrl}}"],
              "path": ["organizations"]
            },
            "description": "Create an Organization (formerly Asset::UNIT). Organizations represent organizational structures and access permissions."
          },
          "response": []
        },
        {
          "name": "Retrieve an Organization",
          "event": [
            {
              "listen": "test",
              "script": {
                "exec": [
                  "pm.test(\"Status code is 200\", function () {",
                  "    pm.response.to.have.status(200);",
                  "});"
                ],
                "type": "text/javascript",
                "packages": {}
              }
            }
          ],
          "request": {
            "auth": {
              "type": "bearer",
              "bearer": [
                {
                  "key": "token",
                  "value": "{{apiBearerToken}}",
                  "type": "string"
                }
              ]
            },
            "method": "GET",
            "header": [
              {
                "key": "Accept",
                "value": "application/json"
              },
              {
                "key": "X-Api-Version",
                "value": "{{apiVersion}}",
                "description": "API version"
              }
            ],
            "url": {
              "raw": "{{apiBaseUrl}}/organizations/{{organizationId}}",
              "host": ["{{apiBaseUrl}}"],
              "path": ["organizations", "{{organizationId}}"]
            },
            "description": "Retrieve an Organization by ID"
          },
          "response": []
        },
        {
          "name": "Update an Organization",
          "event": [
            {
              "listen": "test",
              "script": {
                "exec": [
                  "pm.test(\"Status code is 200\", function () {",
                  "    pm.response.to.have.status(200);",
                  "});"
                ],
                "type": "text/javascript",
                "packages": {}
              }
            }
          ],
          "request": {
            "auth": {
              "type": "bearer",
              "bearer": [
                {
                  "key": "token",
                  "value": "{{apiBearerToken}}",
                  "type": "string"
                }
              ]
            },
            "method": "PATCH",
            "header": [
              {
                "key": "Content-Type",
                "value": "application/json"
              },
              {
                "key": "X-Api-Version",
                "value": "{{apiVersion}}",
                "description": "API version"
              },
              {
                "key": "X-Idempotency-Key",
                "value": "{{$guid}}",
                "description": "(Required) Idempotency key"
              }
            ],
            "body": {
              "mode": "raw",
              "raw": "{\n  \"content\": {\n    \"name\": \"Updated Organization Name\"\n  },\n  \"metadata\": {\n    \"updated_key\": \"updated_value\"\n  }\n}",
              "options": {
                "raw": {
                  "language": "json"
                }
              }
            },
            "url": {
              "raw": "{{apiBaseUrl}}/organizations/{{organizationId}}",
              "host": ["{{apiBaseUrl}}"],
              "path": ["organizations", "{{organizationId}}"]
            },
            "description": "Update an Organization"
          },
          "response": []
        },
        {
          "name": "List Organizations",
          "event": [
            {
              "listen": "test",
              "script": {
                "exec": [
                  "pm.test(\"Status code is 200\", function () {",
                  "    pm.response.to.have.status(200);",
                  "});"
                ],
                "type": "text/javascript",
                "packages": {}
              }
            }
          ],
          "request": {
            "auth": {
              "type": "bearer",
              "bearer": [
                {
                  "key": "token",
                  "value": "{{apiBearerToken}}",
                  "type": "string"
                }
              ]
            },
            "method": "GET",
            "header": [
              {
                "key": "Accept",
                "value": "application/json"
              },
              {
                "key": "X-Api-Version",
                "value": "{{apiVersion}}",
                "description": "API version"
              }
            ],
            "url": {
              "raw": "{{apiBaseUrl}}/organizations",
              "host": ["{{apiBaseUrl}}"],
              "path": ["organizations"]
            },
            "description": "Retrieve a list of Organizations"
          },
          "response": []
        }
      ]
    },
    {
      "name": "subjects",
      "item": [
        {
          "name": "Create a Subject::API_KEY",
          "event": [
            {
              "listen": "test",
              "script": {
                "exec": [
                  "pm.test(\"Status code is 200\", function () {",
                  "    pm.response.to.have.status(200);",
                  "    var data = pm.response.json();",
                  "    pm.environment.set(\"subjectId\", data.content.id);",
                  "    pm.environment.set(\"subjectApiKey\", data.content.credentials.key);",
                  "    pm.environment.set(\"subjectApiSecret\", data.content.credentials.secret);",
                  "});"
                ],
                "type": "text/javascript",
                "packages": {},
                "requests": {}
              }
            }
          ],
          "request": {
            "auth": {
              "type": "bearer",
              "bearer": [
                {
                  "key": "token",
                  "value": "{{apiBearerToken}}",
                  "type": "string"
                }
              ]
            },
            "method": "POST",
            "header": [
              {
                "key": "Content-Type",
                "value": "application/json"
              },
              {
                "key": "X-Api-Version",
                "value": "{{apiVersion}}",
                "description": "API version"
              },
              {
                "key": "X-Idempotency-Key",
                "value": "{{$guid}}",
                "description": "(Required) Idempotency key"
              },
              {
                "key": "X-Scope-Identifier",
                "value": "{{organizationId}}",
                "description": "Scope identifier for the subject"
              }
            ],
            "body": {
              "mode": "raw",
              "raw": "{\n  \"content\": {\n    \"type\": \"API_KEY\",\n    \"name\": \"my-api-key-03\"\n  },\n  \"metadata\": {\n    \"key\": \"value\"\n  }\n}",
              "options": {
                "raw": {
                  "language": "json"
                }
              }
            },
            "url": {
              "raw": "{{apiBaseUrl}}/subjects",
              "host": ["{{apiBaseUrl}}"],
              "path": ["subjects"]
            },
            "description": "Create a Subject with API_KEY type"
          },
          "response": []
        },
        {
          "name": "Retrieve a Subject::API_KEY",
          "event": [
            {
              "listen": "test",
              "script": {
                "exec": [
                  "pm.test(\"Status code is 200\", function () {",
                  "    pm.response.to.have.status(200);",
                  "});"
                ],
                "type": "text/javascript",
                "packages": {}
              }
            }
          ],
          "request": {
            "auth": {
              "type": "bearer",
              "bearer": [
                {
                  "key": "token",
                  "value": "{{apiBearerToken}}",
                  "type": "string"
                }
              ]
            },
            "method": "GET",
            "header": [
              {
                "key": "Accept",
                "value": "application/json"
              },
              {
                "key": "X-Api-Version",
                "value": "{{apiVersion}}",
                "description": "API version"
              }
            ],
            "url": {
              "raw": "{{apiBaseUrl}}/subjects/{{subjectId}}",
              "host": ["{{apiBaseUrl}}"],
              "path": ["subjects", "{{subjectId}}"]
            },
            "description": "Retrieve a Subject by ID"
          },
          "response": []
        }
      ]
    },
    {
      "name": "tokens (operation)",
      "item": [
        {
          "name": "Create a Token",
          "event": [
            {
              "listen": "test",
              "script": {
                "exec": [
                  "pm.test(\"Status code is 200\", function () {",
                  "    pm.response.to.have.status(200);",
                  "    var data = pm.response.json();",
                  "    pm.environment.set(\"subjectBearerToken\", data.content.authentication.bearer);",
                  "});"
                ],
                "type": "text/javascript",
                "packages": {}
              }
            }
          ],
          "request": {
            "method": "POST",
            "header": [
              {
                "key": "Content-Type",
                "value": "application/json"
              },
              {
                "key": "X-Api-Version",
                "value": "{{apiVersion}}",
                "description": "API version"
              },
              {
                "key": "X-Idempotency-Key",
                "value": "{{$guid}}",
                "description": "(Required) Idempotency key"
              }
            ],
            "body": {
              "mode": "raw",
              "raw": "{\n  \"content\": {\n    \"type\": \"API_KEY\",\n    \"key\": \"{{subjectApiKey}}\",\n    \"secret\": \"{{subjectApiSecret}}\"\n  }\n}",
              "options": {
                "raw": {
                  "language": "json"
                }
              }
            },
            "url": {
              "raw": "{{apiBaseUrl}}/tokens",
              "host": ["{{apiBaseUrl}}"],
              "path": ["tokens"]
            },
            "description": "Create a token using Subject API credentials"
          },
          "response": []
        }
      ]
    },
    {
      "name": "taxpayers",
      "item": [
        {
          "name": "Create a Taxpayer::COMPANY",
          "event": [
            {
              "listen": "test",
              "script": {
                "exec": [
                  "pm.test(\"Status code is 200\", function () {",
                  "    pm.response.to.have.status(200);",
                  "    var data = pm.response.json();",
                  "    pm.environment.set(\"taxpayerId\", data.content.id);",
                  "});"
                ],
                "type": "text/javascript",
                "packages": {},
                "requests": {}
              }
            }
          ],
          "request": {
            "auth": {
              "type": "bearer",
              "bearer": [
                {
                  "key": "token",
                  "value": "{{subjectBearerToken}}",
                  "type": "string"
                }
              ]
            },
            "method": "POST",
            "header": [
              {
                "key": "Content-Type",
                "value": "application/json"
              },
              {
                "key": "X-Api-Version",
                "value": "{{apiVersion}}",
                "description": "API version"
              },
              {
                "key": "X-Idempotency-Key",
                "value": "{{$guid}}",
                "description": "(Required) Idempotency key"
              }
            ],
            "body": {
              "mode": "raw",
              "raw": "{\n  \"content\": {\n    \"type\": \"COMPANY\",\n    \"name\": {\n      \"legal\": \"My Business Legal Name\",\n      \"trade\": \"My Brand\"\n    },\n    \"address\": {\n      \"line\": {\n        \"type\": \"STREET_NUMBER\",\n        \"street\": \"Via Roma\",\n        \"number\": \"123\",\n        \"prefix\": \"0000\",\n        \"infix\": \"1234\",\n        \"suffix\": \"6789\"\n      },\n      \"code\": \"00100\",\n      \"city\": \"Rome\",\n      \"country\": \"IT\"\n    },\n    \"fiscalization\": {\n      \"type\": \"IT\",\n      \"tax_id_number\": \"12345678901\",\n      \"vat_id_number\": \"12345678901\",\n      \"credentials\": {\n        \"type\": \"FISCONLINE\",\n        \"pin\": \"1234567890\",\n        \"password\": \"MySecurePassword123\",\n        \"tax_id_number\": \"RSSMRA85M01H501Z\"\n      }\n    }\n  },\n  \"metadata\": {\n    \"key\": \"value\"\n  }\n}",
              "options": {
                "raw": {
                  "language": "json"
                }
              }
            },
            "url": {
              "raw": "{{apiBaseUrl}}/taxpayers",
              "host": ["{{apiBaseUrl}}"],
              "path": ["taxpayers"]
            },
            "description": "Create a Taxpayer::COMPANY (formerly Entity::COMPANY). Note: In v3, Italian FISCONLINE credentials require the tax_id_number field."
          },
          "response": []
        },
        {
          "name": "Retrieve a Taxpayer::COMPANY",
          "event": [
            {
              "listen": "test",
              "script": {
                "exec": [
                  "pm.test(\"Status code is 200\", function () {",
                  "    pm.response.to.have.status(200);",
                  "});"
                ],
                "type": "text/javascript",
                "packages": {}
              }
            }
          ],
          "request": {
            "auth": {
              "type": "bearer",
              "bearer": [
                {
                  "key": "token",
                  "value": "{{subjectBearerToken}}",
                  "type": "string"
                }
              ]
            },
            "method": "GET",
            "header": [
              {
                "key": "Accept",
                "value": "application/json"
              },
              {
                "key": "X-Api-Version",
                "value": "{{apiVersion}}",
                "description": "API version"
              }
            ],
            "url": {
              "raw": "{{apiBaseUrl}}/taxpayers/{{taxpayerId}}",
              "host": ["{{apiBaseUrl}}"],
              "path": ["taxpayers", "{{taxpayerId}}"]
            },
            "description": "Retrieve a Taxpayer by ID"
          },
          "response": []
        },
        {
          "name": "Update a Taxpayer::COMPANY (Commission)",
          "event": [
            {
              "listen": "test",
              "script": {
                "exec": [
                  "pm.test(\"Status code is 200\", function () {",
                  "    pm.response.to.have.status(200);",
                  "    var data = pm.response.json();",
                  "    pm.test(\"State is COMMISSIONED\", function () {",
                  "        pm.expect(data.content.state).to.eql(\"COMMISSIONED\");",
                  "    });",
                  "});"
                ],
                "type": "text/javascript",
                "packages": {}
              }
            }
          ],
          "request": {
            "auth": {
              "type": "bearer",
              "bearer": [
                {
                  "key": "token",
                  "value": "{{subjectBearerToken}}",
                  "type": "string"
                }
              ]
            },
            "method": "PATCH",
            "header": [
              {
                "key": "Content-Type",
                "value": "application/json"
              },
              {
                "key": "X-Api-Version",
                "value": "{{apiVersion}}",
                "description": "API version"
              },
              {
                "key": "X-Idempotency-Key",
                "value": "{{$guid}}",
                "description": "(Required) Idempotency key"
              }
            ],
            "body": {
              "mode": "raw",
              "raw": "{\n  \"content\": {\n    \"state\": \"COMMISSIONED\"\n  }\n}",
              "options": {
                "raw": {
                  "language": "json"
                }
              }
            },
            "url": {
              "raw": "{{apiBaseUrl}}/taxpayers/{{taxpayerId}}",
              "host": ["{{apiBaseUrl}}"],
              "path": ["taxpayers", "{{taxpayerId}}"]
            },
            "description": "Update a Taxpayer to COMMISSIONED state"
          },
          "response": []
        },
        {
          "name": "List Taxpayers",
          "event": [
            {
              "listen": "test",
              "script": {
                "exec": [
                  "pm.test(\"Status code is 200\", function () {",
                  "    pm.response.to.have.status(200);",
                  "});"
                ],
                "type": "text/javascript",
                "packages": {}
              }
            }
          ],
          "request": {
            "auth": {
              "type": "bearer",
              "bearer": [
                {
                  "key": "token",
                  "value": "{{subjectBearerToken}}",
                  "type": "string"
                }
              ]
            },
            "method": "GET",
            "header": [
              {
                "key": "Accept",
                "value": "application/json"
              },
              {
                "key": "X-Api-Version",
                "value": "{{apiVersion}}",
                "description": "API version"
              }
            ],
            "url": {
              "raw": "{{apiBaseUrl}}/taxpayers",
              "host": ["{{apiBaseUrl}}"],
              "path": ["taxpayers"]
            },
            "description": "Retrieve a list of Taxpayers"
          },
          "response": []
        },
        {
          "name": "List Taxpayers with pagination (first page)",
          "event": [
            {
              "listen": "test",
              "script": {
                "exec": [
                  "pm.test(\"Status code is 200\", function () {",
                  "    pm.response.to.have.status(200);",
                  "    var data = pm.response.json();",
                  "    if (data.pagination && data.pagination.token) {",
                  "        pm.environment.set(\"taxpayerPaginationToken\", data.pagination.token);",
                  "    }",
                  "});"
                ],
                "type": "text/javascript",
                "packages": {}
              }
            }
          ],
          "request": {
            "auth": {
              "type": "bearer",
              "bearer": [
                {
                  "key": "token",
                  "value": "{{subjectBearerToken}}",
                  "type": "string"
                }
              ]
            },
            "method": "GET",
            "header": [
              {
                "key": "Accept",
                "value": "application/json"
              },
              {
                "key": "X-Api-Version",
                "value": "{{apiVersion}}",
                "description": "API version"
              }
            ],
            "url": {
              "raw": "{{apiBaseUrl}}/taxpayers?limit=10",
              "host": ["{{apiBaseUrl}}"],
              "path": ["taxpayers"],
              "query": [
                {
                  "key": "limit",
                  "value": "10"
                }
              ]
            },
            "description": "Retrieve first page of Taxpayers with limit"
          },
          "response": []
        }
      ]
    },
    {
      "name": "locations",
      "item": [
        {
          "name": "Create a Location::BRANCH",
          "event": [
            {
              "listen": "test",
              "script": {
                "exec": [
                  "pm.test(\"Status code is 200\", function () {",
                  "    pm.response.to.have.status(200);",
                  "    var data = pm.response.json();",
                  "    pm.environment.set(\"locationId\", data.content.id);",
                  "});"
                ],
                "type": "text/javascript",
                "packages": {},
                "requests": {}
              }
            }
          ],
          "request": {
            "auth": {
              "type": "bearer",
              "bearer": [
                {
                  "key": "token",
                  "value": "{{subjectBearerToken}}",
                  "type": "string"
                }
              ]
            },
            "method": "POST",
            "header": [
              {
                "key": "Content-Type",
                "value": "application/json"
              },
              {
                "key": "X-Api-Version",
                "value": "{{apiVersion}}",
                "description": "API version"
              },
              {
                "key": "X-Idempotency-Key",
                "value": "{{$guid}}",
                "description": "(Required) Idempotency key"
              }
            ],
            "body": {
              "mode": "raw",
              "raw": "{\n  \"content\": {\n    \"type\": \"BRANCH\",\n    \"taxpayer\": {\n      \"id\": \"{{taxpayerId}}\"\n    },\n    \"name\": \"My Store Branch\",\n    \"address\": {\n      \"line\": {\n        \"type\": \"STREET_NUMBER\",\n        \"street\": \"Viale Farini\",\n        \"number\": \"512\",\n        \"prefix\": \"0000\",\n        \"infix\": \"1234\",\n        \"suffix\": \"6789\"\n      },\n      \"code\": \"48125\",\n      \"city\": \"Ravenna\",\n      \"country\": \"IT\"\n    }\n  },\n  \"metadata\": {\n    \"store_code\": \"STORE001\"\n  }\n}",
              "options": {
                "raw": {
                  "language": "json"
                }
              }
            },
            "url": {
              "raw": "{{apiBaseUrl}}/locations",
              "host": ["{{apiBaseUrl}}"],
              "path": ["locations"]
            },
            "description": "Create a Location::BRANCH (formerly Entity::LOCATION). Locations represent physical business locations."
          },
          "response": []
        },
        {
          "name": "Retrieve a Location::BRANCH",
          "event": [
            {
              "listen": "test",
              "script": {
                "exec": [
                  "pm.test(\"Status code is 200\", function () {",
                  "    pm.response.to.have.status(200);",
                  "});"
                ],
                "type": "text/javascript",
                "packages": {}
              }
            }
          ],
          "request": {
            "auth": {
              "type": "bearer",
              "bearer": [
                {
                  "key": "token",
                  "value": "{{subjectBearerToken}}",
                  "type": "string"
                }
              ]
            },
            "method": "GET",
            "header": [
              {
                "key": "Accept",
                "value": "application/json"
              },
              {
                "key": "X-Api-Version",
                "value": "{{apiVersion}}",
                "description": "API version"
              }
            ],
            "url": {
              "raw": "{{apiBaseUrl}}/locations/{{locationId}}",
              "host": ["{{apiBaseUrl}}"],
              "path": ["locations", "{{locationId}}"]
            },
            "description": "Retrieve a Location by ID"
          },
          "response": []
        },
        {
          "name": "Update a Location::BRANCH (Commission)",
          "event": [
            {
              "listen": "test",
              "script": {
                "exec": [
                  "pm.test(\"Status code is 200\", function () {",
                  "    pm.response.to.have.status(200);",
                  "    var data = pm.response.json();",
                  "    pm.test(\"State is COMMISSIONED\", function () {",
                  "        pm.expect(data.content.state).to.eql(\"COMMISSIONED\");",
                  "    });",
                  "});"
                ],
                "type": "text/javascript",
                "packages": {}
              }
            }
          ],
          "request": {
            "auth": {
              "type": "bearer",
              "bearer": [
                {
                  "key": "token",
                  "value": "{{subjectBearerToken}}",
                  "type": "string"
                }
              ]
            },
            "method": "PATCH",
            "header": [
              {
                "key": "Content-Type",
                "value": "application/json"
              },
              {
                "key": "X-Api-Version",
                "value": "{{apiVersion}}",
                "description": "API version"
              },
              {
                "key": "X-Idempotency-Key",
                "value": "{{$guid}}",
                "description": "(Required) Idempotency key"
              }
            ],
            "body": {
              "mode": "raw",
              "raw": "{\n  \"content\": {\n    \"state\": \"COMMISSIONED\"\n  }\n}",
              "options": {
                "raw": {
                  "language": "json"
                }
              }
            },
            "url": {
              "raw": "{{apiBaseUrl}}/locations/{{locationId}}",
              "host": ["{{apiBaseUrl}}"],
              "path": ["locations", "{{locationId}}"]
            },
            "description": "Update a Location to COMMISSIONED state"
          },
          "response": []
        },
        {
          "name": "List Locations",
          "event": [
            {
              "listen": "test",
              "script": {
                "exec": [
                  "pm.test(\"Status code is 200\", function () {",
                  "    pm.response.to.have.status(200);",
                  "});"
                ],
                "type": "text/javascript",
                "packages": {}
              }
            }
          ],
          "request": {
            "auth": {
              "type": "bearer",
              "bearer": [
                {
                  "key": "token",
                  "value": "{{subjectBearerToken}}",
                  "type": "string"
                }
              ]
            },
            "method": "GET",
            "header": [
              {
                "key": "Accept",
                "value": "application/json"
              },
              {
                "key": "X-Api-Version",
                "value": "{{apiVersion}}",
                "description": "API version"
              }
            ],
            "url": {
              "raw": "{{apiBaseUrl}}/locations",
              "host": ["{{apiBaseUrl}}"],
              "path": ["locations"]
            },
            "description": "Retrieve a list of Locations"
          },
          "response": []
        },
        {
          "name": "List Locations by Taxpayer",
          "event": [
            {
              "listen": "test",
              "script": {
                "exec": [
                  "pm.test(\"Status code is 200\", function () {",
                  "    pm.response.to.have.status(200);",
                  "});"
                ],
                "type": "text/javascript",
                "packages": {}
              }
            }
          ],
          "request": {
            "auth": {
              "type": "bearer",
              "bearer": [
                {
                  "key": "token",
                  "value": "{{subjectBearerToken}}",
                  "type": "string"
                }
              ]
            },
            "method": "GET",
            "header": [
              {
                "key": "Accept",
                "value": "application/json"
              },
              {
                "key": "X-Api-Version",
                "value": "{{apiVersion}}",
                "description": "API version"
              }
            ],
            "url": {
              "raw": "{{apiBaseUrl}}/locations?taxpayer_id={{taxpayerId}}",
              "host": ["{{apiBaseUrl}}"],
              "path": ["locations"],
              "query": [
                {
                  "key": "taxpayer_id",
                  "value": "{{taxpayerId}}"
                }
              ]
            },
            "description": "Retrieve Locations filtered by Taxpayer ID"
          },
          "response": []
        }
      ]
    },
    {
      "name": "systems (FISCAL_DEVICE)",
      "item": [
        {
          "name": "Create a System::FISCAL_DEVICE (INTERNAL)",
          "event": [
            {
              "listen": "test",
              "script": {
                "exec": [
                  "pm.test(\"Status code is 200\", function () {",
                  "    pm.response.to.have.status(200);",
                  "    var data = pm.response.json();",
                  "    pm.environment.set(\"fiscalDeviceId\", data.content.id);",
                  "});"
                ],
                "type": "text/javascript",
                "packages": {}
              }
            }
          ],
          "request": {
            "auth": {
              "type": "bearer",
              "bearer": [
                {
                  "key": "token",
                  "value": "{{subjectBearerToken}}",
                  "type": "string"
                }
              ]
            },
            "method": "POST",
            "header": [
              {
                "key": "Content-Type",
                "value": "application/json"
              },
              {
                "key": "X-Api-Version",
                "value": "{{apiVersion}}",
                "description": "API version"
              },
              {
                "key": "X-Idempotency-Key",
                "value": "{{$guid}}",
                "description": "(Required) Idempotency key"
              }
            ],
            "body": {
              "mode": "raw",
              "raw": "{\n  \"content\": {\n    \"type\": \"FISCAL_DEVICE\",\n    \"kind\": \"INTERNAL\",\n    \"location\": {\n      \"id\": \"{{locationId}}\"\n    },\n    \"producer\": {\n      \"type\": \"MPN\",\n      \"number\": \"FD-001\",\n      \"details\": {\n        \"name\": \"My Fiscal Device\",\n        \"model\": \"FD-Model-1\",\n        \"brand\": \"fiskaly\",\n        \"serial\": \"FD-SERIAL-001\"\n      }\n    },\n    \"software\": {\n      \"name\": \"SIGN IT Lite\",\n      \"version\": \"v1.0.0\"\n    }\n  },\n  \"metadata\": {\n    \"device_label\": \"POS-1\"\n  }\n}",
              "options": {
                "raw": {
                  "language": "json"
                }
              }
            },
            "url": {
              "raw": "{{apiBaseUrl}}/systems",
              "host": ["{{apiBaseUrl}}"],
              "path": ["systems"]
            },
            "description": "Create a System::FISCAL_DEVICE with kind=INTERNAL (for SIGN IT Lite). The kind field is new in v3 and can be INTERNAL or EXTERNAL."
          },
          "response": []
        },
        {
          "name": "Update a System::FISCAL_DEVICE (Commission)",
          "event": [
            {
              "listen": "test",
              "script": {
                "exec": [
                  "pm.test(\"Status code is 200\", function () {",
                  "    pm.response.to.have.status(200);",
                  "    var data = pm.response.json();",
                  "    pm.test(\"State is COMMISSIONED\", function () {",
                  "        pm.expect(data.content.state).to.eql(\"COMMISSIONED\");",
                  "    });",
                  "});"
                ],
                "type": "text/javascript",
                "packages": {}
              }
            }
          ],
          "request": {
            "auth": {
              "type": "bearer",
              "bearer": [
                {
                  "key": "token",
                  "value": "{{subjectBearerToken}}",
                  "type": "string"
                }
              ]
            },
            "method": "PATCH",
            "header": [
              {
                "key": "Content-Type",
                "value": "application/json"
              },
              {
                "key": "X-Api-Version",
                "value": "{{apiVersion}}",
                "description": "API version"
              },
              {
                "key": "X-Idempotency-Key",
                "value": "{{$guid}}",
                "description": "(Required) Idempotency key"
              }
            ],
            "body": {
              "mode": "raw",
              "raw": "{\n  \"content\": {\n    \"state\": \"COMMISSIONED\"\n  }\n}",
              "options": {
                "raw": {
                  "language": "json"
                }
              }
            },
            "url": {
              "raw": "{{apiBaseUrl}}/systems/{{fiscalDeviceId}}",
              "host": ["{{apiBaseUrl}}"],
              "path": ["systems", "{{fiscalDeviceId}}"]
            },
            "description": "Update a System to COMMISSIONED state"
          },
          "response": []
        },
        {
          "name": "Retrieve a System::FISCAL_DEVICE",
          "event": [
            {
              "listen": "test",
              "script": {
                "exec": [
                  "pm.test(\"Status code is 200\", function () {",
                  "    pm.response.to.have.status(200);",
                  "});"
                ],
                "type": "text/javascript",
                "packages": {}
              }
            }
          ],
          "request": {
            "auth": {
              "type": "bearer",
              "bearer": [
                {
                  "key": "token",
                  "value": "{{subjectBearerToken}}",
                  "type": "string"
                }
              ]
            },
            "method": "GET",
            "header": [
              {
                "key": "Accept",
                "value": "application/json"
              },
              {
                "key": "X-Api-Version",
                "value": "{{apiVersion}}",
                "description": "API version"
              }
            ],
            "url": {
              "raw": "{{apiBaseUrl}}/systems/{{fiscalDeviceId}}",
              "host": ["{{apiBaseUrl}}"],
              "path": ["systems", "{{fiscalDeviceId}}"]
            },
            "description": "Retrieve a System by ID"
          },
          "response": []
        },
        {
          "name": "List Systems",
          "event": [
            {
              "listen": "test",
              "script": {
                "exec": [
                  "pm.test(\"Status code is 200\", function () {",
                  "    pm.response.to.have.status(200);",
                  "});"
                ],
                "type": "text/javascript",
                "packages": {}
              }
            }
          ],
          "request": {
            "auth": {
              "type": "bearer",
              "bearer": [
                {
                  "key": "token",
                  "value": "{{subjectBearerToken}}",
                  "type": "string"
                }
              ]
            },
            "method": "GET",
            "header": [
              {
                "key": "Accept",
                "value": "application/json"
              },
              {
                "key": "X-Api-Version",
                "value": "{{apiVersion}}",
                "description": "API version"
              }
            ],
            "url": {
              "raw": "{{apiBaseUrl}}/systems",
              "host": ["{{apiBaseUrl}}"],
              "path": ["systems"]
            },
            "description": "Retrieve a list of Systems"
          },
          "response": []
        }
      ]
    },
    {
      "name": "systems (PAYMENT_DEVICE) - SUBMIT IT",
      "item": [
        {
          "name": "Create a System::PAYMENT_DEVICE (PHYSICAL)",
          "event": [
            {
              "listen": "test",
              "script": {
                "exec": [
                  "pm.test(\"Status code is 200\", function () {",
                  "    pm.response.to.have.status(200);",
                  "    var data = pm.response.json();",
                  "    pm.environment.set(\"paymentDeviceId\", data.content.id);",
                  "    pm.test(\"Type is PAYMENT_DEVICE\", function () {",
                  "        pm.expect(data.content.type).to.eql(\"PAYMENT_DEVICE\");",
                  "    });",
                  "    pm.test(\"Kind is PHYSICAL\", function () {",
                  "        pm.expect(data.content.kind).to.eql(\"PHYSICAL\");",
                  "    });",
                  "    pm.test(\"State is ACQUIRED\", function () {",
                  "        pm.expect(data.content.state).to.eql(\"ACQUIRED\");",
                  "    });",
                  "    pm.test(\"connected_to contains fiscal device\", function () {",
                  "        pm.expect(data.content.connected_to).to.include(pm.environment.get(\"fiscalDeviceId\"));",
                  "    });",
                  "});"
                ],
                "type": "text/javascript",
                "packages": {}
              }
            }
          ],
          "request": {
            "auth": {
              "type": "bearer",
              "bearer": [
                {
                  "key": "token",
                  "value": "{{subjectBearerToken}}",
                  "type": "string"
                }
              ]
            },
            "method": "POST",
            "header": [
              {
                "key": "Content-Type",
                "value": "application/json"
              },
              {
                "key": "X-Api-Version",
                "value": "{{apiVersion}}",
                "description": "API version"
              },
              {
                "key": "X-Idempotency-Key",
                "value": "{{$guid}}",
                "description": "(Required) Idempotency key"
              }
            ],
            "body": {
              "mode": "raw",
              "raw": "{\n  \"content\": {\n    \"type\": \"PAYMENT_DEVICE\",\n    \"kind\": \"PHYSICAL\",\n    \"location\": {\n      \"id\": \"{{locationId}}\"\n    },\n    \"producer\": {\n      \"type\": \"MPN\",\n      \"number\": \"PD-001\",\n      \"details\": {\n        \"name\": \"My POS Terminal\",\n        \"model\": \"POS-Model-X\",\n        \"brand\": \"PaymentTech\",\n        \"serial\": \"POS-SERIAL-001\"\n      }\n    },\n    \"software\": {\n      \"name\": \"PayOS\",\n      \"version\": \"v2.0.0\"\n    },\n    \"acquirer\": {\n      \"tax_id_number\": \"12345678901234\",\n      \"legal_name\": \"Acquirer Bank SpA\"\n    },\n    \"label\": \"POS-TERMINAL-001\",\n    \"connected_to\": [\"{{fiscalDeviceId}}\"]\n  },\n  \"metadata\": {\n    \"terminal_location\": \"checkout_1\"\n  }\n}",
              "options": {
                "raw": {
                  "language": "json"
                }
              }
            },
            "url": {
              "raw": "{{apiBaseUrl}}/systems",
              "host": ["{{apiBaseUrl}}"],
              "path": ["systems"]
            },
            "description": "Create a System::PAYMENT_DEVICE for SUBMIT IT. This represents a POS terminal or electronic payment instrument.\n\n**Fields:**\n- `type`: PAYMENT_DEVICE\n- `kind`: PHYSICAL (for hardware POS) or VIRTUAL (for software/SoftPOS)\n- `location`: Must reference a BRANCH location (not HEAD_OFFICE)\n- `producer`: Hardware/terminal manufacturer details\n- `software`: Payment software/OS details\n- `acquirer`: Financial operator (acquirer/PSP) information\n- `label`: Device identifier/serial number\n- `connected_to`: Array of FISCAL_DEVICE system IDs to connect to (optional, can also be set via PATCH)"
          },
          "response": []
        },
        {
          "name": "Retrieve a System::PAYMENT_DEVICE",
          "event": [
            {
              "listen": "test",
              "script": {
                "exec": [
                  "pm.test(\"Status code is 200\", function () {",
                  "    pm.response.to.have.status(200);",
                  "    var data = pm.response.json();",
                  "    pm.test(\"Type is PAYMENT_DEVICE\", function () {",
                  "        pm.expect(data.content.type).to.eql(\"PAYMENT_DEVICE\");",
                  "    });",
                  "});"
                ],
                "type": "text/javascript",
                "packages": {}
              }
            }
          ],
          "request": {
            "auth": {
              "type": "bearer",
              "bearer": [
                {
                  "key": "token",
                  "value": "{{subjectBearerToken}}",
                  "type": "string"
                }
              ]
            },
            "method": "GET",
            "header": [
              {
                "key": "Accept",
                "value": "application/json"
              },
              {
                "key": "X-Api-Version",
                "value": "{{apiVersion}}",
                "description": "API version"
              }
            ],
            "url": {
              "raw": "{{apiBaseUrl}}/systems/{{paymentDeviceId}}",
              "host": ["{{apiBaseUrl}}"],
              "path": ["systems", "{{paymentDeviceId}}"]
            },
            "description": "Retrieve a Payment Device System by ID"
          },
          "response": []
        },
        {
          "name": "Update PAYMENT_DEVICE Connection (PATCH)",
          "event": [
            {
              "listen": "test",
              "script": {
                "exec": [
                  "pm.test(\"Status code is 200\", function () {",
                  "    pm.response.to.have.status(200);",
                  "    var data = pm.response.json();",
                  "    pm.test(\"connected_to contains fiscal device\", function () {",
                  "        pm.expect(data.content.connected_to).to.include(pm.environment.get(\"fiscalDeviceId\"));",
                  "    });",
                  "});"
                ],
                "type": "text/javascript",
                "packages": {}
              }
            }
          ],
          "request": {
            "auth": {
              "type": "bearer",
              "bearer": [
                {
                  "key": "token",
                  "value": "{{subjectBearerToken}}",
                  "type": "string"
                }
              ]
            },
            "method": "PATCH",
            "header": [
              {
                "key": "Content-Type",
                "value": "application/json"
              },
              {
                "key": "X-Api-Version",
                "value": "{{apiVersion}}",
                "description": "API version"
              },
              {
                "key": "X-Idempotency-Key",
                "value": "{{$guid}}",
                "description": "(Required) Idempotency key"
              }
            ],
            "body": {
              "mode": "raw",
              "raw": "{\n  \"content\": {\n    \"connected_to\": [\"{{fiscalDeviceId}}\"]\n  }\n}",
              "options": {
                "raw": {
                  "language": "json"
                }
              }
            },
            "url": {
              "raw": "{{apiBaseUrl}}/systems/{{paymentDeviceId}}",
              "host": ["{{apiBaseUrl}}"],
              "path": ["systems", "{{paymentDeviceId}}"]
            },
            "description": "Update the connection between a Payment Device and Fiscal Device(s) via PATCH.\n\n**Use Cases:**\n- Change which Fiscal Device(s) the Payment Device is connected to\n- Add additional connections\n- Remove connections (set to empty array `[]`)\n\n**Requirements:**\n- PAYMENT_DEVICE must be in ACQUIRED state or SUSPENDED mode\n- Target FISCAL_DEVICE must be in COMMISSIONED state\n- For PHYSICAL kind: devices must be at the same location\n- For VIRTUAL kind: devices can be at different locations\n\n**Note:** The `connected_to` field can also be set during creation (POST). Use PATCH when you need to modify an existing connection."
          },
          "response": []
        },
        {
          "name": "Commission PAYMENT_DEVICE",
          "event": [
            {
              "listen": "test",
              "script": {
                "exec": [
                  "pm.test(\"Status code is 200\", function () {",
                  "    pm.response.to.have.status(200);",
                  "    var data = pm.response.json();",
                  "    pm.test(\"State is COMMISSIONED\", function () {",
                  "        pm.expect(data.content.state).to.eql(\"COMMISSIONED\");",
                  "    });",
                  "    pm.test(\"Mode is OPERATIVE\", function () {",
                  "        pm.expect(data.content.mode).to.eql(\"OPERATIVE\");",
                  "    });",
                  "});"
                ],
                "type": "text/javascript",
                "packages": {}
              }
            }
          ],
          "request": {
            "auth": {
              "type": "bearer",
              "bearer": [
                {
                  "key": "token",
                  "value": "{{subjectBearerToken}}",
                  "type": "string"
                }
              ]
            },
            "method": "PATCH",
            "header": [
              {
                "key": "Content-Type",
                "value": "application/json"
              },
              {
                "key": "X-Api-Version",
                "value": "{{apiVersion}}",
                "description": "API version"
              },
              {
                "key": "X-Idempotency-Key",
                "value": "{{$guid}}",
                "description": "(Required) Idempotency key"
              }
            ],
            "body": {
              "mode": "raw",
              "raw": "{\n  \"content\": {\n    \"state\": \"COMMISSIONED\"\n  }\n}",
              "options": {
                "raw": {
                  "language": "json"
                }
              }
            },
            "url": {
              "raw": "{{apiBaseUrl}}/systems/{{paymentDeviceId}}",
              "host": ["{{apiBaseUrl}}"],
              "path": ["systems", "{{paymentDeviceId}}"]
            },
            "description": "Commission a Payment Device. After commissioning, the device enters OPERATIVE mode.\n\n**Note:** Once in COMMISSIONED/OPERATIVE state, the `connected_to` field cannot be updated. To change connections, the device must first be moved to SUSPENDED mode."
          },
          "response": []
        },
        {
          "name": "Decommission PAYMENT_DEVICE",
          "event": [
            {
              "listen": "test",
              "script": {
                "exec": [
                  "pm.test(\"Status code is 200\", function () {",
                  "    pm.response.to.have.status(200);",
                  "    var data = pm.response.json();",
                  "    pm.test(\"State is DECOMMISSIONED\", function () {",
                  "        pm.expect(data.content.state).to.eql(\"DECOMMISSIONED\");",
                  "    });",
                  "});"
                ],
                "type": "text/javascript",
                "packages": {}
              }
            }
          ],
          "request": {
            "auth": {
              "type": "bearer",
              "bearer": [
                {
                  "key": "token",
                  "value": "{{subjectBearerToken}}",
                  "type": "string"
                }
              ]
            },
            "method": "PATCH",
            "header": [
              {
                "key": "Content-Type",
                "value": "application/json"
              },
              {
                "key": "X-Api-Version",
                "value": "{{apiVersion}}",
                "description": "API version"
              },
              {
                "key": "X-Idempotency-Key",
                "value": "{{$guid}}",
                "description": "(Required) Idempotency key"
              }
            ],
            "body": {
              "mode": "raw",
              "raw": "{\n  \"content\": {\n    \"state\": \"DECOMMISSIONED\"\n  }\n}",
              "options": {
                "raw": {
                  "language": "json"
                }
              }
            },
            "url": {
              "raw": "{{apiBaseUrl}}/systems/{{paymentDeviceId}}",
              "host": ["{{apiBaseUrl}}"],
              "path": ["systems", "{{paymentDeviceId}}"]
            },
            "description": "Decommission a Payment Device when it's no longer in use."
          },
          "response": []
        }
      ],
      "description": "SUBMIT IT feature: Create and manage Payment Devices and their connection to Fiscal Devices. This is required for Italian POS-RT pairing compliance."
    },
    {
      "name": "records (RECEIPT)",
      "item": [
        {
          "name": "Create a Record::INTENTION",
          "event": [
            {
              "listen": "test",
              "script": {
                "exec": [
                  "pm.test(\"Status code is 200\", function () {",
                  "    pm.response.to.have.status(200);",
                  "    var data = pm.response.json();",
                  "    pm.environment.set(\"intentionId\", data.content.id);",
                  "});"
                ],
                "type": "text/javascript",
                "packages": {},
                "requests": {}
              }
            }
          ],
          "request": {
            "auth": {
              "type": "bearer",
              "bearer": [
                {
                  "key": "token",
                  "value": "{{subjectBearerToken}}",
                  "type": "string"
                }
              ]
            },
            "method": "POST",
            "header": [
              {
                "key": "Content-Type",
                "value": "application/json"
              },
              {
                "key": "X-Api-Version",
                "value": "{{apiVersion}}",
                "description": "API version"
              },
              {
                "key": "X-Idempotency-Key",
                "value": "{{$guid}}",
                "description": "(Required) Idempotency key"
              }
            ],
            "body": {
              "mode": "raw",
              "raw": "{\n  \"content\": {\n    \"type\": \"INTENTION\",\n    \"operation\": {\n      \"type\": \"TRANSACTION\"\n    },\n    \"system\": { \"id\": \"{{fiscalDeviceId}}\" }\n  }\n}",
              "options": {
                "raw": {
                  "language": "json"
                }
              }
            },
            "url": {
              "raw": "{{apiBaseUrl}}/records",
              "host": ["{{apiBaseUrl}}"],
              "path": ["records"]
            },
            "description": "Create a Record::INTENTION for a TRANSACTION operation"
          },
          "response": []
        },
        {
          "name": "Retrieve a Record::INTENTION",
          "event": [
            {
              "listen": "test",
              "script": {
                "exec": [
                  "pm.test(\"Status code is 200\", function () {",
                  "    pm.response.to.have.status(200);",
                  "});"
                ],
                "type": "text/javascript",
                "packages": {}
              }
            }
          ],
          "request": {
            "auth": {
              "type": "bearer",
              "bearer": [
                {
                  "key": "token",
                  "value": "{{subjectBearerToken}}",
                  "type": "string"
                }
              ]
            },
            "method": "GET",
            "header": [
              {
                "key": "Accept",
                "value": "application/json"
              },
              {
                "key": "X-Api-Version",
                "value": "{{apiVersion}}",
                "description": "API version"
              }
            ],
            "url": {
              "raw": "{{apiBaseUrl}}/records/{{intentionId}}",
              "host": ["{{apiBaseUrl}}"],
              "path": ["records", "{{intentionId}}"]
            },
            "description": "Retrieve a Record by ID"
          },
          "response": []
        },
        {
          "name": "Update a Record::INTENTION",
          "event": [
            {
              "listen": "test",
              "script": {
                "exec": [
                  "pm.test(\"Status code is 200\", function () {",
                  "    pm.response.to.have.status(200);",
                  "});"
                ],
                "type": "text/javascript",
                "packages": {}
              }
            }
          ],
          "request": {
            "auth": {
              "type": "bearer",
              "bearer": [
                {
                  "key": "token",
                  "value": "{{subjectBearerToken}}",
                  "type": "string"
                }
              ]
            },
            "method": "PATCH",
            "header": [
              {
                "key": "Content-Type",
                "value": "application/json"
              },
              {
                "key": "X-Api-Version",
                "value": "{{apiVersion}}",
                "description": "API version"
              },
              {
                "key": "X-Idempotency-Key",
                "value": "{{$guid}}",
                "description": "(Required) Idempotency key"
              }
            ],
            "body": {
              "mode": "raw",
              "raw": "{\n  \"metadata\": {\n    \"updated_key\": \"updated_value\"\n  }\n}",
              "options": {
                "raw": {
                  "language": "json"
                }
              }
            },
            "url": {
              "raw": "{{apiBaseUrl}}/records/{{intentionId}}",
              "host": ["{{apiBaseUrl}}"],
              "path": ["records", "{{intentionId}}"]
            },
            "description": "Update a Record::INTENTION metadata"
          },
          "response": []
        },
        {
          "name": "Create a Record::TRANSACTION::RECEIPT",
          "event": [
            {
              "listen": "test",
              "script": {
                "exec": [
                  "pm.test(\"Status code is 200\", function () {",
                  "    pm.response.to.have.status(200);",
                  "    var data = pm.response.json();",
                  "    pm.environment.set(\"receiptId\", data.content.id);",
                  "});"
                ],
                "type": "text/javascript",
                "packages": {},
                "requests": {}
              }
            }
          ],
          "request": {
            "auth": {
              "type": "bearer",
              "bearer": [
                {
                  "key": "token",
                  "value": "{{subjectBearerToken}}",
                  "type": "string"
                }
              ]
            },
            "method": "POST",
            "header": [
              {
                "key": "Content-Type",
                "value": "application/json"
              },
              {
                "key": "X-Api-Version",
                "value": "{{apiVersion}}",
                "description": "API version"
              },
              {
                "key": "X-Idempotency-Key",
                "value": "{{$guid}}",
                "description": "(Required) Idempotency key"
              }
            ],
            "body": {
              "mode": "raw",
              "raw": "{\n  \"content\": {\n    \"type\": \"TRANSACTION\",\n    \"record\": {\n      \"id\": \"{{intentionId}}\"\n    },\n    \"operation\": {\n      \"type\": \"RECEIPT\",\n      \"document\": {\n        \"number\": \"0001\",\n        \"total_vat\": {\n          \"amount\": \"4.45454545\",\n          \"exclusive\": \"20.54545455\",\n          \"inclusive\": \"25.00\"\n        }\n      },\n      \"entries\": [\n        {\n          \"type\": \"SALE\",\n          \"details\": {\n            \"concept\": \"GOOD\"\n          },\n          \"data\": {\n            \"type\": \"ITEM\",\n            \"text\": \"Product A\",\n            \"unit\": {\n              \"quantity\": \"2.00\",\n              \"price\": \"12.20\"\n            },\n            \"value\": {\n              \"base\": \"20.00\",\n              \"discount\": \"0.00\"\n            },\n            \"vat\": {\n              \"type\": \"VAT_RATE\",\n              \"code\": \"STANDARD\",\n              \"percentage\": \"22.00\",\n              \"exclusive\": \"20.00\",\n              \"inclusive\": \"24.40\",\n              \"amount\": \"4.40\"\n            }\n          }\n        },\n        {\n          \"type\": \"SALE\",\n          \"details\": {\n            \"concept\": \"SERVICE\"\n          },\n          \"data\": {\n            \"type\": \"ITEM\",\n            \"text\": \"Service B\",\n            \"unit\": {\n              \"quantity\": \"1.00\",\n              \"price\": \"0.60\"\n            },\n            \"value\": {\n              \"base\": \"0.54545455\",\n              \"discount\": \"0.00\"\n            },\n            \"vat\": {\n              \"type\": \"VAT_RATE\",\n              \"code\": \"REDUCED_1\",\n              \"percentage\": \"10.00\",\n              \"exclusive\": \"0.54545455\",\n              \"inclusive\": \"0.60\",\n              \"amount\": \"0.05454545\"\n            }\n          }\n        }\n      ],\n      \"payments\": [\n        {\n          \"type\": \"CASH\",\n          \"details\": {\n            \"amount\": \"25.00\"\n          }\n        }\n      ]\n    }\n  }\n}",
              "options": {
                "raw": {
                  "language": "json"
                }
              }
            },
            "url": {
              "raw": "{{apiBaseUrl}}/records",
              "host": ["{{apiBaseUrl}}"],
              "path": ["records"]
            },
            "description": "Create a Record::TRANSACTION::RECEIPT"
          },
          "response": []
        },
        {
          "name": "Retrieve a Record::TRANSACTION::RECEIPT",
          "event": [
            {
              "listen": "test",
              "script": {
                "exec": [
                  "pm.test(\"Status code is 200\", function () {",
                  "    pm.response.to.have.status(200);",
                  "});"
                ],
                "type": "text/javascript",
                "packages": {}
              }
            }
          ],
          "request": {
            "auth": {
              "type": "bearer",
              "bearer": [
                {
                  "key": "token",
                  "value": "{{subjectBearerToken}}",
                  "type": "string"
                }
              ]
            },
            "method": "GET",
            "header": [
              {
                "key": "Accept",
                "value": "application/json"
              },
              {
                "key": "X-Api-Version",
                "value": "{{apiVersion}}",
                "description": "API version"
              }
            ],
            "url": {
              "raw": "{{apiBaseUrl}}/records/{{receiptId}}",
              "host": ["{{apiBaseUrl}}"],
              "path": ["records", "{{receiptId}}"]
            },
            "description": "Retrieve a Receipt Record by ID"
          },
          "response": []
        },
        {
          "name": "Update a Record::TRANSACTION::RECEIPT",
          "event": [
            {
              "listen": "test",
              "script": {
                "exec": [
                  "pm.test(\"Status code is 200\", function () {",
                  "    pm.response.to.have.status(200);",
                  "});"
                ],
                "type": "text/javascript",
                "packages": {}
              }
            }
          ],
          "request": {
            "auth": {
              "type": "bearer",
              "bearer": [
                {
                  "key": "token",
                  "value": "{{subjectBearerToken}}",
                  "type": "string"
                }
              ]
            },
            "method": "PATCH",
            "header": [
              {
                "key": "Content-Type",
                "value": "application/json"
              },
              {
                "key": "X-Api-Version",
                "value": "{{apiVersion}}",
                "description": "API version"
              },
              {
                "key": "X-Idempotency-Key",
                "value": "{{$guid}}",
                "description": "(Required) Idempotency key"
              }
            ],
            "body": {
              "mode": "raw",
              "raw": "{\n  \"metadata\": {\n    \"receipt_note\": \"Customer requested copy\"\n  }\n}",
              "options": {
                "raw": {
                  "language": "json"
                }
              }
            },
            "url": {
              "raw": "{{apiBaseUrl}}/records/{{receiptId}}",
              "host": ["{{apiBaseUrl}}"],
              "path": ["records", "{{receiptId}}"]
            },
            "description": "Update a Receipt Record metadata"
          },
          "response": []
        },
        {
          "name": "List Records",
          "event": [
            {
              "listen": "test",
              "script": {
                "exec": [
                  "pm.test(\"Status code is 200\", function () {",
                  "    pm.response.to.have.status(200);",
                  "});"
                ],
                "type": "text/javascript",
                "packages": {}
              }
            }
          ],
          "request": {
            "auth": {
              "type": "bearer",
              "bearer": [
                {
                  "key": "token",
                  "value": "{{subjectBearerToken}}",
                  "type": "string"
                }
              ]
            },
            "method": "GET",
            "header": [
              {
                "key": "Accept",
                "value": "application/json"
              },
              {
                "key": "X-Api-Version",
                "value": "{{apiVersion}}",
                "description": "API version"
              }
            ],
            "url": {
              "raw": "{{apiBaseUrl}}/records",
              "host": ["{{apiBaseUrl}}"],
              "path": ["records"]
            },
            "description": "Retrieve a list of Records"
          },
          "response": []
        },
        {
          "name": "List Records by Type",
          "event": [
            {
              "listen": "test",
              "script": {
                "exec": [
                  "pm.test(\"Status code is 200\", function () {",
                  "    pm.response.to.have.status(200);",
                  "});"
                ],
                "type": "text/javascript",
                "packages": {}
              }
            }
          ],
          "request": {
            "auth": {
              "type": "bearer",
              "bearer": [
                {
                  "key": "token",
                  "value": "{{subjectBearerToken}}",
                  "type": "string"
                }
              ]
            },
            "method": "GET",
            "header": [
              {
                "key": "Accept",
                "value": "application/json"
              },
              {
                "key": "X-Api-Version",
                "value": "{{apiVersion}}",
                "description": "API version"
              }
            ],
            "url": {
              "raw": "{{apiBaseUrl}}/records?type=TRANSACTION::RECEIPT",
              "host": ["{{apiBaseUrl}}"],
              "path": ["records"],
              "query": [
                {
                  "key": "type",
                  "value": "TRANSACTION::RECEIPT"
                }
              ]
            },
            "description": "Retrieve Records filtered by type (new in v3)"
          },
          "response": []
        }
      ]
    },
    {
      "name": "records (CANCELLATION)",
      "item": [
        {
          "name": "Create a Record::INTENTION (for original receipt)",
          "event": [
            {
              "listen": "test",
              "script": {
                "exec": [
                  "pm.test(\"Status code is 200\", function () {",
                  "    pm.response.to.have.status(200);",
                  "    var data = pm.response.json();",
                  "    pm.environment.set(\"cancelIntentionId\", data.content.id);",
                  "});"
                ],
                "type": "text/javascript",
                "packages": {},
                "requests": {}
              }
            }
          ],
          "request": {
            "auth": {
              "type": "bearer",
              "bearer": [
                {
                  "key": "token",
                  "value": "{{subjectBearerToken}}",
                  "type": "string"
                }
              ]
            },
            "method": "POST",
            "header": [
              {
                "key": "Content-Type",
                "value": "application/json"
              },
              {
                "key": "X-Api-Version",
                "value": "{{apiVersion}}",
                "description": "API version"
              },
              {
                "key": "X-Idempotency-Key",
                "value": "{{$guid}}",
                "description": "(Required) Idempotency key"
              }
            ],
            "body": {
              "mode": "raw",
              "raw": "{\n  \"content\": {\n    \"type\": \"INTENTION\",\n    \"operation\": {\n      \"type\": \"TRANSACTION\"\n    },\n    \"system\": {\n      \"id\": \"{{fiscalDeviceId}}\"\n    }\n  }\n}",
              "options": {
                "raw": {
                  "language": "json"
                }
              }
            },
            "url": {
              "raw": "{{apiBaseUrl}}/records",
              "host": ["{{apiBaseUrl}}"],
              "path": ["records"]
            },
            "description": "Create intention for original receipt to be cancelled"
          },
          "response": []
        },
        {
          "name": "Retrieve a Record::INTENTION",
          "event": [
            {
              "listen": "test",
              "script": {
                "exec": [
                  "pm.test(\"Status code is 200\", function () {",
                  "    pm.response.to.have.status(200);",
                  "});"
                ],
                "type": "text/javascript",
                "packages": {}
              }
            }
          ],
          "request": {
            "auth": {
              "type": "bearer",
              "bearer": [
                {
                  "key": "token",
                  "value": "{{subjectBearerToken}}",
                  "type": "string"
                }
              ]
            },
            "method": "GET",
            "header": [
              {
                "key": "Accept",
                "value": "application/json"
              },
              {
                "key": "X-Api-Version",
                "value": "{{apiVersion}}",
                "description": "API version"
              }
            ],
            "url": {
              "raw": "{{apiBaseUrl}}/records/{{cancelIntentionId}}",
              "host": ["{{apiBaseUrl}}"],
              "path": ["records", "{{cancelIntentionId}}"]
            },
            "description": "Retrieve the intention"
          },
          "response": []
        },
        {
          "name": "Create a Record::TRANSACTION::RECEIPT (to be cancelled)",
          "event": [
            {
              "listen": "test",
              "script": {
                "exec": [
                  "pm.test(\"Status code is 200\", function () {",
                  "    pm.response.to.have.status(200);",
                  "    var data = pm.response.json();",
                  "    pm.environment.set(\"cancelReceiptId\", data.content.id);",
                  "});"
                ],
                "type": "text/javascript",
                "packages": {},
                "requests": {}
              }
            }
          ],
          "request": {
            "auth": {
              "type": "bearer",
              "bearer": [
                {
                  "key": "token",
                  "value": "{{subjectBearerToken}}",
                  "type": "string"
                }
              ]
            },
            "method": "POST",
            "header": [
              {
                "key": "Content-Type",
                "value": "application/json"
              },
              {
                "key": "X-Api-Version",
                "value": "{{apiVersion}}",
                "description": "API version"
              },
              {
                "key": "X-Idempotency-Key",
                "value": "{{$guid}}",
                "description": "(Required) Idempotency key"
              }
            ],
            "body": {
              "mode": "raw",
              "raw": "{\n  \"content\": {\n    \"type\": \"TRANSACTION\",\n    \"record\": {\n      \"id\": \"{{cancelIntentionId}}\"\n    },\n    \"operation\": {\n      \"type\": \"RECEIPT\",\n      \"document\": {\n        \"number\": \"0003\",\n        \"total_vat\": {\n          \"amount\": \"3.60655738\",\n          \"exclusive\": \"16.39344262\",\n          \"inclusive\": \"20.00\"\n        }\n      },\n      \"entries\": [\n        {\n          \"type\": \"SALE\",\n          \"details\": {\n            \"concept\": \"GOOD\"\n          },\n          \"data\": {\n            \"type\": \"ITEM\",\n            \"text\": \"Product A\",\n            \"unit\": {\n              \"quantity\": \"1.00\",\n              \"price\": \"20.00\"\n            },\n            \"value\": {\n              \"base\": \"16.39344262\",\n              \"discount\": \"0.00\"\n            },\n            \"vat\": {\n              \"type\": \"VAT_RATE\",\n              \"code\": \"STANDARD\",\n              \"percentage\": \"22.00\",\n              \"exclusive\": \"16.39344262\",\n              \"inclusive\": \"20.00\",\n              \"amount\": \"3.60655738\"\n            }\n          }\n        }\n      ],\n      \"payments\": [\n        {\n          \"type\": \"CASH\",\n          \"details\": {\n            \"amount\": \"20.00\"\n          }\n        }\n      ]\n    }\n  }\n}",
              "options": {
                "raw": {
                  "language": "json"
                }
              }
            },
            "url": {
              "raw": "{{apiBaseUrl}}/records",
              "host": ["{{apiBaseUrl}}"],
              "path": ["records"]
            },
            "description": "Create original receipt to be cancelled"
          },
          "response": []
        },
        {
          "name": "Retrieve a Record::TRANSACTION::RECEIPT",
          "event": [
            {
              "listen": "test",
              "script": {
                "exec": [
                  "pm.test(\"Status code is 200\", function () {",
                  "    pm.response.to.have.status(200);",
                  "});"
                ],
                "type": "text/javascript",
                "packages": {}
              }
            }
          ],
          "request": {
            "auth": {
              "type": "bearer",
              "bearer": [
                {
                  "key": "token",
                  "value": "{{subjectBearerToken}}",
                  "type": "string"
                }
              ]
            },
            "method": "GET",
            "header": [
              {
                "key": "Accept",
                "value": "application/json"
              },
              {
                "key": "X-Api-Version",
                "value": "{{apiVersion}}",
                "description": "API version"
              }
            ],
            "url": {
              "raw": "{{apiBaseUrl}}/records/{{cancelReceiptId}}",
              "host": ["{{apiBaseUrl}}"],
              "path": ["records", "{{cancelReceiptId}}"]
            },
            "description": "Retrieve the receipt to be cancelled"
          },
          "response": []
        },
        {
          "name": "Create a Record::INTENTION (for cancellation)",
          "event": [
            {
              "listen": "test",
              "script": {
                "exec": [
                  "pm.test(\"Status code is 200\", function () {",
                  "    pm.response.to.have.status(200);",
                  "    var data = pm.response.json();",
                  "    pm.environment.set(\"cancellationIntentionId\", data.content.id);",
                  "});"
                ],
                "type": "text/javascript",
                "packages": {},
                "requests": {}
              }
            }
          ],
          "request": {
            "auth": {
              "type": "bearer",
              "bearer": [
                {
                  "key": "token",
                  "value": "{{subjectBearerToken}}",
                  "type": "string"
                }
              ]
            },
            "method": "POST",
            "header": [
              {
                "key": "Content-Type",
                "value": "application/json"
              },
              {
                "key": "X-Api-Version",
                "value": "{{apiVersion}}",
                "description": "API version"
              },
              {
                "key": "X-Idempotency-Key",
                "value": "{{$guid}}",
                "description": "(Required) Idempotency key"
              }
            ],
            "body": {
              "mode": "raw",
              "raw": "{\n  \"content\": {\n    \"type\": \"INTENTION\",\n    \"operation\": {\n      \"type\": \"TRANSACTION\"\n    },\n    \"system\": {\n      \"id\": \"{{fiscalDeviceId}}\"\n    }\n  }\n}",
              "options": {
                "raw": {
                  "language": "json"
                }
              }
            },
            "url": {
              "raw": "{{apiBaseUrl}}/records",
              "host": ["{{apiBaseUrl}}"],
              "path": ["records"]
            },
            "description": "Create intention for cancellation transaction"
          },
          "response": []
        },
        {
          "name": "Retrieve a Record::INTENTION",
          "event": [
            {
              "listen": "test",
              "script": {
                "exec": [
                  "pm.test(\"Status code is 200\", function () {",
                  "    pm.response.to.have.status(200);",
                  "});"
                ],
                "type": "text/javascript",
                "packages": {}
              }
            }
          ],
          "request": {
            "auth": {
              "type": "bearer",
              "bearer": [
                {
                  "key": "token",
                  "value": "{{subjectBearerToken}}",
                  "type": "string"
                }
              ]
            },
            "method": "GET",
            "header": [
              {
                "key": "Accept",
                "value": "application/json"
              },
              {
                "key": "X-Api-Version",
                "value": "{{apiVersion}}",
                "description": "API version"
              }
            ],
            "url": {
              "raw": "{{apiBaseUrl}}/records/{{cancellationIntentionId}}",
              "host": ["{{apiBaseUrl}}"],
              "path": ["records", "{{cancellationIntentionId}}"]
            },
            "description": "Retrieve the cancellation intention"
          },
          "response": []
        },
        {
          "name": "Create a Record::TRANSACTION::CANCELLATION",
          "event": [
            {
              "listen": "test",
              "script": {
                "exec": [
                  "pm.test(\"Status code is 200\", function () {",
                  "    pm.response.to.have.status(200);",
                  "    var data = pm.response.json();",
                  "    pm.environment.set(\"cancellationId\", data.content.id);",
                  "});"
                ],
                "type": "text/javascript",
                "packages": {},
                "requests": {}
              }
            }
          ],
          "request": {
            "auth": {
              "type": "bearer",
              "bearer": [
                {
                  "key": "token",
                  "value": "{{subjectBearerToken}}",
                  "type": "string"
                }
              ]
            },
            "method": "POST",
            "header": [
              {
                "key": "Content-Type",
                "value": "application/json"
              },
              {
                "key": "X-Api-Version",
                "value": "{{apiVersion}}",
                "description": "API version"
              },
              {
                "key": "X-Idempotency-Key",
                "value": "{{$guid}}",
                "description": "(Required) Idempotency key"
              }
            ],
            "body": {
              "mode": "raw",
              "raw": "{\n  \"content\": {\n    \"type\": \"TRANSACTION\",\n    \"record\": {\n      \"id\": \"{{cancellationIntentionId}}\"\n    },\n    \"operation\": {\n      \"type\": \"CANCELLATION\",\n      \"record\": {\n        \"id\": \"{{cancelReceiptId}}\"\n      }\n    }\n  }\n}",
              "options": {
                "raw": {
                  "language": "json"
                }
              }
            },
            "url": {
              "raw": "{{apiBaseUrl}}/records",
              "host": ["{{apiBaseUrl}}"],
              "path": ["records"]
            },
            "description": "Create a CANCELLATION transaction referencing the original receipt"
          },
          "response": []
        },
        {
          "name": "Retrieve a Record::TRANSACTION::CANCELLATION",
          "event": [
            {
              "listen": "test",
              "script": {
                "exec": [
                  "pm.test(\"Status code is 200\", function () {",
                  "    pm.response.to.have.status(200);",
                  "});"
                ],
                "type": "text/javascript",
                "packages": {}
              }
            }
          ],
          "request": {
            "auth": {
              "type": "bearer",
              "bearer": [
                {
                  "key": "token",
                  "value": "{{subjectBearerToken}}",
                  "type": "string"
                }
              ]
            },
            "method": "GET",
            "header": [
              {
                "key": "Accept",
                "value": "application/json"
              },
              {
                "key": "X-Api-Version",
                "value": "{{apiVersion}}",
                "description": "API version"
              }
            ],
            "url": {
              "raw": "{{apiBaseUrl}}/records/{{cancellationId}}",
              "host": ["{{apiBaseUrl}}"],
              "path": ["records", "{{cancellationId}}"]
            },
            "description": "Retrieve the cancellation record"
          },
          "response": []
        }
      ]
    },
    {
      "name": "records (CORRECTION)",
      "item": [
        {
          "name": "Create a Record::INTENTION (for original receipt)",
          "event": [
            {
              "listen": "test",
              "script": {
                "exec": [
                  "pm.test(\"Status code is 200\", function () {",
                  "    pm.response.to.have.status(200);",
                  "    var data = pm.response.json();",
                  "    pm.environment.set(\"correctIntentionId\", data.content.id);",
                  "});"
                ],
                "type": "text/javascript",
                "packages": {},
                "requests": {}
              }
            }
          ],
          "request": {
            "auth": {
              "type": "bearer",
              "bearer": [
                {
                  "key": "token",
                  "value": "{{subjectBearerToken}}",
                  "type": "string"
                }
              ]
            },
            "method": "POST",
            "header": [
              {
                "key": "Content-Type",
                "value": "application/json"
              },
              {
                "key": "X-Api-Version",
                "value": "{{apiVersion}}",
                "description": "API version"
              },
              {
                "key": "X-Idempotency-Key",
                "value": "{{$guid}}",
                "description": "(Required) Idempotency key"
              }
            ],
            "body": {
              "mode": "raw",
              "raw": "{\n  \"content\": {\n    \"type\": \"INTENTION\",\n    \"operation\": {\n      \"type\": \"TRANSACTION\"\n    },\n    \"system\": {\n      \"id\": \"{{fiscalDeviceId}}\"\n    }\n  }\n}",
              "options": {
                "raw": {
                  "language": "json"
                }
              }
            },
            "url": {
              "raw": "{{apiBaseUrl}}/records",
              "host": ["{{apiBaseUrl}}"],
              "path": ["records"]
            },
            "description": "Create intention for original receipt to be corrected"
          },
          "response": []
        },
        {
          "name": "Retrieve a Record::INTENTION",
          "event": [
            {
              "listen": "test",
              "script": {
                "exec": [
                  "pm.test(\"Status code is 200\", function () {",
                  "    pm.response.to.have.status(200);",
                  "});"
                ],
                "type": "text/javascript",
                "packages": {}
              }
            }
          ],
          "request": {
            "auth": {
              "type": "bearer",
              "bearer": [
                {
                  "key": "token",
                  "value": "{{subjectBearerToken}}",
                  "type": "string"
                }
              ]
            },
            "method": "GET",
            "header": [
              {
                "key": "Accept",
                "value": "application/json"
              },
              {
                "key": "X-Api-Version",
                "value": "{{apiVersion}}",
                "description": "API version"
              }
            ],
            "url": {
              "raw": "{{apiBaseUrl}}/records/{{correctIntentionId}}",
              "host": ["{{apiBaseUrl}}"],
              "path": ["records", "{{correctIntentionId}}"]
            },
            "description": "Retrieve the intention"
          },
          "response": []
        },
        {
          "name": "Create a Record::TRANSACTION::RECEIPT (to be corrected)",
          "event": [
            {
              "listen": "test",
              "script": {
                "exec": [
                  "pm.test(\"Status code is 200\", function () {",
                  "    pm.response.to.have.status(200);",
                  "    var data = pm.response.json();",
                  "    pm.environment.set(\"correctReceiptId\", data.content.id);",
                  "});"
                ],
                "type": "text/javascript",
                "packages": {},
                "requests": {}
              }
            }
          ],
          "request": {
            "auth": {
              "type": "bearer",
              "bearer": [
                {
                  "key": "token",
                  "value": "{{subjectBearerToken}}",
                  "type": "string"
                }
              ]
            },
            "method": "POST",
            "header": [
              {
                "key": "Content-Type",
                "value": "application/json"
              },
              {
                "key": "X-Api-Version",
                "value": "{{apiVersion}}",
                "description": "API version"
              },
              {
                "key": "X-Idempotency-Key",
                "value": "{{$guid}}",
                "description": "(Required) Idempotency key"
              }
            ],
            "body": {
              "mode": "raw",
              "raw": "{\n  \"content\": {\n    \"type\": \"TRANSACTION\",\n    \"record\": {\n      \"id\": \"{{correctIntentionId}}\"\n    },\n    \"operation\": {\n      \"type\": \"RECEIPT\",\n      \"document\": {\n        \"number\": \"0004\",\n        \"total_vat\": {\n          \"amount\": \"5.40983607\",\n          \"exclusive\": \"24.59016393\",\n          \"inclusive\": \"30.00\"\n        }\n      },\n      \"entries\": [\n        {\n          \"type\": \"SALE\",\n          \"details\": {\n            \"concept\": \"GOOD\"\n          },\n          \"data\": {\n            \"type\": \"ITEM\",\n            \"text\": \"Product A\",\n            \"unit\": {\n              \"quantity\": \"3.00\",\n              \"price\": \"10.00\"\n            },\n            \"value\": {\n              \"base\": \"24.59016393\",\n              \"discount\": \"0.00\"\n            },\n            \"vat\": {\n              \"type\": \"VAT_RATE\",\n              \"code\": \"STANDARD\",\n              \"percentage\": \"22.00\",\n              \"exclusive\": \"24.59016393\",\n              \"inclusive\": \"30.00\",\n              \"amount\": \"5.40983607\"\n            }\n          }\n        }\n      ],\n      \"payments\": [\n        {\n          \"type\": \"CASH\",\n          \"details\": {\n            \"amount\": \"30.00\"\n          }\n        }\n      ]\n    }\n  }\n}",
              "options": {
                "raw": {
                  "language": "json"
                }
              }
            },
            "url": {
              "raw": "{{apiBaseUrl}}/records",
              "host": ["{{apiBaseUrl}}"],
              "path": ["records"]
            },
            "description": "Create original receipt to be corrected"
          },
          "response": []
        },
        {
          "name": "Retrieve a Record::TRANSACTION::RECEIPT",
          "event": [
            {
              "listen": "test",
              "script": {
                "exec": [
                  "pm.test(\"Status code is 200\", function () {",
                  "    pm.response.to.have.status(200);",
                  "});"
                ],
                "type": "text/javascript",
                "packages": {}
              }
            }
          ],
          "request": {
            "auth": {
              "type": "bearer",
              "bearer": [
                {
                  "key": "token",
                  "value": "{{subjectBearerToken}}",
                  "type": "string"
                }
              ]
            },
            "method": "GET",
            "header": [
              {
                "key": "Accept",
                "value": "application/json"
              },
              {
                "key": "X-Api-Version",
                "value": "{{apiVersion}}",
                "description": "API version"
              }
            ],
            "url": {
              "raw": "{{apiBaseUrl}}/records/{{correctReceiptId}}",
              "host": ["{{apiBaseUrl}}"],
              "path": ["records", "{{correctReceiptId}}"]
            },
            "description": "Retrieve the receipt to be corrected"
          },
          "response": []
        },
        {
          "name": "Create a Record::INTENTION (for correction)",
          "event": [
            {
              "listen": "test",
              "script": {
                "exec": [
                  "pm.test(\"Status code is 200\", function () {",
                  "    pm.response.to.have.status(200);",
                  "    var data = pm.response.json();",
                  "    pm.environment.set(\"correctionIntentionId\", data.content.id);",
                  "});"
                ],
                "type": "text/javascript",
                "packages": {},
                "requests": {}
              }
            }
          ],
          "request": {
            "auth": {
              "type": "bearer",
              "bearer": [
                {
                  "key": "token",
                  "value": "{{subjectBearerToken}}",
                  "type": "string"
                }
              ]
            },
            "method": "POST",
            "header": [
              {
                "key": "Content-Type",
                "value": "application/json"
              },
              {
                "key": "X-Api-Version",
                "value": "{{apiVersion}}",
                "description": "API version"
              },
              {
                "key": "X-Idempotency-Key",
                "value": "{{$guid}}",
                "description": "(Required) Idempotency key"
              }
            ],
            "body": {
              "mode": "raw",
              "raw": "{\n  \"content\": {\n    \"type\": \"INTENTION\",\n    \"operation\": {\n      \"type\": \"TRANSACTION\"\n    },\n    \"system\": {\n      \"id\": \"{{fiscalDeviceId}}\"\n    }\n  }\n}",
              "options": {
                "raw": {
                  "language": "json"
                }
              }
            },
            "url": {
              "raw": "{{apiBaseUrl}}/records",
              "host": ["{{apiBaseUrl}}"],
              "path": ["records"]
            },
            "description": "Create intention for correction transaction"
          },
          "response": []
        },
        {
          "name": "Retrieve a Record::INTENTION",
          "event": [
            {
              "listen": "test",
              "script": {
                "exec": [
                  "pm.test(\"Status code is 200\", function () {",
                  "    pm.response.to.have.status(200);",
                  "});"
                ],
                "type": "text/javascript",
                "packages": {}
              }
            }
          ],
          "request": {
            "auth": {
              "type": "bearer",
              "bearer": [
                {
                  "key": "token",
                  "value": "{{subjectBearerToken}}",
                  "type": "string"
                }
              ]
            },
            "method": "GET",
            "header": [
              {
                "key": "Accept",
                "value": "application/json"
              },
              {
                "key": "X-Api-Version",
                "value": "{{apiVersion}}",
                "description": "API version"
              }
            ],
            "url": {
              "raw": "{{apiBaseUrl}}/records/{{correctionIntentionId}}",
              "host": ["{{apiBaseUrl}}"],
              "path": ["records", "{{correctionIntentionId}}"]
            },
            "description": "Retrieve the correction intention"
          },
          "response": []
        },
        {
          "name": "Create a Record::TRANSACTION::CORRECTION",
          "event": [
            {
              "listen": "test",
              "script": {
                "exec": [
                  "pm.test(\"Status code is 200\", function () {",
                  "    pm.response.to.have.status(200);",
                  "    var data = pm.response.json();",
                  "    pm.environment.set(\"correctionId\", data.content.id);",
                  "});"
                ],
                "type": "text/javascript",
                "packages": {},
                "requests": {}
              }
            }
          ],
          "request": {
            "auth": {
              "type": "bearer",
              "bearer": [
                {
                  "key": "token",
                  "value": "{{subjectBearerToken}}",
                  "type": "string"
                }
              ]
            },
            "method": "POST",
            "header": [
              {
                "key": "Content-Type",
                "value": "application/json"
              },
              {
                "key": "X-Api-Version",
                "value": "{{apiVersion}}",
                "description": "API version"
              },
              {
                "key": "X-Idempotency-Key",
                "value": "{{$guid}}",
                "description": "(Required) Idempotency key"
              }
            ],
            "body": {
              "mode": "raw",
              "raw": "{\n  \"content\": {\n    \"type\": \"TRANSACTION\",\n    \"record\": {\n      \"id\": \"{{correctionIntentionId}}\"\n    },\n    \"operation\": {\n      \"type\": \"CORRECTION\",\n      \"record\": {\n        \"id\": \"{{correctReceiptId}}\"\n      },\n      \"data\": {\n        \"type\": \"RECEIPT\",\n        \"document\": {\n          \"number\": \"0005\",\n          \"total_vat\": {\n            \"amount\": \"1.80327869\",\n            \"exclusive\": \"8.19672131\",\n            \"inclusive\": \"10.00\"\n          }\n        },\n        \"entries\": [\n          {\n            \"type\": \"RETURN\",\n            \"details\": {\n              \"concept\": \"GOOD\",\n              \"number\": \"1\"\n            },\n            \"data\": {\n              \"type\": \"ITEM\",\n              \"text\": \"Product A\",\n              \"unit\": {\n                \"quantity\": \"1.00\",\n                \"price\": \"10.00\"\n              },\n              \"value\": {\n                \"base\": \"8.19672131\",\n                \"discount\": \"0.00\"\n              },\n              \"vat\": {\n                \"type\": \"VAT_RATE\",\n                \"code\": \"STANDARD\",\n                \"percentage\": \"22.00\",\n                \"exclusive\": \"8.19672131\",\n                \"inclusive\": \"10.00\",\n                \"amount\": \"1.80327869\"\n              }\n            }\n          }\n        ],\n        \"payments\": [\n          {\n            \"type\": \"CASH\",\n            \"details\": {\n              \"amount\": \"10.00\"\n            }\n          }\n        ]\n      }\n    }\n  }\n}",
              "options": {
                "raw": {
                  "language": "json"
                }
              }
            },
            "url": {
              "raw": "{{apiBaseUrl}}/records",
              "host": ["{{apiBaseUrl}}"],
              "path": ["records"]
            },
            "description": "Create a CORRECTION transaction with corrected receipt data"
          },
          "response": []
        },
        {
          "name": "Retrieve a Record::TRANSACTION::CORRECTION",
          "event": [
            {
              "listen": "test",
              "script": {
                "exec": [
                  "pm.test(\"Status code is 200\", function () {",
                  "    pm.response.to.have.status(200);",
                  "});"
                ],
                "type": "text/javascript",
                "packages": {}
              }
            }
          ],
          "request": {
            "auth": {
              "type": "bearer",
              "bearer": [
                {
                  "key": "token",
                  "value": "{{subjectBearerToken}}",
                  "type": "string"
                }
              ]
            },
            "method": "GET",
            "header": [
              {
                "key": "Accept",
                "value": "application/json"
              },
              {
                "key": "X-Api-Version",
                "value": "{{apiVersion}}",
                "description": "API version"
              }
            ],
            "url": {
              "raw": "{{apiBaseUrl}}/records/{{correctionId}}",
              "host": ["{{apiBaseUrl}}"],
              "path": ["records", "{{correctionId}}"]
            },
            "description": "Retrieve the correction record"
          },
          "response": []
        }
      ]
    },
    {
      "name": "records (Get record PDF)",
      "item": [
        {
          "name": "Create a Record::INTENTION",
          "event": [
            {
              "listen": "test",
              "script": {
                "exec": [
                  "pm.test(\"Status code is 200\", function () {",
                  "    pm.response.to.have.status(200);",
                  "    var data = pm.response.json();",
                  "    pm.environment.set(\"pdfIntentionId\", data.content.id);",
                  "});"
                ],
                "type": "text/javascript",
                "packages": {},
                "requests": {}
              }
            }
          ],
          "request": {
            "auth": {
              "type": "bearer",
              "bearer": [
                {
                  "key": "token",
                  "value": "{{subjectBearerToken}}",
                  "type": "string"
                }
              ]
            },
            "method": "POST",
            "header": [
              {
                "key": "Content-Type",
                "value": "application/json"
              },
              {
                "key": "X-Api-Version",
                "value": "{{apiVersion}}",
                "description": "API version"
              },
              {
                "key": "X-Idempotency-Key",
                "value": "{{$guid}}",
                "description": "(Required) Idempotency key"
              }
            ],
            "body": {
              "mode": "raw",
              "raw": "{\n  \"content\": {\n    \"type\": \"INTENTION\",\n    \"operation\": {\n      \"type\": \"TRANSACTION\"\n    },\n    \"system\": {\n      \"id\": \"{{fiscalDeviceId}}\"\n    }\n  }\n}",
              "options": {
                "raw": {
                  "language": "json"
                }
              }
            },
            "url": {
              "raw": "{{apiBaseUrl}}/records",
              "host": ["{{apiBaseUrl}}"],
              "path": ["records"]
            },
            "description": "Create a Record::INTENTION for PDF generation workflow"
          },
          "response": []
        },
        {
          "name": "Create a Record::TRANSACTION::RECEIPT",
          "event": [
            {
              "listen": "test",
              "script": {
                "exec": [
                  "pm.test(\"Status code is 200\", function () {",
                  "    pm.response.to.have.status(200);",
                  "    var data = pm.response.json();",
                  "    pm.environment.set(\"pdfReceiptId\", data.content.id);",
                  "});"
                ],
                "type": "text/javascript",
                "packages": {},
                "requests": {}
              }
            }
          ],
          "request": {
            "auth": {
              "type": "bearer",
              "bearer": [
                {
                  "key": "token",
                  "value": "{{subjectBearerToken}}",
                  "type": "string"
                }
              ]
            },
            "method": "POST",
            "header": [
              {
                "key": "Content-Type",
                "value": "application/json"
              },
              {
                "key": "X-Api-Version",
                "value": "{{apiVersion}}",
                "description": "API version"
              },
              {
                "key": "X-Idempotency-Key",
                "value": "{{$guid}}",
                "description": "(Required) Idempotency key"
              }
            ],
            "body": {
              "mode": "raw",
              "raw": "{\n  \"content\": {\n    \"type\": \"TRANSACTION\",\n    \"record\": {\n      \"id\": \"{{pdfIntentionId}}\"\n    },\n    \"operation\": {\n      \"type\": \"RECEIPT\",\n      \"document\": {\n        \"number\": \"0002\",\n        \"total_vat\": {\n          \"amount\": \"2.70491803\",\n          \"exclusive\": \"12.29508197\",\n          \"inclusive\": \"15.00\"\n        }\n      },\n      \"entries\": [\n        {\n          \"type\": \"SALE\",\n          \"details\": {\n            \"concept\": \"GOOD\"\n          },\n          \"data\": {\n            \"type\": \"ITEM\",\n            \"text\": \"PDF Test Product\",\n            \"unit\": {\n              \"quantity\": \"1.00\",\n              \"price\": \"15.00\"\n            },\n            \"value\": {\n              \"base\": \"12.29508197\",\n              \"discount\": \"0.00\"\n            },\n            \"vat\": {\n              \"type\": \"VAT_RATE\",\n              \"code\": \"STANDARD\",\n              \"percentage\": \"22.00\",\n              \"exclusive\": \"12.29508197\",\n              \"inclusive\": \"15.00\",\n              \"amount\": \"2.70491803\"\n            }\n          }\n        }\n      ],\n      \"payments\": [\n        {\n          \"type\": \"CARD\",\n          \"number\": \"123456789\",\n          \"kind\": \"DEBIT\",\n          \"details\": {\n            \"amount\": \"15.00\"\n          }\n        }\n      ]\n    }\n  }\n}",
              "options": {
                "raw": {
                  "language": "json"
                }
              }
            },
            "url": {
              "raw": "{{apiBaseUrl}}/records",
              "host": ["{{apiBaseUrl}}"],
              "path": ["records"]
            },
            "description": "Create a Receipt for PDF generation"
          },
          "response": []
        },
        {
          "name": "Retrieve a Record::TRANSACTION::RECEIPT (PDF)",
          "event": [
            {
              "listen": "test",
              "script": {
                "exec": [
                  "pm.test(\"Status code is 200\", function () {",
                  "    pm.response.to.have.status(200);",
                  "});"
                ],
                "type": "text/javascript",
                "packages": {}
              }
            }
          ],
          "request": {
            "auth": {
              "type": "bearer",
              "bearer": [
                {
                  "key": "token",
                  "value": "{{subjectBearerToken}}",
                  "type": "string"
                }
              ]
            },
            "method": "GET",
            "header": [
              {
                "key": "Accept",
                "value": "application/pdf"
              },
              {
                "key": "X-Api-Version",
                "value": "{{apiVersion}}",
                "description": "API version"
              }
            ],
            "url": {
              "raw": "{{apiBaseUrl}}/records/{{pdfReceiptId}}",
              "host": ["{{apiBaseUrl}}"],
              "path": ["records", "{{pdfReceiptId}}"]
            },
            "description": "Retrieve a Receipt as PDF by setting Accept header to application/pdf"
          },
          "response": []
        },
        {
          "name": "Retrieve a PDF",
          "event": [
            {
              "listen": "test",
              "script": {
                "exec": [
                  "pm.test(\"Status code is 200\", function () {",
                  "    pm.response.to.have.status(200);",
                  "});",
                  "",
                  "const base64 = pm.response.json()?.content?.compliance?.artifact?.data;",
                  "",
                  "if (base64) {",
                  "    const link = `data:application/pdf;base64,${base64}`;",
                  "    pm.visualizer.set(`",
                  "        <html>",
                  "          <body>",
                  "            <h3>📄 PDF Base64 Link</h3>",
                  "            <p>Open that link in your browser:</p>",
                  "            <textarea style=\"width:100%;height:120px;font-size:14px;\" readonly>${link}</textarea>",
                  "          </body>",
                  "        </html>",
                  "    `);",
                  "} else {",
                  "    pm.visualizer.set(`<p style=\"color:red;\">⚠️ No PDF Base64 data found.</p>`);",
                  "}",
                  ""
                ],
                "type": "text/javascript",
                "packages": {},
                "requests": {}
              }
            }
          ],
          "request": {
            "auth": {
              "type": "bearer",
              "bearer": [
                {
                  "key": "token",
                  "value": "{{subjectBearerToken}}",
                  "type": "string"
                }
              ]
            },
            "method": "GET",
            "header": [
              {
                "key": "Accept",
                "value": "application/pdf"
              },
              {
                "key": "X-Api-Version",
                "value": "{{apiVersion}}",
                "description": "API version"
              }
            ],
            "url": {
              "raw": "{{apiBaseUrl}}/records/{{pdfReceiptId}}?compliance-artifact",
              "host": ["{{apiBaseUrl}}"],
              "path": ["records", "{{pdfReceiptId}}"],
              "query": [
                {
                  "key": "compliance-artifact",
                  "value": null
                }
              ]
            },
            "description": "Retrieve a Receipt as PDF by setting Accept header to application/pdf"
          },
          "response": []
        }
      ]
    },
    {
      "name": "systems (Pagination)",
      "item": [
        {
          "name": "Create system Connected to Taxpayer",
          "event": [
            {
              "listen": "test",
              "script": {
                "exec": [
                  "pm.test(\"Status code is 200\", function () {",
                  "    pm.response.to.have.status(200);",
                  "    var data = pm.response.json();",
                  "    pm.environment.set(\"paginationSystemIdListTest\", data.content.id);",
                  "});"
                ],
                "type": "text/javascript",
                "packages": {},
                "requests": {}
              }
            }
          ],
          "request": {
            "auth": {
              "type": "bearer",
              "bearer": [
                {
                  "key": "token",
                  "value": "{{subjectBearerToken}}",
                  "type": "string"
                }
              ]
            },
            "method": "POST",
            "header": [
              {
                "key": "Content-Type",
                "value": "application/json"
              },
              {
                "key": "X-Api-Version",
                "value": "{{apiVersion}}",
                "description": "API version"
              },
              {
                "key": "X-Idempotency-Key",
                "value": "{{$guid}}",
                "description": "(Required) Idempotency key"
              }
            ],
            "body": {
              "mode": "raw",
              "raw": "{\n  \"content\": {\n    \"type\": \"FISCAL_DEVICE\",\n    \"kind\": \"INTERNAL\",\n    \"location\": {\n      \"id\": \"{{locationId}}\"\n    },\n    \"producer\": {\n      \"type\": \"MPN\",\n      \"number\": \"PAG-001\",\n      \"details\": {\n        \"name\": \"Pagination Test Device\",\n        \"model\": \"PAG-Model\",\n        \"brand\": \"fiskaly\",\n        \"serial\": \"PAG-SERIAL-001\"\n      }\n    },\n    \"software\": {\n      \"name\": \"SIGN IT Lite\",\n      \"version\": \"v1.0.0\"\n    }\n  }\n}",
              "options": {
                "raw": {
                  "language": "json"
                }
              }
            },
            "url": {
              "raw": "{{apiBaseUrl}}/systems",
              "host": ["{{apiBaseUrl}}"],
              "path": ["systems"]
            },
            "description": "Create a system for pagination testing"
          },
          "response": []
        },
        {
          "name": "List Systems With Limit",
          "event": [
            {
              "listen": "test",
              "script": {
                "exec": [
                  "pm.test(\"Status code is 200\", function () {",
                  "    pm.response.to.have.status(200);",
                  "    var data = pm.response.json();",
                  "    if (data.pagination && data.pagination.token) {",
                  "        pm.environment.set(\"systemPaginationToken\", data.pagination.token);",
                  "    }",
                  "});"
                ],
                "type": "text/javascript",
                "packages": {},
                "requests": {}
              }
            }
          ],
          "request": {
            "auth": {
              "type": "bearer",
              "bearer": [
                {
                  "key": "token",
                  "value": "{{subjectBearerToken}}",
                  "type": "string"
                }
              ]
            },
            "method": "GET",
            "header": [
              {
                "key": "Accept",
                "value": "application/json"
              },
              {
                "key": "X-Api-Version",
                "value": "{{apiVersion}}",
                "description": "API version"
              }
            ],
            "url": {
              "raw": "{{apiBaseUrl}}/systems?limit=1",
              "host": ["{{apiBaseUrl}}"],
              "path": ["systems"],
              "query": [
                {
                  "key": "limit",
                  "value": "1"
                }
              ]
            },
            "description": "List systems with limit parameter"
          },
          "response": []
        },
        {
          "name": "List Systems With Taxpayer Filter",
          "event": [
            {
              "listen": "test",
              "script": {
                "exec": [
                  "pm.test(\"Status code is 200\", function () {",
                  "    pm.response.to.have.status(200);",
                  "});"
                ],
                "type": "text/javascript",
                "packages": {}
              }
            }
          ],
          "request": {
            "auth": {
              "type": "bearer",
              "bearer": [
                {
                  "key": "token",
                  "value": "{{subjectBearerToken}}",
                  "type": "string"
                }
              ]
            },
            "method": "GET",
            "header": [
              {
                "key": "Accept",
                "value": "application/json"
              },
              {
                "key": "X-Api-Version",
                "value": "{{apiVersion}}",
                "description": "API version"
              }
            ],
            "url": {
              "raw": "{{apiBaseUrl}}/systems?taxpayer_id={{taxpayerId}}",
              "host": ["{{apiBaseUrl}}"],
              "path": ["systems"],
              "query": [
                {
                  "key": "taxpayer_id",
                  "value": "{{taxpayerId}}"
                }
              ]
            },
            "description": "List systems filtered by Taxpayer ID"
          },
          "response": []
        },
        {
          "name": "List Systems With Location Filter",
          "event": [
            {
              "listen": "test",
              "script": {
                "exec": [
                  "pm.test(\"Status code is 200\", function () {",
                  "    pm.response.to.have.status(200);",
                  "});"
                ],
                "type": "text/javascript",
                "packages": {}
              }
            }
          ],
          "request": {
            "auth": {
              "type": "bearer",
              "bearer": [
                {
                  "key": "token",
                  "value": "{{subjectBearerToken}}",
                  "type": "string"
                }
              ]
            },
            "method": "GET",
            "header": [
              {
                "key": "Accept",
                "value": "application/json"
              },
              {
                "key": "X-Api-Version",
                "value": "{{apiVersion}}",
                "description": "API version"
              }
            ],
            "url": {
              "raw": "{{apiBaseUrl}}/systems?location_id={{locationId}}",
              "host": ["{{apiBaseUrl}}"],
              "path": ["systems"],
              "query": [
                {
                  "key": "location_id",
                  "value": "{{locationId}}"
                }
              ]
            },
            "description": "List systems filtered by Location ID"
          },
          "response": []
        }
      ]
    }
  ]
}
