---
title: "Pré-Nota - Modo Automático."
url: "https://devcenter.stone.com.br/apis/stone-tax/versions/206fd1c1-6382-4ada-8612-c67fdc65e050/paths/api-v1-Nfe-PreNota-ModoAutomatico/post"
---

> Full API specification: https://devcenter.stone.com.br/apis/stone-tax/versions/206fd1c1-6382-4ada-8612-c67fdc65e050.md

# Pré-Nota - Modo Automático.

`POST` `/api/v1/Nfe/PreNota/ModoAutomatico`

Realiza o processamento inteligente e retorna a estrutura de dados (payload) para a emissão da <strong>Nota Fiscal Eletrônica (modelo 55)</strong>, otimizando o preenchimento de campos tributários complexos por meio de automações internas no modo automático, ocultando qualquer informação tributária. ⚠️ **ATENÇÃO**: Esta operação possui caráter estritamente <strong>consultivo e preparatório</strong>. O retorno consiste no objeto JSON necessário para a emissão, não realizando o registro fiscal ou o envio da nota à SEFAZ neste momento. ⚙️ **PROCESSAMENTO**: O resultado obtido deve ser validado pelo sistema consumidor e, estando em conformidade, utilizado como entrada (input) no endpoint de emissão definitiva: `../Espelho/ModoSimplificado`. 🛡️ **AUTOMAÇÃO**: Este modo reduz a carga de integração ao calcular automaticamente alíquotas e enquadramentos com base no perfil do emissor e destinatário informados.

## Header parameters

- `inscricaoEstadualEmissor` (string, optional) - Inscrição estadual do emissor (Opcional - Utilizado para múltiplos estabelecimentos).
- `DocumentoEmissor` (string, required) - Documento do emissor.

## Request body

Content types: `application/json-patch+json`, `application/json`, `text/json`, `application/*+json`

## Responses

- `200` - OK
- `400` - Bad Request
- `401` - Unauthorized
- `403` - Forbidden
- `500` - Internal Server Error

## OpenAPI definition

```yaml
openapi: 3.0.4
info:
  title: Stone Tax API
  version: 1.0.0
servers:
  - url: https://stone-tax-sdx.stone.com.br
    description: Ambiente de Desenvolvimento
  - url: https://stone-tax.stone.com.br
    description: Ambiente de Produção
paths:
  /api/v1/Nfe/PreNota/ModoAutomatico:
    post:
      tags:
        - Nfe
      summary: Pré-Nota - Modo Automático.
      description: >-
        Realiza o processamento inteligente e retorna a estrutura de dados
        (payload) para a emissão da <strong>Nota Fiscal Eletrônica (modelo
        55)</strong>, otimizando o preenchimento de campos tributários complexos
        por meio de automações internas no modo automático, ocultando qualquer
        informação tributária.


        ⚠️ **ATENÇÃO**: Esta operação possui caráter estritamente
        <strong>consultivo e preparatório</strong>. O retorno consiste no objeto
        JSON necessário para a emissão, não realizando o registro fiscal ou o
        envio da nota à SEFAZ neste momento.


        ⚙️ **PROCESSAMENTO**: O resultado obtido deve ser validado pelo sistema
        consumidor e, estando em conformidade, utilizado como entrada (input) no
        endpoint de emissão definitiva: `../Espelho/ModoSimplificado`.


        🛡️ **AUTOMAÇÃO**: Este modo reduz a carga de integração ao calcular
        automaticamente alíquotas e enquadramentos com base no perfil do emissor
        e destinatário informados.
      parameters:
        - name: inscricaoEstadualEmissor
          in: header
          description: Inscrição estadual do emissor (Opcional - Utilizado para múltiplos
            estabelecimentos).
          schema:
            type: string
        - name: DocumentoEmissor
          in: header
          description: Documento do emissor.
          required: true
          schema:
            type: string
      requestBody:
        description: Dados de entrada para a geração automática da estrutura da NFe.
        content:
          application/json-patch+json:
            schema:
              $ref: "#/components/schemas/NfeAutomaticaInputModel"
          application/json:
            schema:
              $ref: "#/components/schemas/NfeAutomaticaInputModel"
          text/json:
            schema:
              $ref: "#/components/schemas/NfeAutomaticaInputModel"
          application/*+json:
            schema:
              $ref: "#/components/schemas/NfeAutomaticaInputModel"
      responses:
        "200":
          description: OK
          content:
            text/plain:
              schema:
                $ref: "#/components/schemas/NfeInputModel"
            application/json:
              schema:
                $ref: "#/components/schemas/NfeInputModel"
            text/json:
              schema:
                $ref: "#/components/schemas/NfeInputModel"
        "400":
          description: Bad Request
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ResponseErrorResult"
        "401":
          description: Unauthorized
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ResponseErrorResult"
        "403":
          description: Forbidden
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ResponseErrorResult"
        "500":
          description: Internal Server Error
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ResponseErrorResult"
      security:
        - BearerAuth: []
security:
  - BearerAuth: []
components:
  schemas:
    NfeAutomaticaInputModel:
      required:
        - codigoErp
        - destinatario
        - itens
      type: object
      properties:
        codigoErp:
          minLength: 1
          type: string
          description: Identificador da pré-venda no ERP.
        serie:
          type: string
          description: Série do documento fiscal (Informar somente se estiver configurado
            para geração numérica manual).
          nullable: true
        numeroDocumento:
          type: integer
          description: Numero do documento fiscal (Informar somente se estiver configurado
            para geração numérica manual).
          format: int64
          nullable: true
        naturezaOperacao:
          type: string
          description: Descrição da natureza da operação.
          nullable: true
        fluxoFiscalAutomatico:
          $ref: "#/components/schemas/FluxoFiscalAutomaticoModelEnum"
        indicadorPresenca:
          $ref: "#/components/schemas/IndicadorPresencaNfeModelEnum"
        tipoEmissao:
          $ref: "#/components/schemas/TipoEmissaoNfeModelEnum"
        dataHoraEntradaContingencia:
          type: string
          description: Data e hora de entrada em contingência (Opcional).
          format: date-time
          nullable: true
        justificativaContingencia:
          type: string
          description: Justificativa de entrada em contingência (Opcional).
          nullable: true
        dataSaidaEntrada:
          type: string
          description: Data de saída/entrada.
          format: date-time
          nullable: true
        destinatario:
          $ref: "#/components/schemas/DestinatarioNfeAutomaticaInputModel"
        enderecoEntrega:
          $ref: "#/components/schemas/EnderecoEntregaNfeAutomaticaInputModel"
        enderecoRetirada:
          $ref: "#/components/schemas/EnderecoRetiradaNfeAutomaticaInputModel"
        autXml:
          type: array
          items:
            $ref: "#/components/schemas/NfeAuxXmlInputModel"
          description: Documentos autorizados a visualizar a NFe.
          nullable: true
        itens:
          type: array
          items:
            $ref: "#/components/schemas/ItemNfeAutomaticaInputModel"
          description: Itens da nota fiscal.
        transporte:
          $ref: "#/components/schemas/TransporteNfeAutomaticaInputModel"
        cnpjIntermediador:
          type: string
          description: CNPJ do intermediador.
          nullable: true
        identificadorIntermediador:
          type: string
          description: Identificador do intermediador.
          nullable: true
        informacaoAdicionalFisco:
          maxLength: 2000
          type: string
          description: Informação adicional de interesse do fisco.
          nullable: true
        informacaoComplementar:
          maxLength: 5000
          type: string
          description: Informação complementar.
          nullable: true
      additionalProperties: false
      description: Dados da nota fiscal eletrônica Automática.
    NfeInputModel:
      required:
        - codigoErp
        - destinatario
        - itens
        - pagamentos
        - valorTotal
      type: object
      properties:
        codigoErp:
          minLength: 1
          type: string
          description: Identificador da operação fiscal no ERP.
        serie:
          type: string
          description: Série do documento fiscal (Informar somente se estiver configurado
            para geração numérica manual).
          nullable: true
        numeroDocumento:
          type: integer
          description: Numero do documento fiscal (Informar somente se estiver configurado
            para geração numérica manual).
          format: int64
          nullable: true
        naturezaOperacao:
          type: string
          description: Descrição da natureza da operação.
          nullable: true
        tipoOperacao:
          $ref: "#/components/schemas/TipoOperacaoNotaFiscalModelEnum"
        indicadorPresenca:
          $ref: "#/components/schemas/IndicadorPresencaNfeModelEnum"
        consumidorFinal:
          type: boolean
          description: Indica se é operação com consumidor final.
          nullable: true
        tipoEmissao:
          $ref: "#/components/schemas/TipoEmissaoNfeModelEnum"
        dataHoraEntradaContingencia:
          type: string
          description: Data e hora de entrada em contingência (Opcional).
          format: date-time
          nullable: true
        justificativaContingencia:
          type: string
          description: Justificativa de entrada em contingência (Opcional).
          nullable: true
        finalidade:
          $ref: "#/components/schemas/FinalidadeNfeModelEnum"
        dataSaidaEntrada:
          type: string
          description: Data de saída/entrada.
          format: date-time
          nullable: true
        destinatario:
          $ref: "#/components/schemas/DestinatarioNfeInputModel"
        enderecoEntrega:
          $ref: "#/components/schemas/EnderecoEntregaNfeInputModel"
        enderecoRetirada:
          $ref: "#/components/schemas/EnderecoRetiradaNfeInputModel"
        autXml:
          type: array
          items:
            $ref: "#/components/schemas/NfeAuxXmlInputModel"
          description: Documentos autorizados a visualizar a NFe.
          nullable: true
        itens:
          type: array
          items:
            $ref: "#/components/schemas/ItemNfeInputModel"
          description: Itens da nota fiscal.
        notasReferenciadas:
          type: array
          items:
            $ref: "#/components/schemas/NfeNotasReferenciadasInputModel"
          description: Lista de notas referenciadas na NFe se houver. Utilizado para
            informar documentos fiscais relacionados, como em casos de
            devolução, remessa para conserto, entre outros cenários que exigem a
            referência a outras notas fiscais.
          nullable: true
        transporte:
          $ref: "#/components/schemas/TransporteNfeInputModel"
        cobranca:
          $ref: "#/components/schemas/CobrancaNfeInputModel"
        pagamentos:
          $ref: "#/components/schemas/PagamentosNfeInputModel"
        cnpjIntermediador:
          type: string
          description: CNPJ do intermediador.
          nullable: true
        identificadorIntermediador:
          type: string
          description: Identificador do intermediador.
          nullable: true
        exportacao:
          $ref: "#/components/schemas/ExportacaoNfeInputModel"
        informacaoAdicionalFisco:
          maxLength: 2000
          type: string
          description: Informação adicional de interesse do fisco.
          nullable: true
        informacaoComplementar:
          maxLength: 5000
          type: string
          description: Informação complementar.
          nullable: true
        valorTotal:
          type: number
          description: "Valor total do documento fiscal (Não incluir os impostos da
            reforma tributária: IBS, CBS e IS)."
          format: double
      additionalProperties: false
      description: Dados da nota fiscal eletrônica.
    ResponseErrorResult:
      type: object
      properties:
        status:
          type: integer
          format: int32
        titulo:
          type: string
          nullable: true
        erros:
          type: object
          additionalProperties:
            type: array
            items:
              type: string
          nullable: true
      additionalProperties: false
    FluxoFiscalAutomaticoModelEnum:
      enum:
        - VendaConsumidorFinal
        - Revenda
        - Bonificacao
        - Transferencia
      type: string
      description: Fluxo fiscal para cálculo automático do tributo.
    IndicadorPresencaNfeModelEnum:
      enum:
        - NaoSeAplica
        - OperacaoPresencial
        - OperacaoNaoPresencialInternet
        - OperacaoNaoPresencialTeleatendimento
        - NaoPresencialOutros
      type: string
      description: Indicador de presença na operação.
    TipoEmissaoNfeModelEnum:
      enum:
        - Automatica
        - Normal
        - ContingenciaFsda
        - ContingenciaSvcan
        - ContingenciaSvcrs
      type: string
      description: Tipo de emissão de NFe.
    DestinatarioNfeAutomaticaInputModel:
      required:
        - documento
        - endereco
        - nome
      type: object
      properties:
        tipoDocumento:
          $ref: "#/components/schemas/TipoDocumentoNotaFiscalModelEnum"
        documento:
          minLength: 1
          type: string
          description: Documento do destinatário.
        nome:
          maxLength: 60
          minLength: 2
          type: string
          description: Nome do destinatário.
        endereco:
          $ref: "#/components/schemas/EnderecoDestinatarioNfeAutomaticaInputModel"
        telefone:
          type: string
          description: Telefone do destinatário.
          nullable: true
        indicadorInscricao:
          $ref: "#/components/schemas/IndicadorInscricaoDestinatarioNotaFiscalModelEnum"
        inscricaoEstadual:
          type: string
          description: Inscrição estadual do destinatário.
          nullable: true
        inscricaoSuframa:
          type: string
          description: Inscrição SUFRAMA.
          nullable: true
        inscricaoMunicipal:
          type: string
          description: Inscrição municipal.
          nullable: true
        email:
          type: string
          description: Email do destinatário.
          nullable: true
        situacaoEspecial:
          $ref: "#/components/schemas/SituacaoEspecialDestinatarioModelEnum"
      additionalProperties: false
      description: Dados do destinatário da NFe Automática.
    EnderecoEntregaNfeAutomaticaInputModel:
      required:
        - bairro
        - codigoMunicipio
        - documentoRecebedor
        - logradouro
        - nomeMunicipio
        - numero
      type: object
      properties:
        tipoDocumentoRecebedor:
          $ref: "#/components/schemas/TipoDocumentoNotaFiscalModelEnum"
        documentoRecebedor:
          minLength: 1
          type: string
          description: Documento do recebedor.
        nomeRecebedor:
          type: string
          description: Nome do recebedor.
          nullable: true
        telefoneRecebedor:
          type: string
          description: Telefone do recebedor.
          nullable: true
        emailRecebedor:
          type: string
          description: Email do recebedor.
          nullable: true
        logradouro:
          maxLength: 60
          minLength: 2
          type: string
          description: Logradouro.
        numero:
          maxLength: 60
          minLength: 1
          type: string
          description: Número.
        complemento:
          type: string
          description: Complemento.
          nullable: true
        bairro:
          maxLength: 60
          minLength: 2
          type: string
          description: Bairro.
        codigoMunicipio:
          maxLength: 7
          minLength: 7
          type: string
          description: Código do município.
        nomeMunicipio:
          maxLength: 60
          minLength: 2
          type: string
          description: Nome do município.
        uf:
          $ref: "#/components/schemas/UfExtNotaFiscalModelEnum"
        cep:
          type: string
          description: CEP.
          nullable: true
        codigoPais:
          type: string
          description: Código do país.
          nullable: true
        pais:
          type: string
          description: Nome do país.
          nullable: true
      additionalProperties: false
      description: Dados de Endereço de Entrega para Nota Fiscal Eletrônica Automática.
    EnderecoRetiradaNfeAutomaticaInputModel:
      required:
        - bairro
        - codigoMunicipio
        - documentoExpeditor
        - logradouro
        - nomeMunicipio
        - numero
      type: object
      properties:
        tipoDocumentoExpeditor:
          $ref: "#/components/schemas/TipoDocumentoNotaFiscalModelEnum"
        documentoExpeditor:
          minLength: 1
          type: string
          description: Documento do Expeditor.
        nomeExpeditor:
          type: string
          description: Nome do Expeditor.
          nullable: true
        telefoneExpeditor:
          type: string
          description: Telefone do Expeditor.
          nullable: true
        emailExpeditor:
          type: string
          description: Email do Expeditor.
          nullable: true
        logradouro:
          maxLength: 60
          minLength: 2
          type: string
          description: Logradouro.
        numero:
          maxLength: 60
          minLength: 1
          type: string
          description: Número.
        complemento:
          type: string
          description: Complemento.
          nullable: true
        bairro:
          maxLength: 60
          minLength: 2
          type: string
          description: Bairro.
        codigoMunicipio:
          maxLength: 7
          minLength: 7
          type: string
          description: Código do município.
        nomeMunicipio:
          maxLength: 60
          minLength: 2
          type: string
          description: Nome do município.
        uf:
          $ref: "#/components/schemas/UfExtNotaFiscalModelEnum"
        cep:
          type: string
          description: CEP.
          nullable: true
        codigoPais:
          type: string
          description: Código do país.
          nullable: true
        pais:
          type: string
          description: Nome do país.
          nullable: true
      additionalProperties: false
      description: Dados do endereço de retirada da NFe Automática.
    NfeAuxXmlInputModel:
      required:
        - documento
      type: object
      properties:
        tipoDocumento:
          $ref: "#/components/schemas/TipoDocumentoNotaFiscalModelEnum"
        documento:
          minLength: 1
          type: string
          description: Documento autorizado.
      additionalProperties: false
      description: Documentos autorizados a capturar e visualizar a NFe.
    ItemNfeAutomaticaInputModel:
      required:
        - codigoInterno
        - descricao
        - origemMercadoria
        - unidade
      type: object
      properties:
        codigoInterno:
          maxLength: 60
          minLength: 1
          type: string
          description: Código interno do produto ou serviço no ERP.
        ean:
          type: string
          description: EAN do produto.
          nullable: true
        descricao:
          maxLength: 120
          minLength: 2
          type: string
          description: Descrição do produto.
        origemMercadoria:
          $ref: "#/components/schemas/OrigemMercadoriaNotaFiscalModelEnum"
        fabricacaoPropria:
          type: boolean
          description: "Indica se o produto é de fabricação própria. (Default: false)"
          nullable: true
        unidade:
          maxLength: 6
          minLength: 1
          type: string
          description: Unidade comercializada.
        quantidade:
          minimum: 0
          exclusiveMinimum: true
          type: number
          description: Quantidade comercializada.
          format: double
        valorUnitario:
          minimum: 0
          type: number
          description: Valor unitário do item.
          format: double
        valorTotalBruto:
          minimum: 0
          type: number
          description: Valor total bruto.
          format: double
        valorTotalFrete:
          minimum: 0
          type: number
          description: Valor total de frete do item.
          format: double
          nullable: true
        valorTotalSeguro:
          minimum: 0
          type: number
          description: Valor total de seguro do item.
          format: double
          nullable: true
        valorTotalDesconto:
          minimum: 0
          type: number
          description: Valor total de descontos do item.
          format: double
          nullable: true
        valorTotalOutros:
          minimum: 0
          type: number
          description: Valor total de outras despesas do item.
          format: double
          nullable: true
        itemCompoeTotalNota:
          type: boolean
          description: Indicador de item compõe o total da nota.
          nullable: true
        numeroPedidoCompra:
          type: string
          description: Número do pedido de compra.
          nullable: true
        itemPedidoCompra:
          type: integer
          description: Item de pedido de compra.
          format: int32
          nullable: true
        produtoEspecifico:
          $ref: "#/components/schemas/ItemNfeAutomaticaProdutoEspecificoInputModel"
      additionalProperties: false
      description: Dados do item da NFe Automática.
    TransporteNfeAutomaticaInputModel:
      required:
        - modalidadeFrete
      type: object
      properties:
        modalidadeFrete:
          $ref: "#/components/schemas/ModalidadeFreteNotaFiscalModelEnum"
        veiculo:
          $ref: "#/components/schemas/TransporteNfeAutomaticaVeiculoInputModel"
        transportador:
          $ref: "#/components/schemas/TransporteNfeAutomaticaTransportadorInputModel"
        reboques:
          type: array
          items:
            $ref: "#/components/schemas/TransporteNfeAutomaticaReboqueInputModel"
          description: Lista de reboques.
          nullable: true
        volumes:
          type: array
          items:
            $ref: "#/components/schemas/TransporteNfeAutomaticaVolumeInputModel"
          description: Lista de volumes.
          nullable: true
        identificadorVagao:
          type: string
          description: Identificação do vagão.
          nullable: true
        identificadorBalsa:
          type: string
          description: Identificação da balsa.
          nullable: true
      additionalProperties: false
      description: Dados de transporte para NFe.
    TipoOperacaoNotaFiscalModelEnum:
      enum:
        - Entrada
        - Saida
      type: string
      description: Tipo de operação.
    FinalidadeNfeModelEnum:
      enum:
        - Normal
        - Complementar
        - Ajuste
        - Devolucao
      type: string
      description: Finalidade da NFe.
    DestinatarioNfeInputModel:
      required:
        - documento
        - endereco
        - nome
      type: object
      properties:
        tipoDocumento:
          $ref: "#/components/schemas/TipoDocumentoNotaFiscalModelEnum"
        documento:
          minLength: 1
          type: string
          description: Documento do destinatário.
        nome:
          maxLength: 60
          minLength: 2
          type: string
          description: Nome do destinatário.
        endereco:
          $ref: "#/components/schemas/EnderecoDestinatarioNfeInputModel"
        telefone:
          type: string
          description: Telefone do destinatário.
          nullable: true
        indicadorInscricao:
          $ref: "#/components/schemas/IndicadorInscricaoDestinatarioNotaFiscalModelEnum"
        inscricaoEstadual:
          type: string
          description: Inscrição estadual do destinatário.
          nullable: true
        inscricaoSuframa:
          type: string
          description: Inscrição SUFRAMA.
          nullable: true
        inscricaoMunicipal:
          type: string
          description: Inscrição municipal.
          nullable: true
        email:
          type: string
          description: Email do destinatário.
          nullable: true
      additionalProperties: false
      description: Dados do destinatário da NFe.
    EnderecoEntregaNfeInputModel:
      required:
        - bairro
        - codigoMunicipio
        - documentoRecebedor
        - logradouro
        - nomeMunicipio
        - numero
      type: object
      properties:
        tipoDocumentoRecebedor:
          $ref: "#/components/schemas/TipoDocumentoNotaFiscalModelEnum"
        documentoRecebedor:
          minLength: 1
          type: string
          description: Documento do recebedor.
        nomeRecebedor:
          type: string
          description: Nome do recebedor.
          nullable: true
        telefoneRecebedor:
          type: string
          description: Telefone do recebedor.
          nullable: true
        emailRecebedor:
          type: string
          description: Email do recebedor.
          nullable: true
        logradouro:
          maxLength: 60
          minLength: 2
          type: string
          description: Logradouro.
        numero:
          maxLength: 60
          minLength: 1
          type: string
          description: Número.
        complemento:
          type: string
          description: Complemento.
          nullable: true
        bairro:
          maxLength: 60
          minLength: 2
          type: string
          description: Bairro.
        codigoMunicipio:
          maxLength: 7
          minLength: 7
          type: string
          description: Código do município.
        nomeMunicipio:
          maxLength: 60
          minLength: 2
          type: string
          description: Nome do município.
        uf:
          $ref: "#/components/schemas/UfExtNotaFiscalModelEnum"
        cep:
          type: string
          description: CEP.
          nullable: true
        codigoPais:
          type: string
          description: Código do país.
          nullable: true
        pais:
          type: string
          description: Nome do país.
          nullable: true
      additionalProperties: false
      description: Dados de Endereço de Entrega para Nota Fiscal Eletrônica.
    EnderecoRetiradaNfeInputModel:
      required:
        - bairro
        - codigoMunicipio
        - documentoExpeditor
        - logradouro
        - nomeMunicipio
        - numero
      type: object
      properties:
        tipoDocumentoExpeditor:
          $ref: "#/components/schemas/TipoDocumentoNotaFiscalModelEnum"
        documentoExpeditor:
          minLength: 1
          type: string
          description: Documento do Expeditor.
        nomeExpeditor:
          type: string
          description: Nome do Expeditor.
          nullable: true
        telefoneExpeditor:
          type: string
          description: Telefone do Expeditor.
          nullable: true
        emailExpeditor:
          type: string
          description: Email do Expeditor.
          nullable: true
        logradouro:
          maxLength: 60
          minLength: 2
          type: string
          description: Logradouro.
        numero:
          maxLength: 60
          minLength: 1
          type: string
          description: Número.
        complemento:
          type: string
          description: Complemento.
          nullable: true
        bairro:
          maxLength: 60
          minLength: 2
          type: string
          description: Bairro.
        codigoMunicipio:
          maxLength: 7
          minLength: 7
          type: string
          description: Código do município.
        nomeMunicipio:
          maxLength: 60
          minLength: 2
          type: string
          description: Nome do município.
        uf:
          $ref: "#/components/schemas/UfExtNotaFiscalModelEnum"
        cep:
          type: string
          description: CEP.
          nullable: true
        codigoPais:
          type: string
          description: Código do país.
          nullable: true
        pais:
          type: string
          description: Nome do país.
          nullable: true
      additionalProperties: false
      description: Dados do endereço de retirada da NFe.
    ItemNfeInputModel:
      required:
        - cfop
        - codigoInterno
        - descricao
        - impostos
        - ncm
        - unidade
      type: object
      properties:
        tipoItem:
          $ref: "#/components/schemas/TipoItemNotaModelEnum"
        codigoInterno:
          maxLength: 60
          minLength: 1
          type: string
          description: Código interno do produto ou serviço no ERP.
        ean:
          type: string
          description: EAN do produto.
          nullable: true
        descricao:
          maxLength: 120
          minLength: 2
          type: string
          description: Descrição do produto.
        origemMercadoria:
          $ref: "#/components/schemas/OrigemMercadoriaNotaFiscalModelEnum"
        ncm:
          minLength: 1
          pattern: ^\d{8}$
          type: string
          description: NCM do produto. Lista de NCMs válidos em
            api/v1/RecursosAdicionais/Ncm/Listar.
        cest:
          type: string
          description: >-
            Código Especificador da Substituição Tributária (CEST).


            O <strong>CEST</strong> é utilizado para identificar mercadorias e
            bens passíveis de sujeição aos regimes de 

            <strong>substituição tributária</strong> e de antecipação do
            recolhimento do imposto.

            🔍 <strong>DICA DE BUSCA</strong>: Para obter uma lista de códigos
            válidos, utilize o endpoint 

            `api/v1/RecursosAdicionais/Cest/Listar`. Além disso, ao consultar o
            detalhe de um <strong>NCM</strong>, 

            o sistema retornará automaticamente os CESTs associados àquela
            classificação fiscal.
          nullable: true
        nve:
          type: string
          description: Codificação NVE - Nomenclatura de Valor Aduaneiro e Estatística.
            (Opcional)
          nullable: true
        exTipi:
          type: integer
          description: Extensão da TIPI.
          format: int32
          nullable: true
        cfop:
          minLength: 1
          pattern: ^\d{4}$
          type: string
          description: CFOP do item. Lista de CFOPs válidos em
            api/v1/RecursosAdicionais/Cfop/Listar.
        unidade:
          maxLength: 6
          minLength: 1
          type: string
          description: Unidade comercializada.
        quantidade:
          minimum: 0
          exclusiveMinimum: true
          type: number
          description: Quantidade comercializada.
          format: double
        valorUnitario:
          minimum: 0
          type: number
          description: Valor unitário do item.
          format: double
        valorTotalBruto:
          minimum: 0
          type: number
          description: Valor total bruto.
          format: double
        valorTotalFrete:
          minimum: 0
          type: number
          description: Valor total de frete do item.
          format: double
          nullable: true
        valorTotalSeguro:
          minimum: 0
          type: number
          description: Valor total de seguro do item.
          format: double
          nullable: true
        valorTotalDesconto:
          minimum: 0
          type: number
          description: Valor total de descontos do item.
          format: double
          nullable: true
        valorTotalOutros:
          minimum: 0
          type: number
          description: Valor total de outras despesas do item.
          format: double
          nullable: true
        itemCompoeTotalNota:
          type: boolean
          description: Indicador de item compõe o total da nota.
          nullable: true
        numeroPedidoCompra:
          type: string
          description: Número do pedido de compra.
          nullable: true
        itemPedidoCompra:
          type: integer
          description: Item de pedido de compra.
          format: int32
          nullable: true
        impostos:
          $ref: "#/components/schemas/ItemNfeImpostoInputModel"
        impostoDevolvido:
          $ref: "#/components/schemas/ItemNfeImpostoDevolvidoInputModel"
        declaracoesImportacao:
          type: array
          items:
            $ref: "#/components/schemas/ItemNfeDeclaracaoImportacaoInputModel"
          description: Lista de declaração de importação do item.
          nullable: true
        exportacao:
          $ref: "#/components/schemas/ItemNfeExportacaoInputModel"
        produtoEspecifico:
          $ref: "#/components/schemas/ItemNfeProdutoEspecificoInputModel"
      additionalProperties: false
      description: Dados do item da NFe.
    NfeNotasReferenciadasInputModel:
      required:
        - chaveAcesso
      type: object
      properties:
        tipoNotaReferenciada:
          $ref: "#/components/schemas/TipoNotaReferenciadaModelEnum"
        chaveAcesso:
          minLength: 1
          type: string
          description: Chave de acesso da nota referenciada.
      additionalProperties: false
      description: Dados para notas referenciadas na NFe.
    TransporteNfeInputModel:
      required:
        - modalidadeFrete
      type: object
      properties:
        modalidadeFrete:
          $ref: "#/components/schemas/ModalidadeFreteNotaFiscalModelEnum"
        veiculo:
          $ref: "#/components/schemas/TransporteNfeVeiculoInputModel"
        transportador:
          $ref: "#/components/schemas/TransporteNfeTransportadorInputModel"
        reboques:
          type: array
          items:
            $ref: "#/components/schemas/TransporteNfeReboqueInputModel"
          description: Lista de reboques.
          nullable: true
        volumes:
          type: array
          items:
            $ref: "#/components/schemas/TransporteNfeVolumeInputModel"
          description: Lista de volumes.
          nullable: true
        identificadorVagao:
          type: string
          description: Identificação do vagão.
          nullable: true
        identificadorBalsa:
          type: string
          description: Identificação da balsa.
          nullable: true
      additionalProperties: false
      description: Dados de transporte para NFe.
    CobrancaNfeInputModel:
      required:
        - numeroFatura
        - valorBrutoFatura
        - valorDescontoFatura
        - valorLiquidoFatura
      type: object
      properties:
        numeroFatura:
          maxLength: 60
          minLength: 1
          type: string
          description: Número da fatura.
        valorBrutoFatura:
          minimum: 0
          type: number
          description: Valor bruto da fatura.
          format: double
        valorDescontoFatura:
          minimum: 0
          type: number
          description: Valor de desconto da fatura.
          format: double
        valorLiquidoFatura:
          minimum: 0
          type: number
          description: Valor líquido da fatura.
          format: double
        duplicatas:
          type: array
          items:
            $ref: "#/components/schemas/DuplicataNfeInputModel"
          description: Lista de duplicatas da nota fiscal.
          nullable: true
      additionalProperties: false
      description: Dados da cobrança da NFe.
    PagamentosNfeInputModel:
      required:
        - formasDePagamento
      type: object
      properties:
        formasDePagamento:
          type: array
          items:
            $ref: "#/components/schemas/PagamentoDetalheNfeInputModel"
          description: Detalhe das formas de pagamento da NFe.
        valorTroco:
          minimum: 0
          type: number
          description: Valor do troco.
          format: double
      additionalProperties: false
      description: Dados dos pagamentos da NFe.
    ExportacaoNfeInputModel:
      required:
        - localEmbarque
        - ufEmbarque
      type: object
      properties:
        ufEmbarque:
          $ref: "#/components/schemas/UfNotaFiscalModelEnum"
        localEmbarque:
          maxLength: 60
          minLength: 1
          type: string
          description: Descrição do Local de Embarque ou de transposição de fronteira.
        localDespacho:
          type: string
          description: Descrição do local de despacho.
          nullable: true
      additionalProperties: false
      description: Dados de exportação da NFe.
    TipoDocumentoNotaFiscalModelEnum:
      enum:
        - Cpf
        - Cnpj
        - IdEstrangeiro
      type: string
      description: Tipo de documento.
    EnderecoDestinatarioNfeAutomaticaInputModel:
      required:
        - bairro
        - cep
        - codigoMunicipio
        - logradouro
        - nomeMunicipio
        - numero
      type: object
      properties:
        logradouro:
          maxLength: 60
          minLength: 2
          type: string
          description: Logradouro.
        numero:
          maxLength: 60
          minLength: 1
          type: string
          description: Número.
        complemento:
          type: string
          description: Complemento.
          nullable: true
        bairro:
          maxLength: 60
          minLength: 1
          type: string
          description: Bairro.
        codigoMunicipio:
          maxLength: 7
          minLength: 7
          type: string
          description: Código do município.
        nomeMunicipio:
          maxLength: 60
          minLength: 2
          type: string
          description: Nome do município.
        uf:
          $ref: "#/components/schemas/UfExtNotaFiscalModelEnum"
        cep:
          minLength: 1
          type: string
          description: CEP.
        codigoPais:
          type: string
          description: Código do país.
          nullable: true
        pais:
          type: string
          description: Nome do país.
          nullable: true
      additionalProperties: false
      description: Endereço do destinatário da NFe Automática.
    IndicadorInscricaoDestinatarioNotaFiscalModelEnum:
      enum:
        - ContribuinteIcms
        - ContribuinteIsentoIcms
        - NaoContribuinte
      type: string
      description: Indicador de inscrição estadual do destinatário.
    SituacaoEspecialDestinatarioModelEnum:
      enum:
        - Industrial
        - Distribuidor
        - Atacadista
        - ProdutorRural
        - ArmazemGeral
        - OrgaoPublico
      type: string
      description: Situação especial do destinatário da NF-e automática.
    UfExtNotaFiscalModelEnum:
      enum:
        - RO
        - AC
        - AM
        - RR
        - PA
        - AP
        - TO
        - MA
        - PI
        - CE
        - RN
        - PB
        - PE
        - AL
        - SE
        - BA
        - MG
        - ES
        - RJ
        - SP
        - PR
        - SC
        - RS
        - MS
        - MT
        - GO
        - DF
        - EX
      type: string
      description: Lista de Unidades Federativas para Nota Fiscal incluíndo exterior.
    OrigemMercadoriaNotaFiscalModelEnum:
      enum:
        - Nacional
        - EstrangeiraImportacaoDireta
        - EstrangeiraAdquiridaMercadoInterno
        - NacionalConteudoImportacaoEntre40e70
        - NacionalProducaoEmConformidade
        - NacionalConteudoImportacaoMenorQue40
        - EstrangeiraImportacaoDiretaSemSimilarNacional
        - EstrangeiraAdquiridaMercadoInternoSemSimilarNacional
        - NacionalConteudoImportacaoSuperior70
      type: string
      description: Origem da mercadoria.
    ItemNfeAutomaticaProdutoEspecificoInputModel:
      required:
        - tipoProdutoEspecifico
      type: object
      properties:
        tipoProdutoEspecifico:
          $ref: "#/components/schemas/TipoProdutoEspecificoNotaFiscalModelEnum"
      additionalProperties: false
      description: |-
        Modelo abstrato para os <strong>Dados de Produto Específico</strong> do item da nota fiscal.

        O preenchimento dos campos abaixo é condicional ao <strong>TipoProdutoEspecifico</strong> informado.


        *************************************************************************

        <strong>Medicamento:</strong>

        • <strong>TipoProdutoEspecifico</strong>: Medicamento.

        • <strong>CodigoAnvisa</strong> (string): Código de Produto da ANVISA (13 dígitos).

        • <strong>MotivoIsensao</strong> (string): Texto explicativo do motivo da isenção da ANVISA.

        • <strong>ValorPmc</strong> (decimal): Preço Máximo ao Consumidor.

         
        *************************************************************************

        <strong>Dicionário de Enumeradores:</strong>

        • <strong>TipoProdutoEspecificoNotaFiscalModelEnum:</strong>

          Medicamento = Produtos farmacêuticos e medicamentos.
    ModalidadeFreteNotaFiscalModelEnum:
      enum:
        - Cif
        - Fob
        - FretePorContaDeTerceiros
        - TransporteProprioRemetente
        - TransporteProprioDestinatario
        - SemOcorrenciaDeTransporte
      type: string
      description: Modalidade de frete.
    TransporteNfeAutomaticaVeiculoInputModel:
      required:
        - placaVeiculo
        - ufVeiculo
      type: object
      properties:
        placaVeiculo:
          maxLength: 7
          minLength: 1
          type: string
          description: Placa do veículo.
        ufVeiculo:
          $ref: "#/components/schemas/UfNotaFiscalModelEnum"
        rntcVeiculo:
          type: string
          description: RNTC do veículo.
          nullable: true
      additionalProperties: false
      description: Dados do veículo de transporte da NFe.
    TransporteNfeAutomaticaTransportadorInputModel:
      required:
        - uf
      type: object
      properties:
        tipoDocumento:
          $ref: "#/components/schemas/TipoDocumentoNotaFiscalModelEnum"
        documento:
          type: string
          description: Documento do transportador.
          nullable: true
        nome:
          type: string
          description: Nome do transportador.
          nullable: true
        inscricaoEstadual:
          type: string
          description: Inscrição estadual do transportador.
          nullable: true
        enderecoCompleto:
          type: string
          description: Endereço completo do transportador.
          nullable: true
        nomeMunicipio:
          type: string
          description: Nome do município do transportador.
          nullable: true
        uf:
          $ref: "#/components/schemas/UfNotaFiscalModelEnum"
      additionalProperties: false
      description: Dados do transportador da NFe.
    TransporteNfeAutomaticaReboqueInputModel:
      required:
        - placaReboque
        - ufReboque
      type: object
      properties:
        placaReboque:
          maxLength: 7
          minLength: 1
          type: string
          description: Placa do reboque.
        ufReboque:
          $ref: "#/components/schemas/UfNotaFiscalModelEnum"
        rntcReboque:
          type: string
          description: RNTC do reboque.
          nullable: true
      additionalProperties: false
      description: Dados do reboque do transporte da NFe.
    TransporteNfeAutomaticaVolumeInputModel:
      required:
        - especie
        - marca
        - pesoBruto
        - pesoLiquido
        - quantidadeVolumes
      type: object
      properties:
        quantidadeVolumes:
          minimum: 0
          exclusiveMinimum: true
          type: integer
          description: Quantidade de volumes transportados.
          format: int32
        especie:
          maxLength: 60
          minLength: 1
          type: string
          description: Espécie dos volumes transportados.
        marca:
          maxLength: 60
          type: string
          description: Marca dos volumes transportados.
        numeracaoVolumes:
          maxLength: 60
          type: string
          description: Numeração dos volumes transportados.
          nullable: true
        pesoLiquido:
          minimum: 0
          type: number
          description: Peso Líquido (em kg).
          format: double
        pesoBruto:
          minimum: 0
          type: number
          description: Peso Bruto (em kg).
          format: double
        lacres:
          type: array
          items:
            $ref: "#/components/schemas/TransporteNfeAutomaticaLacresInputModel"
          description: Lista de lacres dos volumes transportados.
          nullable: true
      additionalProperties: false
      description: Dados de volume do transporte da NFe.
    EnderecoDestinatarioNfeInputModel:
      required:
        - bairro
        - cep
        - codigoMunicipio
        - logradouro
        - nomeMunicipio
        - numero
      type: object
      properties:
        logradouro:
          maxLength: 60
          minLength: 2
          type: string
          description: Logradouro.
        numero:
          maxLength: 60
          minLength: 1
          type: string
          description: Número.
        complemento:
          type: string
          description: Complemento.
          nullable: true
        bairro:
          maxLength: 60
          minLength: 1
          type: string
          description: Bairro.
        codigoMunicipio:
          maxLength: 7
          minLength: 7
          type: string
          description: Código do município.
        nomeMunicipio:
          maxLength: 60
          minLength: 2
          type: string
          description: Nome do município.
        uf:
          $ref: "#/components/schemas/UfExtNotaFiscalModelEnum"
        cep:
          minLength: 1
          type: string
          description: CEP.
        codigoPais:
          type: string
          description: Código do país.
          nullable: true
        pais:
          type: string
          description: Nome do país.
          nullable: true
      additionalProperties: false
      description: Endereço do destinatário da NFe.
    TipoItemNotaModelEnum:
      enum:
        - Produto
        - Servico
      type: string
      description: Tipo do item da nota.
    ItemNfeImpostoInputModel:
      required:
        - cofins
        - pis
      type: object
      properties:
        icms:
          $ref: "#/components/schemas/ItemNfeTributacaoIcmsInputModel"
        icmssn:
          $ref: "#/components/schemas/ItemNfeTributacaoIcmssnInputModel"
        icmsUfDest:
          $ref: "#/components/schemas/ItemNfeTributacaoIcmsUfDestInputModel"
        issqn:
          $ref: "#/components/schemas/ItemNfeTributacaoIssqnInputModel"
        ipi:
          $ref: "#/components/schemas/ItemNfeTributacaoIpiInputModel"
        pis:
          $ref: "#/components/schemas/ItemNfeTributacaoPisInputModel"
        cofins:
          $ref: "#/components/schemas/ItemNfeTributacaoCofinsInputModel"
        impostoImportacao:
          $ref: "#/components/schemas/ItemNfeImpostoImportacaoInputModel"
        ibsCbs:
          $ref: "#/components/schemas/ItemNfeTributacaoIbsCbsInputModel"
      additionalProperties: false
      description: Dados do imposto do item da nota fiscal.
    ItemNfeImpostoDevolvidoInputModel:
      required:
        - percentualMercadoriaDevolvida
        - valorIpiDevolvido
      type: object
      properties:
        percentualMercadoriaDevolvida:
          maximum: 100
          minimum: 0
          type: number
          description: Percentual de mercadoria devolvida.
          format: double
        valorIpiDevolvido:
          minimum: 0
          type: number
          description: Valor do IPI devolvido.
          format: double
      additionalProperties: false
      description: Dados do imposto devolvido do item da nota fiscal.
    ItemNfeDeclaracaoImportacaoInputModel:
      required:
        - adicoes
        - codigoExportador
        - dataDesembaraco
        - dataRegistro
        - localDesembaraco
        - numeroDi
        - tipoIntermedio
        - tipoViaTransporte
        - ufDesembaraco
        - valorAfrmm
      type: object
      properties:
        numeroDi:
          maxLength: 12
          minLength: 1
          type: string
          description: Número do Documento de Importação (DI, DSI, DIRE, ...).
        dataRegistro:
          type: string
          description: Data de Registro do documento.
          format: date
          example: 2025-03-31
        localDesembaraco:
          maxLength: 60
          minLength: 1
          type: string
          description: Local de desembaraço.
        ufDesembaraco:
          $ref: "#/components/schemas/UfNotaFiscalModelEnum"
        dataDesembaraco:
          type: string
          description: Data do Desembaraço Aduaneiro.
          format: date
          example: 2025-03-31
        tipoViaTransporte:
          $ref: "#/components/schemas/TipoViaTransporteNotaFiscalModelEnum"
        valorAfrmm:
          type: number
          description: Valor da AFRMM - Adicional ao Frete para Renovação da Marinha
            Mercante.
          format: double
        tipoIntermedio:
          $ref: "#/components/schemas/TipoIntermedioImportacaoNotaFiscalModelEnum"
        cnpjEncomendante:
          type: string
          description: CNPJ do adquirente ou do encomendante.
          nullable: true
        ufEncomendante:
          $ref: "#/components/schemas/UfExtNotaFiscalModelEnum"
        codigoExportador:
          maxLength: 60
          minLength: 1
          type: string
          description: Código do Exportador.
        adicoes:
          minItems: 1
          type: array
          items:
            $ref: "#/components/schemas/ItemNfeDeclaracaoImportacaoAdicaoInputModel"
          description: Adições da declaração de importação do item da nota fiscal.
      additionalProperties: false
      description: Informações da declaração de importação do item da nota fiscal.
    ItemNfeExportacaoInputModel:
      required:
        - chaveNotaExportacaoIndireta
        - numeroDrawback
        - numeroRegistroExportacaoIndireta
        - quantidadeExportacaoIndireta
      type: object
      properties:
        numeroDrawback:
          maxLength: 11
          minLength: 1
          type: string
          description: Número do ato concessório de Drawback.
        numeroRegistroExportacaoIndireta:
          maxLength: 12
          minLength: 1
          type: string
          description: Número do Registro de Exportação.
        chaveNotaExportacaoIndireta:
          minLength: 1
          pattern: ^\d{44}$
          type: string
          description: Chave de Acesso da NF-e recebida para exportação.
        quantidadeExportacaoIndireta:
          minimum: 0
          exclusiveMinimum: true
          type: number
          description: Quantidade do item realmente exportado.
          format: double
      additionalProperties: false
      description: Dados de exportação do item da nota fiscal.
    ItemNfeProdutoEspecificoInputModel:
      required:
        - tipoProdutoEspecifico
      type: object
      properties:
        tipoProdutoEspecifico:
          $ref: "#/components/schemas/TipoProdutoEspecificoNotaFiscalModelEnum"
      additionalProperties: false
      description: |-
        Modelo abstrato para os <strong>Dados de Produto Específico</strong> do item da nota fiscal.

        O preenchimento dos campos abaixo é condicional ao <strong>TipoProdutoEspecifico</strong> informado.


        *************************************************************************

        <strong>Medicamento:</strong>

        • <strong>TipoProdutoEspecifico</strong>: Medicamento.

        • <strong>CodigoAnvisa</strong> (string): Código de Produto da ANVISA (13 dígitos).

        • <strong>MotivoIsensao</strong> (string): Texto explicativo do motivo da isenção da ANVISA.

        • <strong>ValorPmc</strong> (decimal): Preço Máximo ao Consumidor.

         
        *************************************************************************

        <strong>Dicionário de Enumeradores:</strong>

        • <strong>TipoProdutoEspecificoNotaFiscalModelEnum:</strong>

          Medicamento = Produtos farmacêuticos e medicamentos.
    TipoNotaReferenciadaModelEnum:
      enum:
        - Nfe
      type: string
      description: Tipo de nota referenciada.
    TransporteNfeVeiculoInputModel:
      required:
        - placaVeiculo
        - ufVeiculo
      type: object
      properties:
        placaVeiculo:
          maxLength: 7
          minLength: 1
          type: string
          description: Placa do veículo.
        ufVeiculo:
          $ref: "#/components/schemas/UfNotaFiscalModelEnum"
        rntcVeiculo:
          type: string
          description: RNTC do veículo.
          nullable: true
      additionalProperties: false
      description: Dados do veículo de transporte da NFe.
    TransporteNfeTransportadorInputModel:
      required:
        - uf
      type: object
      properties:
        tipoDocumento:
          $ref: "#/components/schemas/TipoDocumentoNotaFiscalModelEnum"
        documento:
          type: string
          description: Documento do transportador.
          nullable: true
        nome:
          type: string
          description: Nome do transportador.
          nullable: true
        inscricaoEstadual:
          type: string
          description: Inscrição estadual do transportador.
          nullable: true
        enderecoCompleto:
          type: string
          description: Endereço completo do transportador.
          nullable: true
        nomeMunicipio:
          type: string
          description: Nome do município do transportador.
          nullable: true
        uf:
          $ref: "#/components/schemas/UfNotaFiscalModelEnum"
      additionalProperties: false
      description: Dados do transportador da NFe.
    TransporteNfeReboqueInputModel:
      required:
        - placaReboque
        - ufReboque
      type: object
      properties:
        placaReboque:
          maxLength: 7
          minLength: 1
          type: string
          description: Placa do reboque.
        ufReboque:
          $ref: "#/components/schemas/UfNotaFiscalModelEnum"
        rntcReboque:
          type: string
          description: RNTC do reboque.
          nullable: true
      additionalProperties: false
      description: Dados do reboque do transporte da NFe.
    TransporteNfeVolumeInputModel:
      required:
        - especie
        - marca
        - pesoBruto
        - pesoLiquido
        - quantidadeVolumes
      type: object
      properties:
        quantidadeVolumes:
          minimum: 0
          exclusiveMinimum: true
          type: integer
          description: Quantidade de volumes transportados.
          format: int32
        especie:
          maxLength: 60
          minLength: 1
          type: string
          description: Espécie dos volumes transportados.
        marca:
          maxLength: 60
          type: string
          description: Marca dos volumes transportados.
        numeracaoVolumes:
          maxLength: 60
          type: string
          description: Numeração dos volumes transportados.
          nullable: true
        pesoLiquido:
          minimum: 0
          type: number
          description: Peso Líquido (em kg).
          format: double
        pesoBruto:
          minimum: 0
          type: number
          description: Peso Bruto (em kg).
          format: double
        lacres:
          type: array
          items:
            $ref: "#/components/schemas/TransporteNfeLacresInputModel"
          description: Lista de lacres dos volumes transportados.
          nullable: true
      additionalProperties: false
      description: Dados de volume do transporte da NFe.
    DuplicataNfeInputModel:
      required:
        - dataVencimento
        - numeroParcela
        - valorParcela
      type: object
      properties:
        numeroParcela:
          maxLength: 60
          minLength: 1
          type: string
          description: Número da parcela.
        dataVencimento:
          minLength: 1
          type: string
          description: Data de vencimento.
          format: date-time
        valorParcela:
          minimum: 0
          exclusiveMinimum: true
          type: number
          description: Valor da parcela.
          format: double
      additionalProperties: false
      description: Dados da duplicata da NFe.
    PagamentoDetalheNfeInputModel:
      type: object
      properties:
        formaPagamento:
          $ref: "#/components/schemas/FormasPagamentoNotaFiscalModelEnum"
        valorPagamento:
          minimum: 0
          exclusiveMinimum: true
          type: number
          description: Valor do pagamento.
          format: double
        tipoIntegracaoCartao:
          $ref: "#/components/schemas/TipoIntegracaoPagamentoNotaFiscalModelEnum"
        cnpjOperadorCartao:
          type: string
          description: CNPJ do operador de cartão.
          nullable: true
        bandeiraCartao:
          $ref: "#/components/schemas/BandeiraCartaoNotaFiscalModelEnum"
        numeroAutorizacaoCartao:
          type: string
          description: Número de autorização do cartão.
          nullable: true
      additionalProperties: false
      description: Dados do detalhe dos pagamentos da NFe.
    UfNotaFiscalModelEnum:
      enum:
        - RO
        - AC
        - AM
        - RR
        - PA
        - AP
        - TO
        - MA
        - PI
        - CE
        - RN
        - PB
        - PE
        - AL
        - SE
        - BA
        - MG
        - ES
        - RJ
        - SP
        - PR
        - SC
        - RS
        - MS
        - MT
        - GO
        - DF
      type: string
      description: Lista de Unidades Federativas para Nota Fiscal.
    TipoProdutoEspecificoNotaFiscalModelEnum:
      enum:
        - Medicamento
      type: string
      description: Tipos de produtos específicos para Nota Fiscal.
    TransporteNfeAutomaticaLacresInputModel:
      required:
        - numeroLacre
      type: object
      properties:
        numeroLacre:
          maxLength: 60
          minLength: 1
          type: string
          description: Número do lacre.
      additionalProperties: false
      description: Lacres do transporte da NFe.
    ItemNfeTributacaoIcmsInputModel:
      required:
        - cst
      type: object
      properties:
        cst:
          $ref: "#/components/schemas/CstIcmsNfeModelEnum"
      additionalProperties: false
      description: |-
        Modelo abstrato para a <strong>Tributação de ICMS</strong> da nota fiscal.

        O preenchimento dos campos abaixo é condicional ao <strong>CST</strong> informado.


        *************************************************************************

        <strong>CST 00 - Tributado integralmente:</strong>

        • <strong>Cst</strong>: 00.

        • <strong>ModalidadeBaseIcms</strong> (Enum): Modalidade de determinação da base ICMS.

        • <strong>BaseIcms</strong> (decimal): Valor da base de cálculo do ICMS.

        • <strong>AliquotaIcms</strong> (decimal): Alíquota do imposto ICMS.

        • <strong>ValorIcms</strong> (decimal): Valor do ICMS resultante.

        • <strong>BaseFcp</strong> (decimal): Valor da base de cálculo do FCP.

        • <strong>AliquotaFcp</strong> (decimal): Alíquota do FCP.

        • <strong>ValorFcp</strong> (decimal): Valor do FCP resultante.


        *************************************************************************

        <strong>CST 02 - Monofásica sobre Combustíveis:</strong>

        • <strong>Cst</strong>: 02.

        • <strong>AliquotaQuantidade</strong> (decimal): Alíquota ad rem do imposto (valor por quantidade).

        • <strong>ValorIcms</strong> (decimal): Valor do ICMS monofásico.


        *************************************************************************

        <strong>CST 10 - Tributada com cobrança de ICMS ST:</strong>

        • <strong>Cst</strong>: 10.

        • <strong>ModalidadeBaseIcms</strong> (Enum): Modalidade de determinação da base ICMS.

        • <strong>BaseIcms</strong> (decimal): Base de cálculo do ICMS próprio.

        • <strong>AliquotaIcms</strong> (decimal): Alíquota do ICMS próprio.

        • <strong>ValorIcms</strong> (decimal): Valor do ICMS próprio.

        • <strong>ModalidadeBaseSt</strong> (Enum): Modalidade de determinação da base de ICMS ST.

        • <strong>Mva</strong> (decimal): Percentual da margem de valor adicionado (MVA).

        • <strong>ReducaoBaseSt</strong> (decimal): Percentual de redução de base ICMS ST.

        • <strong>BaseSt</strong> (decimal): Valor da base de cálculo do ICMS ST.

        • <strong>AliquotaSt</strong> (decimal): Alíquota do imposto ICMS ST.

        • <strong>ValorSt</strong> (decimal): Valor do ICMS ST resultante.

        • <strong>BaseFcp</strong> (decimal): Base de cálculo do FCP próprio.

        • <strong>AliquotaFcp</strong> (decimal): Alíquota do FCP próprio.

        • <strong>ValorFcp</strong> (decimal): Valor do FCP próprio.

        • <strong>BaseFcpSt</strong> (decimal): Base de cálculo do FCP retido por ST.

        • <strong>AliquotaFcpSt</strong> (decimal): Alíquota do FCP ST.

        • <strong>ValorFcpSt</strong> (decimal): Valor do FCP ST resultante.


        *************************************************************************

        <strong>CST 15 - Monofásica com retenção sobre Combustíveis:</strong>

        • <strong>Cst</strong>: 15.

        • <strong>AliquotaQuantidade</strong> (decimal): Alíquota ad rem do imposto (própria).

        • <strong>ValorIcms</strong> (decimal): Valor do ICMS próprio.

        • <strong>AliquotaRetencaoQuantidade</strong> (decimal): Alíquota ad rem do imposto retido.

        • <strong>ValorIcmsRetido</strong> (decimal): Valor do ICMS monofásico retido.


        *************************************************************************

        <strong>CST 20 - Tributado com redução de base de cálculo:</strong>

        • <strong>Cst</strong>: 20.

        • <strong>ModalidadeBaseIcms</strong> (Enum): Modalidade de determinação da base ICMS.

        • <strong>BaseIcms</strong> (decimal): Valor da base de cálculo do ICMS.

        • <strong>ReducaoBaseIcms</strong> (decimal): Percentual de redução de base ICMS.

        • <strong>AliquotaIcms</strong> (decimal): Alíquota do imposto ICMS.

        • <strong>ValorIcms</strong> (decimal): Valor do ICMS resultante.

        • <strong>MotivoDesoneracao</strong> (Enum): Motivo da desoneração do ICMS.

        • <strong>ValorIcmsDesonerado</strong> (decimal): Valor do ICMS desonerado.

        • <strong>DesoneracaoDeduzValorItem</strong> (boleano): Indica se a desoneração está deduzindo no valor do item.

        • <strong>CodigoBeneficio</strong> (string): Código de benefício fiscal.

        • <strong>BaseFcp</strong> (decimal): Base de cálculo do FCP.

        • <strong>AliquotaFcp</strong> (decimal): Alíquota do FCP.

        • <strong>ValorFcp</strong> (decimal): Valor do FCP resultante.


        *************************************************************************

        <strong>CST 30 - Isenta/Não Tributada com cobrança de ICMS ST:</strong>

        • <strong>Cst</strong>: 30.

        • <strong>ModalidadeBaseSt</strong> (Enum): Modalidade de determinação da base ICMS ST.

        • <strong>Mva</strong> (decimal): Percentual de MVA ST.

        • <strong>ReducaoBaseSt</strong> (decimal): Percentual de redução de base ST.

        • <strong>BaseSt</strong> (decimal): Valor da base de cálculo do ICMS ST.

        • <strong>AliquotaSt</strong> (decimal): Alíquota do imposto ICMS ST.

        • <strong>ValorSt</strong> (decimal): Valor do ICMS ST resultante.

        • <strong>MotivoDesoneracao</strong> (Enum): Motivo da desoneração do ICMS.

        • <strong>ValorIcmsDesonerado</strong> (decimal): Valor do ICMS desonerado.

        • <strong>DesoneracaoDeduzValorItem</strong> (boleano): Indica se a desoneração está deduzindo no valor do item.

        • <strong>CodigoBeneficio</strong> (string): Código de benefício fiscal.

        • <strong>BaseFcpSt</strong> (decimal): Base de cálculo do FCP ST.

        • <strong>AliquotaFcpSt</strong> (decimal): Alíquota do FCP ST.

        • <strong>ValorFcpSt</strong> (decimal): Valor do FCP ST resultante.


        *************************************************************************

        <strong>CST 40, 41 e 50 - Isenta, Não Tributada ou Suspensão:</strong>

        • <strong>Cst</strong>: (40, 41 ou 50).

        • <strong>MotivoDesoneracao</strong> (Enum): Motivo da desoneração do ICMS. 

        • <strong>ValorIcmsDesonerado</strong> (decimal): Valor do ICMS desonerado.

        • <strong>DesoneracaoDeduzValorItem</strong> (boleano): Indica se a desoneração está deduzindo no valor do item.

        • <strong>CodigoBeneficio</strong> (string): Código de benefício fiscal.


        *************************************************************************

        <strong>CST 51 - Tributação com Diferimento:</strong>

        • <strong>Cst</strong>: 51.

        • <strong>ModalidadeBaseIcms</strong> (Enum): Modalidade de determinação da base ICMS.

        • <strong>BaseIcms</strong> (decimal): Valor da base de cálculo do ICMS.

        • <strong>AliquotaIcms</strong> (decimal): Alíquota do imposto ICMS.

        • <strong>ValorIcmsOperacao</strong> (decimal): Valor do ICMS da operação (sem diferimento).

        • <strong>PercentualDiferimento</strong> (decimal): Percentual do diferimento aplicado.

        • <strong>ValorIcmsDiferido</strong> (decimal): Valor do ICMS diferido.

        • <strong>ValorIcms</strong> (decimal): Valor do ICMS efetivamente devido.

        • <strong>BaseFcp</strong> (decimal): Base de cálculo do FCP.

        • <strong>AliquotaFcp</strong> (decimal): Alíquota do FCP.

        • <strong>ValorFcp</strong> (decimal): Valor do FCP resultante.


        *************************************************************************

        <strong>CST 53 - Monofásica sobre Combustíveis com Diferimento:</strong>

        • <strong>Cst</strong>: 53.

        • <strong>AliquotaQuantidadeDiferida</strong> (decimal): Alíquota ad rem diferida.

        • <strong>ValorIcmsDiferido</strong> (decimal): Valor do ICMS diferido.


        *************************************************************************

        <strong>CST 60 - Cobrado anteriormente por substituição tributária:</strong>

        • <strong>Cst</strong>: 60.

        • <strong>BaseIcmsRetidoAnteriormente</strong> (decimal): Base de ICMS retido anteriormente.

        • <strong>AliquotaRetidoAnteriormente</strong> (decimal): Alíquota de ICMS retido anteriormente.

        • <strong>ValorIcmsProprioSubstituto</strong> (decimal): Valor do ICMS próprio do Substituto.

        • <strong>ValorIcmsRetidoAnteriormente</strong> (decimal): Valor do ICMS retido anteriormente.

        • <strong>BaseFcpRetidoAnteriormente</strong> (decimal): Base de FCP retido anteriormente.

        • <strong>AliquotaFcpRetidoAnteriormente</strong> (decimal): Alíquota de FCP retido anteriormente.

        • <strong>ValorFcpRetidoAnteriormente</strong> (decimal): Valor de FCP retido anteriormente.

        • <strong>BaseEfetivaIcmsRetido</strong> (decimal): Base de ICMS efetivo se ouvesse a cobrança normal de ICMS.

        • <strong>PercentualReducaoBaseEfetivaIcmsRetido</strong> (decimal): Percentual de redução da base de ICMS efetiva se ouvesse a cobrança normal do ICMS.

        • <strong>AliquotaEfetivaIcmsRetido</strong> (decimal): Alíquota de ICMS efetivo se ouvesse a cobrança normal do ICMS.

        • <strong>ValorEfetivoIcmsRetido</strong> (decimal): Valor do ICMS efetivo se ouvesse a cobrança normal de ICMS.


        *************************************************************************

        <strong>CST 61 - Monofásica sobre Combustíveis cobrada anteriormente:</strong>

        • <strong>Cst</strong>: 61.

        • <strong>AliquotaQuantidadeRetida</strong> (decimal): Alíquota ad rem retida anteriormente.

        • <strong>ValorIcmsRetido</strong> (decimal): Valor do ICMS retido anteriormente.


        *************************************************************************

        <strong>CST 70 - Redução de base e cobrança de ICMS ST:</strong>

        • <strong>Cst</strong>: 70.

        • <strong>ModalidadeBaseIcms</strong> (Enum): Modalidade de determinação da base ICMS.

        • <strong>BaseIcms</strong> (decimal): Base de cálculo do ICMS próprio.

        • <strong>ReducaoBaseIcms</strong> (decimal): Percentual de redução de base própria.

        • <strong>AliquotaIcms</strong> (decimal): Alíquota do ICMS próprio.

        • <strong>ValorIcms</strong> (decimal): Valor do ICMS próprio.

        • <strong>MotivoDesoneracao</strong> (Enum): Motivo da desoneração do ICMS.

        • <strong>ValorIcmsDesonerado</strong> (decimal): Valor do ICMS desonerado.

        • <strong>DesoneracaoDeduzValorItem</strong> (boleano): Indica se a desoneração está deduzindo no valor do item.

        • <strong>CodigoBeneficio</strong> (string): Código de benefício fiscal.

        • <strong>ModalidadeBaseSt</strong> (Enum): Modalidade de determinação da base ICMS ST.

        • <strong>Mva</strong> (decimal): Percentual de MVA ST.

        • <strong>ReducaoBaseSt</strong> (decimal): Percentual de redução de base ST.

        • <strong>BaseSt</strong> (decimal): Valor da base de cálculo do ICMS ST.

        • <strong>AliquotaSt</strong> (decimal): Alíquota do imposto ICMS ST.

        • <strong>ValorSt</strong> (decimal): Valor do ICMS ST resultante.

        • <strong>BaseFcp</strong> (decimal): Base de cálculo do FCP próprio.

        • <strong>AliquotaFcp</strong> (decimal): Alíquota do FCP próprio.

        • <strong>ValorFcp</strong> (decimal): Valor do FCP próprio.

        • <strong>BaseFcpSt</strong> (decimal): Base de cálculo do FCP ST.

        • <strong>AliquotaFcpSt</strong> (decimal): Alíquota do FCP ST.

        • <strong>ValorFcpSt</strong> (decimal): Valor do FCP ST resultante.


        *************************************************************************

        <strong>CST 90 - Outros:</strong>

        • <strong>Cst</strong>: 90.

        • <strong>ModalidadeBaseIcms</strong> (Enum): Modalidade de determinação da base ICMS.

        • <strong>BaseIcms</strong> (decimal): Valor da base de cálculo própria.

        • <strong>ReducaoBaseIcms</strong> (decimal): Percentual de redução de base própria.

        • <strong>AliquotaIcms</strong> (decimal): Alíquota do imposto próprio.

        • <strong>ValorIcms</strong> (decimal): Valor do ICMS próprio resultante.

        • <strong>MotivoDesoneracao</strong> (Enum): Motivo da desoneração do ICMS. 

        • <strong>ValorIcmsDesonerado</strong> (decimal): Valor do ICMS desonerado.

        • <strong>ModalidadeBaseSt</strong> (Enum): Modalidade de determinação da base ST.

        • <strong>Mva</strong> (decimal): Percentual de MVA ST.

        • <strong>ReducaoBaseSt</strong> (decimal): Percentual de redução de base ST.

        • <strong>BaseSt</strong> (decimal): Valor da base de cálculo do ICMS ST.

        • <strong>AliquotaSt</strong> (decimal): Alíquota do imposto ICMS ST.

        • <strong>ValorSt</strong> (decimal): Valor do ICMS ST resultante.

        • <strong>BaseFcp</strong> (decimal): Base de cálculo do FCP próprio.

        • <strong>AliquotaFcp</strong> (decimal): Alíquota do FCP próprio.

        • <strong>ValorFcp</strong> (decimal): Valor do FCP próprio.

        • <strong>BaseFcpSt</strong> (decimal): Base de cálculo do FCP ST.

        • <strong>AliquotaFcpSt</strong> (decimal): Alíquota do FCP ST.

        • <strong>ValorFcpSt</strong> (decimal): Valor do FCP ST resultante.

        *************************************************************************


        <strong>Dicionário de Enumeradores:</strong>

        • <strong>ModalidadeBaseIcmsNotaFiscalModelEnum:</strong>

          MargemValorAgregado = Margem Valor Agregado (%).

          PrecoPauta = Pauta (Valor).

          PrecoTabeladoMax = Preço Tabelado Máx. (valor).

          ValorDaOperacao = Valor da operação.


        • <strong>ModalidadeBaseStNotaFiscalModelEnum:</strong>

          PrecoTabeladoMaximoSugerido = Preço tabelado ou máximo sugerido.

          ListaNegativa = Lista Negativa (valor).

          ListaPositiva = Lista Positiva (valor).

          ListaNeutra = Lista Neutra (valor).

          MargemValorAgregado = Margem Valor Agregado (%).

          PrecoPauta = Pauta (valor).


        • <strong>MotivoDesoneracaoNotaFiscalModelEnum:</strong>

          Taxi = Táxi.

          DeficienteFisico = Deficiente físico.

          ProdutorAgropecuario = Produtor agropecuário.

          FrotistaLocadora = Frotista/Locadora.

          DiplomaticoConsular = Diplomático/consular.

          UtilitariosMotocicletasAmazoniaOcidental = Utilitários produzidos na amazônia ocidental.

          SUFRAMA = SUFRAMA.

          VendaOrgaoPublico = Venda a órgãos públicos.

          Outros = Outros.

          DeficienteCondutor = Deficiente condutor.

          DeficienteNaoCondutor = Deficiente não condutor.

          OrgaoDeFomentoDesenvolvimentoAgropecuario = Órgão de fomento e desenvolvimento agropecuário.
    ItemNfeTributacaoIcmssnInputModel:
      required:
        - csosn
      type: object
      properties:
        csosn:
          $ref: "#/components/schemas/CsosnNfeModelEnum"
      additionalProperties: false
      description: |-
        Modelo abstrato para a <strong>Tributação de ICMSSN</strong> (Simples Nacional) da nota fiscal.

        O preenchimento dos campos abaixo é condicional ao <strong>CSOSN</strong> informado.


        *************************************************************************

        <strong>CSOSN 101 - Tributada pelo Simples Nacional com permissão de crédito:</strong>

        • <strong>Csosn</strong>: 101.

        • <strong>AliquotaCreditoSimples</strong> (decimal): Alíquota de crédito do simples nacional.

        • <strong>ValorCreditoSimples</strong> (decimal): Valor de crédito do simples nacional.


        *************************************************************************

        <strong>CSOSN 102 - Tributada pelo Simples Nacional sem permissão de crédito:</strong>

        • <strong>Csosn</strong>: 102.

        • <strong>Nota</strong>: Não exige campos adicionais de valores ou alíquotas.


        *************************************************************************

        <strong>CSOSN 103 - Isento:</strong>

        • <strong>Csosn</strong>: 103.

        • <strong>Nota</strong>: Não exige campos adicionais de valores ou alíquotas.


        *************************************************************************

        <strong>CSOSN 201 - Tributada pelo Simples com permissão de crédito e cobrança de ICMS ST:</strong>

        • <strong>Csosn</strong>: 201.

        • <strong>AliquotaCreditoSimples</strong> (decimal): Alíquota de crédito do simples nacional.

        • <strong>ValorCreditoSimples</strong> (decimal): Valor de crédito do simples nacional.

        • <strong>ModalidadeBaseSt</strong> (Enum): Modalidade de base ICMS ST.

        • <strong>Mva</strong> (decimal): Percentual de MVA.

        • <strong>ReducaoBaseSt</strong> (decimal): Percentual de redução de base ICMS ST.

        • <strong>BaseSt</strong> (decimal): Valor da base de cálculo de ICMS ST.

        • <strong>AliquotaIcmsDeducaoSt</strong> (decimal): Alíquota para dedução do ICMS no cálculo do ICMS ST (Utilizada para calcular o valor a ser deduzido do ICMS ST quando o contribuinte for substituído e tiver direito à dedução).

        • <strong>AliquotaSt</strong> (decimal): Alíquota de ICMS ST.

        • <strong>ValorSt</strong> (decimal): Valor de ICMS ST resultante.

        • <strong>BaseFcpSt</strong> (decimal): Base de cálculo do FCP ST.

        • <strong>AliquotaFcpDeducaoSt</strong> (decimal): Alíquota para dedução do FCP no cálculo do FCP ST (Utilizada para calcular o valor a ser deduzido do FCP ST quando o contribuinte for substituído e tiver direito à dedução).

        • <strong>AliquotaFcpSt</strong> (decimal): Alíquota de FCP ST.

        • <strong>ValorFcpSt</strong> (decimal): Valor de FCP ST resultante.


        *************************************************************************

        <strong>CSOSN 202 - Tributada pelo Simples sem permissão de crédito com cobrança de ST:</strong>

        • <strong>Csosn</strong>: 202.

        • <strong>ModalidadeBaseSt</strong> (Enum): Modalidade de base ICMS ST.

        • <strong>Mva</strong> (decimal): Percentual de MVA.

        • <strong>ReducaoBaseSt</strong> (decimal): Percentual de redução de base ICMS ST.

        • <strong>BaseSt</strong> (decimal): Valor da base de cálculo de ICMS ST.

        • <strong>AliquotaIcmsDeducaoSt</strong> (decimal): Alíquota para dedução do ICMS no cálculo do ICMS ST (Utilizada para calcular o valor a ser deduzido do ICMS ST quando o contribuinte for substituído e tiver direito à dedução).

        • <strong>AliquotaSt</strong> (decimal): Alíquota de ICMS ST.

        • <strong>ValorSt</strong> (decimal): Valor de ICMS ST resultante.

        • <strong>BaseFcpSt</strong> (decimal): Base de cálculo do FCP ST.

        • <strong>AliquotaFcpDeducaoSt</strong> (decimal): Alíquota para dedução do FCP no cálculo do FCP ST (Utilizada para calcular o valor a ser deduzido do FCP ST quando o contribuinte for substituído e tiver direito à dedução).

        • <strong>AliquotaFcpSt</strong> (decimal): Alíquota de FCP ST.

        • <strong>ValorFcpSt</strong> (decimal): Valor de FCP ST resultante.


        *************************************************************************

        <strong>CSOSN 203 - Isento com ST:</strong>

        • <strong>Csosn</strong>: 203.

        • <strong>ModalidadeBaseSt</strong> (Enum): Modalidade de base ICMS ST.

        • <strong>Mva</strong> (decimal): Percentual de MVA.

        • <strong>ReducaoBaseSt</strong> (decimal): Percentual de redução de base ICMS ST.

        • <strong>BaseSt</strong> (decimal): Valor da base de cálculo de ICMS ST.

        • <strong>AliquotaIcmsDeducaoSt</strong> (decimal): Alíquota para dedução do ICMS no cálculo do ICMS ST (Utilizada para calcular o valor a ser deduzido do ICMS ST quando o contribuinte for substituído e tiver direito à dedução).

        • <strong>AliquotaSt</strong> (decimal): Alíquota de ICMS ST.

        • <strong>ValorSt</strong> (decimal): Valor de ICMS ST resultante.

        • <strong>BaseFcpSt</strong> (decimal): Base de cálculo do FCP ST.

        • <strong>AliquotaFcpDeducaoSt</strong> (decimal): Alíquota para dedução do FCP no cálculo do FCP ST (Utilizada para calcular o valor a ser deduzido do FCP ST quando o contribuinte for substituído e tiver direito à dedução).

        • <strong>AliquotaFcpSt</strong> (decimal): Alíquota de FCP ST.

        • <strong>ValorFcpSt</strong> (decimal): Valor de FCP ST resultante.


        *************************************************************************

        <strong>CSOSN 300 - Imune:</strong>

        • <strong>Csosn</strong>: 300.

        • <strong>Nota</strong>: Não exige campos adicionais de valores ou alíquotas.


        *************************************************************************

        <strong>CSOSN 400 - Não Tributada:</strong>

        • <strong>Csosn</strong>: 400.

        • <strong>Nota</strong>: Não exige campos adicionais de valores ou alíquotas.


        *************************************************************************

        <strong>CSOSN 500 - ICMS cobrado anteriormente por substituição tributária:</strong>

        • <strong>Csosn</strong>: 500.

        • <strong>BaseIcmsRetidoAnteriormente</strong> (decimal): Base de ICMS retido anteriormente.

        • <strong>AliquotaConsumidorFinal</strong> (decimal): Alíquota suportada pelo consumidor final.

        • <strong>ValorIcmsSubstituto</strong> (decimal): Valor do ICMS próprio do Substituto.

        • <strong>ValorIcmsRetido</strong> (decimal): Valor do ICMS ST cobrado anteriormente.

        • <strong>BaseFcpRetidoAnteriormente</strong> (decimal): Base do FCP retido anteriormente.

        • <strong>AliquotaFcpRetidoAnteriormente</strong> (decimal): Alíquota de FCP retido anteriormente.

        • <strong>ValorFcpRetidoAnteriormente</strong> (decimal): Valor do FCP retido anteriormente.

        • <strong>BaseEfetivaIcmsRetido</strong> (decimal): Base de ICMS efetivo se ouvesse a cobrança normal de ICMS.

        • <strong>PercentualReducaoBaseEfetivaIcmsRetido</strong> (decimal): Percentual de redução da base de ICMS efetiva se ouvesse a cobrança normal do ICMS.

        • <strong>AliquotaEfetivaIcmsRetido</strong> (decimal): Alíquota de ICMS efetivo se ouvesse a cobrança normal do ICMS.

        • <strong>ValorEfetivoIcmsRetido</strong> (decimal): Valor do ICMS efetivo se ouvesse a cobrança normal de ICMS.


        *************************************************************************

        <strong>CSOSN 900 - Outros:</strong>

        • <strong>Csosn</strong>: 900.

        • <strong>ModalidadeBaseIcms</strong> (Enum): Modalidade de determinação da base ICMS.

        • <strong>BaseIcms</strong> (decimal): Valor da base de cálculo do ICMS.

        • <strong>ReducaoBaseIcms</strong> (decimal): Percentual de redução de base ICMS.

        • <strong>AliquotaIcms</strong> (decimal): Alíquota do imposto ICMS.

        • <strong>ValorIcms</strong> (decimal): Valor do ICMS resultante.

        • <strong>MotivoDesoneracao</strong> (Enum): Motivo da desoneração do ICMS.

        • <strong>ValorIcmsDesonerado</strong> (decimal): Valor do ICMS desonerado.

        • <strong>ModalidadeBaseSt</strong> (Enum): Modalidade de base ICMS ST.

        • <strong>Mva</strong> (decimal): Percentual de MVA ST.

        • <strong>ReducaoBaseSt</strong> (decimal): Percentual de redução de base ICMS ST.

        • <strong>BaseSt</strong> (decimal): Valor da base de cálculo de ICMS ST.

        • <strong>AliquotaIcmsDeducaoSt</strong> (decimal): Alíquota para dedução do ICMS no cálculo do ICMS ST (Utilizada para calcular o valor a ser deduzido do ICMS ST quando o contribuinte for substituído e tiver direito à dedução).

        • <strong>AliquotaSt</strong> (decimal): Alíquota de ICMS ST.

        • <strong>ValorSt</strong> (decimal): Valor de ICMS ST resultante.

        • <strong>BaseFcpSt</strong> (decimal): Base de cálculo do FCP ST.

        • <strong>AliquotaFcpDeducaoSt</strong> (decimal): Alíquota para dedução do FCP no cálculo do FCP ST (Utilizada para calcular o valor a ser deduzido do FCP ST quando o contribuinte for substituído e tiver direito à dedução).

        • <strong>AliquotaFcpSt</strong> (decimal): Alíquota do FCP ST.

        • <strong>ValorFcpSt</strong> (decimal): Valor do FCP ST resultante.

        • <strong>AliquotaCreditoSimples</strong> (decimal): Alíquota de crédito do simples nacional.

        • <strong>ValorCreditoSimples</strong> (decimal): Valor de crédito do simples nacional.


        *************************************************************************

        <strong>Dicionário de Enumeradores:</strong>

        • <strong>ModalidadeBaseIcmsNotaFiscalModelEnum:</strong>

          MargemValorAgregado = Margem Valor Agregado (%).

          PrecoPauta = Pauta (Valor).

          PrecoTabeladoMax = Preço Tabelado Máx. (valor).

          ValorDaOperacao = Valor da operação.


        • <strong>ModalidadeBaseStNotaFiscalModelEnum:</strong>

          PrecoTabeladoMaximoSugerido = Preço tabelado ou máximo sugerido.

          ListaNegativa = Lista Negativa (valor).

          ListaPositiva = Lista Positiva (valor).

          ListaNeutra = Lista Neutra (valor).

          MargemValorAgregado = Margem Valor Agregado (%).

          PrecoPauta = Pauta (valor).
    ItemNfeTributacaoIcmsUfDestInputModel:
      required:
        - aliquotaFcpInternaUfDestino
        - aliquotaInterestadual
        - aliquotaInternaUfDestino
        - baseFcp
        - baseIcms
        - valorFcpUfDestino
        - valorIcmsUfDestino
      type: object
      properties:
        baseIcms:
          minimum: 0
          type: number
          description: Base do ICMS na UF de destino.
          format: double
        aliquotaInternaUfDestino:
          maximum: 100
          minimum: 0
          exclusiveMinimum: true
          type: number
          description: Alíquota de ICMS interna na UF de destino.
          format: double
        aliquotaInterestadual:
          maximum: 100
          minimum: 0
          exclusiveMinimum: true
          type: number
          description: Alíquota interestadual das UFs envolvidas na operação, conforme
            tabela do CONFAZ.
          format: double
        valorIcmsUfDestino:
          minimum: 0
          type: number
          description: Valor do ICMS devido a UF de destino.
          format: double
        baseFcp:
          minimum: 0
          type: number
          description: Base do FCP na UF de destino.
          format: double
        aliquotaFcpInternaUfDestino:
          maximum: 100
          minimum: 0
          type: number
          description: Alíquota de FCP interna na UF de destino.
          format: double
        valorFcpUfDestino:
          minimum: 0
          type: number
          description: Valor do FCP devido a UF de destino.
          format: double
      additionalProperties: false
      description: Informação do ICMS Interestadual destinado a consumidor final em
        outra UF.
    ItemNfeTributacaoIssqnInputModel:
      required:
        - aliquotaIssqn
        - baseIssqn
        - codigoMunicipioFatoGerador
        - indicadorExigibilidade
        - itemListaServico
        - nomeMunicipioFatoGerador
        - valorIssqn
      type: object
      properties:
        baseIssqn:
          minimum: 0
          type: number
          description: Base de ISSQN.
          format: double
        aliquotaIssqn:
          maximum: 100
          minimum: 0
          type: number
          description: Alíquota do ISSQN.
          format: double
        valorIssqn:
          minimum: 0
          type: number
          description: Valor do ISSQN.
          format: double
        codigoMunicipioFatoGerador:
          minLength: 1
          pattern: ^\d{7}$
          type: string
          description: Código do município onde ocorreu o fato gerador.
        nomeMunicipioFatoGerador:
          maxLength: 60
          minLength: 1
          type: string
          description: Nome do município onde ocorreu o fato gerador.
        itemListaServico:
          maxLength: 5
          minLength: 1
          type: string
          description: Código do item na lista fiscal de serviços.
        valorDeducao:
          type: number
          description: Valor dedução para redução da Base de Cálculo.
          format: double
          nullable: true
        valorOutrasRetencoes:
          type: number
          description: Valor de outras retenções.
          format: double
          nullable: true
        valorDescontoCondicional:
          type: number
          description: Valor de desconto condicional.
          format: double
          nullable: true
        valorDescontoIncondicional:
          type: number
          description: Valor de desconto incondicional.
          format: double
          nullable: true
        valorRetencaoIssqn:
          type: number
          description: Valor de retenção do ISSQN.
          format: double
          nullable: true
        indicadorExigibilidade:
          $ref: "#/components/schemas/IndicadorExigibilidadeIssqnModelEnum"
        codigoServicoMunicipio:
          type: string
          description: Código do serviço no município.
          nullable: true
        codigoMunicipioIncidencia:
          type: string
          description: Código do município onde ocorreu a insidência do serviço.
          nullable: true
        nomeMunicipioIncidencia:
          type: string
          description: Nome do município onde ocorreu a insidência do serviço.
          nullable: true
        codigoPaisIncidencia:
          type: string
          description: Código do país onde ocorreu a insidência do serviço.
          nullable: true
        numeroProcesso:
          type: string
          description: Número do processo judicial ou administrativo de suspensão da
            exigibilidade.
          nullable: true
        utilizouIncentivoFiscal:
          type: boolean
          description: Indicador de incentivo Fiscal.
      additionalProperties: false
      description: Dados do ISSQN.
    ItemNfeTributacaoIpiInputModel:
      required:
        - cst
      type: object
      properties:
        cst:
          $ref: "#/components/schemas/CstIpiNfeModelEnum"
        baseIpi:
          minimum: 0
          type: number
          description: Base do IPI.
          format: double
          nullable: true
        aliquotaIpi:
          maximum: 100
          minimum: 0
          type: number
          description: Alíquota do IPI.
          format: double
          nullable: true
        baseQuantidadeIpi:
          minimum: 0
          type: number
          description: Base do IPI pela quantidade.
          format: double
          nullable: true
        aliquotaQuantidadeIpi:
          minimum: 0
          type: number
          description: Valor do IPI pela quantidade.
          format: double
          nullable: true
        valorIpi:
          minimum: 0
          type: number
          description: Valor do IPI.
          format: double
          nullable: true
        cnpjProdutorMercadoria:
          type: string
          description: CNPJ do produtor da mercadoria, quando diferente do
            emitente.Somente para os casos de exportação direta ou indireta.
          nullable: true
        codigoSeloControle:
          type: string
          description: Código do selo de controle IPI.
          nullable: true
        quantidadeSeloControle:
          type: integer
          description: Quantidade do selo de controle.
          format: int32
          nullable: true
        codigoEnquadramentoLegal:
          type: string
          description: Código de enquadramento legal.
          nullable: true
      additionalProperties: false
      description: Dados da tributação IPI do item.
    ItemNfeTributacaoPisInputModel:
      required:
        - cst
      type: object
      properties:
        cst:
          $ref: "#/components/schemas/CstPisCofinsNfeModelEnum"
        basePis:
          minimum: 0
          type: number
          description: Base de cálculo do PIS.
          format: double
          nullable: true
        aliquotaPis:
          maximum: 100
          minimum: 0
          type: number
          description: Alíquota do PIS em percentual.
          format: double
          nullable: true
        baseQuantidadePis:
          minimum: 0
          type: number
          description: Base do pis quando quantidade.
          format: double
          nullable: true
        aliquotaQuantidadePis:
          maximum: 100
          minimum: 0
          type: number
          description: Valor da alíquota do PIS quando quantidade.
          format: double
          nullable: true
        valorPis:
          minimum: 0
          type: number
          description: Valor do PIS.
          format: double
          nullable: true
      additionalProperties: false
      description: Tributação de PIS.
    ItemNfeTributacaoCofinsInputModel:
      required:
        - cst
      type: object
      properties:
        cst:
          $ref: "#/components/schemas/CstPisCofinsNfeModelEnum"
        baseCofins:
          minimum: 0
          type: number
          description: Base de cálculo do Cofins.
          format: double
          nullable: true
        aliquotaCofins:
          maximum: 100
          minimum: 0
          type: number
          description: Alíquota do Cofins em percentual.
          format: double
          nullable: true
        baseQuantidadeCofins:
          minimum: 0
          type: number
          description: Base do Cofins quando quantidade.
          format: double
          nullable: true
        aliquotaQuantidadeCofins:
          maximum: 100
          minimum: 0
          type: number
          description: Valor da alíquota do Cofins quando quantidade.
          format: double
          nullable: true
        valorCofins:
          minimum: 0
          type: number
          description: Valor do Cofins.
          format: double
          nullable: true
      additionalProperties: false
      description: Dados da tributação COFINS.
    ItemNfeImpostoImportacaoInputModel:
      required:
        - baseImpostoImportacao
        - despesaAduaneira
        - valorImpostoImportacao
        - valorIof
      type: object
      properties:
        baseImpostoImportacao:
          minimum: 0
          type: number
          description: Base do imposto de importação.
          format: double
        despesaAduaneira:
          minimum: 0
          type: number
          description: Despesa aduaneira.
          format: double
        valorImpostoImportacao:
          minimum: 0
          type: number
          description: Valor do imposto de importação.
          format: double
        valorIof:
          minimum: 0
          type: number
          description: Valor do IOF.
          format: double
      additionalProperties: false
      description: Dados do imposto de importação.
    ItemNfeTributacaoIbsCbsInputModel:
      required:
        - cClassTrib
        - cst
      type: object
      properties:
        cst:
          $ref: "#/components/schemas/CstIbsCbsNfeModelEnum"
        cClassTrib:
          maxLength: 10
          minLength: 1
          type: string
          description: CClassTrib - Código de Classificação Tributária do IBS e CBS.
        baseIbs:
          type: number
          description: Base IBS e CBS.
          format: double
          nullable: true
        ibsEstadual:
          $ref: "#/components/schemas/ItemNfeTributacaoIbsEstadualInputModel"
        ibsMunicipal:
          $ref: "#/components/schemas/ItemNfeTributacaoIbsMunicipalInputModel"
        cbs:
          $ref: "#/components/schemas/ItemNfeTributacaoCbsInputModel"
      additionalProperties: false
      description: Dados do IBS e CSB na tributação do item da nota fiscal. (Reforma
        Tributária)
    TipoViaTransporteNotaFiscalModelEnum:
      enum:
        - Maritima
        - Fluvial
        - Lacustre
        - Aerea
        - Postal
        - Ferroviaria
        - Rodoviaria
      type: string
      description: Tipo de via de transporte da declaração de importação.
    TipoIntermedioImportacaoNotaFiscalModelEnum:
      enum:
        - ContaPropria
        - ContaOrdem
        - Encomenda
      type: string
      description: Indicador do tipo de intermediador da importação.
    ItemNfeDeclaracaoImportacaoAdicaoInputModel:
      required:
        - codigoFabricante
        - numeroAdicao
        - sequencial
      type: object
      properties:
        numeroAdicao:
          minimum: 0
          exclusiveMinimum: true
          type: integer
          description: Numero da Adição.
          format: int32
        sequencial:
          minimum: 0
          exclusiveMinimum: true
          type: integer
          description: Numero sequencial do item dentro da Adição.
          format: int32
        codigoFabricante:
          maxLength: 60
          minLength: 1
          type: string
          description: Código do fabricante estrangeiro.
        valorDesconto:
          type: number
          description: Valor do desconto do item da DI – Adição.
          format: double
          nullable: true
        numeroDrawback:
          type: string
          description: Número do ato concessório de Drawback.
          nullable: true
      additionalProperties: false
      description: Adições da declaração de importação do item da nota fiscal.
    TransporteNfeLacresInputModel:
      required:
        - numeroLacre
      type: object
      properties:
        numeroLacre:
          maxLength: 60
          minLength: 1
          type: string
          description: Número do lacre.
      additionalProperties: false
      description: Lacres do transporte da NFe.
    FormasPagamentoNotaFiscalModelEnum:
      enum:
        - Dinheiro
        - Cheque
        - CartaoCredito
        - CartaoDebito
        - CreditoLoja
        - ValeAlimentaçao
        - ValeRefeiçao
        - ValePresente
        - ValeCombustivel
        - BoletoBancario
        - DepósitoBancario
        - Pix
        - TransferenciaBancaria
        - ProgramaFidelidade
        - PagamentoInstantaneoPIXEstatico
        - CreditoEmLoja
        - PagamentoEletronicoNaoInformado
        - SemPagamento
        - Outros
      type: string
      description: Formas de pagamento.
    TipoIntegracaoPagamentoNotaFiscalModelEnum:
      enum:
        - Tef
        - Pos
      type: string
      description: Tipo de integração de pagamento.
    BandeiraCartaoNotaFiscalModelEnum:
      enum:
        - Visa
        - Mastercard
        - AmericanExpress
        - Sorocred
        - DinersClub
        - Elo
        - Hipercard
        - Aura
        - Cabal
        - Outros
      type: string
      description: Informações de bandeiras de pagamento.
    CstIcmsNfeModelEnum:
      enum:
        - "00"
        - "02"
        - "10"
        - "15"
        - "20"
        - "30"
        - "40"
        - "41"
        - "50"
        - "51"
        - "53"
        - "60"
        - "61"
        - "70"
        - "90"
      type: string
      description: CST de ICMS para NFe.
    CsosnNfeModelEnum:
      enum:
        - "101"
        - "102"
        - "103"
        - "201"
        - "202"
        - "203"
        - "300"
        - "400"
        - "500"
        - "900"
      type: string
      description: Lista de CSOSN da NFe.
    IndicadorExigibilidadeIssqnModelEnum:
      enum:
        - Exigivel
        - NaoIncidencia
        - Isencao
        - Exportacao
        - Imunidade
        - ExigibilidadeSuspensaDecisaoJudicial
        - ExigibilidadeSuspensaProcessoAdministrativo
      type: string
      description: Indicador de exigibilidade do ISSQN.
    CstIpiNfeModelEnum:
      enum:
        - "00"
        - "01"
        - "02"
        - "03"
        - "04"
        - "05"
        - "49"
        - "50"
        - "51"
        - "52"
        - "53"
        - "54"
        - "55"
        - "99"
      type: string
      description: CST de IPI.
    CstPisCofinsNfeModelEnum:
      enum:
        - "01"
        - "02"
        - "03"
        - "04"
        - "05"
        - "06"
        - "07"
        - 8
        - 9
        - "49"
        - "50"
        - "51"
        - "52"
        - "53"
        - "54"
        - "55"
        - "56"
        - "60"
        - "61"
        - "62"
        - "63"
        - "64"
        - "65"
        - "66"
        - "67"
        - "70"
        - "71"
        - "72"
        - "73"
        - "74"
        - "75"
        - "98"
        - "99"
      type: string
      description: CST de PIS/COFINS para NFe.
    CstIbsCbsNfeModelEnum:
      enum:
        - "000"
        - "200"
        - "400"
        - "410"
        - "510"
        - "515"
        - "550"
        - "620"
        - "800"
        - "810"
        - "811"
        - "820"
      type: string
      description: Enumerador para o Código de Situação Tributária (CST) do IBS e CBS
        para NFe.
    ItemNfeTributacaoIbsEstadualInputModel:
      type: object
      properties:
        aliquotaCheiaIbs:
          maximum: 100
          minimum: 0
          type: number
          description: Alíquota cheia de IBS de competência da UF.
          format: double
          nullable: true
        reducaoAliquotaIbs:
          maximum: 100
          minimum: 0
          type: number
          description: Percentual de redução da alíquota de IBS de competência da UF.
          format: double
          nullable: true
        aliquotaEfetivaIbs:
          maximum: 100
          minimum: 0
          type: number
          description: Alíquota efetiva do IBS de competência da UF.
          format: double
          nullable: true
        valorIbs:
          minimum: 0
          type: number
          description: Valor de IBS de competência da UF.
          format: double
          nullable: true
        percentualDiferimentoIbs:
          maximum: 100
          minimum: 0
          type: number
          description: Alíquota cheia de IBS de competência da UF.
          format: double
          nullable: true
        valorDiferimentoIbs:
          minimum: 0
          type: number
          description: Alíquota cheia de IBS de competência da UF.
          format: double
          nullable: true
      additionalProperties: false
      description: Dados do IBS - Imposto sobre Bens e Serviços na tributação do item
        da nota fiscal de competência da UF.
    ItemNfeTributacaoIbsMunicipalInputModel:
      type: object
      properties:
        aliquotaCheiaIbs:
          maximum: 100
          minimum: 0
          type: number
          description: Alíquota cheia de IBS de competência do município.
          format: double
          nullable: true
        reducaoAliquotaIbs:
          maximum: 100
          minimum: 0
          type: number
          description: Percentual de redução da alíquota de IBS de competência do município.
          format: double
          nullable: true
        aliquotaEfetivaIbs:
          maximum: 100
          minimum: 0
          type: number
          description: Alíquota efetiva do IBS de competência do município.
          format: double
          nullable: true
        valorIbs:
          minimum: 0
          type: number
          description: Valor de IBS de competência do município.
          format: double
          nullable: true
        percentualDiferimentoIbs:
          maximum: 100
          minimum: 0
          type: number
          description: Alíquota cheia de IBS de competência do município.
          format: double
          nullable: true
        valorDiferimentoIbs:
          minimum: 0
          type: number
          description: Alíquota cheia de IBS de competência do município.
          format: double
          nullable: true
      additionalProperties: false
      description: Dados do IBS - Imposto sobre Bens e Serviços na tributação do item
        da nota fiscal de competência do município.
    ItemNfeTributacaoCbsInputModel:
      type: object
      properties:
        aliquotaCheiaCbs:
          minimum: 0
          type: number
          description: Alíquota cheia do CBS.
          format: double
          nullable: true
        reducaoAliquotaCbs:
          maximum: 100
          minimum: 0
          type: number
          description: Percentual de redução da alíquota do CBS.
          format: double
          nullable: true
        aliquotaEfetivaCbs:
          minimum: 0
          type: number
          description: Alíquota efetiva do CBS.
          format: double
          nullable: true
        valorCbs:
          minimum: 0
          type: number
          description: Valor do CBS.
          format: double
          nullable: true
        percentualDiferimentoCbs:
          maximum: 100
          minimum: 0
          type: number
          description: Alíquota cheia de CBS.
          format: double
          nullable: true
        valorDiferimentoCbs:
          minimum: 0
          type: number
          description: Alíquota cheia de CBS.
          format: double
          nullable: true
      additionalProperties: false
      description: Dados do CBS - Contribuição sobre Bens e Serviços na tributação do
        item da nota fiscal.
  securitySchemes:
    BearerAuth:
      type: http
      description: Autenticação via token JWT. Obtenha o token através do endpoint
        /Autenticacao/ObterToken usando Basic Auth. O token expira em 1 hora.
      scheme: bearer
      bearerFormat: JWT
```
