{
  "openapi": "3.1.0",
  "info": {
    "title": "E-Receipts IT API",
    "description": "The E-Receipts IT API is organized into two logical suites: endpoints under the /mf1 prefix handle Merchant and Cashier operations, while those under /mf2 are dedicated to Supplier functionalities. Specifically, fiscal operations within the /mf1 suite (such as commercial document issuance and cash closure) require mutual TLS (mTLS) authentication and must be accessed via port 444.",
    "version": "1.0.0"
  },
  "servers": [
    {
      "url": "https://ereceipts-it-sandbox.acubeapi.com",
      "description": "Sandbox environment"
    },
    {
      "url": "https://ereceipts-it.acubeapi.com",
      "description": "Production environment"
    }
  ],
  "tags": [
    {
      "name": "Cashier",
      "x-displayName": "Cashier"
    },
    {
      "name": "Receipt",
      "x-displayName": "Receipt"
    },
    {
      "name": "PEM",
      "x-displayName": "PEM"
    },
    {
      "name": "EmergencyReport",
      "x-displayName": "EmergencyReport"
    },
    {
      "name": "Cash Register",
      "x-displayName": "Cash Register"
    },
    {
      "name": "Notification",
      "x-displayName": "Notification"
    },
    {
      "name": "Merchant",
      "description": "Resource 'Merchant' operations.",
      "x-displayName": "Merchant"
    }
  ],
  "paths": {
    "/v1/mf1/cashiers": {
      "get": {
        "tags": [
          "Cashier"
        ],
        "summary": "Retrieve the collection of Cashier resources",
        "operationId": "read_cashiers_v1_mf1_cashiers_get",
        "security": [
          {
            "E-Receipts_IT_API_HTTPBearer": []
          }
        ],
        "parameters": [
          {
            "name": "status",
            "in": "query",
            "required": false,
            "schema": {
              "anyOf": [
                {
                  "$ref": "#/components/schemas/E-Receipts_IT_API_CashierStatus"
                },
                {
                  "type": "null"
                }
              ],
              "description": "Filter by cashier status. If not provided, all cashiers will be returned.",
              "title": "Status"
            },
            "description": "Filter by cashier status. If not provided, all cashiers will be returned."
          },
          {
            "name": "page",
            "in": "query",
            "required": false,
            "schema": {
              "type": "integer",
              "minimum": 1,
              "description": "Page number",
              "default": 1,
              "title": "Page"
            },
            "description": "Page number"
          },
          {
            "name": "size",
            "in": "query",
            "required": false,
            "schema": {
              "type": "integer",
              "default": 30,
              "title": "Size"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Successful Response",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/E-Receipts_IT_API_Page_TypeVar_Customized_CashierSimpleOutput_"
                }
              }
            }
          },
          "401": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/E-Receipts_IT_API_ErrorModel401Unauthorized"
                }
              }
            },
            "description": "Unauthorized"
          },
          "403": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/E-Receipts_IT_API_ErrorModel403Forbidden"
                }
              }
            },
            "description": "Forbidden"
          },
          "422": {
            "description": "Validation Error",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/E-Receipts_IT_API_HTTPValidationError"
                }
              }
            }
          }
        }
      },
      "post": {
        "tags": [
          "Cashier"
        ],
        "summary": "Create a Cashier resource",
        "operationId": "create_cashier_v1_mf1_cashiers_post",
        "security": [
          {
            "E-Receipts_IT_API_HTTPBearer": []
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/E-Receipts_IT_API_CashierCreateInput"
              }
            }
          }
        },
        "responses": {
          "201": {
            "description": "Successful Response",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/E-Receipts_IT_API_CashierOutput"
                }
              }
            }
          },
          "401": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/E-Receipts_IT_API_ErrorModel401Unauthorized"
                }
              }
            },
            "description": "Unauthorized"
          },
          "403": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/E-Receipts_IT_API_ErrorModel403Forbidden"
                }
              }
            },
            "description": "Forbidden"
          },
          "409": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/E-Receipts_IT_API_ErrorModel409Conflict"
                }
              }
            },
            "description": "Conflict"
          },
          "422": {
            "description": "Validation Error",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/E-Receipts_IT_API_HTTPValidationError"
                }
              }
            }
          }
        }
      }
    },
    "/v1/mf1/cashiers/me": {
      "get": {
        "tags": [
          "Cashier"
        ],
        "summary": "Read the current Cashier resource",
        "description": "Read currently authenticated cashier's information",
        "operationId": "read_current_cashier_v1_mf1_cashiers_me_get",
        "responses": {
          "200": {
            "description": "Successful Response",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/E-Receipts_IT_API_CashierOutput"
                }
              }
            }
          },
          "401": {
            "description": "Unauthorized",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/E-Receipts_IT_API_ErrorModel401Unauthorized"
                }
              }
            }
          },
          "403": {
            "description": "Forbidden",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/E-Receipts_IT_API_ErrorModel403Forbidden"
                }
              }
            }
          }
        },
        "security": [
          {
            "E-Receipts_IT_API_HTTPBearer": []
          }
        ]
      }
    },
    "/v1/mf1/cashiers/{cashier_id}": {
      "get": {
        "tags": [
          "Cashier"
        ],
        "summary": "Read a Cashier resource",
        "description": "Get a specific user by id.",
        "operationId": "read_cashier_by_id_v1_mf1_cashiers__cashier_id__get",
        "security": [
          {
            "E-Receipts_IT_API_HTTPBearer": []
          }
        ],
        "parameters": [
          {
            "name": "cashier_id",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string",
              "format": "uuid",
              "title": "Cashier Id"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Successful Response",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/E-Receipts_IT_API_CashierOutput"
                }
              }
            }
          },
          "401": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/E-Receipts_IT_API_ErrorModel401Unauthorized"
                }
              }
            },
            "description": "Unauthorized"
          },
          "403": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/E-Receipts_IT_API_ErrorModel403Forbidden"
                }
              }
            },
            "description": "Forbidden"
          },
          "404": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/E-Receipts_IT_API_ErrorModel404NotFound"
                }
              }
            },
            "description": "Not Found"
          },
          "422": {
            "description": "Validation Error",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/E-Receipts_IT_API_HTTPValidationError"
                }
              }
            }
          }
        }
      }
    },
    "/v1/mf1/cashiers/{cashier_id}/disable": {
      "put": {
        "tags": [
          "Cashier"
        ],
        "summary": "Disable a Cashier resource",
        "description": "Disable a cashier.",
        "operationId": "disable_cashier_v1_mf1_cashiers__cashier_id__disable_put",
        "security": [
          {
            "E-Receipts_IT_API_HTTPBearer": []
          }
        ],
        "parameters": [
          {
            "name": "cashier_id",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string",
              "format": "uuid",
              "title": "Cashier Id"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Successful Response",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/E-Receipts_IT_API_CashierOutput"
                }
              }
            }
          },
          "401": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/E-Receipts_IT_API_ErrorModel401Unauthorized"
                }
              }
            },
            "description": "Unauthorized"
          },
          "403": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/E-Receipts_IT_API_ErrorModel403Forbidden"
                }
              }
            },
            "description": "Forbidden"
          },
          "422": {
            "description": "Validation Error",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/E-Receipts_IT_API_HTTPValidationError"
                }
              }
            }
          }
        }
      }
    },
    "/v1/mf1/pems/{serial_number}/receipts": {
      "get": {
        "tags": [
          "Receipt"
        ],
        "summary": "Get the collection of Receipt resources",
        "description": "Access rules:\n- Merchants: require a valid JWT.\n- Cashiers: require a valid JWT and a valid certificate.",
        "operationId": "get_receipts_v1_mf1_pems__serial_number__receipts_get",
        "security": [
          {
            "E-Receipts_IT_API_HTTPBearer": [],
            "E-Receipts_IT_API_mutualTLS": []
          }
        ],
        "parameters": [
          {
            "name": "serial_number",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string",
              "description": "The PEM's serial number",
              "title": "Serial Number"
            },
            "description": "The PEM's serial number"
          },
          {
            "name": "page",
            "in": "query",
            "required": false,
            "schema": {
              "type": "integer",
              "description": "Page identifier",
              "default": 1,
              "title": "Page"
            },
            "description": "Page identifier"
          },
          {
            "name": "size",
            "in": "query",
            "required": false,
            "schema": {
              "type": "integer",
              "description": "Page size",
              "default": 30,
              "title": "Size"
            },
            "description": "Page size"
          },
          {
            "name": "status",
            "in": "query",
            "required": false,
            "schema": {
              "$ref": "#/components/schemas/E-Receipts_IT_API_ReceiptStatus",
              "description": "Retrieve either receipts not yet sent to MF2 or receipts already sent to MF2. Default: sent receipts.",
              "default": "sent"
            },
            "description": "Retrieve either receipts not yet sent to MF2 or receipts already sent to MF2. Default: sent receipts."
          },
          {
            "name": "order[document_number]",
            "in": "query",
            "required": false,
            "schema": {
              "enum": [
                "desc",
                "asc"
              ],
              "type": "string",
              "description": "Order receipts in ascending or descending order with respect to their document_number",
              "default": "desc",
              "title": "Order[Document Number]"
            },
            "description": "Order receipts in ascending or descending order with respect to their document_number"
          },
          {
            "name": "document_number",
            "in": "query",
            "required": false,
            "schema": {
              "anyOf": [
                {
                  "type": "string"
                },
                {
                  "type": "null"
                }
              ],
              "description": "Retrieve receipt with specified document number",
              "title": "Document Number"
            },
            "description": "Retrieve receipt with specified document number"
          },
          {
            "name": "document_datetime[before]",
            "in": "query",
            "required": false,
            "schema": {
              "anyOf": [
                {
                  "type": "string",
                  "format": "date-time"
                },
                {
                  "type": "null"
                }
              ],
              "description": "Filter by receipts issued before specified datetime (value included)",
              "title": "Document Datetime[Before]"
            },
            "description": "Filter by receipts issued before specified datetime (value included)"
          },
          {
            "name": "document_datetime[strictly_before]",
            "in": "query",
            "required": false,
            "schema": {
              "anyOf": [
                {
                  "type": "string",
                  "format": "date-time"
                },
                {
                  "type": "null"
                }
              ],
              "description": "Filter by receipts issued before specified datetime (value strictly before)",
              "title": "Document Datetime[Strictly Before]"
            },
            "description": "Filter by receipts issued before specified datetime (value strictly before)"
          },
          {
            "name": "document_datetime[after]",
            "in": "query",
            "required": false,
            "schema": {
              "anyOf": [
                {
                  "type": "string",
                  "format": "date-time"
                },
                {
                  "type": "null"
                }
              ],
              "description": "Filter by receipts issued after specified datetime (value included)",
              "title": "Document Datetime[After]"
            },
            "description": "Filter by receipts issued after specified datetime (value included)"
          },
          {
            "name": "document_datetime[strictly_after]",
            "in": "query",
            "required": false,
            "schema": {
              "anyOf": [
                {
                  "type": "string",
                  "format": "date-time"
                },
                {
                  "type": "null"
                }
              ],
              "description": "Filter by receipts issued after specified datetime (value strictly after)",
              "title": "Document Datetime[Strictly After]"
            },
            "description": "Filter by receipts issued after specified datetime (value strictly after)"
          },
          {
            "name": "type",
            "in": "query",
            "required": false,
            "schema": {
              "anyOf": [
                {
                  "$ref": "#/components/schemas/E-Receipts_IT_API_ReceiptType"
                },
                {
                  "type": "array",
                  "items": {
                    "$ref": "#/components/schemas/E-Receipts_IT_API_ReceiptType"
                  }
                },
                {
                  "type": "null"
                }
              ],
              "description": "Filter by receipts with specified type",
              "title": "Type"
            },
            "description": "Filter by receipts with specified type"
          }
        ],
        "responses": {
          "200": {
            "description": "Successful Response",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/E-Receipts_IT_API_PaginatedResponse_ReceiptOutput_"
                }
              }
            }
          },
          "401": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/E-Receipts_IT_API_ErrorModel401Unauthorized"
                }
              }
            },
            "description": "Unauthorized"
          },
          "403": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/E-Receipts_IT_API_ErrorModel403Forbidden"
                }
              }
            },
            "description": "Forbidden"
          },
          "422": {
            "description": "Validation Error",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/E-Receipts_IT_API_HTTPValidationError"
                }
              }
            }
          }
        }
      }
    },
    "/v1/mf1/pems": {
      "get": {
        "tags": [
          "PEM"
        ],
        "summary": "Read the collection of PEM resources",
        "operationId": "read_pem_collection_v1_mf1_pems_get",
        "security": [
          {
            "E-Receipts_IT_API_HTTPBearer": []
          }
        ],
        "parameters": [
          {
            "name": "status",
            "in": "query",
            "required": false,
            "schema": {
              "anyOf": [
                {
                  "$ref": "#/components/schemas/E-Receipts_IT_API_PEMStatus"
                },
                {
                  "type": "null"
                }
              ],
              "title": "Status"
            }
          },
          {
            "name": "page",
            "in": "query",
            "required": false,
            "schema": {
              "type": "integer",
              "minimum": 1,
              "description": "Page number",
              "default": 1,
              "title": "Page"
            },
            "description": "Page number"
          },
          {
            "name": "size",
            "in": "query",
            "required": false,
            "schema": {
              "type": "integer",
              "default": 30,
              "title": "Size"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Successful Response",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/E-Receipts_IT_API_Page_TypeVar_Customized_PemOutput_"
                }
              }
            }
          },
          "401": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/E-Receipts_IT_API_ErrorModel401Unauthorized"
                }
              }
            },
            "description": "Unauthorized"
          },
          "403": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/E-Receipts_IT_API_ErrorModel403Forbidden"
                }
              }
            },
            "description": "Forbidden"
          },
          "422": {
            "description": "Validation Error",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/E-Receipts_IT_API_HTTPValidationError"
                }
              }
            }
          }
        }
      }
    },
    "/v1/mf1/pems/telemetry": {
      "get": {
        "tags": [
          "PEM"
        ],
        "summary": "Read a PEM's Telemetry",
        "operationId": "read_pem_telemetry_v1_mf1_pems_telemetry_get",
        "responses": {
          "200": {
            "description": "Successful Response",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/E-Receipts_IT_API_TelemetryOutput"
                }
              }
            }
          },
          "401": {
            "description": "Unauthorized",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/E-Receipts_IT_API_ErrorModel401Unauthorized"
                }
              }
            }
          },
          "403": {
            "description": "Forbidden",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/E-Receipts_IT_API_ErrorModel403Forbidden"
                }
              }
            }
          },
          "422": {
            "description": "Validation Error",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/E-Receipts_IT_API_HTTPValidationError"
                }
              }
            }
          }
        },
        "security": [
          {
            "E-Receipts_IT_API_HTTPBearer": [],
            "E-Receipts_IT_API_mutualTLS": []
          }
        ]
      }
    },
    "/v1/mf1/pems/{serial_number}": {
      "get": {
        "tags": [
          "PEM"
        ],
        "summary": "Read a PEM resource",
        "operationId": "read_pem_v1_mf1_pems__serial_number__get",
        "security": [
          {
            "E-Receipts_IT_API_HTTPBearer": []
          }
        ],
        "parameters": [
          {
            "name": "serial_number",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string",
              "description": "The PEM's serial number",
              "title": "Serial Number"
            },
            "description": "The PEM's serial number"
          }
        ],
        "responses": {
          "200": {
            "description": "Successful Response",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/E-Receipts_IT_API_PemDetailedOutput"
                }
              }
            }
          },
          "401": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/E-Receipts_IT_API_ErrorModel401Unauthorized"
                }
              }
            },
            "description": "Unauthorized"
          },
          "403": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/E-Receipts_IT_API_ErrorModel403Forbidden"
                }
              }
            },
            "description": "Forbidden"
          },
          "404": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/E-Receipts_IT_API_ErrorModel404NotFound"
                }
              }
            },
            "description": "Not Found"
          },
          "422": {
            "description": "Validation Error",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/E-Receipts_IT_API_HTTPValidationError"
                }
              }
            }
          }
        }
      }
    },
    "/v1/mf1/pems/{serial_number}/close": {
      "post": {
        "tags": [
          "PEM"
        ],
        "summary": "Close a Journal",
        "description": "Performs the daily fiscal closure (chiusura di cassa) and closes the active Journal. This action triggers the upload of the journal to the **MF2 fiscal module**, which then generates the daily report (**File dei Corrispettivi**) for transmission to the Italian Tax Authority (Agenzia delle Entrate). To ensure regulatory compliance, the system enforces an automatic closure 24 hours after the issuance of the first document of the day if this endpoint is not manually invoked within that timeframe.",
        "operationId": "close_journal_v1_mf1_pems__serial_number__close_post",
        "security": [
          {
            "E-Receipts_IT_API_HTTPBearer": []
          }
        ],
        "parameters": [
          {
            "name": "serial_number",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string",
              "description": "The PEM's serial number",
              "title": "Serial Number"
            },
            "description": "The PEM's serial number"
          }
        ],
        "responses": {
          "202": {
            "description": "Successful Response",
            "content": {
              "application/json": {
                "schema": {}
              }
            }
          },
          "400": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/E-Receipts_IT_API_ErrorModel400BadRequest"
                }
              }
            },
            "description": "Bad Request"
          },
          "401": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/E-Receipts_IT_API_ErrorModel401Unauthorized"
                }
              }
            },
            "description": "Unauthorized"
          },
          "403": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/E-Receipts_IT_API_ErrorModel403Forbidden"
                }
              }
            },
            "description": "Forbidden"
          },
          "404": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/E-Receipts_IT_API_ErrorModel404NotFound"
                }
              }
            },
            "description": "Not Found"
          },
          "409": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/E-Receipts_IT_API_ErrorModel409Conflict"
                }
              }
            },
            "description": "Conflict"
          },
          "422": {
            "description": "Validation Error",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/E-Receipts_IT_API_HTTPValidationError"
                }
              }
            }
          },
          "500": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/E-Receipts_IT_API_ErrorModel500InternalServerError"
                }
              }
            },
            "description": "Internal Server Error"
          }
        }
      }
    },
    "/v1/mf1/pems/{serial_number}/activation": {
      "post": {
        "tags": [
          "PEM"
        ],
        "summary": "Send PEM activation request",
        "description": "Trigger the activation process of a PEM by requesting a certificate to the Italian Tax Authority",
        "operationId": "trigger_activation_request_v1_mf1_pems__serial_number__activation_post",
        "security": [
          {
            "E-Receipts_IT_API_HTTPBearer": []
          }
        ],
        "parameters": [
          {
            "name": "serial_number",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string",
              "description": "The PEM's serial number",
              "title": "Serial Number"
            },
            "description": "The PEM's serial number"
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/E-Receipts_IT_API_PemActivationInput"
              }
            }
          }
        },
        "responses": {
          "202": {
            "description": "Successful Response",
            "content": {
              "application/json": {
                "schema": {}
              }
            }
          },
          "401": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/E-Receipts_IT_API_ErrorModel401Unauthorized"
                }
              }
            },
            "description": "Unauthorized"
          },
          "403": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/E-Receipts_IT_API_ErrorModel403Forbidden"
                }
              }
            },
            "description": "Forbidden"
          },
          "404": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/E-Receipts_IT_API_ErrorModel404NotFound"
                }
              }
            },
            "description": "Not Found"
          },
          "409": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/E-Receipts_IT_API_ErrorModel409Conflict"
                }
              }
            },
            "description": "Conflict"
          },
          "422": {
            "description": "Validation Error",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/E-Receipts_IT_API_HTTPValidationError"
                }
              }
            }
          }
        }
      }
    },
    "/v1/mf1/pems/{serial_number}/inactivity-period": {
      "post": {
        "tags": [
          "PEM"
        ],
        "summary": "Communicate an inactivity period",
        "description": "Communicate an inactivity period",
        "operationId": "communicate_inactivity_period_v1_mf1_pems__serial_number__inactivity_period_post",
        "security": [
          {
            "E-Receipts_IT_API_HTTPBearer": [],
            "E-Receipts_IT_API_mutualTLS": []
          }
        ],
        "parameters": [
          {
            "name": "serial_number",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string",
              "description": "The PEM's serial number",
              "title": "Serial Number"
            },
            "description": "The PEM's serial number"
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/E-Receipts_IT_API_InactivityPeriodInput"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Successful Response",
            "content": {
              "application/json": {
                "schema": {}
              }
            }
          },
          "400": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/E-Receipts_IT_API_ErrorModel400BadRequest"
                }
              }
            },
            "description": "Bad Request"
          },
          "401": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/E-Receipts_IT_API_ErrorModel401Unauthorized"
                }
              }
            },
            "description": "Unauthorized"
          },
          "403": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/E-Receipts_IT_API_ErrorModel403Forbidden"
                }
              }
            },
            "description": "Forbidden"
          },
          "404": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/E-Receipts_IT_API_ErrorModel404NotFound"
                }
              }
            },
            "description": "Not Found"
          },
          "409": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/E-Receipts_IT_API_ErrorModel409Conflict"
                }
              }
            },
            "description": "Conflict"
          },
          "422": {
            "description": "Validation Error",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/E-Receipts_IT_API_HTTPValidationError"
                }
              }
            }
          }
        }
      }
    },
    "/v1/mf1/pems/{serial_number}/offline-period": {
      "post": {
        "tags": [
          "PEM"
        ],
        "summary": "Communicate an offline period",
        "description": "Allows merchants to report that a PEM device has gone offline.\n\nWhen the Italian Tax Authority receives the request, it verifies that:\n- The specified datetime is not in the future\n- Status change constraints are respected\n- The offline period is consistent with existing periods in the system\n\nThe system always returns a response indicating whether the request was accepted or rejected. If rejected, the response includes the reason for rejection.",
        "operationId": "communicate_offline_period_v1_mf1_pems__serial_number__offline_period_post",
        "security": [
          {
            "E-Receipts_IT_API_HTTPBearer": [],
            "E-Receipts_IT_API_mutualTLS": []
          }
        ],
        "parameters": [
          {
            "name": "serial_number",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string",
              "description": "The PEM serial number",
              "title": "Serial Number"
            },
            "description": "The PEM serial number"
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/E-Receipts_IT_API_PemOfflineRequest"
              }
            }
          }
        },
        "responses": {
          "202": {
            "description": "Successful Response",
            "content": {
              "application/json": {
                "schema": {}
              }
            }
          },
          "400": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/E-Receipts_IT_API_ErrorModel400BadRequest"
                }
              }
            },
            "description": "Bad Request"
          },
          "401": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/E-Receipts_IT_API_ErrorModel401Unauthorized"
                }
              }
            },
            "description": "Unauthorized"
          },
          "403": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/E-Receipts_IT_API_ErrorModel403Forbidden"
                }
              }
            },
            "description": "Forbidden"
          },
          "409": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/E-Receipts_IT_API_ErrorModel409Conflict"
                }
              }
            },
            "description": "Conflict"
          },
          "422": {
            "description": "Validation Error",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/E-Receipts_IT_API_HTTPValidationError"
                }
              }
            }
          }
        }
      }
    },
    "/v1/mf1/pems/{serial_number}/emergency-reports": {
      "post": {
        "tags": [
          "EmergencyReport"
        ],
        "summary": "Upload an Emergency Report",
        "operationId": "upload_emergency_report_v1_mf1_pems__serial_number__emergency_reports_post",
        "security": [
          {
            "E-Receipts_IT_API_HTTPBearer": []
          }
        ],
        "parameters": [
          {
            "name": "serial_number",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string",
              "description": "The PEM serial number",
              "title": "Serial Number"
            },
            "description": "The PEM serial number"
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/E-Receipts_IT_API_EmergencyReportInput"
              }
            }
          }
        },
        "responses": {
          "202": {
            "description": "Successful Response",
            "content": {
              "application/json": {
                "schema": {}
              }
            }
          },
          "400": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/E-Receipts_IT_API_ErrorModel400BadRequest"
                }
              }
            },
            "description": "Bad Request"
          },
          "401": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/E-Receipts_IT_API_ErrorModel401Unauthorized"
                }
              }
            },
            "description": "Unauthorized"
          },
          "403": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/E-Receipts_IT_API_ErrorModel403Forbidden"
                }
              }
            },
            "description": "Forbidden"
          },
          "404": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/E-Receipts_IT_API_ErrorModel404NotFound"
                }
              }
            },
            "description": "Not Found"
          },
          "422": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/E-Receipts_IT_API_ErrorModel422UnprocessableContent"
                }
              }
            },
            "description": "Unprocessable Content"
          },
          "500": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/E-Receipts_IT_API_ErrorModel500InternalServerError"
                }
              }
            },
            "description": "Internal Server Error"
          }
        }
      }
    },
    "/v1/mf1/pems/{serial_number}/download-data": {
      "get": {
        "tags": [
          "PEM"
        ],
        "summary": "Download PEM's data",
        "description": "Download all the data stored in the specified PEM generated in the last 48 hours",
        "operationId": "download_pem_data_v1_mf1_pems__serial_number__download_data_get",
        "security": [
          {
            "E-Receipts_IT_API_HTTPBearer": []
          }
        ],
        "parameters": [
          {
            "name": "serial_number",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string",
              "description": "The PEM serial number",
              "title": "Serial Number"
            },
            "description": "The PEM serial number"
          }
        ],
        "responses": {
          "200": {
            "description": "Returns the requested data as a ZIP archive",
            "content": {
              "application/json": {
                "schema": {
                  "title": "Response Download Pem Data V1 Mf1 Pems  Serial Number  Download Data Get"
                }
              },
              "application/octet-stream": {
                "schema": {
                  "type": "string",
                  "format": "binary"
                }
              }
            }
          },
          "400": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/E-Receipts_IT_API_ErrorModel400BadRequest"
                }
              }
            },
            "description": "Bad Request"
          },
          "401": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/E-Receipts_IT_API_ErrorModel401Unauthorized"
                }
              }
            },
            "description": "Unauthorized"
          },
          "403": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/E-Receipts_IT_API_ErrorModel403Forbidden"
                }
              }
            },
            "description": "Forbidden"
          },
          "404": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/E-Receipts_IT_API_ErrorModel404NotFound"
                }
              }
            },
            "description": "Not Found"
          },
          "422": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/E-Receipts_IT_API_ErrorModel422UnprocessableContent"
                }
              }
            },
            "description": "Unprocessable Content"
          },
          "500": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/E-Receipts_IT_API_ErrorModel500InternalServerError"
                }
              }
            },
            "description": "Internal Server Error"
          }
        }
      }
    },
    "/v1/mf1/receipts": {
      "post": {
        "tags": [
          "Receipt"
        ],
        "summary": "Issue a sale receipt",
        "description": "Issues a new sale commercial document. If this is the first transaction of the fiscal day, the system will automatically open a new Journal.",
        "operationId": "create_sale_receipt_v1_mf1_receipts_post",
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/E-Receipts_IT_API_ReceiptInput"
              }
            }
          },
          "required": true
        },
        "responses": {
          "201": {
            "description": "Successful Response",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/E-Receipts_IT_API_ReceiptOutput"
                }
              }
            }
          },
          "401": {
            "description": "Unauthorized",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/E-Receipts_IT_API_ErrorModel401Unauthorized"
                }
              }
            }
          },
          "403": {
            "description": "Forbidden",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/E-Receipts_IT_API_ErrorModel403Forbidden"
                }
              }
            }
          },
          "409": {
            "description": "Conflict",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/E-Receipts_IT_API_ErrorModel409Conflict"
                }
              }
            }
          },
          "422": {
            "description": "Unprocessable Content",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/E-Receipts_IT_API_ErrorModel422UnprocessableContent"
                }
              }
            }
          },
          "500": {
            "description": "Internal Server Error",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/E-Receipts_IT_API_ErrorModel500InternalServerError"
                }
              }
            }
          },
          "503": {
            "description": "Service Unavailable",
            "headers": {
              "Retry-After": {
                "description": "The time to wait before retrying the request",
                "schema": {
                  "type": "integer",
                  "example": 120
                }
              }
            },
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/E-Receipts_IT_API_ErrorModel503ServiceUnavailable"
                }
              }
            }
          }
        },
        "security": [
          {
            "E-Receipts_IT_API_HTTPBearer": [],
            "E-Receipts_IT_API_mutualTLS": []
          }
        ]
      }
    },
    "/v1/mf1/receipts/{receipt_uuid}": {
      "get": {
        "tags": [
          "Receipt"
        ],
        "summary": "Retrieve a Receipt resource",
        "operationId": "get_receipt_v1_mf1_receipts__receipt_uuid__get",
        "security": [
          {
            "E-Receipts_IT_API_HTTPBearer": [],
            "E-Receipts_IT_API_mutualTLS": []
          }
        ],
        "parameters": [
          {
            "name": "receipt_uuid",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string",
              "format": "uuid",
              "title": "Receipt Uuid"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Successful Response",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/E-Receipts_IT_API_ReceiptOutput"
                }
              }
            }
          },
          "401": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/E-Receipts_IT_API_ErrorModel401Unauthorized"
                }
              }
            },
            "description": "Unauthorized"
          },
          "403": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/E-Receipts_IT_API_ErrorModel403Forbidden"
                }
              }
            },
            "description": "Forbidden"
          },
          "404": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/E-Receipts_IT_API_ErrorModel404NotFound"
                }
              }
            },
            "description": "Not Found"
          },
          "422": {
            "description": "Validation Error",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/E-Receipts_IT_API_HTTPValidationError"
                }
              }
            }
          }
        }
      }
    },
    "/v1/mf1/receipts/{receipt_uuid}/pdf": {
      "get": {
        "tags": [
          "Receipt"
        ],
        "summary": "Download the PDF of a receipt",
        "description": "Public endpoint that returns the PDF of a receipt given its UUID.",
        "operationId": "download_receipt_pdf_public_v1_mf1_receipts__receipt_uuid__pdf_get",
        "parameters": [
          {
            "name": "receipt_uuid",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string",
              "format": "uuid",
              "title": "Receipt Uuid"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Successful Response",
            "content": {
              "application/json": {
                "schema": {}
              }
            }
          },
          "401": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/E-Receipts_IT_API_ErrorModel401Unauthorized"
                }
              }
            },
            "description": "Unauthorized"
          },
          "403": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/E-Receipts_IT_API_ErrorModel403Forbidden"
                }
              }
            },
            "description": "Forbidden"
          },
          "404": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/E-Receipts_IT_API_ErrorModel404NotFound"
                }
              }
            },
            "description": "Not Found"
          },
          "422": {
            "description": "Validation Error",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/E-Receipts_IT_API_HTTPValidationError"
                }
              }
            }
          },
          "503": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/E-Receipts_IT_API_ErrorModel503ServiceUnavailable"
                }
              }
            },
            "description": "Service Unavailable"
          }
        }
      }
    },
    "/v1/mf1/receipts/{receipt_uuid}/returnable-items": {
      "get": {
        "tags": [
          "Receipt"
        ],
        "summary": "Get returnable quantities for items of a sale receipt",
        "operationId": "get_returnable_items_v1_mf1_receipts__receipt_uuid__returnable_items_get",
        "security": [
          {
            "E-Receipts_IT_API_HTTPBearer": [],
            "E-Receipts_IT_API_mutualTLS": []
          }
        ],
        "parameters": [
          {
            "name": "receipt_uuid",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string",
              "format": "uuid",
              "title": "Receipt Uuid"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Successful Response",
            "content": {
              "application/json": {
                "schema": {
                  "type": "array",
                  "items": {
                    "$ref": "#/components/schemas/E-Receipts_IT_API_ReturnableReceiptItem"
                  },
                  "title": "Response Get Returnable Items V1 Mf1 Receipts  Receipt Uuid  Returnable Items Get"
                }
              }
            }
          },
          "401": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/E-Receipts_IT_API_ErrorModel401Unauthorized"
                }
              }
            },
            "description": "Unauthorized"
          },
          "403": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/E-Receipts_IT_API_ErrorModel403Forbidden"
                }
              }
            },
            "description": "Forbidden"
          },
          "422": {
            "description": "Validation Error",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/E-Receipts_IT_API_HTTPValidationError"
                }
              }
            }
          },
          "503": {
            "description": "Service Unavailable",
            "headers": {
              "Retry-After": {
                "description": "The time to wait before retrying the request",
                "schema": {
                  "type": "integer",
                  "example": 120
                }
              }
            },
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/E-Receipts_IT_API_ErrorModel503ServiceUnavailable"
                }
              }
            }
          }
        }
      }
    },
    "/v1/mf1/receipts/void": {
      "post": {
        "tags": [
          "Receipt"
        ],
        "summary": "Void a receipt",
        "description": "Issues a new cancellation commercial document. If this is the first transaction of the fiscal day, the system will automatically open a new Journal.",
        "operationId": "void_receipt_via_same_pem_v1_mf1_receipts_void_post",
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/E-Receipts_IT_API_VoidViaSamePemInput"
              }
            }
          },
          "required": true
        },
        "responses": {
          "200": {
            "description": "Successful Response",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/E-Receipts_IT_API_ReceiptOutput"
                }
              }
            }
          },
          "401": {
            "description": "Unauthorized",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/E-Receipts_IT_API_ErrorModel401Unauthorized"
                }
              }
            }
          },
          "403": {
            "description": "Forbidden",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/E-Receipts_IT_API_ErrorModel403Forbidden"
                }
              }
            }
          },
          "404": {
            "description": "Not Found",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/E-Receipts_IT_API_ErrorModel404NotFound"
                }
              }
            }
          },
          "409": {
            "description": "Conflict",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/E-Receipts_IT_API_ErrorModel409Conflict"
                }
              }
            }
          },
          "422": {
            "description": "Unprocessable Content",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/E-Receipts_IT_API_ErrorModel422UnprocessableContent"
                }
              }
            }
          },
          "500": {
            "description": "Internal Server Error",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/E-Receipts_IT_API_ErrorModel500InternalServerError"
                }
              }
            }
          },
          "503": {
            "description": "Service Unavailable",
            "headers": {
              "Retry-After": {
                "description": "The time to wait before retrying the request",
                "schema": {
                  "type": "integer",
                  "example": 120
                }
              }
            },
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/E-Receipts_IT_API_ErrorModel503ServiceUnavailable"
                }
              }
            }
          }
        },
        "security": [
          {
            "E-Receipts_IT_API_HTTPBearer": [],
            "E-Receipts_IT_API_mutualTLS": []
          }
        ]
      }
    },
    "/v1/mf1/receipts/void-via-different-device": {
      "post": {
        "tags": [
          "Receipt"
        ],
        "summary": "Void a receipt issued by another device",
        "description": "Issues a cancellation commercial document for a sale receipt originally issued by a different kind of device (i.e., an RT or RT Server) or a different PEM than the current one. If this is the first transaction of the fiscal day, a new Journal will automatically be opened.",
        "operationId": "void_receipt_via_different_device_v1_mf1_receipts_void_via_different_device_post",
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/E-Receipts_IT_API_VoidViaDifferentDeviceInput"
              }
            }
          },
          "required": true
        },
        "responses": {
          "200": {
            "description": "Successful Response",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/E-Receipts_IT_API_ReceiptOutput"
                }
              }
            }
          },
          "401": {
            "description": "Unauthorized",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/E-Receipts_IT_API_ErrorModel401Unauthorized"
                }
              }
            }
          },
          "403": {
            "description": "Forbidden",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/E-Receipts_IT_API_ErrorModel403Forbidden"
                }
              }
            }
          },
          "409": {
            "description": "Conflict",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/E-Receipts_IT_API_ErrorModel409Conflict"
                }
              }
            }
          },
          "422": {
            "description": "Unprocessable Content",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/E-Receipts_IT_API_ErrorModel422UnprocessableContent"
                }
              }
            }
          },
          "503": {
            "description": "Service Unavailable",
            "headers": {
              "Retry-After": {
                "description": "The time to wait before retrying the request",
                "schema": {
                  "type": "integer",
                  "example": 120
                }
              }
            },
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/E-Receipts_IT_API_ErrorModel503ServiceUnavailable"
                }
              }
            }
          }
        },
        "security": [
          {
            "E-Receipts_IT_API_HTTPBearer": [],
            "E-Receipts_IT_API_mutualTLS": []
          }
        ]
      }
    },
    "/v1/mf1/receipts/void-with-proof": {
      "post": {
        "tags": [
          "Receipt"
        ],
        "summary": "Void a receipt identified by a proof of purchase",
        "description": "Issues a cancellation commercial document justified by alternative proof of purchase. In accordance with Circular 3/E (February 21, 2020), merchants may issue a cancellation commercial document based on supporting evidence that verifies the original transaction, such as a POS payment slip or returnable packaging (\"vuoti a rendere\"), even when the original commercial document is not present.\nIf this is the first transaction of the fiscal day, a new Fiscal Journal will automatically be opened.",
        "operationId": "void_receipt_via_proof_v1_mf1_receipts_void_with_proof_post",
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/E-Receipts_IT_API_VoidWithProofInput"
              }
            }
          },
          "required": true
        },
        "responses": {
          "200": {
            "description": "Successful Response",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/E-Receipts_IT_API_ReceiptOutput"
                }
              }
            }
          },
          "401": {
            "description": "Unauthorized",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/E-Receipts_IT_API_ErrorModel401Unauthorized"
                }
              }
            }
          },
          "403": {
            "description": "Forbidden",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/E-Receipts_IT_API_ErrorModel403Forbidden"
                }
              }
            }
          },
          "409": {
            "description": "Conflict",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/E-Receipts_IT_API_ErrorModel409Conflict"
                }
              }
            }
          },
          "422": {
            "description": "Unprocessable Content",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/E-Receipts_IT_API_ErrorModel422UnprocessableContent"
                }
              }
            }
          },
          "500": {
            "description": "Internal Server Error",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/E-Receipts_IT_API_ErrorModel500InternalServerError"
                }
              }
            }
          },
          "503": {
            "description": "Service Unavailable",
            "headers": {
              "Retry-After": {
                "description": "The time to wait before retrying the request",
                "schema": {
                  "type": "integer",
                  "example": 120
                }
              }
            },
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/E-Receipts_IT_API_ErrorModel503ServiceUnavailable"
                }
              }
            }
          }
        },
        "security": [
          {
            "E-Receipts_IT_API_HTTPBearer": [],
            "E-Receipts_IT_API_mutualTLS": []
          }
        ]
      }
    },
    "/v1/mf1/receipts/{receipt_uuid}/details": {
      "get": {
        "tags": [
          "Receipt"
        ],
        "summary": "Get the details of a receipt",
        "description": "Retrieve the details of a Receipt resource.",
        "operationId": "get_receipt_details_v1_mf1_receipts__receipt_uuid__details_get",
        "security": [
          {
            "E-Receipts_IT_API_HTTPBearer": [],
            "E-Receipts_IT_API_mutualTLS": []
          }
        ],
        "parameters": [
          {
            "name": "receipt_uuid",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string",
              "format": "uuid",
              "title": "Receipt Uuid"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Receipt details in JSON format",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/E-Receipts_IT_API_ReceiptDetailsOutput"
                }
              }
            }
          },
          "401": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/E-Receipts_IT_API_ErrorModel401Unauthorized"
                }
              }
            },
            "description": "Unauthorized"
          },
          "403": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/E-Receipts_IT_API_ErrorModel403Forbidden"
                }
              }
            },
            "description": "Forbidden"
          },
          "404": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/E-Receipts_IT_API_ErrorModel404NotFound"
                }
              }
            },
            "description": "Not Found"
          },
          "422": {
            "description": "Validation Error",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/E-Receipts_IT_API_HTTPValidationError"
                }
              }
            }
          }
        }
      }
    },
    "/v1/mf1/receipts/return": {
      "post": {
        "tags": [
          "Receipt"
        ],
        "summary": "Return items from a sale receipt",
        "description": "Issues a new return commercial document.\nIf this is the first transaction of the fiscal day, the system will automatically open a new Journal.",
        "operationId": "return_items_via_same_pem_v1_mf1_receipts_return_post",
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/E-Receipts_IT_API_ReturnViaSamePemInput"
              }
            }
          },
          "required": true
        },
        "responses": {
          "201": {
            "description": "Successful Response",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/E-Receipts_IT_API_ReceiptOutput"
                }
              }
            }
          },
          "401": {
            "description": "Unauthorized",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/E-Receipts_IT_API_ErrorModel401Unauthorized"
                }
              }
            }
          },
          "403": {
            "description": "Forbidden",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/E-Receipts_IT_API_ErrorModel403Forbidden"
                }
              }
            }
          },
          "409": {
            "description": "Conflict",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/E-Receipts_IT_API_ErrorModel409Conflict"
                }
              }
            }
          },
          "422": {
            "description": "Unprocessable Content",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/E-Receipts_IT_API_ErrorModel422UnprocessableContent"
                }
              }
            }
          },
          "500": {
            "description": "Internal Server Error",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/E-Receipts_IT_API_ErrorModel500InternalServerError"
                }
              }
            }
          },
          "503": {
            "description": "Service Unavailable",
            "headers": {
              "Retry-After": {
                "description": "The time to wait before retrying the request",
                "schema": {
                  "type": "integer",
                  "example": 120
                }
              }
            },
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/E-Receipts_IT_API_ErrorModel503ServiceUnavailable"
                }
              }
            }
          }
        },
        "security": [
          {
            "E-Receipts_IT_API_HTTPBearer": [],
            "E-Receipts_IT_API_mutualTLS": []
          }
        ]
      }
    },
    "/v1/mf1/receipts/return-via-different-device": {
      "post": {
        "tags": [
          "Receipt"
        ],
        "summary": "Return items from a sale receipt issued by a different device",
        "description": "Issues a new return commercial document originally issued by a different kind of device (i.e., an RT or RT Server) or a different PEM than the current one.\nIf this is the first transaction of the fiscal day, the system will automatically open a new Journal.",
        "operationId": "return_receipt_items_via_different_device_v1_mf1_receipts_return_via_different_device_post",
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/E-Receipts_IT_API_ReturnViaDifferentDeviceInput"
              }
            }
          },
          "required": true
        },
        "responses": {
          "201": {
            "description": "Successful Response",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/E-Receipts_IT_API_ReceiptOutput"
                }
              }
            }
          },
          "401": {
            "description": "Unauthorized",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/E-Receipts_IT_API_ErrorModel401Unauthorized"
                }
              }
            }
          },
          "403": {
            "description": "Forbidden",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/E-Receipts_IT_API_ErrorModel403Forbidden"
                }
              }
            }
          },
          "409": {
            "description": "Conflict",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/E-Receipts_IT_API_ErrorModel409Conflict"
                }
              }
            }
          },
          "422": {
            "description": "Unprocessable Content",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/E-Receipts_IT_API_ErrorModel422UnprocessableContent"
                }
              }
            }
          },
          "500": {
            "description": "Internal Server Error",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/E-Receipts_IT_API_ErrorModel500InternalServerError"
                }
              }
            }
          },
          "503": {
            "description": "Service Unavailable",
            "headers": {
              "Retry-After": {
                "description": "The time to wait before retrying the request",
                "schema": {
                  "type": "integer",
                  "example": 120
                }
              }
            },
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/E-Receipts_IT_API_ErrorModel503ServiceUnavailable"
                }
              }
            }
          }
        },
        "security": [
          {
            "E-Receipts_IT_API_HTTPBearer": [],
            "E-Receipts_IT_API_mutualTLS": []
          }
        ]
      }
    },
    "/v1/mf1/receipts/return-with-proof": {
      "post": {
        "tags": [
          "Receipt"
        ],
        "summary": "Return items from a receipt identified by a proof of purchase",
        "description": "Issues a return commercial document justified by alternative proof of purchase. \nIn accordance with Circular 3/E (February 21, 2020), merchants may issue a return based on supporting evidence that verifies the original transaction, such as a POS payment slip or returnable packaging (\"vuoti a rendere\"), even when the original commercial document is not present.\nIf this is the first transaction of the fiscal day, a new Fiscal Journal will automatically be opened.",
        "operationId": "return_receipt_items_via_proof_v1_mf1_receipts_return_with_proof_post",
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/E-Receipts_IT_API_ReturnViaProofInput"
              }
            }
          },
          "required": true
        },
        "responses": {
          "201": {
            "description": "Successful Response",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/E-Receipts_IT_API_ReceiptOutput"
                }
              }
            }
          },
          "401": {
            "description": "Unauthorized",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/E-Receipts_IT_API_ErrorModel401Unauthorized"
                }
              }
            }
          },
          "403": {
            "description": "Forbidden",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/E-Receipts_IT_API_ErrorModel403Forbidden"
                }
              }
            }
          },
          "409": {
            "description": "Conflict",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/E-Receipts_IT_API_ErrorModel409Conflict"
                }
              }
            }
          },
          "422": {
            "description": "Validation Error",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/E-Receipts_IT_API_HTTPValidationError"
                }
              }
            }
          },
          "500": {
            "description": "Internal Server Error",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/E-Receipts_IT_API_ErrorModel500InternalServerError"
                }
              }
            }
          },
          "503": {
            "description": "Service Unavailable",
            "headers": {
              "Retry-After": {
                "description": "The time to wait before retrying the request",
                "schema": {
                  "type": "integer",
                  "example": 120
                }
              }
            },
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/E-Receipts_IT_API_ErrorModel503ServiceUnavailable"
                }
              }
            }
          }
        },
        "security": [
          {
            "E-Receipts_IT_API_HTTPBearer": [],
            "E-Receipts_IT_API_mutualTLS": []
          }
        ]
      }
    },
    "/v1/mf1/cash-registers": {
      "post": {
        "tags": [
          "Cash Register"
        ],
        "summary": "Create a Cash Register resource",
        "operationId": "create_cash_register_v1_mf1_cash_registers_post",
        "security": [
          {
            "E-Receipts_IT_API_HTTPBearer": []
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/E-Receipts_IT_API_CashRegisterCreate"
              }
            }
          }
        },
        "responses": {
          "201": {
            "description": "Successful Response",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/E-Receipts_IT_API_CashRegisterDetailedOutput"
                }
              }
            }
          },
          "401": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/E-Receipts_IT_API_ErrorModel401Unauthorized"
                }
              }
            },
            "description": "Unauthorized"
          },
          "403": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/E-Receipts_IT_API_ErrorModel403Forbidden"
                }
              }
            },
            "description": "Forbidden"
          },
          "404": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/E-Receipts_IT_API_ErrorModel404NotFound"
                }
              }
            },
            "description": "Not Found"
          },
          "409": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/E-Receipts_IT_API_ErrorModel409Conflict"
                }
              }
            },
            "description": "Conflict"
          },
          "422": {
            "description": "Validation Error",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/E-Receipts_IT_API_HTTPValidationError"
                }
              }
            }
          }
        }
      },
      "get": {
        "tags": [
          "Cash Register"
        ],
        "summary": "Read the collection of Cash Register resources",
        "operationId": "get_cash_registers_v1_mf1_cash_registers_get",
        "security": [
          {
            "E-Receipts_IT_API_HTTPBearer": []
          }
        ],
        "parameters": [
          {
            "name": "pem_id",
            "in": "query",
            "required": false,
            "schema": {
              "anyOf": [
                {
                  "type": "string"
                },
                {
                  "type": "null"
                }
              ],
              "title": "Pem Id"
            }
          },
          {
            "name": "page",
            "in": "query",
            "required": false,
            "schema": {
              "type": "integer",
              "minimum": 1,
              "description": "Page number",
              "default": 1,
              "title": "Page"
            },
            "description": "Page number"
          },
          {
            "name": "size",
            "in": "query",
            "required": false,
            "schema": {
              "type": "integer",
              "default": 30,
              "title": "Size"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Successful Response",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/E-Receipts_IT_API_Page_TypeVar_Customized_CashRegisterBasicOutput_"
                }
              }
            }
          },
          "401": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/E-Receipts_IT_API_ErrorModel401Unauthorized"
                }
              }
            },
            "description": "Unauthorized"
          },
          "403": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/E-Receipts_IT_API_ErrorModel403Forbidden"
                }
              }
            },
            "description": "Forbidden"
          },
          "422": {
            "description": "Validation Error",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/E-Receipts_IT_API_HTTPValidationError"
                }
              }
            }
          }
        }
      }
    },
    "/v1/mf1/cash-registers/{id}": {
      "get": {
        "tags": [
          "Cash Register"
        ],
        "summary": "Read a Cash Register resource",
        "operationId": "get_cash_register_v1_mf1_cash_registers__id__get",
        "security": [
          {
            "E-Receipts_IT_API_HTTPBearer": []
          }
        ],
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string",
              "format": "uuid",
              "description": "UUID of the cash register",
              "title": "Id"
            },
            "description": "UUID of the cash register"
          }
        ],
        "responses": {
          "200": {
            "description": "Successful Response",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/E-Receipts_IT_API_CashRegisterBasicOutput"
                }
              }
            }
          },
          "401": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/E-Receipts_IT_API_ErrorModel401Unauthorized"
                }
              }
            },
            "description": "Unauthorized"
          },
          "403": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/E-Receipts_IT_API_ErrorModel403Forbidden"
                }
              }
            },
            "description": "Forbidden"
          },
          "404": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/E-Receipts_IT_API_ErrorModel404NotFound"
                }
              }
            },
            "description": "Not Found"
          },
          "422": {
            "description": "Validation Error",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/E-Receipts_IT_API_HTTPValidationError"
                }
              }
            }
          }
        }
      },
      "patch": {
        "tags": [
          "Cash Register"
        ],
        "summary": "Update a Cash Register resource",
        "operationId": "update_cash_register_v1_mf1_cash_registers__id__patch",
        "security": [
          {
            "E-Receipts_IT_API_HTTPBearer": []
          }
        ],
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string",
              "format": "uuid",
              "description": "UUID of the cash register",
              "title": "Id"
            },
            "description": "UUID of the cash register"
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/E-Receipts_IT_API_CashRegisterUpdate"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Successful Response",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/E-Receipts_IT_API_CashRegisterBasicOutput"
                }
              }
            }
          },
          "401": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/E-Receipts_IT_API_ErrorModel401Unauthorized"
                }
              }
            },
            "description": "Unauthorized"
          },
          "403": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/E-Receipts_IT_API_ErrorModel403Forbidden"
                }
              }
            },
            "description": "Forbidden"
          },
          "404": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/E-Receipts_IT_API_ErrorModel404NotFound"
                }
              }
            },
            "description": "Not Found"
          },
          "422": {
            "description": "Validation Error",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/E-Receipts_IT_API_HTTPValidationError"
                }
              }
            }
          }
        }
      }
    },
    "/v1/mf1/notifications": {
      "get": {
        "tags": [
          "Notification"
        ],
        "summary": "Retrieve the collection of Notification resources",
        "operationId": "read_notifications_v1_mf1_notifications_get",
        "security": [
          {
            "E-Receipts_IT_API_HTTPBearer": [],
            "E-Receipts_IT_API_mutualTLS": []
          }
        ],
        "parameters": [
          {
            "name": "page",
            "in": "query",
            "required": false,
            "schema": {
              "type": "integer",
              "description": "Page identifier",
              "default": 1,
              "title": "Page"
            },
            "description": "Page identifier"
          },
          {
            "name": "size",
            "in": "query",
            "required": false,
            "schema": {
              "type": "integer",
              "description": "Page size",
              "default": 30,
              "title": "Size"
            },
            "description": "Page size"
          }
        ],
        "responses": {
          "200": {
            "description": "Successful Response",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/E-Receipts_IT_API_PaginatedResponse_Notification_"
                }
              }
            }
          },
          "401": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/E-Receipts_IT_API_ErrorModel401Unauthorized"
                }
              }
            },
            "description": "Unauthorized"
          },
          "403": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/E-Receipts_IT_API_ErrorModel403Forbidden"
                }
              }
            },
            "description": "Forbidden"
          },
          "422": {
            "description": "Validation Error",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/E-Receipts_IT_API_HTTPValidationError"
                }
              }
            }
          }
        }
      }
    },
    "/v1/mf2/pems/{serial_number}/emergency-reports": {
      "get": {
        "operationId": "api_v1mf2pems_serial_numberemergency-reports_get_collection",
        "tags": [
          "EmergencyReport"
        ],
        "responses": {
          "200": {
            "description": "EmergencyReport collection",
            "content": {
              "application/json": {
                "schema": {
                  "type": "array",
                  "items": {
                    "$ref": "#/components/schemas/A-Cube_GOV-IT_PEL_Platform_EmergencyReport.EmergencyReportOutput"
                  }
                }
              },
              "application/ld+json": {
                "schema": {
                  "type": "object",
                  "description": "EmergencyReport.EmergencyReportOutput.jsonld collection.",
                  "allOf": [
                    {
                      "$ref": "#/components/schemas/A-Cube_GOV-IT_PEL_Platform_HydraCollectionBaseSchema"
                    },
                    {
                      "type": "object",
                      "required": [
                        "member"
                      ],
                      "properties": {
                        "member": {
                          "type": "array",
                          "items": {
                            "$ref": "#/components/schemas/A-Cube_GOV-IT_PEL_Platform_EmergencyReport.EmergencyReportOutput.jsonld"
                          }
                        }
                      }
                    }
                  ]
                }
              }
            }
          }
        },
        "summary": "Retrieves the collection of EmergencyReport resources.",
        "description": "Retrieves the collection of EmergencyReport resources.",
        "parameters": [
          {
            "name": "serial_number",
            "in": "path",
            "description": "The serial number of the PEM",
            "required": true,
            "deprecated": false,
            "schema": {
              "type": "string"
            },
            "style": "simple",
            "explode": false
          },
          {
            "name": "page",
            "in": "query",
            "description": "The collection page number",
            "required": false,
            "deprecated": false,
            "schema": {
              "type": "integer",
              "default": 1
            },
            "style": "form",
            "explode": false
          },
          {
            "name": "itemsPerPage",
            "in": "query",
            "description": "The number of items per page",
            "required": false,
            "deprecated": false,
            "schema": {
              "type": "integer",
              "default": 30,
              "minimum": 0,
              "maximum": 30
            },
            "style": "form",
            "explode": false
          }
        ],
        "x-apiplatform-tag": [
          "mf2"
        ],
        "security": []
      },
      "post": {
        "operationId": "api_v1mf2pems_serial_numberemergency-reports_post",
        "tags": [
          "EmergencyReport"
        ],
        "responses": {
          "202": {
            "description": "Pem resource created",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/A-Cube_GOV-IT_PEL_Platform_Pem.EmergencyReportOutput"
                }
              },
              "application/ld+json": {
                "schema": {
                  "$ref": "#/components/schemas/A-Cube_GOV-IT_PEL_Platform_Pem.EmergencyReportOutput.jsonld"
                }
              }
            },
            "links": {}
          },
          "400": {
            "description": "Invalid input",
            "content": {
              "application/ld+json": {
                "schema": {
                  "$ref": "#/components/schemas/A-Cube_GOV-IT_PEL_Platform_Error.jsonld"
                }
              },
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/A-Cube_GOV-IT_PEL_Platform_Error"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/A-Cube_GOV-IT_PEL_Platform_Error"
                }
              }
            },
            "links": {}
          },
          "403": {
            "description": "Forbidden",
            "content": {
              "application/ld+json": {
                "schema": {
                  "$ref": "#/components/schemas/A-Cube_GOV-IT_PEL_Platform_Error.jsonld"
                }
              },
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/A-Cube_GOV-IT_PEL_Platform_Error"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/A-Cube_GOV-IT_PEL_Platform_Error"
                }
              }
            },
            "links": {}
          },
          "422": {
            "description": "An error occurred",
            "content": {
              "application/ld+json": {
                "schema": {
                  "$ref": "#/components/schemas/A-Cube_GOV-IT_PEL_Platform_ConstraintViolation.jsonld"
                }
              },
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/A-Cube_GOV-IT_PEL_Platform_ConstraintViolation"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/A-Cube_GOV-IT_PEL_Platform_ConstraintViolation"
                }
              }
            },
            "links": {}
          }
        },
        "summary": "Uploads a new emergency report.",
        "description": "Uploads a new emergency report",
        "parameters": [
          {
            "name": "serial_number",
            "in": "path",
            "description": "The serial number of the PEM",
            "required": true,
            "deprecated": false,
            "schema": {
              "type": "string"
            },
            "style": "simple",
            "explode": false
          }
        ],
        "requestBody": {
          "description": "The new Pem resource",
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/A-Cube_GOV-IT_PEL_Platform_Pem.EmergencyReportInput"
              }
            },
            "application/ld+json": {
              "schema": {
                "$ref": "#/components/schemas/A-Cube_GOV-IT_PEL_Platform_Pem.EmergencyReportInput"
              }
            }
          },
          "required": true
        },
        "x-apiplatform-tag": [
          "mf2"
        ],
        "security": []
      }
    },
    "/v1/mf2/pems/{serial_number}/emergency-reports/{id}": {
      "get": {
        "operationId": "api_v1mf2pems_serial_numberemergency-reports_id_get",
        "tags": [
          "EmergencyReport"
        ],
        "responses": {
          "200": {
            "description": "EmergencyReport resource",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/A-Cube_GOV-IT_PEL_Platform_EmergencyReport.EmergencyReportOutput"
                }
              },
              "application/ld+json": {
                "schema": {
                  "$ref": "#/components/schemas/A-Cube_GOV-IT_PEL_Platform_EmergencyReport.EmergencyReportOutput.jsonld"
                }
              }
            }
          },
          "404": {
            "description": "Not found",
            "content": {
              "application/ld+json": {
                "schema": {
                  "$ref": "#/components/schemas/A-Cube_GOV-IT_PEL_Platform_Error.jsonld"
                }
              },
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/A-Cube_GOV-IT_PEL_Platform_Error"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/A-Cube_GOV-IT_PEL_Platform_Error"
                }
              }
            },
            "links": {}
          }
        },
        "summary": "Retrieves a EmergencyReport resource.",
        "description": "Retrieves a EmergencyReport resource.",
        "parameters": [
          {
            "name": "serial_number",
            "in": "path",
            "description": "The serial number of the PEM",
            "required": true,
            "deprecated": false,
            "schema": {
              "type": "string"
            },
            "style": "simple",
            "explode": false
          },
          {
            "name": "id",
            "in": "path",
            "description": "EmergencyReport identifier",
            "required": true,
            "deprecated": false,
            "schema": {
              "type": "string"
            },
            "style": "simple",
            "explode": false
          }
        ],
        "x-apiplatform-tag": [
          "mf2"
        ],
        "security": []
      }
    },
    "/v1/mf2/merchants": {
      "get": {
        "operationId": "api_v1mf2merchants_get_collection",
        "tags": [
          "Merchant"
        ],
        "responses": {
          "200": {
            "description": "Merchant collection",
            "content": {
              "application/json": {
                "schema": {
                  "type": "array",
                  "items": {
                    "$ref": "#/components/schemas/A-Cube_GOV-IT_PEL_Platform_Merchant.MerchantOutput"
                  }
                }
              },
              "application/ld+json": {
                "schema": {
                  "type": "object",
                  "description": "Merchant.MerchantOutput.jsonld collection.",
                  "allOf": [
                    {
                      "$ref": "#/components/schemas/A-Cube_GOV-IT_PEL_Platform_HydraCollectionBaseSchema"
                    },
                    {
                      "type": "object",
                      "required": [
                        "member"
                      ],
                      "properties": {
                        "member": {
                          "type": "array",
                          "items": {
                            "$ref": "#/components/schemas/A-Cube_GOV-IT_PEL_Platform_Merchant.MerchantOutput.jsonld"
                          }
                        }
                      }
                    }
                  ]
                }
              }
            }
          },
          "403": {
            "description": "Forbidden",
            "content": {
              "application/ld+json": {
                "schema": {
                  "$ref": "#/components/schemas/A-Cube_GOV-IT_PEL_Platform_Error.jsonld"
                }
              },
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/A-Cube_GOV-IT_PEL_Platform_Error"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/A-Cube_GOV-IT_PEL_Platform_Error"
                }
              }
            },
            "links": {}
          }
        },
        "summary": "Retrieves the collection of Merchant resources.",
        "description": "Retrieves the collection of Merchant resources.",
        "parameters": [
          {
            "name": "page",
            "in": "query",
            "description": "The collection page number",
            "required": false,
            "deprecated": false,
            "schema": {
              "type": "integer",
              "default": 1
            },
            "style": "form",
            "explode": false
          },
          {
            "name": "itemsPerPage",
            "in": "query",
            "description": "The number of items per page",
            "required": false,
            "deprecated": false,
            "schema": {
              "type": "integer",
              "default": 30,
              "minimum": 0,
              "maximum": 30
            },
            "style": "form",
            "explode": false
          }
        ],
        "x-apiplatform-tag": [
          "mf2"
        ],
        "security": []
      },
      "post": {
        "operationId": "api_v1mf2merchants_post",
        "tags": [
          "Merchant"
        ],
        "responses": {
          "201": {
            "description": "Merchant resource created",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/A-Cube_GOV-IT_PEL_Platform_Merchant.MerchantOutput"
                }
              },
              "application/ld+json": {
                "schema": {
                  "$ref": "#/components/schemas/A-Cube_GOV-IT_PEL_Platform_Merchant.MerchantOutput.jsonld"
                }
              }
            },
            "links": {}
          },
          "400": {
            "description": "Invalid input",
            "content": {
              "application/ld+json": {
                "schema": {
                  "$ref": "#/components/schemas/A-Cube_GOV-IT_PEL_Platform_Error.jsonld"
                }
              },
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/A-Cube_GOV-IT_PEL_Platform_Error"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/A-Cube_GOV-IT_PEL_Platform_Error"
                }
              }
            },
            "links": {}
          },
          "403": {
            "description": "Forbidden",
            "content": {
              "application/ld+json": {
                "schema": {
                  "$ref": "#/components/schemas/A-Cube_GOV-IT_PEL_Platform_Error.jsonld"
                }
              },
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/A-Cube_GOV-IT_PEL_Platform_Error"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/A-Cube_GOV-IT_PEL_Platform_Error"
                }
              }
            },
            "links": {}
          },
          "422": {
            "description": "An error occurred",
            "content": {
              "application/ld+json": {
                "schema": {
                  "$ref": "#/components/schemas/A-Cube_GOV-IT_PEL_Platform_ConstraintViolation.jsonld"
                }
              },
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/A-Cube_GOV-IT_PEL_Platform_ConstraintViolation"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/A-Cube_GOV-IT_PEL_Platform_ConstraintViolation"
                }
              }
            },
            "links": {}
          }
        },
        "summary": "Creates a Merchant resource.",
        "description": "Creates a Merchant resource.",
        "parameters": [],
        "requestBody": {
          "description": "The new Merchant resource",
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/A-Cube_GOV-IT_PEL_Platform_Merchant.MerchantCreateInput"
              }
            },
            "application/ld+json": {
              "schema": {
                "$ref": "#/components/schemas/A-Cube_GOV-IT_PEL_Platform_Merchant.MerchantCreateInput"
              }
            }
          },
          "required": true
        },
        "x-apiplatform-tag": [
          "mf2"
        ],
        "security": []
      }
    },
    "/v1/mf2/merchants/{uuid}": {
      "get": {
        "operationId": "api_v1mf2merchants_uuid_get",
        "tags": [
          "Merchant"
        ],
        "responses": {
          "200": {
            "description": "Merchant resource",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/A-Cube_GOV-IT_PEL_Platform_Merchant.MerchantOutput"
                }
              },
              "application/ld+json": {
                "schema": {
                  "$ref": "#/components/schemas/A-Cube_GOV-IT_PEL_Platform_Merchant.MerchantOutput.jsonld"
                }
              }
            }
          },
          "403": {
            "description": "Forbidden",
            "content": {
              "application/ld+json": {
                "schema": {
                  "$ref": "#/components/schemas/A-Cube_GOV-IT_PEL_Platform_Error.jsonld"
                }
              },
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/A-Cube_GOV-IT_PEL_Platform_Error"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/A-Cube_GOV-IT_PEL_Platform_Error"
                }
              }
            },
            "links": {}
          },
          "404": {
            "description": "Not found",
            "content": {
              "application/ld+json": {
                "schema": {
                  "$ref": "#/components/schemas/A-Cube_GOV-IT_PEL_Platform_Error.jsonld"
                }
              },
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/A-Cube_GOV-IT_PEL_Platform_Error"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/A-Cube_GOV-IT_PEL_Platform_Error"
                }
              }
            },
            "links": {}
          }
        },
        "summary": "Retrieves a Merchant resource.",
        "description": "Retrieves a Merchant resource.",
        "parameters": [
          {
            "name": "uuid",
            "in": "path",
            "description": "The uuid of the Merchant",
            "required": true,
            "deprecated": false,
            "schema": {
              "type": "string"
            },
            "style": "simple",
            "explode": false
          }
        ],
        "x-apiplatform-tag": [
          "mf2"
        ],
        "security": []
      },
      "put": {
        "operationId": "api_v1mf2merchants_uuid_put",
        "tags": [
          "Merchant"
        ],
        "responses": {
          "200": {
            "description": "Merchant resource updated",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/A-Cube_GOV-IT_PEL_Platform_Merchant.MerchantOutput"
                }
              },
              "application/ld+json": {
                "schema": {
                  "$ref": "#/components/schemas/A-Cube_GOV-IT_PEL_Platform_Merchant.MerchantOutput.jsonld"
                }
              }
            },
            "links": {}
          },
          "400": {
            "description": "Invalid input",
            "content": {
              "application/ld+json": {
                "schema": {
                  "$ref": "#/components/schemas/A-Cube_GOV-IT_PEL_Platform_Error.jsonld"
                }
              },
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/A-Cube_GOV-IT_PEL_Platform_Error"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/A-Cube_GOV-IT_PEL_Platform_Error"
                }
              }
            },
            "links": {}
          },
          "403": {
            "description": "Forbidden",
            "content": {
              "application/ld+json": {
                "schema": {
                  "$ref": "#/components/schemas/A-Cube_GOV-IT_PEL_Platform_Error.jsonld"
                }
              },
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/A-Cube_GOV-IT_PEL_Platform_Error"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/A-Cube_GOV-IT_PEL_Platform_Error"
                }
              }
            },
            "links": {}
          },
          "404": {
            "description": "Not found",
            "content": {
              "application/ld+json": {
                "schema": {
                  "$ref": "#/components/schemas/A-Cube_GOV-IT_PEL_Platform_Error.jsonld"
                }
              },
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/A-Cube_GOV-IT_PEL_Platform_Error"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/A-Cube_GOV-IT_PEL_Platform_Error"
                }
              }
            },
            "links": {}
          },
          "422": {
            "description": "An error occurred",
            "content": {
              "application/ld+json": {
                "schema": {
                  "$ref": "#/components/schemas/A-Cube_GOV-IT_PEL_Platform_ConstraintViolation.jsonld"
                }
              },
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/A-Cube_GOV-IT_PEL_Platform_ConstraintViolation"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/A-Cube_GOV-IT_PEL_Platform_ConstraintViolation"
                }
              }
            },
            "links": {}
          }
        },
        "summary": "Replaces the Merchant resource.",
        "description": "Replaces the Merchant resource.",
        "parameters": [
          {
            "name": "uuid",
            "in": "path",
            "description": "The uuid of the Merchant",
            "required": true,
            "deprecated": false,
            "schema": {
              "type": "string"
            },
            "style": "simple",
            "explode": false
          }
        ],
        "requestBody": {
          "description": "The updated Merchant resource",
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/A-Cube_GOV-IT_PEL_Platform_Merchant.MerchantUpdateInput"
              }
            },
            "application/ld+json": {
              "schema": {
                "$ref": "#/components/schemas/A-Cube_GOV-IT_PEL_Platform_Merchant.MerchantUpdateInput"
              }
            }
          },
          "required": true
        },
        "x-apiplatform-tag": [
          "mf2"
        ],
        "security": []
      }
    },
    "/v1/mf2/merchants/{merchant_uuid}/pems": {
      "get": {
        "operationId": "api_v1mf2merchants_merchant_uuidpems_get_collection",
        "tags": [
          "PEM"
        ],
        "responses": {
          "200": {
            "description": "PEM resources",
            "content": {
              "application/json": {
                "schema": {
                  "type": "array",
                  "items": {
                    "$ref": "#/components/schemas/A-Cube_GOV-IT_PEL_Platform_Pem.PemOutput"
                  }
                }
              },
              "application/ld+json": {
                "schema": {
                  "type": "object",
                  "description": "Pem.PemOutput.jsonld collection.",
                  "allOf": [
                    {
                      "$ref": "#/components/schemas/A-Cube_GOV-IT_PEL_Platform_HydraCollectionBaseSchema"
                    },
                    {
                      "type": "object",
                      "required": [
                        "member"
                      ],
                      "properties": {
                        "member": {
                          "type": "array",
                          "items": {
                            "$ref": "#/components/schemas/A-Cube_GOV-IT_PEL_Platform_Pem.PemOutput.jsonld"
                          }
                        }
                      }
                    }
                  ]
                }
              }
            }
          },
          "403": {
            "description": "Forbidden",
            "content": {
              "application/ld+json": {
                "schema": {
                  "$ref": "#/components/schemas/A-Cube_GOV-IT_PEL_Platform_Error.jsonld"
                }
              },
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/A-Cube_GOV-IT_PEL_Platform_Error"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/A-Cube_GOV-IT_PEL_Platform_Error"
                }
              }
            },
            "links": {}
          }
        },
        "summary": "Retrieves a list of PEM resources.",
        "description": "Retrieves the collection of Pem resources.",
        "parameters": [
          {
            "name": "merchant_uuid",
            "in": "path",
            "description": "The uuid of the Merchant.",
            "required": true,
            "deprecated": false,
            "schema": {
              "type": "string"
            },
            "style": "simple",
            "explode": false
          },
          {
            "name": "page",
            "in": "query",
            "description": "The collection page number",
            "required": false,
            "deprecated": false,
            "schema": {
              "type": "integer",
              "default": 1
            },
            "style": "form",
            "explode": false
          },
          {
            "name": "itemsPerPage",
            "in": "query",
            "description": "The number of items per page",
            "required": false,
            "deprecated": false,
            "schema": {
              "type": "integer",
              "default": 30,
              "minimum": 0,
              "maximum": 30
            },
            "style": "form",
            "explode": false
          }
        ],
        "x-apiplatform-tag": [
          "mf2"
        ],
        "security": []
      }
    },
    "/v1/mf2/pems": {
      "post": {
        "operationId": "api_v1mf2pems_post",
        "tags": [
          "PEM"
        ],
        "responses": {
          "200": {
            "description": "PEM resource"
          },
          "201": {
            "description": "Pem resource created",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/A-Cube_GOV-IT_PEL_Platform_Pem.PemCreateOutput"
                }
              },
              "application/ld+json": {
                "schema": {
                  "$ref": "#/components/schemas/A-Cube_GOV-IT_PEL_Platform_Pem.PemCreateOutput.jsonld"
                }
              }
            },
            "links": {}
          },
          "400": {
            "description": "Invalid input",
            "content": {
              "application/ld+json": {
                "schema": {
                  "$ref": "#/components/schemas/A-Cube_GOV-IT_PEL_Platform_Error.jsonld"
                }
              },
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/A-Cube_GOV-IT_PEL_Platform_Error"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/A-Cube_GOV-IT_PEL_Platform_Error"
                }
              }
            },
            "links": {}
          },
          "403": {
            "description": "Forbidden",
            "content": {
              "application/ld+json": {
                "schema": {
                  "$ref": "#/components/schemas/A-Cube_GOV-IT_PEL_Platform_Error.jsonld"
                }
              },
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/A-Cube_GOV-IT_PEL_Platform_Error"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/A-Cube_GOV-IT_PEL_Platform_Error"
                }
              }
            },
            "links": {}
          },
          "422": {
            "description": "An error occurred",
            "content": {
              "application/ld+json": {
                "schema": {
                  "$ref": "#/components/schemas/A-Cube_GOV-IT_PEL_Platform_ConstraintViolation.jsonld"
                }
              },
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/A-Cube_GOV-IT_PEL_Platform_ConstraintViolation"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/A-Cube_GOV-IT_PEL_Platform_ConstraintViolation"
                }
              }
            },
            "links": {}
          }
        },
        "summary": "Creates a new PEM.",
        "description": "Creates a PEM resource",
        "parameters": [],
        "requestBody": {
          "description": "The new PEM resource",
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/A-Cube_GOV-IT_PEL_Platform_Pem.PemCreateInput"
              }
            },
            "application/ld+json": {
              "schema": {
                "$ref": "#/components/schemas/A-Cube_GOV-IT_PEL_Platform_Pem.PemCreateInput"
              }
            }
          },
          "required": true
        },
        "x-apiplatform-tag": [
          "mf2"
        ],
        "security": []
      }
    },
    "/v1/mf2/pems/{serial_number}": {
      "get": {
        "operationId": "api_v1mf2pems_serial_number_get",
        "tags": [
          "PEM"
        ],
        "responses": {
          "200": {
            "description": "PEM resource",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/A-Cube_GOV-IT_PEL_Platform_Pem.PemOutput"
                }
              },
              "application/ld+json": {
                "schema": {
                  "$ref": "#/components/schemas/A-Cube_GOV-IT_PEL_Platform_Pem.PemOutput.jsonld"
                }
              }
            }
          },
          "403": {
            "description": "Forbidden",
            "content": {
              "application/ld+json": {
                "schema": {
                  "$ref": "#/components/schemas/A-Cube_GOV-IT_PEL_Platform_Error.jsonld"
                }
              },
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/A-Cube_GOV-IT_PEL_Platform_Error"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/A-Cube_GOV-IT_PEL_Platform_Error"
                }
              }
            },
            "links": {}
          },
          "404": {
            "description": "Not found",
            "content": {
              "application/ld+json": {
                "schema": {
                  "$ref": "#/components/schemas/A-Cube_GOV-IT_PEL_Platform_Error.jsonld"
                }
              },
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/A-Cube_GOV-IT_PEL_Platform_Error"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/A-Cube_GOV-IT_PEL_Platform_Error"
                }
              }
            },
            "links": {}
          }
        },
        "summary": "Retrieves a PEM resource.",
        "description": "Retrieves a Pem resource.",
        "parameters": [
          {
            "name": "serial_number",
            "in": "path",
            "description": "The serial number of the PEM",
            "required": true,
            "deprecated": false,
            "schema": {
              "type": "string"
            },
            "style": "simple",
            "explode": false
          }
        ],
        "x-apiplatform-tag": [
          "mf2"
        ],
        "security": []
      }
    },
    "/v1/mf2/pems/{serial_number}/configuration": {
      "get": {
        "operationId": "api_v1mf2pems_serial_numberconfiguration_get",
        "tags": [
          "PEM"
        ],
        "responses": {
          "200": {
            "description": "PemConfiguration resource",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/A-Cube_GOV-IT_PEL_Platform_PemConfiguration.PemConfigurationOutput"
                }
              },
              "application/ld+json": {
                "schema": {
                  "$ref": "#/components/schemas/A-Cube_GOV-IT_PEL_Platform_PemConfiguration.PemConfigurationOutput.jsonld"
                }
              }
            }
          },
          "403": {
            "description": "Forbidden",
            "content": {
              "application/ld+json": {
                "schema": {
                  "$ref": "#/components/schemas/A-Cube_GOV-IT_PEL_Platform_Error.jsonld"
                }
              },
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/A-Cube_GOV-IT_PEL_Platform_Error"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/A-Cube_GOV-IT_PEL_Platform_Error"
                }
              }
            },
            "links": {}
          },
          "404": {
            "description": "Not found",
            "content": {
              "application/ld+json": {
                "schema": {
                  "$ref": "#/components/schemas/A-Cube_GOV-IT_PEL_Platform_Error.jsonld"
                }
              },
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/A-Cube_GOV-IT_PEL_Platform_Error"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/A-Cube_GOV-IT_PEL_Platform_Error"
                }
              }
            },
            "links": {}
          }
        },
        "summary": "Get the PEM configuration",
        "description": "Get the PEM configuration",
        "parameters": [
          {
            "name": "serial_number",
            "in": "path",
            "description": "The serial number of the PEM",
            "required": true,
            "deprecated": false,
            "schema": {
              "type": "string"
            },
            "style": "simple",
            "explode": false
          }
        ],
        "x-apiplatform-tag": [
          "mf2"
        ],
        "security": []
      },
      "put": {
        "operationId": "api_v1mf2pems_serial_numberconfiguration_put",
        "tags": [
          "PEM"
        ],
        "responses": {
          "202": {
            "description": "PemConfiguration resource updated",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/A-Cube_GOV-IT_PEL_Platform_PemConfiguration.PemConfigurationOutput"
                }
              },
              "application/ld+json": {
                "schema": {
                  "$ref": "#/components/schemas/A-Cube_GOV-IT_PEL_Platform_PemConfiguration.PemConfigurationOutput.jsonld"
                }
              }
            },
            "links": {}
          },
          "400": {
            "description": "Invalid input",
            "content": {
              "application/ld+json": {
                "schema": {
                  "$ref": "#/components/schemas/A-Cube_GOV-IT_PEL_Platform_Error.jsonld"
                }
              },
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/A-Cube_GOV-IT_PEL_Platform_Error"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/A-Cube_GOV-IT_PEL_Platform_Error"
                }
              }
            },
            "links": {}
          },
          "403": {
            "description": "Forbidden",
            "content": {
              "application/ld+json": {
                "schema": {
                  "$ref": "#/components/schemas/A-Cube_GOV-IT_PEL_Platform_Error.jsonld"
                }
              },
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/A-Cube_GOV-IT_PEL_Platform_Error"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/A-Cube_GOV-IT_PEL_Platform_Error"
                }
              }
            },
            "links": {}
          },
          "404": {
            "description": "Not found",
            "content": {
              "application/ld+json": {
                "schema": {
                  "$ref": "#/components/schemas/A-Cube_GOV-IT_PEL_Platform_Error.jsonld"
                }
              },
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/A-Cube_GOV-IT_PEL_Platform_Error"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/A-Cube_GOV-IT_PEL_Platform_Error"
                }
              }
            },
            "links": {}
          },
          "422": {
            "description": "An error occurred",
            "content": {
              "application/ld+json": {
                "schema": {
                  "$ref": "#/components/schemas/A-Cube_GOV-IT_PEL_Platform_ConstraintViolation.jsonld"
                }
              },
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/A-Cube_GOV-IT_PEL_Platform_ConstraintViolation"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/A-Cube_GOV-IT_PEL_Platform_ConstraintViolation"
                }
              }
            },
            "links": {}
          }
        },
        "summary": "Update the PEM configuration",
        "description": "Update the PEM configuration",
        "parameters": [
          {
            "name": "serial_number",
            "in": "path",
            "description": "The serial number of the PEM",
            "required": true,
            "deprecated": false,
            "schema": {
              "type": "string"
            },
            "style": "simple",
            "explode": false
          }
        ],
        "requestBody": {
          "description": "The updated PemConfiguration resource",
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/A-Cube_GOV-IT_PEL_Platform_PemConfiguration.PemConfigurationInput"
              }
            },
            "application/ld+json": {
              "schema": {
                "$ref": "#/components/schemas/A-Cube_GOV-IT_PEL_Platform_PemConfiguration.PemConfigurationInput"
              }
            }
          },
          "required": true
        },
        "x-apiplatform-tag": [
          "mf2"
        ],
        "security": []
      }
    },
    "/v1/mf2/pems/{serial_number}/configuration/logo": {
      "get": {
        "operationId": "pem_configuration_logo_get",
        "tags": [
          "PEM"
        ],
        "responses": {
          "200": {
            "description": "The image as PNG binary",
            "content": {
              "schema": {
                "type": "string",
                "format": "binary"
              }
            },
            "headers": {
              "Content-Type": "image/png"
            }
          },
          "403": {
            "description": "Forbidden",
            "content": {
              "application/ld+json": {
                "schema": {
                  "$ref": "#/components/schemas/A-Cube_GOV-IT_PEL_Platform_Error.jsonld"
                }
              },
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/A-Cube_GOV-IT_PEL_Platform_Error"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/A-Cube_GOV-IT_PEL_Platform_Error"
                }
              }
            },
            "links": {}
          },
          "404": {
            "description": "Not found",
            "content": {
              "application/ld+json": {
                "schema": {
                  "$ref": "#/components/schemas/A-Cube_GOV-IT_PEL_Platform_Error.jsonld"
                }
              },
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/A-Cube_GOV-IT_PEL_Platform_Error"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/A-Cube_GOV-IT_PEL_Platform_Error"
                }
              }
            },
            "links": {}
          }
        },
        "summary": "Fetch the logo image to be printed on the receipts",
        "description": "Fetch the logo image to be printed on the receipts",
        "parameters": [
          {
            "name": "serial_number",
            "in": "path",
            "description": "The serial number of the PEM",
            "required": true,
            "deprecated": false,
            "schema": {
              "type": "string"
            },
            "style": "simple",
            "explode": false
          }
        ],
        "x-apiplatform-tag": [
          "mf2"
        ],
        "security": []
      }
    },
    "/v1/mf2/pems/{serial_number}/discard": {
      "post": {
        "operationId": "api_v1mf2pems_serial_numberdiscard_post",
        "tags": [
          "PEM"
        ],
        "responses": {
          "202": {
            "description": "Pem resource created",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/A-Cube_GOV-IT_PEL_Platform_Pem"
                }
              },
              "application/ld+json": {
                "schema": {
                  "$ref": "#/components/schemas/A-Cube_GOV-IT_PEL_Platform_Pem.jsonld"
                }
              }
            },
            "links": {}
          },
          "204": {
            "description": "PEM discarded successfully"
          },
          "400": {
            "description": "Invalid input data",
            "content": {
              "application/ld+json": {
                "schema": {
                  "$ref": "#/components/schemas/A-Cube_GOV-IT_PEL_Platform_Error.jsonld"
                }
              },
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/A-Cube_GOV-IT_PEL_Platform_Error"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/A-Cube_GOV-IT_PEL_Platform_Error"
                }
              }
            },
            "links": {}
          },
          "403": {
            "description": "Forbidden",
            "content": {
              "application/ld+json": {
                "schema": {
                  "$ref": "#/components/schemas/A-Cube_GOV-IT_PEL_Platform_Error.jsonld"
                }
              },
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/A-Cube_GOV-IT_PEL_Platform_Error"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/A-Cube_GOV-IT_PEL_Platform_Error"
                }
              }
            },
            "links": {}
          },
          "404": {
            "description": "PEM not found"
          },
          "422": {
            "description": "Discard error, see details",
            "content": {
              "application/ld+json": {
                "schema": {
                  "$ref": "#/components/schemas/A-Cube_GOV-IT_PEL_Platform_ConstraintViolation.jsonld"
                }
              },
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/A-Cube_GOV-IT_PEL_Platform_ConstraintViolation"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/A-Cube_GOV-IT_PEL_Platform_ConstraintViolation"
                }
              }
            },
            "links": {}
          }
        },
        "summary": "Sets the PEM status to \"discarded\".",
        "description": "Creates a Pem resource.",
        "parameters": [
          {
            "name": "serial_number",
            "in": "path",
            "description": "The serial number of the PEM",
            "required": true,
            "deprecated": false,
            "schema": {
              "type": "string"
            },
            "style": "simple",
            "explode": false
          }
        ],
        "requestBody": {
          "description": "The new Pem resource",
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/A-Cube_GOV-IT_PEL_Platform_Pem.PemDiscardInput"
              }
            },
            "application/ld+json": {
              "schema": {
                "$ref": "#/components/schemas/A-Cube_GOV-IT_PEL_Platform_Pem.PemDiscardInput"
              }
            }
          },
          "required": true
        },
        "x-apiplatform-tag": [
          "mf2"
        ],
        "security": []
      }
    }
  },
  "webhooks": {},
  "components": {
    "schemas": {
      "E-Receipts_IT_API_Address": {
        "properties": {
          "street_address": {
            "type": "string",
            "title": "Street Address",
            "description": "The street address associated to the PEM"
          },
          "street_number": {
            "type": "string",
            "title": "Street Number",
            "description": "The street number associated to the PEM"
          },
          "zip_code": {
            "type": "string",
            "maxLength": 5,
            "minLength": 5,
            "title": "Zip Code",
            "description": "The zip code associated to the PEM"
          },
          "city": {
            "type": "string",
            "title": "City",
            "description": "The city associated to the PEM"
          },
          "province": {
            "type": "string",
            "maxLength": 2,
            "minLength": 2,
            "title": "Province",
            "description": "The province associated to the PEM"
          }
        },
        "type": "object",
        "required": [
          "street_address",
          "street_number",
          "zip_code",
          "city",
          "province"
        ],
        "title": "Address"
      },
      "E-Receipts_IT_API_CashRegisterBasicOutput": {
        "properties": {
          "uuid": {
            "type": "string",
            "format": "uuid",
            "title": "Uuid"
          },
          "pem_serial_number": {
            "type": "string",
            "pattern": "^[A-Z0-9]{4}-[A-Z0-9]{6}$",
            "title": "Pem Serial Number"
          },
          "name": {
            "type": "string",
            "title": "Name"
          }
        },
        "type": "object",
        "required": [
          "uuid",
          "pem_serial_number",
          "name"
        ],
        "title": "CashRegisterBasicOutput"
      },
      "E-Receipts_IT_API_CashRegisterCreate": {
        "properties": {
          "pem_serial_number": {
            "type": "string",
            "pattern": "^[A-Z0-9]{4}-[A-Z0-9]{6}$",
            "title": "Pem Serial Number"
          },
          "name": {
            "type": "string",
            "title": "Name"
          }
        },
        "type": "object",
        "required": [
          "pem_serial_number",
          "name"
        ],
        "title": "CashRegisterCreate"
      },
      "E-Receipts_IT_API_CashRegisterDetailedOutput": {
        "properties": {
          "uuid": {
            "type": "string",
            "format": "uuid",
            "title": "Uuid"
          },
          "pem_serial_number": {
            "type": "string",
            "pattern": "^[A-Z0-9]{4}-[A-Z0-9]{6}$",
            "title": "Pem Serial Number"
          },
          "name": {
            "type": "string",
            "title": "Name"
          },
          "mtls_certificate": {
            "$ref": "#/components/schemas/E-Receipts_IT_API_MtlsCertificateOutput"
          }
        },
        "type": "object",
        "required": [
          "uuid",
          "pem_serial_number",
          "name",
          "mtls_certificate"
        ],
        "title": "CashRegisterDetailedOutput"
      },
      "E-Receipts_IT_API_CashRegisterUpdate": {
        "properties": {
          "name": {
            "type": "string",
            "title": "Name"
          }
        },
        "type": "object",
        "required": [
          "name"
        ],
        "title": "CashRegisterUpdate"
      },
      "E-Receipts_IT_API_CashierCreateInput": {
        "properties": {
          "email": {
            "type": "string",
            "maxLength": 255,
            "title": "Email"
          },
          "password": {
            "type": "string",
            "maxLength": 40,
            "minLength": 8,
            "title": "Password"
          },
          "name": {
            "type": "string",
            "maxLength": 255,
            "title": "Name"
          },
          "display_name": {
            "anyOf": [
              {
                "type": "string"
              },
              {
                "type": "null"
              }
            ],
            "title": "Display Name",
            "description": "An optional display name to be displayed in the receipt's PDF."
          }
        },
        "type": "object",
        "required": [
          "email",
          "password",
          "name",
          "display_name"
        ],
        "title": "CashierCreateInput"
      },
      "E-Receipts_IT_API_CashierOutput": {
        "properties": {
          "uuid": {
            "type": "string",
            "format": "uuid",
            "title": "Uuid"
          },
          "email": {
            "type": "string",
            "title": "Email"
          },
          "display_name": {
            "anyOf": [
              {
                "type": "string"
              },
              {
                "type": "null"
              }
            ],
            "title": "Display Name",
            "description": "An optional display name to be displayed in the receipt's PDF."
          },
          "name": {
            "type": "string",
            "title": "Name"
          },
          "status": {
            "$ref": "#/components/schemas/E-Receipts_IT_API_CashierStatus"
          },
          "merchant_uuid": {
            "type": "string",
            "format": "uuid",
            "title": "Merchant Uuid"
          }
        },
        "type": "object",
        "required": [
          "uuid",
          "email",
          "name",
          "status",
          "merchant_uuid"
        ],
        "title": "CashierOutput"
      },
      "E-Receipts_IT_API_CashierSimpleOutput": {
        "properties": {
          "uuid": {
            "type": "string",
            "format": "uuid",
            "title": "Uuid"
          },
          "email": {
            "type": "string",
            "title": "Email"
          },
          "display_name": {
            "anyOf": [
              {
                "type": "string"
              },
              {
                "type": "null"
              }
            ],
            "title": "Display Name",
            "description": "An optional display name to be displayed in the receipt's PDF."
          },
          "name": {
            "type": "string",
            "title": "Name"
          },
          "status": {
            "$ref": "#/components/schemas/E-Receipts_IT_API_CashierStatus"
          }
        },
        "type": "object",
        "required": [
          "uuid",
          "email",
          "name",
          "status"
        ],
        "title": "CashierSimpleOutput"
      },
      "E-Receipts_IT_API_CashierStatus": {
        "type": "string",
        "enum": [
          "active",
          "disabled"
        ],
        "title": "CashierStatus"
      },
      "E-Receipts_IT_API_DailyReportEntry": {
        "properties": {
          "vat_rate_code": {
            "anyOf": [
              {
                "$ref": "#/components/schemas/E-Receipts_IT_API_VatRateEnum"
              },
              {
                "$ref": "#/components/schemas/E-Receipts_IT_API_NaturaType"
              },
              {
                "type": "null"
              }
            ],
            "title": "Vat Rate Code",
            "description": "VAT rate (i.e., '22.00', '10.00', ecc.) or a Codice Natura (N1-N6). Mandatory if and only if `simplified_vat_allocation` is False."
          },
          "vat_amount": {
            "anyOf": [
              {
                "type": "string",
                "pattern": "^\\d{1,12}\\.\\d{2}$"
              },
              {
                "type": "null"
              }
            ],
            "title": "Vat Amount",
            "description": "VAT amount. Set only if `vat_rate_code` is a VAT rate (e.g. '22.00'). leave unset if `vat_rate_code` is a Codice Natura (N1-N6) or null."
          },
          "simplified_vat_allocation": {
            "type": "boolean",
            "title": "Simplified Vat Allocation",
            "description": "True if Ventilazione IVA (ex DM 3495 del 24/02/1973) is to be applied. If set, `vat_rate_code` and `vat_amount` must be null.",
            "default": false
          },
          "partial_amount": {
            "type": "string",
            "pattern": "^\\d{1,12}\\.\\d{2}$",
            "title": "Partial Amount",
            "description": "This amount represents the total taxable base subject to VAT, including the value reported in the `total_uncollected_complimentary` field.\n\nFor transactions subject to VAT, it must represent the total gross consideration net of VAT, gross of uncollected amounts for the supply of delivered goods, and net of the following values:\n- returns\n- cancellations (voids)\n- **payments already collected as advances** for the supply of goods not yet delivered, or for the sale of goods and services via the redemption of single-purpose vouchers (`total_prepaid_voucher_amount`)\n- uncollected amounts for the provision of services (`total_uncollected_services`)\n- uncollected amounts for which an invoice is linked to the commercial document (`total_uncollected_invoiced`)\n- uncollected amounts in case of \"Distinta Contabile Riepilogativa SSN\" (`total_uncollected_dcr_to_ssn`)\n\nThese same rules also apply to transactions where the `vat_rate_code` field corresponds to a Codice Natura (i.e., \"N1\", \"N6\") or when `simplified_vat_allocation` (\"Ventilazione IVA\") is used.\nIn case of simplified VAT allocation, this amount is gross of VAT."
          },
          "total_returned_amount": {
            "anyOf": [
              {
                "type": "string",
                "pattern": "^\\d{1,12}\\.\\d{2}$"
              },
              {
                "type": "null"
              }
            ],
            "title": "Total Returned Amount",
            "description": "Total amount of any returns processed by the merchant (taxable amount net of VAT). In the case of simplified VAT allocation (\"Ventilazione IVA\"), this amount is gross of VAT."
          },
          "total_voided_amount": {
            "anyOf": [
              {
                "type": "string",
                "pattern": "^\\d{1,12}\\.\\d{2}$"
              },
              {
                "type": "null"
              }
            ],
            "title": "Total Voided Amount",
            "description": "Total amount of any commercial documents cancelled (voided) by the merchant (taxable amount net of VAT). In the case of simplified VAT allocation (\"Ventilazione IVA\"), this amount is gross of VAT."
          },
          "total_prepaid_or_voucher_amount": {
            "anyOf": [
              {
                "type": "string",
                "pattern": "^\\d{1,12}\\.\\d{2}$"
              },
              {
                "type": "null"
              }
            ],
            "title": "Total Prepaid Or Voucher Amount",
            "description": "Total amount of consideration collected as advances for the supply of goods not yet delivered. This field is also used for the sale of goods and services via the redemption of single-purpose vouchers. The amount must be net of VAT, except in the case of simplified VAT allocation (\"Ventilazione IVA\"), where it must be gross of VAT."
          },
          "total_uncollected_services": {
            "anyOf": [
              {
                "type": "string",
                "pattern": "^\\d{1,12}\\.\\d{2}$"
              },
              {
                "type": "null"
              }
            ],
            "title": "Total Uncollected Services",
            "description": "Total amount of uncollected consideration reported in commercial documents issued for the provision of services.The amount must be net of VAT, except in the case of simplified VAT allocation (\"Ventilazione IVA\"), where it is gross of VAT."
          },
          "total_uncollected_invoiced": {
            "anyOf": [
              {
                "type": "string",
                "pattern": "^\\d{1,12}\\.\\d{2}$"
              },
              {
                "type": "null"
              }
            ],
            "title": "Total Uncollected Invoiced",
            "description": "Total amount of uncollected consideration reported in commercial documents that are linked to invoices. The amount must be net of VAT, except in the case of simplified VAT allocation (\"Ventilazione IVA\"), where it is gross of VAT."
          },
          "total_uncollected_dcr_to_ssn": {
            "anyOf": [
              {
                "type": "string",
                "pattern": "^\\d{1,12}\\.\\d{2}$"
              },
              {
                "type": "null"
              }
            ],
            "title": "Total Uncollected Dcr To Ssn",
            "description": "Total amount of uncollected consideration reported in the \"Distinta Contabile Riepilogativa\" to be transmitted to the SSN (Servizio Sanitario Nazionale). The amount must be net of VAT, except in the case of simplified VAT allocation (\"Ventilazione IVA\") where it is gross of VAT."
          },
          "total_uncollected_complimentary": {
            "anyOf": [
              {
                "type": "string",
                "pattern": "^\\d{1,12}\\.\\d{2}$"
              },
              {
                "type": "null"
              }
            ],
            "title": "Total Uncollected Complimentary",
            "description": "Total amount of uncollected consideration for complimentary items, to be included in the total taxable base subject to VAT represented by the `partial_amount` field. This amount must be net of VAT."
          },
          "ateco_code": {
            "anyOf": [
              {
                "type": "string",
                "pattern": "^\\d{5,6}$"
              },
              {
                "type": "null"
              }
            ],
            "title": "Ateco Code",
            "description": "The ATECO business activity code associated with the partial amount. The code must be provided as a continuous string without separators (e.g., no dots or hyphens), exactly as it appears in the ATECO classification table."
          }
        },
        "type": "object",
        "required": [
          "partial_amount"
        ],
        "title": "DailyReportEntry",
        "description": "Entry for the Emergency Report.\nIt must have exactly one between\n- `vat_rate_code`\n- `simplified_vat_allocation`\n\nIf `vat_rate_code` is set and it is a VAT rate (i.e. `22.00`, `10.00`, ...), `vat_amount` must be present."
      },
      "E-Receipts_IT_API_EmergencyReportInput": {
        "properties": {
          "datetime": {
            "type": "string",
            "pattern": "^\\d{4}-\\d{2}-\\d{2}T\\d{2}:\\d{2}:\\d{2}$",
            "title": "Datetime",
            "description": "Date and time of the daily closure (format: YYYY-MM-DDTHH:MM:SS)",
            "examples": [
              "2026-01-15T12:00:00"
            ]
          },
          "documents_count": {
            "type": "integer",
            "exclusiveMinimum": 0,
            "title": "Documents Count",
            "description": "The number of commercial documents in the Emergency Report included in this transmission pertaining to the closure date specified in `datetime`."
          },
          "cash_payment_amount": {
            "type": "string",
            "pattern": "^\\d{1,12}\\.\\d{2}$",
            "title": "Cash Payment Amount",
            "description": "Total paid in cash",
            "default": "0.00"
          },
          "electronic_payment_amount": {
            "type": "string",
            "pattern": "^\\d{1,12}\\.\\d{2}$",
            "title": "Electronic Payment Amount",
            "description": "Total paid electronically",
            "default": "0.00"
          },
          "discount": {
            "type": "string",
            "pattern": "^\\d{1,12}\\.\\d{2}$",
            "title": "Discount",
            "description": "Amount of the discount applied during the payment phase. This field must also include the amount of payments made using multi-purpose vouchers.\nThe amount must be gross of VAT.\nThis amount does not affect the following fields: `partial_amount`, `vat_rate_code`, and `vat_amount`.",
            "default": "0.00"
          },
          "ticket_restaurant_payment_amount": {
            "type": "string",
            "pattern": "^\\d{1,12}\\.\\d{2}$",
            "title": "Ticket Restaurant Payment Amount",
            "description": "Total paid with tickets invoiced by third parties (i.e., meal vouchers, celiac disease vouchers, promotional vouchers).\nThe amount must be gross of VAT.",
            "default": "0.00"
          },
          "ticket_restaurant_quantity": {
            "type": "integer",
            "title": "Ticket Restaurant Quantity",
            "description": "Number of tickets invoiced by third parties (i.e., meal vouchers, celiac disease vouchers, or promotional vouchers) provided by the client to the merchant as payment, corresponding to the amount indicated in `ticket_restaurant_payment_amount`.",
            "default": 0
          },
          "entries": {
            "items": {
              "$ref": "#/components/schemas/E-Receipts_IT_API_DailyReportEntry"
            },
            "type": "array",
            "maxItems": 40,
            "title": "Entries",
            "description": "List of summary entries"
          }
        },
        "type": "object",
        "required": [
          "datetime",
          "documents_count",
          "entries"
        ],
        "title": "EmergencyReportInput"
      },
      "E-Receipts_IT_API_ErrorModel400BadRequest": {
        "properties": {
          "type": {
            "type": "string",
            "title": "Type",
            "default": "/errors/400"
          },
          "title": {
            "type": "string",
            "title": "Title",
            "default": "Bad Request"
          },
          "status": {
            "type": "integer",
            "title": "Status",
            "default": 400
          },
          "detail": {
            "type": "string",
            "title": "Detail",
            "default": "A human-readable explanation specific to this occurrence of the problem"
          },
          "instance": {
            "anyOf": [
              {
                "type": "string"
              },
              {
                "type": "null"
              }
            ],
            "title": "Instance",
            "default": "A URI reference that identifies the specific occurrence of the problem"
          }
        },
        "type": "object",
        "title": "ErrorModel400BadRequest"
      },
      "E-Receipts_IT_API_ErrorModel401Unauthorized": {
        "properties": {
          "type": {
            "type": "string",
            "title": "Type",
            "default": "/errors/401"
          },
          "title": {
            "type": "string",
            "title": "Title",
            "default": "Unauthorized"
          },
          "status": {
            "type": "integer",
            "title": "Status",
            "default": 401
          },
          "detail": {
            "type": "string",
            "title": "Detail",
            "default": "A human-readable explanation specific to this occurrence of the problem"
          },
          "instance": {
            "anyOf": [
              {
                "type": "string"
              },
              {
                "type": "null"
              }
            ],
            "title": "Instance",
            "default": "A URI reference that identifies the specific occurrence of the problem"
          }
        },
        "type": "object",
        "title": "ErrorModel401Unauthorized"
      },
      "E-Receipts_IT_API_ErrorModel403Forbidden": {
        "properties": {
          "type": {
            "type": "string",
            "title": "Type",
            "default": "/errors/403"
          },
          "title": {
            "type": "string",
            "title": "Title",
            "default": "Forbidden"
          },
          "status": {
            "type": "integer",
            "title": "Status",
            "default": 403
          },
          "detail": {
            "type": "string",
            "title": "Detail",
            "default": "A human-readable explanation specific to this occurrence of the problem"
          },
          "instance": {
            "anyOf": [
              {
                "type": "string"
              },
              {
                "type": "null"
              }
            ],
            "title": "Instance",
            "default": "A URI reference that identifies the specific occurrence of the problem"
          }
        },
        "type": "object",
        "title": "ErrorModel403Forbidden"
      },
      "E-Receipts_IT_API_ErrorModel404NotFound": {
        "properties": {
          "type": {
            "type": "string",
            "title": "Type",
            "default": "/errors/404"
          },
          "title": {
            "type": "string",
            "title": "Title",
            "default": "Not Found"
          },
          "status": {
            "type": "integer",
            "title": "Status",
            "default": 404
          },
          "detail": {
            "type": "string",
            "title": "Detail",
            "default": "A human-readable explanation specific to this occurrence of the problem"
          },
          "instance": {
            "anyOf": [
              {
                "type": "string"
              },
              {
                "type": "null"
              }
            ],
            "title": "Instance",
            "default": "A URI reference that identifies the specific occurrence of the problem"
          }
        },
        "type": "object",
        "title": "ErrorModel404NotFound"
      },
      "E-Receipts_IT_API_ErrorModel409Conflict": {
        "properties": {
          "type": {
            "type": "string",
            "title": "Type",
            "default": "/errors/409"
          },
          "title": {
            "type": "string",
            "title": "Title",
            "default": "Conflict"
          },
          "status": {
            "type": "integer",
            "title": "Status",
            "default": 409
          },
          "detail": {
            "type": "string",
            "title": "Detail",
            "default": "A human-readable explanation specific to this occurrence of the problem"
          },
          "instance": {
            "anyOf": [
              {
                "type": "string"
              },
              {
                "type": "null"
              }
            ],
            "title": "Instance",
            "default": "A URI reference that identifies the specific occurrence of the problem"
          }
        },
        "type": "object",
        "title": "ErrorModel409Conflict"
      },
      "E-Receipts_IT_API_ErrorModel422UnprocessableContent": {
        "properties": {
          "type": {
            "type": "string",
            "title": "Type",
            "default": "/errors/422"
          },
          "title": {
            "type": "string",
            "title": "Title",
            "default": "Unprocessable Content"
          },
          "status": {
            "type": "integer",
            "title": "Status",
            "default": 422
          },
          "detail": {
            "type": "string",
            "title": "Detail",
            "default": "A human-readable explanation specific to this occurrence of the problem"
          },
          "instance": {
            "anyOf": [
              {
                "type": "string"
              },
              {
                "type": "null"
              }
            ],
            "title": "Instance",
            "default": "A URI reference that identifies the specific occurrence of the problem"
          },
          "violations": {
            "anyOf": [
              {
                "items": {
                  "additionalProperties": {
                    "type": "string"
                  },
                  "type": "object"
                },
                "type": "array"
              },
              {
                "type": "null"
              }
            ],
            "title": "Violations",
            "description": "List of validation errors if any"
          }
        },
        "type": "object",
        "title": "ErrorModel422UnprocessableContent"
      },
      "E-Receipts_IT_API_ErrorModel500InternalServerError": {
        "properties": {
          "type": {
            "type": "string",
            "title": "Type",
            "default": "/errors/500"
          },
          "title": {
            "type": "string",
            "title": "Title",
            "default": "Internal Server Error"
          },
          "status": {
            "type": "integer",
            "title": "Status",
            "default": 500
          },
          "detail": {
            "type": "string",
            "title": "Detail",
            "default": "A human-readable explanation specific to this occurrence of the problem"
          },
          "instance": {
            "anyOf": [
              {
                "type": "string"
              },
              {
                "type": "null"
              }
            ],
            "title": "Instance",
            "default": "A URI reference that identifies the specific occurrence of the problem"
          }
        },
        "type": "object",
        "title": "ErrorModel500InternalServerError"
      },
      "E-Receipts_IT_API_ErrorModel503ServiceUnavailable": {
        "properties": {
          "type": {
            "type": "string",
            "title": "Type",
            "default": "/errors/503"
          },
          "title": {
            "type": "string",
            "title": "Title",
            "default": "Service Unavailable"
          },
          "status": {
            "type": "integer",
            "title": "Status",
            "default": 503
          },
          "detail": {
            "type": "string",
            "title": "Detail",
            "default": "A human-readable explanation specific to this occurrence of the problem"
          },
          "instance": {
            "anyOf": [
              {
                "type": "string"
              },
              {
                "type": "null"
              }
            ],
            "title": "Instance",
            "default": "A URI reference that identifies the specific occurrence of the problem"
          }
        },
        "type": "object",
        "title": "ErrorModel503ServiceUnavailable"
      },
      "E-Receipts_IT_API_HTTPValidationError": {
        "properties": {
          "detail": {
            "items": {
              "$ref": "#/components/schemas/E-Receipts_IT_API_ValidationError"
            },
            "type": "array",
            "title": "Detail"
          }
        },
        "type": "object",
        "title": "HTTPValidationError"
      },
      "E-Receipts_IT_API_InactivityPeriodInput": {
        "properties": {
          "start_at": {
            "type": "string",
            "pattern": "^\\d{4}-\\d{2}-\\d{2}T\\d{2}:\\d{2}:\\d{2}$",
            "title": "Start At",
            "description": "Start of the inactivity period (format: YYYY-MM-DDTHH:MM:SS)",
            "examples": [
              "2026-01-15T12:00:00"
            ]
          },
          "end_at": {
            "type": "string",
            "pattern": "^\\d{4}-\\d{2}-\\d{2}T\\d{2}:\\d{2}:\\d{2}$",
            "title": "End At",
            "description": "End of the inactivity period (format: YYYY-MM-DDTHH:MM:SS)",
            "examples": [
              "2026-01-25T12:00:00"
            ]
          }
        },
        "type": "object",
        "required": [
          "start_at",
          "end_at"
        ],
        "title": "InactivityPeriodInput"
      },
      "E-Receipts_IT_API_ItemType": {
        "type": "string",
        "enum": [
          "goods",
          "service"
        ],
        "title": "ItemType"
      },
      "E-Receipts_IT_API_LotterySecretRequestInfo": {
        "properties": {
          "requested_at": {
            "anyOf": [
              {
                "type": "string",
                "format": "date-time"
              },
              {
                "type": "null"
              }
            ],
            "title": "Requested At",
            "description": "Datetime of last secret-code request to Lottery system",
            "examples": [
              "2025-11-29T09:00:00Z"
            ]
          },
          "outcome": {
            "anyOf": [
              {
                "type": "string"
              },
              {
                "type": "null"
              }
            ],
            "title": "Outcome",
            "description": "Outcome of the last secret request",
            "examples": [
              "success",
              "failed"
            ]
          }
        },
        "type": "object",
        "title": "LotterySecretRequestInfo"
      },
      "E-Receipts_IT_API_LotteryTelemetry": {
        "properties": {
          "last_transmission": {
            "anyOf": [
              {
                "$ref": "#/components/schemas/E-Receipts_IT_API_TransmissionAttemptInfo"
              },
              {
                "type": "null"
              }
            ],
            "description": "Last Lottery file transmission attempt"
          },
          "secret_request": {
            "anyOf": [
              {
                "$ref": "#/components/schemas/E-Receipts_IT_API_LotterySecretRequestInfo"
              },
              {
                "type": "null"
              }
            ],
            "description": "Last Lottery secret-code request"
          }
        },
        "type": "object",
        "title": "LotteryTelemetry"
      },
      "E-Receipts_IT_API_MerchantInfo": {
        "properties": {
          "vat_number": {
            "anyOf": [
              {
                "type": "string"
              },
              {
                "type": "null"
              }
            ],
            "title": "Vat Number",
            "description": "Merchant VAT number",
            "examples": [
              "IT12345678901"
            ]
          },
          "fiscal_code": {
            "anyOf": [
              {
                "type": "string"
              },
              {
                "type": "null"
              }
            ],
            "title": "Fiscal Code",
            "description": "Merchant fiscal code",
            "examples": [
              "RSSMRA80A01H501U"
            ]
          },
          "business_name": {
            "anyOf": [
              {
                "type": "string"
              },
              {
                "type": "null"
              }
            ],
            "title": "Business Name",
            "description": "Merchant business name",
            "examples": [
              "Merchant S.r.l."
            ]
          }
        },
        "type": "object",
        "title": "MerchantInfo"
      },
      "E-Receipts_IT_API_MessageInfo": {
        "properties": {
          "received_at": {
            "anyOf": [
              {
                "type": "string",
                "format": "date-time"
              },
              {
                "type": "null"
              }
            ],
            "title": "Received At",
            "description": "Datetime of last message reception",
            "examples": [
              "2025-12-01T16:31:00Z"
            ]
          },
          "content": {
            "anyOf": [
              {
                "type": "string"
              },
              {
                "type": "null"
              }
            ],
            "title": "Content",
            "description": "Raw message payload as JSON string",
            "examples": [
              "{\"type\":\"ack\",\"receipt_id\":\"RCPT-00123\"}"
            ]
          }
        },
        "type": "object",
        "title": "MessageInfo"
      },
      "E-Receipts_IT_API_MtlsCertificateOutput": {
        "properties": {
          "pem": {
            "$ref": "#/components/schemas/E-Receipts_IT_API_MtlsCertificatePemOutput"
          },
          "pkcs12": {
            "type": "string",
            "title": "Pkcs12"
          }
        },
        "type": "object",
        "required": [
          "pem",
          "pkcs12"
        ],
        "title": "MtlsCertificateOutput"
      },
      "E-Receipts_IT_API_MtlsCertificatePemOutput": {
        "properties": {
          "certificate": {
            "type": "string",
            "title": "Certificate"
          },
          "private_key": {
            "type": "string",
            "title": "Private Key"
          }
        },
        "type": "object",
        "required": [
          "certificate",
          "private_key"
        ],
        "title": "MtlsCertificatePemOutput"
      },
      "E-Receipts_IT_API_NaturaType": {
        "type": "string",
        "enum": [
          "N1",
          "N2",
          "N3",
          "N4",
          "N5",
          "N6"
        ],
        "title": "NaturaType",
        "description": "Natura codes with their corresponding descriptions."
      },
      "E-Receipts_IT_API_Notification": {
        "properties": {
          "uuid": {
            "type": "string",
            "format": "uuid",
            "title": "Uuid",
            "description": "The UUID of the notification"
          },
          "message": {
            "type": "string",
            "title": "Message",
            "description": "The message of the notification"
          },
          "scope": {
            "type": "string",
            "enum": [
              "global",
              "merchant",
              "pem"
            ],
            "title": "Scope",
            "description": "The scope of the notification"
          },
          "type": {
            "$ref": "#/components/schemas/E-Receipts_IT_API_NotificationType",
            "description": "The type of the notification"
          },
          "code": {
            "$ref": "#/components/schemas/E-Receipts_IT_API_NotificationCode",
            "description": "The code of the notification"
          },
          "source": {
            "$ref": "#/components/schemas/E-Receipts_IT_API_NotificationSource",
            "description": "The source of the notification"
          },
          "level": {
            "$ref": "#/components/schemas/E-Receipts_IT_API_NotificationLevel",
            "description": "The level of the notification"
          },
          "created_at": {
            "type": "string",
            "format": "date-time",
            "title": "Created At",
            "description": "The datetime the notification was created"
          },
          "payload": {
            "anyOf": [
              {
                "additionalProperties": true,
                "type": "object"
              },
              {
                "type": "null"
              }
            ],
            "title": "Payload",
            "description": "Notification-specific data"
          }
        },
        "type": "object",
        "required": [
          "uuid",
          "message",
          "scope",
          "type",
          "code",
          "source",
          "level",
          "created_at"
        ],
        "title": "Notification"
      },
      "E-Receipts_IT_API_NotificationCode": {
        "type": "string",
        "enum": [
          "SYS-I-01",
          "SYS-I-02",
          "SYS-W-01",
          "SYS-C-01"
        ],
        "title": "NotificationCode"
      },
      "E-Receipts_IT_API_NotificationLevel": {
        "type": "string",
        "enum": [
          "info",
          "warning",
          "error",
          "critical"
        ],
        "title": "NotificationLevel"
      },
      "E-Receipts_IT_API_NotificationSource": {
        "type": "string",
        "enum": [
          "system",
          "Italian Tax Authority"
        ],
        "title": "NotificationSource"
      },
      "E-Receipts_IT_API_NotificationType": {
        "type": "string",
        "enum": [
          "INTERNAL_COMMUNICATION_FAILURE",
          "STATUS_OFFLINE",
          "STATUS_ONLINE",
          "INTERNAL_COMMUNICATION_RESTORED"
        ],
        "title": "NotificationType"
      },
      "E-Receipts_IT_API_PEMJournalStatus": {
        "type": "string",
        "enum": [
          "inactive",
          "open",
          "closed",
          "sent",
          "ready"
        ],
        "title": "PEMJournalStatus"
      },
      "E-Receipts_IT_API_PEMStatus": {
        "type": "string",
        "enum": [
          "new",
          "registered",
          "activated",
          "online",
          "offline",
          "discarded",
          "error"
        ],
        "title": "PEMStatus"
      },
      "E-Receipts_IT_API_Page_TypeVar_Customized_CashRegisterBasicOutput_": {
        "properties": {
          "members": {
            "items": {
              "$ref": "#/components/schemas/E-Receipts_IT_API_CashRegisterBasicOutput"
            },
            "type": "array",
            "title": "Members"
          },
          "total": {
            "type": "integer",
            "minimum": 0,
            "title": "Total"
          },
          "page": {
            "type": "integer",
            "minimum": 1,
            "title": "Page"
          },
          "size": {
            "type": "integer",
            "minimum": 1,
            "title": "Size"
          },
          "pages": {
            "type": "integer",
            "minimum": 0,
            "title": "Pages"
          }
        },
        "type": "object",
        "required": [
          "members",
          "total",
          "page",
          "size",
          "pages"
        ],
        "title": "Page[TypeVar]Customized[CashRegisterBasicOutput]"
      },
      "E-Receipts_IT_API_Page_TypeVar_Customized_CashierSimpleOutput_": {
        "properties": {
          "members": {
            "items": {
              "$ref": "#/components/schemas/E-Receipts_IT_API_CashierSimpleOutput"
            },
            "type": "array",
            "title": "Members"
          },
          "total": {
            "type": "integer",
            "minimum": 0,
            "title": "Total"
          },
          "page": {
            "type": "integer",
            "minimum": 1,
            "title": "Page"
          },
          "size": {
            "type": "integer",
            "minimum": 1,
            "title": "Size"
          },
          "pages": {
            "type": "integer",
            "minimum": 0,
            "title": "Pages"
          }
        },
        "type": "object",
        "required": [
          "members",
          "total",
          "page",
          "size",
          "pages"
        ],
        "title": "Page[TypeVar]Customized[CashierSimpleOutput]"
      },
      "E-Receipts_IT_API_Page_TypeVar_Customized_PemOutput_": {
        "properties": {
          "members": {
            "items": {
              "$ref": "#/components/schemas/E-Receipts_IT_API_PemOutput"
            },
            "type": "array",
            "title": "Members"
          },
          "total": {
            "type": "integer",
            "minimum": 0,
            "title": "Total"
          },
          "page": {
            "type": "integer",
            "minimum": 1,
            "title": "Page"
          },
          "size": {
            "type": "integer",
            "minimum": 1,
            "title": "Size"
          },
          "pages": {
            "type": "integer",
            "minimum": 0,
            "title": "Pages"
          }
        },
        "type": "object",
        "required": [
          "members",
          "total",
          "page",
          "size",
          "pages"
        ],
        "title": "Page[TypeVar]Customized[PemOutput]"
      },
      "E-Receipts_IT_API_PaginatedResponse_Notification_": {
        "properties": {
          "members": {
            "items": {
              "$ref": "#/components/schemas/E-Receipts_IT_API_Notification"
            },
            "type": "array",
            "title": "Members"
          },
          "total": {
            "type": "integer",
            "title": "Total",
            "description": "Total number of elements across all pages"
          },
          "page": {
            "type": "integer",
            "title": "Page",
            "description": "Page identifier"
          },
          "size": {
            "type": "integer",
            "title": "Size",
            "description": "Page size"
          },
          "pages": {
            "type": "integer",
            "title": "Pages",
            "description": "Total number of pages"
          }
        },
        "type": "object",
        "required": [
          "members",
          "total",
          "page",
          "size",
          "pages"
        ],
        "title": "PaginatedResponse[Notification]"
      },
      "E-Receipts_IT_API_PaginatedResponse_ReceiptOutput_": {
        "properties": {
          "members": {
            "items": {
              "$ref": "#/components/schemas/E-Receipts_IT_API_ReceiptOutput"
            },
            "type": "array",
            "title": "Members"
          },
          "total": {
            "type": "integer",
            "title": "Total",
            "description": "Total number of elements across all pages"
          },
          "page": {
            "type": "integer",
            "title": "Page",
            "description": "Page identifier"
          },
          "size": {
            "type": "integer",
            "title": "Size",
            "description": "Page size"
          },
          "pages": {
            "type": "integer",
            "title": "Pages",
            "description": "Total number of pages"
          }
        },
        "type": "object",
        "required": [
          "members",
          "total",
          "page",
          "size",
          "pages"
        ],
        "title": "PaginatedResponse[ReceiptOutput]"
      },
      "E-Receipts_IT_API_PaymentDetail": {
        "properties": {
          "type": {
            "$ref": "#/components/schemas/E-Receipts_IT_API_PaymentType",
            "description": "Type of the payment detail."
          },
          "description": {
            "anyOf": [
              {
                "type": "string"
              },
              {
                "type": "null"
              }
            ],
            "title": "Description",
            "description": "Description of the payment detail."
          },
          "amount": {
            "type": "string",
            "title": "Amount",
            "description": "Amount of the payment in EUR as a string with 2 to 8 decimal digits.",
            "default": "0.00"
          },
          "ticket_quantity": {
            "anyOf": [
              {
                "type": "integer"
              },
              {
                "type": "null"
              }
            ],
            "title": "Ticket Quantity"
          }
        },
        "type": "object",
        "required": [
          "type"
        ],
        "title": "PaymentDetail"
      },
      "E-Receipts_IT_API_PaymentType": {
        "type": "string",
        "enum": [
          "cash",
          "electronic",
          "ticket",
          "discount",
          "credit",
          "uncollected_services",
          "rounding_up",
          "rounding_down"
        ],
        "title": "PaymentType",
        "description": "Payment type for a receipt payment detail.\n- `cash`: cash payment (cash, check)\n- `electronic`: electronic payment (bancomat, credit card)\n- `ticket`: ticket restaurant and celiac voucher\n- `discount`: discount applied at payment time and multi-use voucher\n- `credit`: goods delivered but not fully paid\n- `uncollected_services`: services delivered but not fully paid\n- `rounding_up`: mandatory rounding up (DL 50/2017)\n- `rounding_down`: mandatory rounding down (DL 50/2017)"
      },
      "E-Receipts_IT_API_PemActivationInput": {
        "properties": {
          "registration_key": {
            "type": "string",
            "title": "Registration Key"
          }
        },
        "type": "object",
        "required": [
          "registration_key"
        ],
        "title": "PemActivationInput"
      },
      "E-Receipts_IT_API_PemDetailedOutput": {
        "properties": {
          "serial_number": {
            "type": "string",
            "pattern": "^[A-Z0-9]{4}-[A-Z0-9]{6}$",
            "title": "Serial Number"
          },
          "status": {
            "$ref": "#/components/schemas/E-Receipts_IT_API_PEMStatus"
          },
          "address": {
            "$ref": "#/components/schemas/E-Receipts_IT_API_Address"
          },
          "journal_status": {
            "anyOf": [
              {
                "$ref": "#/components/schemas/E-Receipts_IT_API_PEMJournalStatus"
              },
              {
                "type": "null"
              }
            ],
            "description": "The current operational state of the PEM, reflecting the state of its latest journal (open, closing, or closed). This field is set only when the PEM status is ONLINE; otherwise, it is null."
          },
          "registration_key": {
            "anyOf": [
              {
                "type": "string"
              },
              {
                "type": "null"
              }
            ],
            "title": "Registration Key",
            "description": "The registration key is set only as long as the PEM has not been activated yet"
          }
        },
        "type": "object",
        "required": [
          "serial_number",
          "status",
          "address",
          "journal_status",
          "registration_key"
        ],
        "title": "PemDetailedOutput"
      },
      "E-Receipts_IT_API_PemOfflineReason": {
        "type": "string",
        "enum": [
          "pem-software-problems",
          "pem-hardware-problems"
        ],
        "title": "PemOfflineReason"
      },
      "E-Receipts_IT_API_PemOfflineRequest": {
        "properties": {
          "outage_started_at": {
            "type": "string",
            "pattern": "^\\d{4}-\\d{2}-\\d{2}T\\d{2}:\\d{2}:\\d{2}$",
            "title": "Outage Started At",
            "description": "Date and time when the outage started (format: YYYY-MM-DDTHH:MM:SS)",
            "examples": [
              "2026-01-15T12:00:00"
            ]
          },
          "reason": {
            "$ref": "#/components/schemas/E-Receipts_IT_API_PemOfflineReason",
            "description": "Reason that led to the PEM being offline"
          },
          "notes": {
            "anyOf": [
              {
                "type": "string",
                "maxLength": 1000
              },
              {
                "type": "null"
              }
            ],
            "title": "Notes",
            "description": "Optional notes about the outage (max 1000 characters)"
          }
        },
        "type": "object",
        "required": [
          "outage_started_at",
          "reason"
        ],
        "title": "PemOfflineRequest"
      },
      "E-Receipts_IT_API_PemOutput": {
        "properties": {
          "serial_number": {
            "type": "string",
            "pattern": "^[A-Z0-9]{4}-[A-Z0-9]{6}$",
            "title": "Serial Number"
          },
          "status": {
            "$ref": "#/components/schemas/E-Receipts_IT_API_PEMStatus"
          },
          "address": {
            "$ref": "#/components/schemas/E-Receipts_IT_API_Address"
          },
          "journal_status": {
            "anyOf": [
              {
                "$ref": "#/components/schemas/E-Receipts_IT_API_PEMJournalStatus"
              },
              {
                "type": "null"
              }
            ],
            "description": "The current operational state of the PEM, reflecting the state of its latest journal (open, closing, or closed). This field is set only when the PEM status is ONLINE; otherwise, it is null."
          }
        },
        "type": "object",
        "required": [
          "serial_number",
          "status",
          "address",
          "journal_status"
        ],
        "title": "PemOutput"
      },
      "E-Receipts_IT_API_PendingReceiptsInfo": {
        "properties": {
          "count": {
            "type": "integer",
            "title": "Count",
            "description": "Number of receipts not yet transmitted to MF2",
            "examples": [
              3
            ]
          },
          "total_amount": {
            "type": "string",
            "title": "Total Amount",
            "description": "Sum of amounts for receipts not yet transmitted to MF2",
            "examples": [
              "125.50"
            ]
          }
        },
        "type": "object",
        "required": [
          "count",
          "total_amount"
        ],
        "title": "PendingReceiptsInfo"
      },
      "E-Receipts_IT_API_ReceiptDetailsOutput": {
        "properties": {
          "uuid": {
            "type": "string",
            "format": "uuid",
            "title": "Uuid"
          },
          "type": {
            "$ref": "#/components/schemas/E-Receipts_IT_API_ReceiptType"
          },
          "total_amount": {
            "anyOf": [
              {
                "type": "string"
              },
              {
                "type": "null"
              }
            ],
            "title": "Total Amount",
            "description": "Total amount of the sale receipt as a string with up to 8 decimal digits. For void and return receipts this value is null."
          },
          "document_number": {
            "type": "string",
            "maxLength": 9,
            "minLength": 9,
            "title": "Document Number",
            "description": "The document number assigned to the document by the Italian Tax Authority. This is the official ID of the document valid for fiscal purposes. "
          },
          "document_datetime": {
            "type": "string",
            "title": "Document Datetime",
            "description": "The date and time the document was issued in ISO 8601 date-time format (YYYY-MM-DDTHH:mm:ss).",
            "examples": [
              "2025-10-08T16:20:42"
            ]
          },
          "parent_receipt_uuid": {
            "anyOf": [
              {
                "type": "string",
                "format": "uuid"
              },
              {
                "type": "null"
              }
            ],
            "title": "Parent Receipt Uuid",
            "description": "The UUID of the parent receipt in case of a voiding or return receipt. It is present only for return and void receipts associated to the same PEM that issued the sale receipt."
          },
          "is_voidable": {
            "type": "boolean",
            "title": "Is Voidable",
            "description": "Return and Void receipts are not voidable. Sale receipts are voidable only if they haven't already been voided and have no associated return receipts."
          },
          "is_returnable": {
            "type": "boolean",
            "title": "Is Returnable",
            "description": "A receipt is returnable if it is a sale receipt, it hasn't been voided and has returnable items."
          },
          "pdf_url": {
            "anyOf": [
              {
                "type": "string"
              },
              {
                "type": "null"
              }
            ],
            "title": "Pdf Url",
            "description": "Public URL to download the PDF of the receipt"
          },
          "status": {
            "$ref": "#/components/schemas/E-Receipts_IT_API_ReceiptStatus",
            "description": "The status of the receipt in MF1. It can be either 'ready' (the receipt is ready to be sent to MF2) or 'sent' (the receipt has been sent to MF2)."
          },
          "total_taxable_amount": {
            "type": "string",
            "title": "Total Taxable Amount",
            "description": "Total amount subject to VAT/tax before any discounts or exemptions as a string with 2 to 8 decimal digits",
            "examples": [
              "7.23"
            ]
          },
          "total_uncollected_amount": {
            "type": "string",
            "title": "Total Uncollected Amount",
            "description": "Total amount that remains unpaid or uncollected from the customer as a string with 2 to 8 decimal digits",
            "examples": [
              "7.23"
            ]
          },
          "total_vat_amount": {
            "type": "string",
            "title": "Total Vat Amount",
            "description": "Total Value Added Tax amount calculated on taxable transactions as a string with 2 to 8 decimal digits",
            "examples": [
              "7.23"
            ]
          },
          "total_discount": {
            "type": "string",
            "title": "Total Discount",
            "description": "Individual discount amount applied to the overall receipt ('Sconto a pagare') as a string with 2 to 8 decimal digits",
            "examples": [
              "7.23"
            ]
          },
          "items": {
            "items": {
              "$ref": "#/components/schemas/E-Receipts_IT_API_ReceiptItem"
            },
            "type": "array",
            "title": "Items",
            "description": "List of individual products/services included in the receipt",
            "default": []
          },
          "customer_lottery_code": {
            "anyOf": [
              {
                "type": "string"
              },
              {
                "type": "null"
              }
            ],
            "title": "Customer Lottery Code",
            "description": "Lottery code of the customer"
          },
          "cashier_name": {
            "anyOf": [
              {
                "type": "string"
              },
              {
                "type": "null"
              }
            ],
            "title": "Cashier Name",
            "description": "The name of the cashier that issued the receipt. If null, it has been issued by the merchant."
          }
        },
        "type": "object",
        "required": [
          "uuid",
          "type",
          "document_number",
          "document_datetime",
          "is_voidable",
          "is_returnable",
          "status",
          "total_taxable_amount",
          "total_uncollected_amount",
          "total_vat_amount",
          "total_discount",
          "cashier_name"
        ],
        "title": "ReceiptDetailsOutput"
      },
      "E-Receipts_IT_API_ReceiptInput": {
        "properties": {
          "items": {
            "items": {
              "$ref": "#/components/schemas/E-Receipts_IT_API_ReceiptItem"
            },
            "type": "array",
            "title": "Items",
            "description": "\"Elementi contabili\". Commercial document items. At least one item is required."
          },
          "customer_tax_code": {
            "anyOf": [
              {
                "type": "string",
                "pattern": "^[A-Z0-9]{11,16}$"
              },
              {
                "type": "null"
              }
            ],
            "title": "Customer Tax Code",
            "description": "Tax code of the customer. If set, customer_lottery_code can't be set as well."
          },
          "customer_lottery_code": {
            "anyOf": [
              {
                "type": "string",
                "maxLength": 16,
                "minLength": 0
              },
              {
                "type": "null"
              }
            ],
            "title": "Customer Lottery Code",
            "description": "Lottery code of the customer. If set, customer_tax_code can't be set as well."
          },
          "payment_details": {
            "anyOf": [
              {
                "items": {
                  "$ref": "#/components/schemas/E-Receipts_IT_API_PaymentDetail"
                },
                "type": "array"
              },
              {
                "type": "null"
              }
            ],
            "title": "Payment Details",
            "description": "Payment details of the receipt."
          },
          "invoice_issuing": {
            "type": "boolean",
            "title": "Invoice Issuing",
            "description": "Set this field to true if the amount has not been collectedsince the issued receipt will be followed by an invoice. This use case is generally called 'Credito - segue fattura'.",
            "default": false
          },
          "uncollected_dcr_to_ssn": {
            "type": "boolean",
            "title": "Uncollected Dcr To Ssn",
            "description": "Set this flag to true when the payment is not collected because the receipt relates to the Distinta Contabile Riepilogativa that will be transmitted to the Sistema Sanitario Nazionale.",
            "default": false
          },
          "additional_text": {
            "anyOf": [
              {
                "type": "string"
              },
              {
                "type": "null"
              }
            ],
            "title": "Additional Text",
            "description": "Additional text that can contain up to 3 lines of text. Lines are separated by \\n. This text is displayed in the PDF immediately above the footer text."
          }
        },
        "type": "object",
        "required": [
          "items"
        ],
        "title": "ReceiptInput"
      },
      "E-Receipts_IT_API_ReceiptItem": {
        "properties": {
          "type": {
            "$ref": "#/components/schemas/E-Receipts_IT_API_ItemType",
            "description": "Type of the item.",
            "default": "goods"
          },
          "quantity": {
            "type": "string",
            "title": "Quantity",
            "description": "Quantity expressed as a string with exactly 2 decimal digits. E.g. '1.00', '1.50', '2.00'"
          },
          "description": {
            "type": "string",
            "maxLength": 1000,
            "minLength": 1,
            "title": "Description",
            "description": "Description of the item (max 1000 chars)"
          },
          "unit_price": {
            "type": "string",
            "title": "Unit Price",
            "description": "Unit price expressed as a string with 2 to 8 decimal digits. It is a gross price, i.e. it includes VAT amount"
          },
          "vat_rate_code": {
            "anyOf": [
              {
                "$ref": "#/components/schemas/E-Receipts_IT_API_VatRateEnum"
              },
              {
                "$ref": "#/components/schemas/E-Receipts_IT_API_NaturaType"
              },
              {
                "type": "null"
              }
            ],
            "title": "Vat Rate Code",
            "description": "VAT rate code as a string. If set, 'simplified_vat_allocation' must be false."
          },
          "simplified_vat_allocation": {
            "type": "boolean",
            "title": "Simplified Vat Allocation",
            "description": "Set to true if this item is subject to 'Ventilazione IVA'. If true, 'vat_rate_code' must be null.",
            "default": false
          },
          "discount": {
            "type": "string",
            "title": "Discount",
            "description": "Discount amount in EUR as a string with 2 to 8 decimal digits. It is a gross price, i.e. it includes VAT amount",
            "default": "0"
          },
          "surcharge": {
            "type": "string",
            "title": "Surcharge",
            "description": "Surcharge amount in EUR as a string with 2 to 8 decimal digits. It is a gross price, i.e. it includes VAT amount",
            "default": "0"
          },
          "prepaid_or_voucher": {
            "type": "boolean",
            "title": "Prepaid Or Voucher",
            "description": "True if the total amount had already been collected as an advance before delivery of the goods or services, or if the sale occurs through the redemption of a single-purpose voucher.",
            "default": false
          },
          "complimentary": {
            "type": "boolean",
            "title": "Complimentary",
            "description": "Set to true if it is a complimentary (free) item. It deducts the gift amount from the amount of the document but does not deduct it from the VAT and taxable amount",
            "default": false
          }
        },
        "type": "object",
        "required": [
          "quantity",
          "description",
          "unit_price"
        ],
        "title": "ReceiptItem",
        "description": "Model representing an item in a commercial document."
      },
      "E-Receipts_IT_API_ReceiptOutput": {
        "properties": {
          "uuid": {
            "type": "string",
            "format": "uuid",
            "title": "Uuid"
          },
          "type": {
            "$ref": "#/components/schemas/E-Receipts_IT_API_ReceiptType"
          },
          "total_amount": {
            "anyOf": [
              {
                "type": "string"
              },
              {
                "type": "null"
              }
            ],
            "title": "Total Amount",
            "description": "Total amount of the sale receipt as a string with up to 8 decimal digits. For void and return receipts this value is null."
          },
          "document_number": {
            "type": "string",
            "maxLength": 9,
            "minLength": 9,
            "title": "Document Number",
            "description": "The document number assigned to the document by the Italian Tax Authority. This is the official ID of the document valid for fiscal purposes. "
          },
          "document_datetime": {
            "type": "string",
            "title": "Document Datetime",
            "description": "The date and time the document was issued in ISO 8601 date-time format (YYYY-MM-DDTHH:mm:ss).",
            "examples": [
              "2025-10-08T16:20:42"
            ]
          },
          "parent_receipt_uuid": {
            "anyOf": [
              {
                "type": "string",
                "format": "uuid"
              },
              {
                "type": "null"
              }
            ],
            "title": "Parent Receipt Uuid",
            "description": "The UUID of the parent receipt in case of a voiding or return receipt. It is present only for return and void receipts associated to the same PEM that issued the sale receipt."
          },
          "is_voidable": {
            "type": "boolean",
            "title": "Is Voidable",
            "description": "Return and Void receipts are not voidable. Sale receipts are voidable only if they haven't already been voided and have no associated return receipts."
          },
          "is_returnable": {
            "type": "boolean",
            "title": "Is Returnable",
            "description": "A receipt is returnable if it is a sale receipt, it hasn't been voided and has returnable items."
          },
          "pdf_url": {
            "anyOf": [
              {
                "type": "string"
              },
              {
                "type": "null"
              }
            ],
            "title": "Pdf Url",
            "description": "Public URL to download the PDF of the receipt"
          },
          "status": {
            "$ref": "#/components/schemas/E-Receipts_IT_API_ReceiptStatus",
            "description": "The status of the receipt in MF1. It can be either 'ready' (the receipt is ready to be sent to MF2) or 'sent' (the receipt has been sent to MF2)."
          }
        },
        "type": "object",
        "required": [
          "uuid",
          "type",
          "document_number",
          "document_datetime",
          "is_voidable",
          "is_returnable",
          "status"
        ],
        "title": "ReceiptOutput"
      },
      "E-Receipts_IT_API_ReceiptProofType": {
        "type": "string",
        "enum": [
          "POS",
          "VR",
          "ND"
        ],
        "title": "ReceiptProofType"
      },
      "E-Receipts_IT_API_ReceiptStatus": {
        "type": "string",
        "enum": [
          "ready",
          "sent"
        ],
        "title": "ReceiptStatus"
      },
      "E-Receipts_IT_API_ReceiptType": {
        "type": "string",
        "enum": [
          "sale",
          "return",
          "void"
        ],
        "title": "ReceiptType"
      },
      "E-Receipts_IT_API_ReturnItem": {
        "properties": {
          "id": {
            "type": "integer",
            "minimum": 1,
            "title": "Id",
            "description": "The ID of the item to be returned"
          },
          "quantity": {
            "type": "string",
            "title": "Quantity",
            "description": "The quantity to be returned. Can't be greater than the original quantity."
          }
        },
        "type": "object",
        "required": [
          "id",
          "quantity"
        ],
        "title": "ReturnItem"
      },
      "E-Receipts_IT_API_ReturnViaDifferentDeviceInput": {
        "properties": {
          "device_id": {
            "type": "string",
            "maxLength": 11,
            "minLength": 2,
            "title": "Device Id",
            "description": "Identifier of the device that issued the original receipt. This may be a POS, a RT (Registratore Telematico), or an RT Server. For receipts issued via the \"Documento commerciale online\" procedure, provide only the characters before the \"/\" (e.g., use DCW2024 for DCW2024/0000-3173).",
            "examples": [
              "E001-000001",
              "DCW2024"
            ]
          },
          "items": {
            "items": {
              "$ref": "#/components/schemas/E-Receipts_IT_API_ReceiptItem"
            },
            "type": "array",
            "title": "Items"
          },
          "document_number": {
            "type": "string",
            "title": "Document Number",
            "description": "The document number of the original receipt.",
            "examples": [
              "0001-0001"
            ]
          },
          "document_datetime": {
            "type": "string",
            "pattern": "^\\d{4}-\\d{2}-\\d{2}T\\d{2}:\\d{2}:\\d{2}$",
            "title": "Document Datetime",
            "description": "The date and time of the original receipt (format: YYYY-MM-DDTHH:MM:SS).",
            "examples": [
              "2024-03-20T10:00:00"
            ]
          },
          "lottery_code": {
            "anyOf": [
              {
                "type": "string"
              },
              {
                "type": "null"
              }
            ],
            "title": "Lottery Code",
            "description": "The lottery code of the original receipt, if available.",
            "examples": [
              "123456789"
            ]
          },
          "additional_text": {
            "anyOf": [
              {
                "type": "string"
              },
              {
                "type": "null"
              }
            ],
            "title": "Additional Text",
            "description": "Additional text that can contain up to 3 lines of text."
          }
        },
        "type": "object",
        "required": [
          "device_id",
          "items",
          "document_number",
          "document_datetime"
        ],
        "title": "ReturnViaDifferentDeviceInput"
      },
      "E-Receipts_IT_API_ReturnViaProofInput": {
        "properties": {
          "items": {
            "items": {
              "$ref": "#/components/schemas/E-Receipts_IT_API_ReceiptItem"
            },
            "type": "array",
            "title": "Items"
          },
          "proof": {
            "$ref": "#/components/schemas/E-Receipts_IT_API_ReceiptProofType",
            "description": "The type of proof of purchase: \"POS\" for POS receipts, \"VR\" for \"Vuoti a rendere\", \"ND\" for other residual cases. Used in place of device serial number/unique PEM identifier.",
            "examples": [
              "POS",
              "VR",
              "ND"
            ]
          },
          "document_datetime": {
            "type": "string",
            "pattern": "^\\d{4}-\\d{2}-\\d{2}T\\d{2}:\\d{2}:\\d{2}$",
            "title": "Document Datetime",
            "description": "The date and time of the proof of purchase (format: YYYY-MM-DDTHH:MM:SS).",
            "examples": [
              "2024-03-20T10:00:00"
            ]
          },
          "additional_text": {
            "anyOf": [
              {
                "type": "string"
              },
              {
                "type": "null"
              }
            ],
            "title": "Additional Text",
            "description": "Additional text that can contain up to 3 lines of text."
          }
        },
        "type": "object",
        "required": [
          "items",
          "proof",
          "document_datetime"
        ],
        "title": "ReturnViaProofInput"
      },
      "E-Receipts_IT_API_ReturnViaSamePemInput": {
        "properties": {
          "items": {
            "items": {
              "$ref": "#/components/schemas/E-Receipts_IT_API_ReturnItem"
            },
            "type": "array",
            "title": "Items"
          },
          "document_number": {
            "type": "string",
            "title": "Document Number",
            "description": "The document number of the original receipt.",
            "examples": [
              "0001-0001"
            ]
          },
          "additional_text": {
            "anyOf": [
              {
                "type": "string"
              },
              {
                "type": "null"
              }
            ],
            "title": "Additional Text",
            "description": "Additional text that can contain up to 3 lines of text."
          }
        },
        "type": "object",
        "required": [
          "items",
          "document_number"
        ],
        "title": "ReturnViaSamePemInput"
      },
      "E-Receipts_IT_API_ReturnableReceiptItem": {
        "properties": {
          "id": {
            "type": "integer",
            "title": "Id"
          },
          "type": {
            "$ref": "#/components/schemas/E-Receipts_IT_API_ItemType",
            "description": "Type of the item.",
            "default": "goods"
          },
          "quantity": {
            "type": "string",
            "title": "Quantity",
            "description": "Returnable quantity expressed as a string with exactly 2 decimal digits. E.g. '1.00', '1.50', '2.00'"
          },
          "returned_quantity": {
            "type": "string",
            "title": "Returned Quantity",
            "description": "Returned quantity expressed as a string with exactly 2 decimal digits. E.g. '1.00', '1.50', '2.00'"
          },
          "description": {
            "type": "string",
            "maxLength": 1000,
            "minLength": 1,
            "title": "Description",
            "description": "Description of the item (max 1000 chars)"
          },
          "unit_price": {
            "type": "string",
            "title": "Unit Price",
            "description": "Unit price expressed as a string with 2 to 8 decimal digits. It is a gross price, i.e. it includes VAT amount"
          },
          "vat_rate_code": {
            "anyOf": [
              {
                "$ref": "#/components/schemas/E-Receipts_IT_API_VatRateEnum"
              },
              {
                "$ref": "#/components/schemas/E-Receipts_IT_API_NaturaType"
              },
              {
                "type": "null"
              }
            ],
            "title": "Vat Rate Code",
            "description": "VAT rate code as a string"
          },
          "simplified_vat_allocation": {
            "type": "boolean",
            "title": "Simplified Vat Allocation",
            "description": "Set to true if this item is subject to 'Ventilazione IVA'. If true, 'vat_rate_code' must not be set.",
            "default": false
          },
          "discount": {
            "type": "string",
            "title": "Discount",
            "description": "Discount amount in EUR as a string with 2 to 8 decimal digits. It is a gross price, i.e. it includes VAT amount",
            "default": "0"
          },
          "prepaid_or_voucher": {
            "type": "boolean",
            "title": "Prepaid Or Voucher",
            "description": "True if the total amount had already been collected as an advance before delivery of the goods or services, or if the sale occurs through the redemption of a single-purpose voucher.",
            "default": false
          },
          "complimentary": {
            "type": "boolean",
            "title": "Complimentary",
            "description": "Set to true if it is a complimentary (free) item. It deducts the gift amount from the amount of the document but does not deduct it from the VAT and taxable amount",
            "default": false
          }
        },
        "type": "object",
        "required": [
          "id",
          "quantity",
          "returned_quantity",
          "description",
          "unit_price",
          "vat_rate_code"
        ],
        "title": "ReturnableReceiptItem",
        "description": "Model representing an item in a commercial document."
      },
      "E-Receipts_IT_API_SoftwareTelemetryInfo": {
        "properties": {
          "code": {
            "anyOf": [
              {
                "type": "string"
              },
              {
                "type": "null"
              }
            ],
            "title": "Code",
            "description": "Short code of the software solution",
            "examples": [
              "ERCPTS"
            ]
          },
          "name": {
            "anyOf": [
              {
                "type": "string"
              },
              {
                "type": "null"
              }
            ],
            "title": "Name",
            "description": "Human-readable name of the software solution",
            "examples": [
              "A-Cube's E-Receipts"
            ]
          },
          "approval_reference": {
            "anyOf": [
              {
                "type": "string"
              },
              {
                "type": "null"
              }
            ],
            "title": "Approval Reference",
            "description": "Approval details for the software",
            "examples": [
              "Approval ID 2024-XY-1234"
            ]
          },
          "version_info": {
            "anyOf": [
              {
                "$ref": "#/components/schemas/E-Receipts_IT_API_SoftwareVersionInfo"
              },
              {
                "type": "null"
              }
            ],
            "description": "Currently installed version"
          }
        },
        "type": "object",
        "title": "SoftwareTelemetryInfo"
      },
      "E-Receipts_IT_API_SoftwareVersionInfo": {
        "properties": {
          "version": {
            "anyOf": [
              {
                "type": "string"
              },
              {
                "type": "null"
              }
            ],
            "title": "Version",
            "description": "Semantic version of the software",
            "examples": [
              "1.4.2"
            ]
          },
          "swid_tag_ids": {
            "$ref": "#/components/schemas/E-Receipts_IT_API_SwidTagIds",
            "description": "Software Identifier (SWID) tag IDs",
            "examples": [
              {
                "pel": "regId:company-name.com:software-solution-pel::1.4.2-linux-x86_64",
                "pem": "regId:company-name.com:software-solution-pem::1.4.2-linux-x86_64",
                "system": "regId:company-name.com:software-solution::1.4.2-linux-x86_64"
              }
            ]
          },
          "installed_at": {
            "anyOf": [
              {
                "type": "string",
                "format": "date-time"
              },
              {
                "type": "null"
              }
            ],
            "title": "Installed At",
            "description": "Software installation datetime",
            "examples": [
              "2025-10-15T12:00:00"
            ]
          },
          "status": {
            "type": "string",
            "const": "active",
            "title": "Status",
            "description": "Status of the version"
          }
        },
        "type": "object",
        "required": [
          "swid_tag_ids",
          "status"
        ],
        "title": "SoftwareVersionInfo"
      },
      "E-Receipts_IT_API_SupplierInfo": {
        "properties": {
          "vat_number": {
            "anyOf": [
              {
                "type": "string"
              },
              {
                "type": "null"
              }
            ],
            "title": "Vat Number",
            "description": "Supplier VAT number",
            "examples": [
              "IT98765432109"
            ]
          },
          "fiscal_code": {
            "anyOf": [
              {
                "type": "string"
              },
              {
                "type": "null"
              }
            ],
            "title": "Fiscal Code",
            "description": "Supplier fiscal code",
            "examples": [
              "PLCFNC70B22C345D"
            ]
          },
          "business_name": {
            "anyOf": [
              {
                "type": "string"
              },
              {
                "type": "null"
              }
            ],
            "title": "Business Name",
            "description": "Supplier business name",
            "examples": [
              "Supplier S.p.A."
            ]
          }
        },
        "type": "object",
        "title": "SupplierInfo"
      },
      "E-Receipts_IT_API_SwidTagIds": {
        "properties": {
          "system": {
            "type": "string",
            "title": "System"
          },
          "pem": {
            "type": "string",
            "title": "Pem"
          },
          "pel": {
            "type": "string",
            "title": "Pel"
          }
        },
        "type": "object",
        "required": [
          "system",
          "pem",
          "pel"
        ],
        "title": "SwidTagIds"
      },
      "E-Receipts_IT_API_TelemetryOutput": {
        "properties": {
          "pem_id": {
            "type": "string",
            "pattern": "^[A-Z0-9]{4}-[A-Z0-9]{6}$",
            "title": "Pem Id",
            "description": "PEM serial number"
          },
          "pem_status": {
            "$ref": "#/components/schemas/E-Receipts_IT_API_PEMStatus",
            "description": "Current PEM status"
          },
          "pem_status_changed_at": {
            "anyOf": [
              {
                "type": "string",
                "format": "date-time"
              },
              {
                "type": "null"
              }
            ],
            "title": "Pem Status Changed At",
            "description": "Datetime of last PEM status change",
            "examples": [
              "2025-11-20T09:12:34"
            ]
          },
          "merchant": {
            "$ref": "#/components/schemas/E-Receipts_IT_API_MerchantInfo",
            "description": "Merchant information"
          },
          "supplier": {
            "$ref": "#/components/schemas/E-Receipts_IT_API_SupplierInfo",
            "description": "Supplier information"
          },
          "software": {
            "$ref": "#/components/schemas/E-Receipts_IT_API_SoftwareTelemetryInfo",
            "description": "Software Information"
          },
          "last_communication_at": {
            "anyOf": [
              {
                "type": "string",
                "format": "date-time"
              },
              {
                "type": "null"
              }
            ],
            "title": "Last Communication At",
            "description": "Datetime of last communication with MF2",
            "examples": [
              "2025-12-01T16:45:00"
            ]
          },
          "pending_receipts": {
            "anyOf": [
              {
                "$ref": "#/components/schemas/E-Receipts_IT_API_PendingReceiptsInfo"
              },
              {
                "type": "null"
              }
            ],
            "description": "Receipts not yet transmitted to MF2"
          },
          "last_receipt_transmission": {
            "anyOf": [
              {
                "$ref": "#/components/schemas/E-Receipts_IT_API_TransmissionAttemptInfo"
              },
              {
                "type": "null"
              }
            ],
            "description": "Last attempt to send a receipt to MF2"
          },
          "last_message_from_mf2": {
            "anyOf": [
              {
                "$ref": "#/components/schemas/E-Receipts_IT_API_MessageInfo"
              },
              {
                "type": "null"
              }
            ],
            "description": "Last message received from MF2"
          },
          "ade_corrispettivi_transmission": {
            "anyOf": [
              {
                "$ref": "#/components/schemas/E-Receipts_IT_API_TransmissionAttemptInfo"
              },
              {
                "type": "null"
              }
            ],
            "description": "Last Corrispettivi transmission attempt to ADE"
          },
          "last_message_from_ade": {
            "anyOf": [
              {
                "$ref": "#/components/schemas/E-Receipts_IT_API_MessageInfo"
              },
              {
                "type": "null"
              }
            ],
            "description": "Last message received from ADE"
          },
          "lottery": {
            "$ref": "#/components/schemas/E-Receipts_IT_API_LotteryTelemetry"
          }
        },
        "type": "object",
        "required": [
          "pem_id",
          "pem_status",
          "merchant",
          "supplier",
          "software",
          "lottery"
        ],
        "title": "TelemetryOutput"
      },
      "E-Receipts_IT_API_TransmissionAttemptInfo": {
        "properties": {
          "attempted_at": {
            "anyOf": [
              {
                "type": "string",
                "format": "date-time"
              },
              {
                "type": "null"
              }
            ],
            "title": "Attempted At",
            "description": "Datetime of last transmission attempt",
            "examples": [
              "2025-12-01T16:30:00"
            ]
          },
          "outcome": {
            "anyOf": [
              {
                "type": "string"
              },
              {
                "type": "null"
              }
            ],
            "title": "Outcome",
            "description": "Outcome of the last attempt",
            "examples": [
              "success",
              "failed"
            ]
          }
        },
        "type": "object",
        "title": "TransmissionAttemptInfo"
      },
      "E-Receipts_IT_API_ValidationError": {
        "properties": {
          "loc": {
            "items": {
              "anyOf": [
                {
                  "type": "string"
                },
                {
                  "type": "integer"
                }
              ]
            },
            "type": "array",
            "title": "Location"
          },
          "msg": {
            "type": "string",
            "title": "Message"
          },
          "type": {
            "type": "string",
            "title": "Error Type"
          },
          "input": {
            "title": "Input"
          },
          "ctx": {
            "type": "object",
            "title": "Context"
          }
        },
        "type": "object",
        "required": [
          "loc",
          "msg",
          "type"
        ],
        "title": "ValidationError"
      },
      "E-Receipts_IT_API_VatRateEnum": {
        "type": "string",
        "enum": [
          "4.00",
          "5.00",
          "10.00",
          "22.00",
          "2.00",
          "6.40",
          "7.00",
          "7.30",
          "7.50",
          "7.65",
          "7.95",
          "8.30",
          "8.50",
          "8.80",
          "9.50",
          "12.30"
        ],
        "title": "VatRateEnum",
        "description": "VAT rate codes with their corresponding descriptions."
      },
      "E-Receipts_IT_API_VoidViaDifferentDeviceInput": {
        "properties": {
          "device_id": {
            "type": "string",
            "maxLength": 11,
            "minLength": 2,
            "title": "Device Id",
            "description": "Identifier of the device that issued the original receipt. This may be a POS, a RT (Registratore Telematico), or an RT Server. For receipts issued via the \"Documento commerciale online\" procedure, provide only the characters before the \"/\" (e.g., use DCW2024 for DCW2024/0000-3173).",
            "examples": [
              "E001-000001",
              "DCW2024"
            ]
          },
          "document_number": {
            "type": "string",
            "title": "Document Number",
            "description": "The document number of the original receipt.",
            "examples": [
              "0001-0001"
            ]
          },
          "document_datetime": {
            "type": "string",
            "pattern": "^\\d{4}-\\d{2}-\\d{2}T\\d{2}:\\d{2}:\\d{2}$",
            "title": "Document Datetime",
            "description": "The date and time of the original receipt (format: YYYY-MM-DDTHH:MM:SS).",
            "examples": [
              "2024-03-20T10:00:00"
            ]
          },
          "items": {
            "items": {
              "$ref": "#/components/schemas/E-Receipts_IT_API_ReceiptItem"
            },
            "type": "array",
            "title": "Items"
          },
          "lottery_code": {
            "anyOf": [
              {
                "type": "string"
              },
              {
                "type": "null"
              }
            ],
            "title": "Lottery Code",
            "description": "The lottery code of the original receipt, if available.",
            "examples": [
              "123456789"
            ]
          },
          "additional_text": {
            "anyOf": [
              {
                "type": "string"
              },
              {
                "type": "null"
              }
            ],
            "title": "Additional Text",
            "description": "Additional text that can contain up to 3 lines of text."
          }
        },
        "type": "object",
        "required": [
          "device_id",
          "document_number",
          "document_datetime",
          "items"
        ],
        "title": "VoidViaDifferentDeviceInput"
      },
      "E-Receipts_IT_API_VoidViaSamePemInput": {
        "properties": {
          "document_number": {
            "type": "string",
            "title": "Document Number",
            "description": "The document number of the original receipt.",
            "examples": [
              "0001-0001"
            ]
          },
          "additional_text": {
            "anyOf": [
              {
                "type": "string"
              },
              {
                "type": "null"
              }
            ],
            "title": "Additional Text",
            "description": "Additional text that can contain up to 3 lines of text."
          }
        },
        "type": "object",
        "required": [
          "document_number"
        ],
        "title": "VoidViaSamePemInput"
      },
      "E-Receipts_IT_API_VoidWithProofInput": {
        "properties": {
          "items": {
            "items": {
              "$ref": "#/components/schemas/E-Receipts_IT_API_ReceiptItem"
            },
            "type": "array",
            "title": "Items"
          },
          "proof": {
            "$ref": "#/components/schemas/E-Receipts_IT_API_ReceiptProofType",
            "description": "The type of proof of purchase: \"POS\" for POS receipts, \"VR\" for \"Vuoti a rendere\", \"ND\" for other residual cases. Used in place of device serial number/unique PEM identifier.",
            "examples": [
              "POS",
              "VR",
              "ND"
            ]
          },
          "document_datetime": {
            "type": "string",
            "pattern": "^\\d{4}-\\d{2}-\\d{2}T\\d{2}:\\d{2}:\\d{2}$",
            "title": "Document Datetime",
            "description": "The date and time of the proof of purchase (format: YYYY-MM-DDTHH:MM:SS).",
            "examples": [
              "2024-03-20T10:00:00"
            ]
          },
          "additional_text": {
            "anyOf": [
              {
                "type": "string"
              },
              {
                "type": "null"
              }
            ],
            "title": "Additional Text",
            "description": "Additional text that can contain up to 3 lines of text."
          }
        },
        "type": "object",
        "required": [
          "items",
          "proof",
          "document_datetime"
        ],
        "title": "VoidWithProofInput"
      },
      "A-Cube_GOV-IT_PEL_Platform_Address": {
        "type": "object",
        "required": [
          "street_address",
          "zip_code",
          "city",
          "province"
        ],
        "properties": {
          "street_address": {
            "type": "string"
          },
          "street_number": {
            "default": "",
            "type": "string"
          },
          "zip_code": {
            "minLength": 5,
            "maxLength": 5,
            "pattern": "^(\\d+)$",
            "type": "string"
          },
          "city": {
            "type": "string"
          },
          "province": {
            "minLength": 2,
            "maxLength": 2,
            "type": "string"
          }
        }
      },
      "A-Cube_GOV-IT_PEL_Platform_Address.jsonld": {
        "type": "object",
        "required": [
          "street_address",
          "zip_code",
          "city",
          "province"
        ],
        "properties": {
          "street_address": {
            "type": "string"
          },
          "street_number": {
            "default": "",
            "type": "string"
          },
          "zip_code": {
            "minLength": 5,
            "maxLength": 5,
            "pattern": "^(\\d+)$",
            "type": "string"
          },
          "city": {
            "type": "string"
          },
          "province": {
            "minLength": 2,
            "maxLength": 2,
            "type": "string"
          }
        }
      },
      "A-Cube_GOV-IT_PEL_Platform_ConstraintViolation": {
        "type": "object",
        "description": "Unprocessable entity",
        "properties": {
          "status": {
            "default": 422,
            "type": "integer"
          },
          "violations": {
            "type": "array",
            "items": {
              "type": "object",
              "properties": {
                "propertyPath": {
                  "type": "string",
                  "description": "The property path of the violation"
                },
                "message": {
                  "type": "string",
                  "description": "The message associated with the violation"
                },
                "code": {
                  "type": "string",
                  "description": "The code of the violation"
                },
                "hint": {
                  "type": "string",
                  "description": "An extra hint to understand the violation"
                },
                "payload": {
                  "type": "object",
                  "additionalProperties": true,
                  "description": "The serialized payload of the violation"
                }
              },
              "required": [
                "propertyPath",
                "message"
              ]
            }
          },
          "detail": {
            "readOnly": true,
            "type": "string"
          },
          "type": {
            "readOnly": true,
            "type": "string"
          },
          "title": {
            "readOnly": true,
            "type": [
              "string",
              "null"
            ]
          },
          "instance": {
            "readOnly": true,
            "type": [
              "string",
              "null"
            ]
          }
        }
      },
      "A-Cube_GOV-IT_PEL_Platform_ConstraintViolation.jsonld": {
        "allOf": [
          {
            "$ref": "#/components/schemas/A-Cube_GOV-IT_PEL_Platform_HydraItemBaseSchema"
          },
          {
            "type": "object",
            "properties": {
              "status": {
                "default": 422,
                "type": "integer"
              },
              "violations": {
                "type": "array",
                "items": {
                  "type": "object",
                  "properties": {
                    "propertyPath": {
                      "type": "string",
                      "description": "The property path of the violation"
                    },
                    "message": {
                      "type": "string",
                      "description": "The message associated with the violation"
                    },
                    "code": {
                      "type": "string",
                      "description": "The code of the violation"
                    },
                    "hint": {
                      "type": "string",
                      "description": "An extra hint to understand the violation"
                    },
                    "payload": {
                      "type": "object",
                      "additionalProperties": true,
                      "description": "The serialized payload of the violation"
                    }
                  },
                  "required": [
                    "propertyPath",
                    "message"
                  ]
                }
              },
              "detail": {
                "readOnly": true,
                "type": "string"
              },
              "description": {
                "readOnly": true,
                "type": "string"
              },
              "type": {
                "readOnly": true,
                "type": "string"
              },
              "title": {
                "readOnly": true,
                "type": [
                  "string",
                  "null"
                ]
              },
              "instance": {
                "readOnly": true,
                "type": [
                  "string",
                  "null"
                ]
              }
            }
          }
        ],
        "description": "Unprocessable entity"
      },
      "A-Cube_GOV-IT_PEL_Platform_DailyReportEntry": {
        "type": "object",
        "properties": {
          "vat_rate_code": {
            "anyOf": [
              {
                "type": "string",
                "enum": [
                  "N1",
                  "N2",
                  "N3",
                  "N4",
                  "N5",
                  "N6"
                ]
              },
              {
                "type": "string",
                "enum": [
                  "4.00",
                  "5.00",
                  "10.00",
                  "22.00",
                  "2.00",
                  "6.40",
                  "7.00",
                  "7.30",
                  "7.50",
                  "7.65",
                  "7.95",
                  "8.30",
                  "8.50",
                  "8.80",
                  "9.50",
                  "12.30"
                ]
              },
              {
                "type": "null"
              }
            ]
          },
          "vat_amount": {
            "type": [
              "string",
              "null"
            ]
          },
          "simplified_vat_allocation": {
            "type": "boolean"
          },
          "partial_amount": {
            "type": "string"
          },
          "total_returned_amount": {
            "type": [
              "string",
              "null"
            ]
          },
          "total_voided_amount": {
            "type": [
              "string",
              "null"
            ]
          },
          "total_prepaid_or_voucher_amount": {
            "type": [
              "string",
              "null"
            ]
          },
          "total_uncollected_services": {
            "type": [
              "string",
              "null"
            ]
          },
          "total_uncollected_invoiced": {
            "type": [
              "string",
              "null"
            ]
          },
          "total_uncollected_dcr_to_ssn": {
            "type": [
              "string",
              "null"
            ]
          },
          "total_uncollected_complimentary": {
            "type": [
              "string",
              "null"
            ]
          },
          "ateco_code": {
            "type": [
              "string",
              "null"
            ]
          }
        },
        "required": [
          "partial_amount"
        ]
      },
      "A-Cube_GOV-IT_PEL_Platform_EmergencyReport.EmergencyReportOutput": {
        "type": "object",
        "properties": {
          "id": {
            "type": "integer"
          },
          "closed_at": {
            "type": "string"
          }
        }
      },
      "A-Cube_GOV-IT_PEL_Platform_EmergencyReport.EmergencyReportOutput.jsonld": {
        "allOf": [
          {
            "$ref": "#/components/schemas/A-Cube_GOV-IT_PEL_Platform_HydraItemBaseSchema"
          },
          {
            "type": "object",
            "properties": {
              "id": {
                "type": "integer"
              },
              "closed_at": {
                "type": "string"
              }
            }
          }
        ]
      },
      "A-Cube_GOV-IT_PEL_Platform_Error": {
        "type": "object",
        "description": "A representation of common errors.",
        "properties": {
          "title": {
            "readOnly": true,
            "description": "A short, human-readable summary of the problem.",
            "type": [
              "string",
              "null"
            ]
          },
          "detail": {
            "readOnly": true,
            "description": "A human-readable explanation specific to this occurrence of the problem.",
            "type": [
              "string",
              "null"
            ]
          },
          "status": {
            "type": [
              "number",
              "null"
            ],
            "examples": [
              404
            ],
            "default": 400
          },
          "instance": {
            "readOnly": true,
            "description": "A URI reference that identifies the specific occurrence of the problem. It may or may not yield further information if dereferenced.",
            "type": [
              "string",
              "null"
            ]
          },
          "type": {
            "readOnly": true,
            "description": "A URI reference that identifies the problem type",
            "type": "string"
          }
        }
      },
      "A-Cube_GOV-IT_PEL_Platform_Error.jsonld": {
        "allOf": [
          {
            "$ref": "#/components/schemas/A-Cube_GOV-IT_PEL_Platform_HydraItemBaseSchema"
          },
          {
            "type": "object",
            "properties": {
              "title": {
                "readOnly": true,
                "description": "A short, human-readable summary of the problem.",
                "type": [
                  "string",
                  "null"
                ]
              },
              "detail": {
                "readOnly": true,
                "description": "A human-readable explanation specific to this occurrence of the problem.",
                "type": [
                  "string",
                  "null"
                ]
              },
              "status": {
                "type": [
                  "number",
                  "null"
                ],
                "examples": [
                  404
                ],
                "default": 400
              },
              "instance": {
                "readOnly": true,
                "description": "A URI reference that identifies the specific occurrence of the problem. It may or may not yield further information if dereferenced.",
                "type": [
                  "string",
                  "null"
                ]
              },
              "type": {
                "readOnly": true,
                "description": "A URI reference that identifies the problem type",
                "type": "string"
              },
              "description": {
                "readOnly": true,
                "type": [
                  "string",
                  "null"
                ]
              }
            }
          }
        ],
        "description": "A representation of common errors."
      },
      "A-Cube_GOV-IT_PEL_Platform_HydraCollectionBaseSchema": {
        "allOf": [
          {
            "$ref": "#/components/schemas/A-Cube_GOV-IT_PEL_Platform_HydraCollectionBaseSchemaNoPagination"
          },
          {
            "type": "object",
            "properties": {
              "view": {
                "type": "object",
                "properties": {
                  "@id": {
                    "type": "string",
                    "format": "iri-reference"
                  },
                  "@type": {
                    "type": "string"
                  },
                  "first": {
                    "type": "string",
                    "format": "iri-reference"
                  },
                  "last": {
                    "type": "string",
                    "format": "iri-reference"
                  },
                  "previous": {
                    "type": "string",
                    "format": "iri-reference"
                  },
                  "next": {
                    "type": "string",
                    "format": "iri-reference"
                  }
                },
                "example": {
                  "@id": "string",
                  "type": "string",
                  "first": "string",
                  "last": "string",
                  "previous": "string",
                  "next": "string"
                }
              }
            }
          }
        ]
      },
      "A-Cube_GOV-IT_PEL_Platform_HydraCollectionBaseSchemaNoPagination": {
        "type": "object",
        "properties": {
          "totalItems": {
            "type": "integer",
            "minimum": 0
          },
          "search": {
            "type": "object",
            "properties": {
              "@type": {
                "type": "string"
              },
              "template": {
                "type": "string"
              },
              "variableRepresentation": {
                "type": "string"
              },
              "mapping": {
                "type": "array",
                "items": {
                  "type": "object",
                  "properties": {
                    "@type": {
                      "type": "string"
                    },
                    "variable": {
                      "type": "string"
                    },
                    "property": {
                      "type": [
                        "string",
                        "null"
                      ]
                    },
                    "required": {
                      "type": "boolean"
                    }
                  }
                }
              }
            }
          }
        }
      },
      "A-Cube_GOV-IT_PEL_Platform_HydraItemBaseSchema": {
        "type": "object",
        "properties": {
          "@context": {
            "oneOf": [
              {
                "type": "string"
              },
              {
                "type": "object",
                "properties": {
                  "@vocab": {
                    "type": "string"
                  },
                  "hydra": {
                    "type": "string",
                    "enum": [
                      "http://www.w3.org/ns/hydra/core#"
                    ]
                  }
                },
                "required": [
                  "@vocab",
                  "hydra"
                ],
                "additionalProperties": true
              }
            ]
          },
          "@id": {
            "type": "string"
          },
          "@type": {
            "type": "string"
          }
        },
        "required": [
          "@id",
          "@type"
        ]
      },
      "A-Cube_GOV-IT_PEL_Platform_Merchant.MerchantCreateInput": {
        "type": "object",
        "required": [
          "vat_number",
          "email",
          "password",
          "address"
        ],
        "properties": {
          "vat_number": {
            "minLength": 11,
            "maxLength": 11,
            "pattern": "^(\\d+)$",
            "description": "The VAT number of the merchant (Partita IVA).",
            "type": "string"
          },
          "fiscal_code": {
            "minLength": 11,
            "maxLength": 11,
            "pattern": "^(\\d+)$",
            "description": "The Fiscal Code of the merchant (Codice Fiscale).",
            "type": "string"
          },
          "business_name": {
            "description": "The business name of the merchant (Ragione sociale).",
            "type": [
              "string",
              "null"
            ]
          },
          "first_name": {
            "description": "The first name of the merchant, in case there is no business name.",
            "type": [
              "string",
              "null"
            ]
          },
          "last_name": {
            "description": "The last name of the merchant, in case there is no business name.",
            "type": [
              "string",
              "null"
            ]
          },
          "email": {
            "format": "email",
            "description": "The email address.",
            "externalDocs": {
              "url": "https://schema.org/email"
            },
            "type": "string"
          },
          "password": {
            "pattern": "^((?=.*[A-Z])(?=.*[a-z])(?=.*[0-9])(?=.*[!@#$%\\^&\\*])(?=.{10,}).*)$",
            "description": "The password.",
            "type": "string"
          },
          "address": {
            "$ref": "#/components/schemas/A-Cube_GOV-IT_PEL_Platform_Address"
          }
        }
      },
      "A-Cube_GOV-IT_PEL_Platform_Merchant.MerchantOutput": {
        "type": "object",
        "properties": {
          "uuid": {
            "type": "string"
          },
          "vat_number": {
            "type": "string"
          },
          "fiscal_code": {
            "type": [
              "string",
              "null"
            ]
          },
          "email": {
            "type": "string"
          },
          "business_name": {
            "type": [
              "string",
              "null"
            ]
          },
          "first_name": {
            "type": [
              "string",
              "null"
            ]
          },
          "last_name": {
            "type": [
              "string",
              "null"
            ]
          },
          "address": {
            "$ref": "#/components/schemas/A-Cube_GOV-IT_PEL_Platform_Address"
          }
        }
      },
      "A-Cube_GOV-IT_PEL_Platform_Merchant.MerchantOutput.jsonld": {
        "allOf": [
          {
            "$ref": "#/components/schemas/A-Cube_GOV-IT_PEL_Platform_HydraItemBaseSchema"
          },
          {
            "type": "object",
            "properties": {
              "uuid": {
                "type": "string"
              },
              "vat_number": {
                "type": "string"
              },
              "fiscal_code": {
                "type": [
                  "string",
                  "null"
                ]
              },
              "email": {
                "type": "string"
              },
              "business_name": {
                "type": [
                  "string",
                  "null"
                ]
              },
              "first_name": {
                "type": [
                  "string",
                  "null"
                ]
              },
              "last_name": {
                "type": [
                  "string",
                  "null"
                ]
              },
              "address": {
                "$ref": "#/components/schemas/A-Cube_GOV-IT_PEL_Platform_Address.jsonld"
              }
            }
          }
        ]
      },
      "A-Cube_GOV-IT_PEL_Platform_Merchant.MerchantUpdateInput": {
        "type": "object",
        "properties": {
          "business_name": {
            "description": "The business name of the merchant (Ragione sociale).",
            "type": [
              "string",
              "null"
            ]
          },
          "first_name": {
            "description": "The first name of the merchant, in case there is no business name.",
            "type": [
              "string",
              "null"
            ]
          },
          "last_name": {
            "description": "The last name of the merchant, in case there is no business name.",
            "type": [
              "string",
              "null"
            ]
          },
          "address": {
            "anyOf": [
              {
                "$ref": "#/components/schemas/A-Cube_GOV-IT_PEL_Platform_Address"
              },
              {
                "type": "null"
              }
            ]
          }
        }
      },
      "A-Cube_GOV-IT_PEL_Platform_Pem": {
        "type": "object",
        "properties": {
          "id": {
            "readOnly": true,
            "type": "string"
          },
          "type": {
            "default": "PV",
            "type": "string",
            "enum": [
              "AP",
              "SP",
              "TM",
              "PV"
            ]
          },
          "version": {
            "type": [
              "string",
              "null"
            ]
          },
          "status": {
            "default": "new",
            "type": "string",
            "enum": [
              "new",
              "registered",
              "activated",
              "online",
              "offline",
              "discarded"
            ]
          },
          "csr_path": {
            "type": [
              "string",
              "null"
            ]
          },
          "activation_code": {
            "type": [
              "string",
              "null"
            ],
            "format": "uuid"
          },
          "activation_response_path": {
            "type": [
              "string",
              "null"
            ]
          },
          "scheduled_at": {
            "type": [
              "string",
              "null"
            ],
            "format": "date-time"
          },
          "mtls_cert_path": {
            "type": [
              "string",
              "null"
            ]
          },
          "merchant": {
            "type": "string",
            "format": "iri-reference",
            "example": "https://example.com/"
          },
          "configuration": {
            "type": [
              "string",
              "null"
            ],
            "format": "iri-reference",
            "example": "https://example.com/"
          },
          "created_at": {
            "type": "string",
            "format": "date-time"
          },
          "updated_at": {
            "type": "string",
            "format": "date-time"
          },
          "marking": {
            "type": "string"
          }
        }
      },
      "A-Cube_GOV-IT_PEL_Platform_Pem.EmergencyReportInput": {
        "type": "object",
        "required": [
          "datetime"
        ],
        "properties": {
          "datetime": {
            "type": [
              "string",
              "null"
            ],
            "format": "date-time"
          },
          "documents_count": {
            "minimum": 0,
            "exclusiveMinimum": 0,
            "type": "integer"
          },
          "cash_payment_amount": {
            "type": "string"
          },
          "electronic_payment_amount": {
            "type": "string"
          },
          "ticket_restaurant_payment_amount": {
            "type": "string"
          },
          "discount": {
            "type": "string"
          },
          "ticket_restaurant_quantity": {
            "type": "integer"
          },
          "entries": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/A-Cube_GOV-IT_PEL_Platform_DailyReportEntry"
            }
          }
        }
      },
      "A-Cube_GOV-IT_PEL_Platform_Pem.EmergencyReportOutput": {
        "type": "object",
        "properties": {
          "id": {
            "type": "integer"
          },
          "closed_at": {
            "type": "string"
          }
        }
      },
      "A-Cube_GOV-IT_PEL_Platform_Pem.EmergencyReportOutput.jsonld": {
        "allOf": [
          {
            "$ref": "#/components/schemas/A-Cube_GOV-IT_PEL_Platform_HydraItemBaseSchema"
          },
          {
            "type": "object",
            "properties": {
              "id": {
                "type": "integer"
              },
              "closed_at": {
                "type": "string"
              }
            }
          }
        ]
      },
      "A-Cube_GOV-IT_PEL_Platform_Pem.PemCreateInput": {
        "type": "object",
        "required": [
          "merchant_uuid"
        ],
        "properties": {
          "merchant_uuid": {
            "format": "uuid",
            "description": "The merchant UUID.",
            "externalDocs": {
              "url": "https://schema.org/identifier"
            },
            "type": "string"
          },
          "address": {
            "anyOf": [
              {
                "$ref": "#/components/schemas/A-Cube_GOV-IT_PEL_Platform_Address"
              },
              {
                "type": "null"
              }
            ]
          },
          "external_pem_data": {
            "anyOf": [
              {
                "$ref": "#/components/schemas/A-Cube_GOV-IT_PEL_Platform_PemData"
              },
              {
                "type": "null"
              }
            ],
            "readOnly": true
          },
          "configuration": {
            "anyOf": [
              {
                "$ref": "#/components/schemas/A-Cube_GOV-IT_PEL_Platform_PemConfigurationInput"
              },
              {
                "type": "null"
              }
            ]
          }
        }
      },
      "A-Cube_GOV-IT_PEL_Platform_Pem.PemCreateOutput": {
        "type": "object",
        "properties": {
          "serial_number": {
            "type": "string"
          },
          "registration_key": {
            "type": "string"
          }
        }
      },
      "A-Cube_GOV-IT_PEL_Platform_Pem.PemCreateOutput.jsonld": {
        "allOf": [
          {
            "$ref": "#/components/schemas/A-Cube_GOV-IT_PEL_Platform_HydraItemBaseSchema"
          },
          {
            "type": "object",
            "properties": {
              "serial_number": {
                "type": "string"
              },
              "registration_key": {
                "type": "string"
              }
            }
          }
        ]
      },
      "A-Cube_GOV-IT_PEL_Platform_Pem.PemDiscardInput": {
        "type": "object",
        "required": [
          "reason"
        ],
        "properties": {
          "reason": {
            "type": "string",
            "enum": [
              "pem-hardware-problems",
              "pem-software-problems",
              "pem-communication-problems",
              "pem-lifecycle-end",
              "contract-terminated",
              "integrity-failure",
              "other"
            ]
          }
        }
      },
      "A-Cube_GOV-IT_PEL_Platform_Pem.PemOutput": {
        "type": "object",
        "properties": {
          "serial_number": {
            "type": "string"
          },
          "type": {
            "type": "string"
          },
          "status": {
            "type": "string"
          },
          "address": {
            "$ref": "#/components/schemas/A-Cube_GOV-IT_PEL_Platform_Address"
          }
        }
      },
      "A-Cube_GOV-IT_PEL_Platform_Pem.PemOutput.jsonld": {
        "allOf": [
          {
            "$ref": "#/components/schemas/A-Cube_GOV-IT_PEL_Platform_HydraItemBaseSchema"
          },
          {
            "type": "object",
            "properties": {
              "serial_number": {
                "type": "string"
              },
              "type": {
                "type": "string"
              },
              "status": {
                "type": "string"
              },
              "address": {
                "$ref": "#/components/schemas/A-Cube_GOV-IT_PEL_Platform_Address.jsonld"
              }
            }
          }
        ]
      },
      "A-Cube_GOV-IT_PEL_Platform_Pem.jsonld": {
        "allOf": [
          {
            "$ref": "#/components/schemas/A-Cube_GOV-IT_PEL_Platform_HydraItemBaseSchema"
          },
          {
            "type": "object",
            "properties": {
              "id": {
                "readOnly": true,
                "type": "string"
              },
              "type": {
                "default": "PV",
                "type": "string",
                "enum": [
                  "AP",
                  "SP",
                  "TM",
                  "PV"
                ]
              },
              "version": {
                "type": [
                  "string",
                  "null"
                ]
              },
              "status": {
                "default": "new",
                "type": "string",
                "enum": [
                  "new",
                  "registered",
                  "activated",
                  "online",
                  "offline",
                  "discarded"
                ]
              },
              "csr_path": {
                "type": [
                  "string",
                  "null"
                ]
              },
              "activation_code": {
                "type": [
                  "string",
                  "null"
                ],
                "format": "uuid"
              },
              "activation_response_path": {
                "type": [
                  "string",
                  "null"
                ]
              },
              "scheduled_at": {
                "type": [
                  "string",
                  "null"
                ],
                "format": "date-time"
              },
              "mtls_cert_path": {
                "type": [
                  "string",
                  "null"
                ]
              },
              "merchant": {
                "type": "string",
                "format": "iri-reference",
                "example": "https://example.com/"
              },
              "configuration": {
                "type": [
                  "string",
                  "null"
                ],
                "format": "iri-reference",
                "example": "https://example.com/"
              },
              "created_at": {
                "type": "string",
                "format": "date-time"
              },
              "updated_at": {
                "type": "string",
                "format": "date-time"
              },
              "marking": {
                "type": "string"
              }
            }
          }
        ]
      },
      "A-Cube_GOV-IT_PEL_Platform_PemConfiguration.PemConfigurationInput": {
        "type": "object",
        "properties": {
          "receipt_format": {
            "type": "string",
            "enum": [
              "standard",
              "narrow"
            ]
          },
          "display_cashier_name": {
            "type": "boolean"
          },
          "receipt_header": {
            "type": [
              "string",
              "null"
            ]
          },
          "footer_text": {
            "type": [
              "string",
              "null"
            ]
          },
          "logo": {
            "type": [
              "string",
              "null"
            ]
          }
        }
      },
      "A-Cube_GOV-IT_PEL_Platform_PemConfiguration.PemConfigurationOutput": {
        "type": "object",
        "properties": {
          "receipt_format": {
            "type": "string",
            "enum": [
              "standard",
              "narrow"
            ]
          },
          "display_cashier_name": {
            "type": "boolean"
          },
          "receipt_header": {
            "type": [
              "string",
              "null"
            ]
          },
          "footer_text": {
            "type": [
              "string",
              "null"
            ]
          }
        }
      },
      "A-Cube_GOV-IT_PEL_Platform_PemConfiguration.PemConfigurationOutput.jsonld": {
        "allOf": [
          {
            "$ref": "#/components/schemas/A-Cube_GOV-IT_PEL_Platform_HydraItemBaseSchema"
          },
          {
            "type": "object",
            "properties": {
              "receipt_format": {
                "type": "string",
                "enum": [
                  "standard",
                  "narrow"
                ]
              },
              "display_cashier_name": {
                "type": "boolean"
              },
              "receipt_header": {
                "type": [
                  "string",
                  "null"
                ]
              },
              "footer_text": {
                "type": [
                  "string",
                  "null"
                ]
              }
            }
          }
        ]
      },
      "A-Cube_GOV-IT_PEL_Platform_PemConfiguration.PemConfigurationOutput.png": {
        "type": "object",
        "properties": {
          "receipt_format": {
            "type": "string",
            "enum": [
              "standard",
              "narrow"
            ]
          },
          "display_cashier_name": {
            "type": "boolean"
          },
          "receipt_header": {
            "type": [
              "string",
              "null"
            ]
          },
          "footer_text": {
            "type": [
              "string",
              "null"
            ]
          }
        }
      },
      "A-Cube_GOV-IT_PEL_Platform_PemConfigurationInput": {
        "type": "object",
        "properties": {
          "receipt_format": {
            "type": "string",
            "enum": [
              "standard",
              "narrow"
            ]
          },
          "display_cashier_name": {
            "type": "boolean"
          },
          "receipt_header": {
            "type": [
              "string",
              "null"
            ]
          },
          "footer_text": {
            "type": [
              "string",
              "null"
            ]
          },
          "logo": {
            "type": [
              "string",
              "null"
            ]
          }
        }
      },
      "A-Cube_GOV-IT_PEL_Platform_PemData": {
        "type": "object",
        "required": [
          "version",
          "type"
        ],
        "properties": {
          "version": {
            "pattern": "^(\\d+\\.\\d+\\.\\d+)$",
            "type": "string"
          },
          "type": {
            "type": "string",
            "enum": [
              "AP",
              "SP",
              "TM",
              "PV"
            ]
          }
        }
      }
    },
    "securitySchemes": {
      "E-Receipts_IT_API_HTTPBearer": {
        "type": "http",
        "scheme": "bearer"
      },
      "E-Receipts_IT_API_mutualTLS": {
        "type": "mutualTLS"
      }
    },
    "responses": {},
    "parameters": {},
    "examples": {},
    "requestBodies": {},
    "headers": {}
  }
}