{
  "openapi": "3.0.1",
  "info": {
    "title": "EkklesiaSoft API Fiscal",
    "version": "v1"
  },
  "paths": {
    "/api/empresas": {
      "get": {
        "tags": [
          "Empresas"
        ],
        "responses": {
          "200": {
            "description": "OK"
          }
        }
      },
      "post": {
        "tags": [
          "Empresas"
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/EmpresaRequest"
              }
            },
            "text/json": {
              "schema": {
                "$ref": "#/components/schemas/EmpresaRequest"
              }
            },
            "application/*+json": {
              "schema": {
                "$ref": "#/components/schemas/EmpresaRequest"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "OK"
          }
        }
      }
    },
    "/api/empresas/{id}": {
      "get": {
        "tags": [
          "Empresas"
        ],
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string",
              "format": "uuid"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "OK"
          }
        }
      },
      "put": {
        "tags": [
          "Empresas"
        ],
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string",
              "format": "uuid"
            }
          }
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/EmpresaRequest"
              }
            },
            "text/json": {
              "schema": {
                "$ref": "#/components/schemas/EmpresaRequest"
              }
            },
            "application/*+json": {
              "schema": {
                "$ref": "#/components/schemas/EmpresaRequest"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "OK"
          }
        }
      }
    },
    "/api/empresas/{id}/certificado": {
      "post": {
        "tags": [
          "Empresas"
        ],
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string",
              "format": "uuid"
            }
          }
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/CertificadoRequest"
              }
            },
            "text/json": {
              "schema": {
                "$ref": "#/components/schemas/CertificadoRequest"
              }
            },
            "application/*+json": {
              "schema": {
                "$ref": "#/components/schemas/CertificadoRequest"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "OK"
          }
        }
      }
    },
    "/api/empresas/{id}/api-key": {
      "post": {
        "tags": [
          "Empresas"
        ],
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string",
              "format": "uuid"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "OK"
          }
        }
      },
      "get": {
        "tags": [
          "Empresas"
        ],
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string",
              "format": "uuid"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "OK"
          }
        }
      }
    },
    "/api/nfes": {
      "post": {
        "tags": [
          "Nfes"
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/NfeRequest"
              }
            },
            "text/json": {
              "schema": {
                "$ref": "#/components/schemas/NfeRequest"
              }
            },
            "application/*+json": {
              "schema": {
                "$ref": "#/components/schemas/NfeRequest"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "OK"
          }
        }
      },
      "get": {
        "tags": [
          "Nfes"
        ],
        "parameters": [
          {
            "name": "pagina",
            "in": "query",
            "schema": {
              "type": "integer",
              "format": "int32",
              "default": 1
            }
          },
          {
            "name": "tamanho",
            "in": "query",
            "schema": {
              "type": "integer",
              "format": "int32",
              "default": 20
            }
          }
        ],
        "responses": {
          "200": {
            "description": "OK"
          }
        }
      }
    },
    "/api/nfes/xml": {
      "post": {
        "tags": [
          "Nfes"
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/XmlIngestaoRequest"
              }
            },
            "text/json": {
              "schema": {
                "$ref": "#/components/schemas/XmlIngestaoRequest"
              }
            },
            "application/*+json": {
              "schema": {
                "$ref": "#/components/schemas/XmlIngestaoRequest"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "OK"
          }
        }
      }
    },
    "/api/nfes/{id}": {
      "get": {
        "tags": [
          "Nfes"
        ],
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string",
              "format": "uuid"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "OK"
          }
        }
      }
    },
    "/api/nfes/{id}/danfe": {
      "get": {
        "tags": [
          "Nfes"
        ],
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string",
              "format": "uuid"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "OK"
          }
        }
      }
    },
    "/api/nfes/{id}/reenfileirar": {
      "post": {
        "tags": [
          "Nfes"
        ],
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string",
              "format": "uuid"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "OK"
          }
        }
      }
    },
    "/api/nfes/{id}/eventos": {
      "post": {
        "tags": [
          "Nfes"
        ],
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string",
              "format": "uuid"
            }
          }
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/EventoRequest"
              }
            },
            "text/json": {
              "schema": {
                "$ref": "#/components/schemas/EventoRequest"
              }
            },
            "application/*+json": {
              "schema": {
                "$ref": "#/components/schemas/EventoRequest"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "OK"
          }
        }
      }
    },
    "/api/nfes/inutilizacao": {
      "post": {
        "tags": [
          "Nfes"
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/InutilizacaoRequest"
              }
            },
            "text/json": {
              "schema": {
                "$ref": "#/components/schemas/InutilizacaoRequest"
              }
            },
            "application/*+json": {
              "schema": {
                "$ref": "#/components/schemas/InutilizacaoRequest"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "OK"
          }
        }
      }
    },
    "/api/nfes/inutilizacoes": {
      "get": {
        "tags": [
          "Nfes"
        ],
        "responses": {
          "200": {
            "description": "OK"
          }
        }
      }
    },
    "/api/nfses": {
      "post": {
        "tags": [
          "Nfses"
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/NfseRequest"
              }
            },
            "text/json": {
              "schema": {
                "$ref": "#/components/schemas/NfseRequest"
              }
            },
            "application/*+json": {
              "schema": {
                "$ref": "#/components/schemas/NfseRequest"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "OK"
          }
        }
      },
      "get": {
        "tags": [
          "Nfses"
        ],
        "parameters": [
          {
            "name": "pagina",
            "in": "query",
            "schema": {
              "type": "integer",
              "format": "int32",
              "default": 1
            }
          },
          {
            "name": "tamanho",
            "in": "query",
            "schema": {
              "type": "integer",
              "format": "int32",
              "default": 20
            }
          }
        ],
        "responses": {
          "200": {
            "description": "OK"
          }
        }
      }
    },
    "/api/nfses/xml": {
      "post": {
        "tags": [
          "Nfses"
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/XmlRequest"
              }
            },
            "text/json": {
              "schema": {
                "$ref": "#/components/schemas/XmlRequest"
              }
            },
            "application/*+json": {
              "schema": {
                "$ref": "#/components/schemas/XmlRequest"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "OK"
          }
        }
      }
    },
    "/api/nfses/{id}": {
      "get": {
        "tags": [
          "Nfses"
        ],
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string",
              "format": "uuid"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "OK"
          }
        }
      }
    },
    "/api/nfses/{id}/danfse": {
      "get": {
        "tags": [
          "Nfses"
        ],
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string",
              "format": "uuid"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "OK"
          }
        }
      }
    },
    "/api/nfses/{id}/eventos": {
      "post": {
        "tags": [
          "Nfses"
        ],
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string",
              "format": "uuid"
            }
          }
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/NfseEvento"
              }
            },
            "text/json": {
              "schema": {
                "$ref": "#/components/schemas/NfseEvento"
              }
            },
            "application/*+json": {
              "schema": {
                "$ref": "#/components/schemas/NfseEvento"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "OK"
          }
        }
      }
    },
    "/api/nfses/{id}/cancelar": {
      "post": {
        "tags": [
          "Nfses"
        ],
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string",
              "format": "uuid"
            }
          }
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/CancelarRequest"
              }
            },
            "text/json": {
              "schema": {
                "$ref": "#/components/schemas/CancelarRequest"
              }
            },
            "application/*+json": {
              "schema": {
                "$ref": "#/components/schemas/CancelarRequest"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "OK"
          }
        }
      }
    },
    "/api/nfses/{id}/reenfileirar": {
      "post": {
        "tags": [
          "Nfses"
        ],
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string",
              "format": "uuid"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "OK"
          }
        }
      }
    }
  },
  "components": {
    "schemas": {
      "CancelarRequest": {
        "type": "object",
        "properties": {
          "motivo": {
            "type": "string",
            "nullable": true
          }
        },
        "additionalProperties": false
      },
      "CertificadoDigital": {
        "type": "object",
        "properties": {
          "id": {
            "type": "string",
            "format": "uuid"
          },
          "criadoEm": {
            "type": "string",
            "format": "date-time"
          },
          "atualizadoEm": {
            "type": "string",
            "format": "date-time"
          },
          "empresaId": {
            "type": "string",
            "format": "uuid"
          },
          "base64Criptografado": {
            "type": "string",
            "nullable": true
          },
          "senhaCriptografada": {
            "type": "string",
            "nullable": true
          },
          "thumbprint": {
            "type": "string",
            "nullable": true
          },
          "validade": {
            "type": "string",
            "format": "date-time"
          }
        },
        "additionalProperties": false
      },
      "CertificadoRequest": {
        "type": "object",
        "properties": {
          "base64": {
            "type": "string",
            "nullable": true
          },
          "senha": {
            "type": "string",
            "nullable": true
          },
          "validade": {
            "type": "string",
            "format": "date-time"
          },
          "thumbprint": {
            "type": "string",
            "nullable": true
          }
        },
        "additionalProperties": false
      },
      "DestinatarioRequest": {
        "type": "object",
        "properties": {
          "cnpjCpf": {
            "type": "string",
            "nullable": true
          },
          "nome": {
            "type": "string",
            "nullable": true
          },
          "inscricaoEstadual": {
            "type": "string",
            "nullable": true
          },
          "logradouro": {
            "type": "string",
            "nullable": true
          },
          "numero": {
            "type": "string",
            "nullable": true
          },
          "bairro": {
            "type": "string",
            "nullable": true
          },
          "municipio": {
            "type": "string",
            "nullable": true
          },
          "codigoMunicipioIbge": {
            "type": "integer",
            "format": "int32"
          },
          "uf": {
            "type": "string",
            "nullable": true
          },
          "cep": {
            "type": "string",
            "nullable": true
          },
          "indicadorIeDestinatario": {
            "type": "integer",
            "format": "int32"
          }
        },
        "additionalProperties": false
      },
      "Empresa": {
        "type": "object",
        "properties": {
          "id": {
            "type": "string",
            "format": "uuid"
          },
          "criadoEm": {
            "type": "string",
            "format": "date-time"
          },
          "atualizadoEm": {
            "type": "string",
            "format": "date-time"
          },
          "softhouseId": {
            "type": "string",
            "format": "uuid"
          },
          "cnpjCpf": {
            "type": "string",
            "nullable": true
          },
          "razaoSocial": {
            "type": "string",
            "nullable": true
          },
          "nomeFantasia": {
            "type": "string",
            "nullable": true
          },
          "inscricaoEstadual": {
            "type": "string",
            "nullable": true
          },
          "inscricaoMunicipal": {
            "type": "string",
            "nullable": true
          },
          "crt": {
            "type": "string",
            "nullable": true
          },
          "regimeTributario": {
            "type": "string",
            "nullable": true
          },
          "ambiente": {
            "$ref": "#/components/schemas/TipoAmbiente"
          },
          "endereco": {
            "type": "string",
            "nullable": true
          },
          "enderecoNumero": {
            "type": "string",
            "nullable": true
          },
          "bairro": {
            "type": "string",
            "nullable": true
          },
          "cidade": {
            "type": "string",
            "nullable": true
          },
          "codigoMunicipioIbge": {
            "type": "integer",
            "format": "int32"
          },
          "uf": {
            "type": "string",
            "nullable": true
          },
          "cep": {
            "type": "string",
            "nullable": true
          },
          "cscId": {
            "type": "string",
            "nullable": true
          },
          "ativo": {
            "type": "boolean"
          },
          "certificado": {
            "$ref": "#/components/schemas/CertificadoDigital"
          }
        },
        "additionalProperties": false
      },
      "EmpresaRequest": {
        "type": "object",
        "properties": {
          "cnpjCpf": {
            "type": "string",
            "nullable": true
          },
          "razaoSocial": {
            "type": "string",
            "nullable": true
          },
          "nomeFantasia": {
            "type": "string",
            "nullable": true
          },
          "inscricaoEstadual": {
            "type": "string",
            "nullable": true
          },
          "inscricaoMunicipal": {
            "type": "string",
            "nullable": true
          },
          "crt": {
            "type": "string",
            "nullable": true
          },
          "regimeTributario": {
            "type": "string",
            "nullable": true
          },
          "ambiente": {
            "type": "integer",
            "format": "int32"
          },
          "endereco": {
            "type": "string",
            "nullable": true
          },
          "enderecoNumero": {
            "type": "string",
            "nullable": true
          },
          "bairro": {
            "type": "string",
            "nullable": true
          },
          "cidade": {
            "type": "string",
            "nullable": true
          },
          "codigoMunicipioIbge": {
            "type": "integer",
            "format": "int32"
          },
          "uf": {
            "type": "string",
            "nullable": true
          },
          "cep": {
            "type": "string",
            "nullable": true
          },
          "cscId": {
            "type": "string",
            "nullable": true
          },
          "cscToken": {
            "type": "string",
            "nullable": true
          },
          "ativo": {
            "type": "boolean",
            "nullable": true
          }
        },
        "additionalProperties": false
      },
      "EventoRequest": {
        "type": "object",
        "properties": {
          "tipo": {
            "type": "integer",
            "format": "int32"
          },
          "texto": {
            "type": "string",
            "nullable": true
          }
        },
        "additionalProperties": false
      },
      "InutilizacaoRequest": {
        "type": "object",
        "properties": {
          "modeloDocumento": {
            "type": "integer",
            "format": "int32"
          },
          "serie": {
            "type": "integer",
            "format": "int32"
          },
          "faixaInicio": {
            "type": "integer",
            "format": "int32"
          },
          "faixaFim": {
            "type": "integer",
            "format": "int32"
          },
          "justificativa": {
            "type": "string",
            "nullable": true
          },
          "empresaId": {
            "type": "string",
            "format": "uuid",
            "nullable": true
          }
        },
        "additionalProperties": false
      },
      "ItemRequest": {
        "type": "object",
        "properties": {
          "codigoProduto": {
            "type": "string",
            "nullable": true
          },
          "descricao": {
            "type": "string",
            "nullable": true
          },
          "ncm": {
            "type": "string",
            "nullable": true
          },
          "cest": {
            "type": "string",
            "nullable": true
          },
          "gtin": {
            "type": "string",
            "nullable": true
          },
          "cfop": {
            "type": "integer",
            "format": "int32"
          },
          "unidade": {
            "type": "string",
            "nullable": true
          },
          "quantidade": {
            "type": "number",
            "format": "double"
          },
          "valorUnitario": {
            "type": "number",
            "format": "double"
          },
          "valorDesconto": {
            "type": "number",
            "format": "double"
          },
          "origemMercadoria": {
            "type": "integer",
            "format": "int32"
          },
          "cstIcms": {
            "type": "string",
            "nullable": true
          },
          "aliquotaIcms": {
            "type": "number",
            "format": "double",
            "nullable": true
          },
          "cstPis": {
            "type": "string",
            "nullable": true
          },
          "cstCofins": {
            "type": "string",
            "nullable": true
          },
          "aliquotaIpi": {
            "type": "number",
            "format": "double",
            "nullable": true
          },
          "valorIpi": {
            "type": "number",
            "format": "double"
          }
        },
        "additionalProperties": false
      },
      "NfeRequest": {
        "type": "object",
        "properties": {
          "numero": {
            "type": "integer",
            "format": "int32"
          },
          "serie": {
            "type": "integer",
            "format": "int32"
          },
          "naturezaOperacao": {
            "type": "string",
            "nullable": true
          },
          "consumidorFinal": {
            "type": "boolean"
          },
          "indicadorPresenca": {
            "type": "string",
            "nullable": true
          },
          "empresaId": {
            "type": "string",
            "format": "uuid",
            "nullable": true
          },
          "destinatario": {
            "$ref": "#/components/schemas/DestinatarioRequest"
          },
          "itens": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/ItemRequest"
            },
            "nullable": true
          },
          "pagamentos": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/PagamentoRequest"
            },
            "nullable": true
          },
          "informacoesAdicionais": {
            "type": "string",
            "nullable": true
          }
        },
        "additionalProperties": false
      },
      "NfseDocumento": {
        "type": "object",
        "properties": {
          "id": {
            "type": "string",
            "format": "uuid"
          },
          "criadoEm": {
            "type": "string",
            "format": "date-time"
          },
          "atualizadoEm": {
            "type": "string",
            "format": "date-time"
          },
          "softhouseId": {
            "type": "string",
            "format": "uuid"
          },
          "empresaId": {
            "type": "string",
            "format": "uuid"
          },
          "tipo": {
            "$ref": "#/components/schemas/TipoNfse"
          },
          "status": {
            "$ref": "#/components/schemas/StatusNfse"
          },
          "provedor": {
            "type": "string",
            "nullable": true
          },
          "numeroRps": {
            "type": "string",
            "nullable": true
          },
          "serieRps": {
            "type": "string",
            "nullable": true
          },
          "numeroNfse": {
            "type": "string",
            "nullable": true
          },
          "codigoVerificacao": {
            "type": "string",
            "nullable": true
          },
          "protocolo": {
            "type": "string",
            "nullable": true
          },
          "chaveAcesso": {
            "type": "string",
            "nullable": true
          },
          "xmlEnviado": {
            "type": "string",
            "nullable": true
          },
          "xmlAutorizado": {
            "type": "string",
            "nullable": true
          },
          "pdfDanfse": {
            "type": "string",
            "format": "byte",
            "nullable": true
          },
          "mensagemRetorno": {
            "type": "string",
            "nullable": true
          },
          "codigoRetorno": {
            "type": "integer",
            "format": "int32",
            "nullable": true
          },
          "dhEmissao": {
            "type": "string",
            "format": "date-time"
          },
          "dhAutorizacao": {
            "type": "string",
            "format": "date-time",
            "nullable": true
          },
          "valorServicos": {
            "type": "number",
            "format": "double"
          },
          "valorIss": {
            "type": "number",
            "format": "double"
          },
          "valorLiquido": {
            "type": "number",
            "format": "double"
          },
          "prestadorCnpjCpf": {
            "type": "string",
            "nullable": true
          },
          "prestadorRazaoSocial": {
            "type": "string",
            "nullable": true
          },
          "prestadorInscricaoMunicipal": {
            "type": "string",
            "nullable": true
          },
          "prestadorEndereco": {
            "type": "string",
            "nullable": true
          },
          "prestadorMunicipioIbge": {
            "type": "integer",
            "format": "int32"
          },
          "tomadorCnpjCpf": {
            "type": "string",
            "nullable": true
          },
          "tomadorNome": {
            "type": "string",
            "nullable": true
          },
          "tomadorInscricaoMunicipal": {
            "type": "string",
            "nullable": true
          },
          "tomadorEndereco": {
            "type": "string",
            "nullable": true
          },
          "tomadorMunicipioIbge": {
            "type": "integer",
            "format": "int32"
          },
          "codigoTributacaoNacional": {
            "type": "string",
            "nullable": true
          },
          "codigoTributacaoMunicipal": {
            "type": "string",
            "nullable": true
          },
          "itemLc116": {
            "type": "string",
            "nullable": true
          },
          "discriminacao": {
            "type": "string",
            "nullable": true
          },
          "municipioPrestacaoIbge": {
            "type": "integer",
            "format": "int32"
          },
          "issRetido": {
            "type": "boolean"
          },
          "aliquotaIss": {
            "type": "number",
            "format": "double"
          },
          "empresa": {
            "$ref": "#/components/schemas/Empresa"
          },
          "itens": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/NfseItem"
            },
            "nullable": true
          },
          "eventos": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/NfseEvento"
            },
            "nullable": true
          }
        },
        "additionalProperties": false
      },
      "NfseEvento": {
        "type": "object",
        "properties": {
          "id": {
            "type": "string",
            "format": "uuid"
          },
          "criadoEm": {
            "type": "string",
            "format": "date-time"
          },
          "atualizadoEm": {
            "type": "string",
            "format": "date-time"
          },
          "softhouseId": {
            "type": "string",
            "format": "uuid"
          },
          "nfseDocumentoId": {
            "type": "string",
            "format": "uuid"
          },
          "tipo": {
            "type": "string",
            "nullable": true
          },
          "descricao": {
            "type": "string",
            "nullable": true
          },
          "status": {
            "$ref": "#/components/schemas/StatusNfse"
          },
          "protocolo": {
            "type": "string",
            "nullable": true
          },
          "xmlEvento": {
            "type": "string",
            "nullable": true
          },
          "mensagemRetorno": {
            "type": "string",
            "nullable": true
          },
          "dhProcessamento": {
            "type": "string",
            "format": "date-time",
            "nullable": true
          },
          "nfseDocumento": {
            "$ref": "#/components/schemas/NfseDocumento"
          }
        },
        "additionalProperties": false
      },
      "NfseItem": {
        "type": "object",
        "properties": {
          "id": {
            "type": "string",
            "format": "uuid"
          },
          "criadoEm": {
            "type": "string",
            "format": "date-time"
          },
          "atualizadoEm": {
            "type": "string",
            "format": "date-time"
          },
          "softhouseId": {
            "type": "string",
            "format": "uuid"
          },
          "nfseDocumentoId": {
            "type": "string",
            "format": "uuid"
          },
          "ordem": {
            "type": "integer",
            "format": "int32"
          },
          "codigoTributacaoNacional": {
            "type": "string",
            "nullable": true
          },
          "codigoTributacaoMunicipal": {
            "type": "string",
            "nullable": true
          },
          "itemLc116": {
            "type": "string",
            "nullable": true
          },
          "discriminacao": {
            "type": "string",
            "nullable": true
          },
          "municipioPrestacaoIbge": {
            "type": "integer",
            "format": "int32"
          },
          "issRetido": {
            "type": "boolean"
          },
          "aliquotaIss": {
            "type": "number",
            "format": "double"
          },
          "valorServicos": {
            "type": "number",
            "format": "double"
          },
          "valorIss": {
            "type": "number",
            "format": "double"
          },
          "nfseDocumento": {
            "$ref": "#/components/schemas/NfseDocumento"
          }
        },
        "additionalProperties": false
      },
      "NfseRequest": {
        "type": "object",
        "properties": {
          "empresaId": {
            "type": "string",
            "format": "uuid"
          },
          "tipo": {
            "$ref": "#/components/schemas/TipoNfse"
          },
          "provedor": {
            "type": "string",
            "nullable": true
          },
          "numeroRps": {
            "type": "string",
            "nullable": true
          },
          "serieRps": {
            "type": "string",
            "nullable": true
          },
          "prestador": {
            "$ref": "#/components/schemas/ParteRequest"
          },
          "tomador": {
            "$ref": "#/components/schemas/ParteRequest"
          },
          "servico": {
            "$ref": "#/components/schemas/ServicoRequest"
          },
          "valores": {
            "$ref": "#/components/schemas/ValoresRequest"
          },
          "municipioIbge": {
            "type": "integer",
            "format": "int32"
          },
          "codigoTributacaoNacional": {
            "type": "string",
            "nullable": true
          },
          "codigoTributacaoMunicipal": {
            "type": "string",
            "nullable": true
          },
          "issRetido": {
            "type": "boolean"
          }
        },
        "additionalProperties": false
      },
      "PagamentoRequest": {
        "type": "object",
        "properties": {
          "formaPagamento": {
            "type": "integer",
            "format": "int32"
          },
          "valor": {
            "type": "number",
            "format": "double"
          },
          "bandeira": {
            "type": "string",
            "nullable": true
          },
          "nsu": {
            "type": "string",
            "nullable": true
          },
          "autorizacao": {
            "type": "string",
            "nullable": true
          }
        },
        "additionalProperties": false
      },
      "ParteRequest": {
        "type": "object",
        "properties": {
          "nome": {
            "type": "string",
            "nullable": true
          },
          "documento": {
            "type": "string",
            "nullable": true
          }
        },
        "additionalProperties": false
      },
      "ServicoRequest": {
        "type": "object",
        "properties": {
          "descricao": {
            "type": "string",
            "nullable": true
          },
          "codigoServico": {
            "type": "string",
            "nullable": true
          }
        },
        "additionalProperties": false
      },
      "StatusNfse": {
        "enum": [
          1,
          2,
          3,
          4,
          5,
          6,
          7
        ],
        "type": "integer",
        "format": "int32"
      },
      "TipoAmbiente": {
        "enum": [
          1,
          2
        ],
        "type": "integer",
        "format": "int32"
      },
      "TipoNfse": {
        "enum": [
          1,
          2
        ],
        "type": "integer",
        "format": "int32"
      },
      "ValoresRequest": {
        "type": "object",
        "properties": {
          "valorServico": {
            "type": "number",
            "format": "double"
          },
          "aliquotaIss": {
            "type": "number",
            "format": "double"
          }
        },
        "additionalProperties": false
      },
      "XmlIngestaoRequest": {
        "type": "object",
        "properties": {
          "xml": {
            "type": "string",
            "nullable": true
          }
        },
        "additionalProperties": false
      },
      "XmlRequest": {
        "type": "object",
        "properties": {
          "xml": {
            "type": "string",
            "nullable": true
          }
        },
        "additionalProperties": false
      }
    },
    "securitySchemes": {
      "SofthouseKey": {
        "type": "apiKey",
        "name": "X-Softhouse-Api-Key",
        "in": "header"
      },
      "EmpresaKey": {
        "type": "apiKey",
        "name": "X-Empresa-Api-Key",
        "in": "header"
      },
      "Bearer": {
        "type": "http",
        "scheme": "bearer"
      }
    }
  }
}