diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml new file mode 100644 index 0000000..a327424 --- /dev/null +++ b/.github/workflows/ci.yml @@ -0,0 +1,30 @@ +name: ci +on: + pull_request: + push: + branches: [main] +permissions: + contents: read +jobs: + build-and-test: + runs-on: ubuntu-latest + strategy: + fail-fast: false + matrix: + # Os pacotes prometem engines node >= 22 no package.json. Testar so no + # 24 deixaria a promessa do 22 sem nenhuma evidencia por tras dela. + node-version: [22, 24] + steps: + - uses: actions/checkout@v4 + - uses: pnpm/action-setup@v4 + - uses: actions/setup-node@v4 + with: + node-version: ${{ matrix.node-version }} + cache: pnpm + - run: pnpm install --frozen-lockfile + - run: pnpm -r build + - run: pnpm -r typecheck + - run: pnpm -r test + # Os testes do detector de drift vivem em scripts/ e nao pertencem a + # nenhum pacote, entao `pnpm -r test` nao os alcanca. + - run: pnpm run test:scripts diff --git a/README.md b/README.md index e40ada7..743fe82 100644 --- a/README.md +++ b/README.md @@ -45,11 +45,22 @@ Cada pacote tem README próprio com exemplos completos. O mock também roda via ## Contrato oficial e drift -Os artefatos oficiais (OAS v0.0.10, manuais, NTs) estão em `vendor/` com SHA-256 pinado em `vendor/MANIFEST.md`. Um workflow semanal compara os contratos hospedados da Calculadora com os vendorados por conteúdo normalizado; divergência vira issue, nunca atualização silenciosa. A Calculadora oficial não é redistribuída (a distribuição não declara licença); use `scripts/download-calculadora.sh`. +Os artefatos oficiais (o OAS da Plataforma, manuais, NTs) estão em `vendor/` com SHA-256 pinado em `vendor/MANIFEST.md`. Um workflow semanal compara quatro alvos com os vendorados: os três contratos hospedados da família Calculadora, por conteúdo normalizado, e o inventário de artefatos da [página do Split Payment no CGIBS](https://www.cgibs.gov.br/split-payment), que é onde o contrato da Plataforma é publicado. Divergência vira issue, nunca atualização silenciosa. A Calculadora oficial não é redistribuída (a distribuição não declara licença); use `scripts/download-calculadora.sh`. A severidade é por alvo: portal e api-split reprovam o run tanto em divergência quanto em indisponibilidade; o piloto sinaliza sem reprovar, porque é infraestrutura de teste com janela até 31/12/2026 e mudar antes do portal é o comportamento esperado dele. -**Limite de cobertura conhecido**: o contrato que gera `@splitbr/client` e `@splitbr/mock` é `vendor/swagger/openapi-v0_0_10.json`, e ele **não** é monitorado por esse workflow. Não existe endpoint público para compará-lo: as URLs candidatas de `api-docs` da plataforma redirecionam para login e o acesso é restrito a PSP homologado. A integridade local dele é garantida de outra forma, pelo hash pinado que `packages/client/scripts/codegen.mjs` confere antes de gerar os tipos; o que não temos é detecção automática de mudança upstream nesse arquivo. Mudanças nele dependem da [rotina semanal de acompanhamento](docs/watch-routine.md). +### O contrato da Plataforma está em v1.1.0; os pacotes ainda geram do v0.0.10 + +Em 24/08/2026 o CGIBS publicou o **OpenAPI v1.1.0** da Plataforma Pública, pareado com o Manual de Integração v1.1.0, e moveu o v0.0.10 para "versões anteriores". A mudança quebra o contrato: + +- as 12 rotas de stream trocaram `{idPsp}/tributos` por `{cnpjRaizPspRecDir}/transacoes`; +- entraram 3 rotas do Mecanismo de Ocorrências (`/api/v1/moc/*`); +- o header `X-JWS-Signature` virou obrigatório nas 43 operações; +- os schemas foram de 57 para 78, com 33 dos 55 comuns alterados. + +O v1.1.0 está vendorado aqui (`vendor/swagger/openapi-v1_1_0.json`), mas **ainda não alimenta o codegen**: `@splitbr/client` e `@splitbr/mock` continuam gerados do v0.0.10 e, portanto, implementam o contrato anterior. Migrar é um major bump nos dois pacotes e tem task própria. Até lá, quem integra a plataforma real deve ler o v1.1.0 como fonte da verdade. + +**Correção de rota, registrada de propósito**: até 04/09/2026 este README afirmava que não existia fonte pública para esse contrato e que por isso ele não era monitorável. Era falso. O CGIBS publica o OAS numa página aberta, sem login e sem mTLS, e o zip de lá é byte-idêntico ao que já estava vendorado. O custo do engano foi medido: o v1.1.0 ficou 11 dias sem detecção. O detector agora observa aquela página como quarto alvo. ## Desenvolvimento @@ -64,7 +75,8 @@ Monorepo pnpm: `pnpm install && pnpm -r build && pnpm -r test` (Node >= 22). Con Engineering notes: -- The official contracts are vendored with a **pinned SHA-256**; a weekly CI diffs the live Calculadora contracts against the vendored copies and **opens an issue on drift** instead of updating silently. Severity is per target: the production endpoints fail the run, the pilot one reports without failing (it is test infrastructure and moving ahead is its job). The spec the packages are generated from has no public endpoint to poll, so it is covered by a pinned-hash check at codegen time rather than by this workflow; that gap is stated above rather than left implied. +- The official contracts are vendored with a **pinned SHA-256**; a weekly CI diffs four targets against the vendored copies and **opens an issue on drift** instead of updating silently: the three live Calculadora contracts, by normalised content, plus the artifact inventory of the [CGIBS Split Payment page](https://www.cgibs.gov.br/split-payment), which is where the Platform contract itself is published. Severity is per target: the production endpoints fail the run, the pilot one reports without failing (it is test infrastructure and moving ahead is its job). +- **The Platform contract moved to v1.1.0 on 2026-08-24; the packages still generate from v0.0.10.** The new spec renames all 12 stream routes (`{idPsp}/tributos` to `{cnpjRaizPspRecDir}/transacoes`), adds 3 Mechanism-of-Occurrences routes, makes the `X-JWS-Signature` header required on all 43 operations, and grows the schema set from 57 to 78. v1.1.0 is vendored here but does not feed codegen yet: migrating is a major bump for both packages and has its own task. Until then, treat v1.1.0 as the source of truth if you integrate the real platform. Until 2026-09-04 this README claimed that spec had no public endpoint and so could not be monitored; that was false, and the error cost 11 days of undetected drift. - Money math is **integer cents only** (BigInt), never floating point, truncated toward zero to match the official rounding. - The interactive [demo](https://mozurok.github.io/splitbr/) computes every figure with the **same published function the SDK ships**, so it doubles as a live validation of the packages. diff --git a/docs/site/base-legal.md b/docs/site/base-legal.md index deb30c0..842b58e 100644 --- a/docs/site/base-legal.md +++ b/docs/site/base-legal.md @@ -70,7 +70,7 @@ Dois fatos de contrato do Manual de Integração ajudam a situar quem entra ness ## O que ainda não foi publicado -A família documental do Split Payment tem 6 manuais. Até jul/2026, o Manual de Integração já está em versão final (v1.0) e o Manual de Operações existe apenas como minuta (jun/2026). Os outros quatro ainda não saíram: os Manuais de Tempos, de Redes, de Segurança e de Onboarding. Acompanhe o [CGIBS](https://www.cgibs.gov.br/) para as próximas publicações. +A família documental do Split Payment tem 6 manuais. Em set/2026, o Manual de Integração está na v1.1.0 (agosto/2026, que substituiu a v1.0 e trouxe o Mecanismo de Ocorrências, os headers padrão com assinatura `X-JWS-Signature` obrigatória e os requisitos de rastreabilidade). O Manual de Operações (jun/2026) e o Manual de Tempos (15/07/2026) circulam como minuta. Faltam três: os Manuais de Redes, de Segurança e de Onboarding. Acompanhe a [página do Split Payment no CGIBS](https://www.cgibs.gov.br/split-payment) para as próximas publicações. ## Para ir além diff --git a/docs/site/estado-regulacao.md b/docs/site/estado-regulacao.md index 1499d77..38323fc 100644 --- a/docs/site/estado-regulacao.md +++ b/docs/site/estado-regulacao.md @@ -4,7 +4,7 @@ title: Estado da regulação # Estado da regulação -Este quadro mostra, em uma olhada, a superfície regulatória atual do Split Payment e da Reforma Tributária do Consumo que o splitbr acompanha: cada artefato oficial, sua versão vigente, a data e a fonte. Última verificação: 20/07/2026. As fontes são checadas toda segunda-feira, e qualquer diferença em relação a este quadro vira registro em [Novidades](/novidades). +Este quadro mostra, em uma olhada, a superfície regulatória atual do Split Payment e da Reforma Tributária do Consumo que o splitbr acompanha: cada artefato oficial, sua versão vigente, a data e a fonte. Última verificação: 04/09/2026. As fontes são checadas toda segunda-feira, e as diferenças encontradas são registradas em [Novidades](/novidades). As siglas do quadro: **IBS** (Imposto sobre Bens e Serviços) e **CBS** (Contribuição sobre Bens e Serviços) são os tributos novos da reforma; **CGIBS** é o Comitê Gestor do IBS; **NT** é Nota Técnica e **IT** é Informe Técnico do Portal NF-e; **PL** é Pacote de Liberação de esquemas XML. @@ -14,32 +14,36 @@ As siglas do quadro: **IBS** (Imposto sobre Bens e Serviços) e **CBS** (Contrib | Artefato | Versão atual | Data | Fonte oficial | |---|---|---|---| -| NT 2025.002 (leiaute NF-e/NFC-e para a Reforma Tributária do Consumo) | v1.50 | 03/06/2026 | [Portal NF-e, Notas Técnicas](https://www.nfe.fazenda.gov.br/portal/listaConteudo.aspx?tipoConteudo=04BIflQt1aY=) | +| NT 2025.002 (leiaute NF-e/NFC-e para a Reforma Tributária do Consumo) | v1.51 | 04/08/2026 | [Portal NF-e, Notas Técnicas](https://www.nfe.fazenda.gov.br/portal/listaConteudo.aspx?tipoConteudo=04BIflQt1aY=) | | IT 2025.002 (Informe Técnico, tabelas de classificação) | v1.60 | 23/06/2026 | [Portal NF-e, Informes Técnicos](https://www.nfe.fazenda.gov.br/portal/listaConteudo.aspx?tipoConteudo=hXzemuyNHW4=) | | NT 2026.004 (CNPJ alfanumérico) | v1.01 | 08/06/2026 | [Portal NF-e, Notas Técnicas](https://www.nfe.fazenda.gov.br/portal/listaConteudo.aspx?tipoConteudo=04BIflQt1aY=) | -| Pacote de Liberação de esquemas XML | PL 010e v1.02 | 10/07/2026 | [Portal NF-e, Esquemas XML](https://www.nfe.fazenda.gov.br/portal/listaConteudo.aspx?tipoConteudo=BMPFMBoln3w=) | +| Pacote de Liberação de esquemas XML | PL 010f v1.04 | 31/08/2026 | [Portal NF-e, Esquemas XML](https://www.nfe.fazenda.gov.br/portal/listaConteudo.aspx?tipoConteudo=BMPFMBoln3w=) | | PL 010d (esquemas para CNPJ alfanumérico) | v1.03 | 10/07/2026 | [Portal NF-e, Esquemas XML](https://www.nfe.fazenda.gov.br/portal/listaConteudo.aspx?tipoConteudo=BMPFMBoln3w=) | | Esquema dos eventos RTC | era da NT 2025.002 v1.30 | atualizado em 2025 | [Portal NF-e, Esquemas XML](https://www.nfe.fazenda.gov.br/portal/listaConteudo.aspx?tipoConteudo=BMPFMBoln3w=) | -| Calculadora de Tributos (componente api-regime-geral) | 1.2.4 | 10/07/2026 (obtenção) | [Endpoint de versão dos dados abertos](https://consumo.tributos.gov.br/servico/calcular-tributos-consumo/api/calculadora/dados-abertos/versao) | -| OpenAPI da Plataforma de Split Payment | OAS 3.1, v0.0.10, 32 rotas | obtido em 19/07/2026 | consumo.tributos.gov.br, menu Manuais (URL exata em confirmação) | -| OpenAPI da Calculadora (produção) | OAS 3.1.0, 36 rotas | capturado em 20/07/2026 | [api-docs no portal](https://consumo.tributos.gov.br/servico/calcular-tributos-consumo/api/api-docs) | -| OpenAPI da Calculadora (piloto RTC) | OAS 3.1.0, 36 rotas | capturado em 20/07/2026 | [api-docs no piloto](https://piloto-cbs.tributos.gov.br/servico/calculadora-consumo/api/api-docs) | +| Calculadora de Tributos (ambiente de produção) | app 1.3.1, banco V0043 | 31/08/2026 | [Endpoint de versão dos dados abertos](https://consumo.tributos.gov.br/servico/calcular-tributos-consumo/api/calculadora/dados-abertos/versao) | +| OpenAPI da Plataforma de Split Payment | OAS 3.1, **v1.1.0**, 35 rotas | 24/08/2026 | [página do Split Payment no CGIBS](https://www.cgibs.gov.br/split-payment) | +| OpenAPI da Calculadora (produção) | OAS 3.1.0, 40 rotas | capturado em 04/09/2026 | [api-docs no portal](https://consumo.tributos.gov.br/servico/calcular-tributos-consumo/api/api-docs) | +| OpenAPI da Calculadora (piloto RTC) | OAS 3.1.0, 40 rotas | capturado em 04/09/2026 | [api-docs no piloto](https://piloto-cbs.tributos.gov.br/servico/calculadora-consumo/api/api-docs) | | OpenAPI do Split Payment Simplificado (api-split) | OAS 3.1.0, 2 rotas | capturado em 20/07/2026 | [api-docs do api-split](https://consumo.tributos.gov.br/servico/calcular-tributos-consumo/api-split/api-docs) | -| Manual de Integração da Plataforma Pública de Split Payment | v1.0 | obtido em 19/07/2026 | consumo.tributos.gov.br, menu Manuais (URL exata em confirmação) | -| Manual de Operações do Split Payment | minuta | jun/2026 | [cgibs.gov.br](https://www.cgibs.gov.br/) (uploads, URL exata em confirmação) | +| Manual de Integração da Plataforma Pública de Split Payment | v1.1.0 | agosto/2026 | [página do Split Payment no CGIBS](https://www.cgibs.gov.br/split-payment) | +| Manual de Operações do Split Payment | minuta | jun/2026 | [página do Split Payment no CGIBS](https://www.cgibs.gov.br/split-payment) | +| Manual de Tempos do Split Payment | minuta | 15/07/2026 | [página do Split Payment no CGIBS](https://www.cgibs.gov.br/split-payment) | +| NT 2026.006 (vinculação NF-e x transação de split payment) | v1.00 | 25/08/2026 | [Portal NF-e, Notas Técnicas](https://www.nfe.fazenda.gov.br/portal/listaConteudo.aspx?tipoConteudo=04BIflQt1aY=) | +| IT 2026.001 (tabela de meios de pagamento) | v1.01 | 25/08/2026 | [Portal NF-e, Informes Técnicos](https://www.nfe.fazenda.gov.br/portal/listaConteudo.aspx?tipoConteudo=hXzemuyNHW4=) | | Resolução CGIBS nº 6/2026 (regulamenta o IBS) | 6/2026 | 30/04/2026 | [PDF na CGIBS](https://www.cgibs.gov.br/upload/arquivos/202604/30084927-res-cgibs-n-6-30-abr-2026-regulamenta-o-ibs.pdf) | +A distribuição offline da Calculadora vendorada no repositório (componente `api-regime-geral` 1.2.4, banco V0039, obtida em 10/07/2026) está atrás da produção desde 31/08/2026. O `@splitbr/client` e o `@splitbr/mock` continuam gerados do OpenAPI **v0.0.10**, não do v1.1.0: a migração é uma quebra de contrato e está em aberto. + ## O que ainda não existe -Em 20/07/2026, estes itens da família Split Payment ainda não foram publicados: +Em 04/09/2026, estes itens da família Split Payment ainda não foram publicados: -- **Manual de Tempos**: não publicado. Esperado em [cgibs.gov.br](https://www.cgibs.gov.br/). - **Manual de Redes**: não publicado. Esperado em [cgibs.gov.br](https://www.cgibs.gov.br/). - **Manual de Segurança**: não publicado. Esperado em [cgibs.gov.br](https://www.cgibs.gov.br/). - **Manual de Onboarding**: não publicado. Esperado em [cgibs.gov.br](https://www.cgibs.gov.br/). - **Percentuais do Split Payment Simplificado**: ainda não definidos. -Além disso, o Manual de Operações existe apenas como minuta (jun/2026). A publicação de qualquer um desses itens muda este quadro. +Além disso, o Manual de Operações (jun/2026) e o Manual de Tempos (15/07/2026) existem apenas como minuta. A publicação de qualquer um desses itens muda este quadro. ## Acompanhe as mudanças diff --git a/docs/site/novidades.md b/docs/site/novidades.md index a9c40bc..6d483cb 100644 --- a/docs/site/novidades.md +++ b/docs/site/novidades.md @@ -15,6 +15,30 @@ Ordem: mais recente primeiro. Semana sem mudança não gera entrada. Registro, em ordem cronológica inversa, das mudanças oficiais que afetam o Split Payment e a Reforma Tributária do Consumo: notas técnicas e informes do Portal NF-e, manuais e resoluções do Comitê Gestor do IBS (CGIBS), publicações da Receita Federal e versões da Calculadora de Tributos. Fontes oficiais verificadas toda segunda-feira às 9h (horário de Brasília); semanas sem mudança não geram entrada. +## 2026-08-31: Calculadora vai para o banco V0043 e sai o Pacote de Liberação 010f + +- O que mudou: o endpoint público de versão da Calculadora passou a responder `versaoApp` 1.3.1 e `versaoDb` V0043, datado de 31/08/2026, com a descrição oficial "Ajustes na vigência das tabelas CLASSIF_NBS_INDOP_LC e INDICADOR_OPERACAO_IBS_CBS". A referência anterior registrada aqui era o componente 1.2.4 com o banco V0039. No mesmo dia, o Portal NF-e publicou o Pacote de Liberação 010f (NT 2025.002 v1.50 e NT 2026.007 v1.00) e moveu o 010e v1.02 para a lista de versões em desuso. +- Impacto: quem roda a Calculadora offline está com as tabelas de vigência de NBS e de indicador de operação atrás da produção e deve reinstalar. Quem valida XML de NF-e ou NFC-e contra esquema precisa migrar do 010e v1.02 para o 010f. +- Fonte: [endpoint de versão da Calculadora](https://consumo.tributos.gov.br/servico/calcular-tributos-consumo/api/calculadora/dados-abertos/versao) e [Esquemas XML no Portal NF-e](https://www.nfe.fazenda.gov.br/portal/listaConteudo.aspx?tipoConteudo=BMPFMBoln3w=) + +## 2026-08-25: NT 2026.006 amarra a NF-e à transação de split payment + +- O que mudou: o Portal NF-e publicou a NT 2026.006 v1.00, que cria o grupo YC na NF-e e NFC-e e o evento 110300, para vincular o documento fiscal à transação financeira sujeita ao split payment. No mesmo dia saiu o IT 2026.001 v1.01, com a tabela de meios de pagamento usada nessa vinculação. Implantação em homologação em 05/10/2026 e em produção em 03/11/2026. +- Impacto: é a peça que faltava entre a camada NF-e e a Plataforma Pública. Sem a vinculação não há como apurar corretamente o débito do fornecedor nem conceder o crédito ao adquirente, então quem emite nota e quem processa pagamento passam a compartilhar um contrato comum. +- Fonte: [Notas Técnicas](https://www.nfe.fazenda.gov.br/portal/listaConteudo.aspx?tipoConteudo=04BIflQt1aY=) e [Informes Técnicos](https://www.nfe.fazenda.gov.br/portal/listaConteudo.aspx?tipoConteudo=hXzemuyNHW4=) no Portal NF-e + +## 2026-08-24: contrato da Plataforma Pública vai para a v1.1.0 e quebra o v0.0.10 + +- O que mudou: o CGIBS publicou o OpenAPI **v1.1.0** da Plataforma Pública de Split Payment junto com o Manual de Integração v1.1.0, e moveu o v0.0.10 para "versões anteriores". A mudança quebra o contrato: as 12 rotas de stream trocaram `{idPsp}/tributos` por `{cnpjRaizPspRecDir}/transacoes`, entraram três rotas do Mecanismo de Ocorrências (`/api/v1/moc/*`), o header `X-JWS-Signature` passou a ser obrigatório nas 43 operações e os schemas foram de 57 para 78, com 33 dos 55 comuns alterados. O manual acrescenta ainda que o Informe de Transação Atualizada perdeu o Pix Automático, que `numCodBarras` ficou fixo em 44 caracteres e que `dtHrRepasse` ganhou prazo-limite de envio. +- Impacto: quem integra a plataforma real precisa migrar. O `@splitbr/client` e o `@splitbr/mock` continuam gerados do v0.0.10 e, portanto, implementam o contrato anterior; o v1.1.0 já está vendorado no repositório, mas a migração é um major bump nos dois pacotes e ainda está em aberto. +- Fonte: [página do Split Payment no CGIBS](https://www.cgibs.gov.br/split-payment) + +## 2026-08-04: NT 2025.002 sai para a v1.51 + +- O que mudou: a NT 2025.002 chegou à versão 1.51, com alteração de regras de validação (entre elas UB13-30, UB13-40, UB18-10, UB22-20 e VC02-30) e mudança no cronograma de implantação da UB12-10. A v1.50, de 03/06/2026, saiu da lista de documentos vigentes. A aprovação veio pelo Ato Técnico Conjunto RFB/CGIBS nº 1, de 31/07/2026, um veículo novo: as notas técnicas de Reforma Tributária passaram a ser formalmente aprovadas por esse tipo de ato. +- Impacto: quem valida NF-e contra as regras da NT precisa conferir a lista de validações alteradas antes das datas de corte de 01/09/2026 e 05/10/2026. +- Fonte: [Notas Técnicas no Portal NF-e](https://www.nfe.fazenda.gov.br/portal/listaConteudo.aspx?tipoConteudo=04BIflQt1aY=) + ## 2026-08-03: piloto da Calculadora converge para a produção; divergência do `cTribNac` acabou - O que mudou: no contrato do piloto, o campo `cTribNac` passou a aceitar só 4 dígitos (`^\d{4}$`), igual ao da produção, e a descrição do campo acompanhou. A divergência registrada aqui em 20/07/2026 deixou de existir, e na direção contrária à esperada: o piloto recuou para o comportamento da produção em vez de antecipar uma mudança dela. O contrato do piloto foi re-capturado e re-pinado no registro do splitbr. diff --git a/docs/site/referencia/client.md b/docs/site/referencia/client.md index 1d1060b..8e5c230 100644 --- a/docs/site/referencia/client.md +++ b/docs/site/referencia/client.md @@ -16,6 +16,8 @@ Esta página é gerada do README do pacote a cada build. **Avisos:** esta biblioteca não é aconselhamento jurídico nem tributário. Não tem afiliação com RFB, CGIBS, Serpro ou Núclea. O comportamento deriva de especificações oficiais públicas (spec v0.0.10, pré-1.0) e pode mudar; confira sempre a fonte primária. +> ⚠️ **O contrato oficial está na v1.1.0; este pacote ainda gera da v0.0.10.** Em 24/08/2026 o CGIBS publicou o OpenAPI v1.1.0 da Plataforma e moveu a v0.0.10 para "versões anteriores". A mudança quebra o contrato: as 12 rotas de stream trocaram `{idPsp}/tributos` por `{cnpjRaizPspRecDir}/transacoes`, entraram 3 rotas do Mecanismo de Ocorrências, o header `X-JWS-Signature` virou obrigatório em todas as operações e os schemas foram de 57 para 78. **Se você integra a plataforma real, leia a [v1.1.0](https://www.cgibs.gov.br/split-payment) como fonte da verdade.** A migração deste pacote é um major bump e está em aberto; acompanhe pelo [repositório](https://github.com/Mozurok/splitbr). + ## O que vem dentro - **Client tipado** para os 32 endpoints da plataforma (todos os arranjos da Etapa 1: boleto, Pix Dinâmico/Automático/Estático, TED, TEF), sobre [openapi-fetch]. diff --git a/docs/site/referencia/mock.md b/docs/site/referencia/mock.md index 7b607aa..d284c39 100644 --- a/docs/site/referencia/mock.md +++ b/docs/site/referencia/mock.md @@ -16,6 +16,8 @@ A plataforma real é restrita a PSPs homologados. Este mock reproduz o contrato > **Aviso**: projeto independente e não oficial. Não é afiliado à RFB, ao Comitê Gestor do IBS, ao Serpro ou à Núclea. A fonte da verdade é o contrato oficial (OAS v0.0.10), embarcado com hash pinado. Quando o contrato mudar, o mock recusa subir com uma cópia adulterada. +> ⚠️ **O contrato oficial está na v1.1.0; este mock ainda reproduz a v0.0.10.** Em 24/08/2026 o CGIBS publicou o OpenAPI v1.1.0 da Plataforma e moveu a v0.0.10 para "versões anteriores": 12 rotas de stream renomeadas (`{idPsp}/tributos` virou `{cnpjRaizPspRecDir}/transacoes`), 3 rotas novas do Mecanismo de Ocorrências, `X-JWS-Signature` obrigatório em todas as operações e o Pix Automático retirado do Informe de Transação Atualizada. O que o mock simula continua fiel à v0.0.10, e serve para aprender o mecanismo; para integrar a plataforma real, leia a [v1.1.0](https://www.cgibs.gov.br/split-payment). A migração é um major bump e está em aberto. + ## Instalação e uso ```bash diff --git a/docs/watch-routine-prompt.md b/docs/watch-routine-prompt.md index 4b6c376..cb8714d 100644 --- a/docs/watch-routine-prompt.md +++ b/docs/watch-routine-prompt.md @@ -1,8 +1,9 @@ # Prompt pronto: checagem manual da vigilância regulatória Complementa `docs/watch-routine.md` (a checklist e a rotina agendada, toda -segunda) e `.github/workflows/drift.yml` (compara só 3 specs OpenAPI da -Calculadora, por conteúdo normalizado, e não cobre o spec que gera os +segunda) e `.github/workflows/drift.yml` (compara os 3 specs OpenAPI da +Calculadora por conteúdo normalizado, mais o inventário de artefatos da página +do Split Payment no CGIBS, que desde 04/09/2026 cobre o contrato que gera os pacotes). Este arquivo existe pra rodar a mesma checagem por conta própria, quando quiser, como camada extra de garantia. Não substitui a rotina agendada, só reduz a chance de uma mudança passar despercebida entre um @@ -24,9 +25,16 @@ LC 214/2025) mudaram desde a última captura vendorada neste repositório. artefato em nt/, manual/, swagger/ e o db da calculadora. 2. Verifique estas fontes, nesta ordem, e compare com a baseline: - - CGIBS: https://www.cgibs.gov.br/ — Manual de Operações saindo de minuta, - novas resoluções, ou qualquer um dos manuais ainda não publicados - (Tempos, Redes, Segurança, Onboarding). + - **CGIBS, página do Split Payment: https://www.cgibs.gov.br/split-payment** + — é AQUI que o OpenAPI da Plataforma e o Manual de Integração são + publicados, sem login. Confira a seção "Versão atual" contra o que está + vendorado. Esta é a fonte de maior consequência da lista: o contrato dela + é o que gera @splitbr/client e @splitbr/mock. Em 2026-08-24 ela publicou + o OAS v1.1.0 e ninguém viu por 11 dias. + - CGIBS, raiz: https://www.cgibs.gov.br/ — novas resoluções (a série já vai + à 17 e só a 6/2026 está vendorada), Manual de Operações ou de Tempos + saindo de minuta, ou qualquer um dos 3 manuais ainda não publicados + (Redes, Segurança, Onboarding). - Notas Técnicas do Portal NF-e: https://www.nfe.fazenda.gov.br/portal/listaConteudo.aspx?tipoConteudo=04BIflQt1aY= — versão de NT 2025.002 mais nova que a da baseline. @@ -63,6 +71,22 @@ LC 214/2025) mudaram desde a última captura vendorada neste repositório. ## Histórico de execuções manuais +- **2026-09-04**: SEIS ACHADOS, um deles grave. O **OpenAPI da Plataforma saiu + do v0.0.10 para o v1.1.0** (publicado em 24/08/2026, pareado com o Manual de + Integração v1.1.0): 12 rotas de stream renomeadas, 3 rotas novas do MOC, + `X-JWS-Signature` obrigatório nas 43 operações e 33 de 55 schemas comuns + alterados. Ficou 11 dias sem detecção porque o detector não olhava a página + do CGIBS, com base numa premissa falsa ("não existe fonte pública") que + estava escrita no código e no README. Também novos: NT 2025.002 v1.51 + (04/08), NT 2026.006 e IT 2026.001 (25/08), PL 010f (31/08) e a Calculadora + de produção em app 1.3.1 / banco V0043 (31/08, contra 1.2.4 / V0039 + vendorado). O Manual de Tempos, que quatro documentos davam como inédito, + está publicado como minuta desde 15/07/2026. Contratos da Calculadora: + portal divergente (issue #6, aberta desde 31/08 sem tratamento) e piloto + divergente; os dois re-vendorados nesta data, os quatro alvos voltaram a + MATCH. Correção de processo: quarto alvo no `drift-check.mjs` sobre o + inventário da página do CGIBS. Aviso de coleta novo: o `api-docs` do piloto + passou a responder desafio anti-bot ao `curl`; o `fetch` do Node passa. - **2026-08-03**: DOIS ACHADOS. NT 2026.001 v1.02b (PAA), publicada em 31/07/2026, e o pacote de esquemas de eventos da NT 2025.002 v1.40 (RTC), publicado em 27/07/2026: nenhum dos dois estava vendorado. Seguem iguais à diff --git a/docs/watch-routine.md b/docs/watch-routine.md index c70a132..2375ebc 100644 --- a/docs/watch-routine.md +++ b/docs/watch-routine.md @@ -7,12 +7,13 @@ Purpose: catch new or revised official Split Payment / RTC artifacts before they 1. CGIBS publications (Manual de Operacoes revisions, resolucoes, the 4 unpublished manuals) - URL: https://www.cgibs.gov.br/ (documents land under `https://www.cgibs.gov.br/upload/arquivos//...`) - - Watch for: Manual de Tempos, Manual de Redes, Manual de Seguranca, Manual de Onboarding (none public as of 2026-07-20); Manual de Operacoes leaving minuta status; new resolucoes. + - **Split Payment page: https://www.cgibs.gov.br/split-payment** — this is where the Platform's OpenAPI and the Manual de Integracao are published, both without login. It is now the fourth `drift-check.mjs` target (pinned inventory in `vendor/cgibs-split-payment-artefatos.json`), but check it by eye too: the detector compares the artifact list, not the contents of a re-uploaded file. + - Watch for: Manual de Redes, Manual de Seguranca, Manual de Onboarding (none public as of 2026-09-04); Manual de Operacoes (minuta jun/2026) and Manual de Tempos (minuta 15/07/2026) leaving minuta status; new resolucoes (the series already runs to at least 17, and only 6/2026 is vendored); new **Ato Tecnico Conjunto RFB/CGIBS**, the instrument that now formally approves RTC notes. 2. Portal NF-e Notas Tecnicas listing (NT/IT revisions) - URL: https://www.nfe.fazenda.gov.br/portal/listaConteudo.aspx?tipoConteudo=04BIflQt1aY= - Schemas sibling page: https://www.nfe.fazenda.gov.br/portal/listaConteudo.aspx?tipoConteudo=BMPFMBoln3w= - - Watch for: NT 2025.002 past v1.50 (03/06/2026, still current as of 2026-08-03); IT 2025.002 past v1.60 (23/06/2026, vendored); NT 2026.001 (PAA, v1.02b published 31/07/2026, NOT yet vendored); new Pacote de Liberacao past 010e v1.02 / 010d v1.03 (both 10/07/2026, vendored); new RTC events schema past the v1.30-era package (a v1.40 events package was published 27/07/2026 and is NOT yet vendored). + - Watch for (state as of 2026-09-04, all vendored unless said otherwise): NT 2025.002 past **v1.51** (04/08/2026); IT 2025.002 past v1.60 (23/06/2026); NT 2026.001 v1.02b (31/07/2026); NT 2026.006 v1.00 (25/08/2026, NF-e to split-payment transaction binding); IT 2026.001 v1.01 (25/08/2026); new Pacote de Liberacao past **010f v1.04** (31/08/2026) and past 010d v1.03 (10/07/2026); RTC events schema v1.40 (27/07/2026). - Access note: these listing pages do an ASP.NET cookie redirect and return HTTP 302 to a plain fetch. Use a browser user-agent plus a cookie jar before concluding a source is down: `curl -sL -c cj.txt -b cj.txt -A "Mozilla/5.0 ..." ""`. The same warning, with the exact command, is in `watch-routine-prompt.md`; treating an empty result as "nothing published" is a recorded past failure of this routine. 3. Receita Federal news (atos conjuntos, manual releases, Calculadora announcements) @@ -22,17 +23,29 @@ Purpose: catch new or revised official Split Payment / RTC artifacts before they 4. Calculadora content-version endpoint (normative DB updates delivered to local installs) - URL: https://consumo.tributos.gov.br/servico/calcular-tributos-consumo/api/calculadora/dados-abertos/versao - Quick check: `curl -s https://consumo.tributos.gov.br/servico/calcular-tributos-consumo/api/calculadora/dados-abertos/versao` - - Watch for: version bump vs the vendored component (api-regime-geral 1.2.4, DB retrieved 2026-07-10); a bump means re-capture specs and re-check the CST x cClassTrib tables. + - Watch for: version bump vs production, which was app **1.3.1-0e46e51f** and DB **V0043** on 2026-08-31. The vendored offline distribution is behind it (component 1.2.4, DB V0039, retrieved 2026-07-10) and re-downloading it is open work. A bump means re-capture specs and re-check the CST x cClassTrib tables. ## On finding something new 1. Capture it: run `capture-references` with the URL (project bmazurok__splitbr) so REFERENCES.md stays the audit trail. 2. If it invalidates a vendored artifact: open or extend a task to re-vendor with a new MANIFEST.md row (never overwrite rows silently). -3. If it is one of the 4 unpublished manuals: that is a headline event; open a dedicated task (auth details, SLAs, and onboarding checklists land there). +3. If it is one of the 3 still-unpublished manuals (Redes, Seguranca, Onboarding): that is a headline event; open a dedicated task (auth details, SLAs, and onboarding checklists land there). ## Trigger mechanism -Decided (D-3, 2026-07-20; repointed at launch, 2026-07-21): the maintainer runs this checklist as a scheduled cloud routine, every Monday 09:00 America/Sao_Paulo, reporting only diffs vs the vendored baseline. The live baseline is the PUBLIC repo itself: the routine clones https://github.com/Mozurok/splitbr (shallow) and reads `vendor/MANIFEST.md` as the source of truth for vendored versions, so the baseline never drifts from what is actually pinned. Anyone can reproduce it manually with this file, or wire their own scheduler: the checklist above is the whole contract. Standing fact outside the MANIFEST: 4 manuais da familia Split Payment ainda nao publicados (Tempos, Redes, Seguranca, Onboarding). +Decided (D-3, 2026-07-20; repointed at launch, 2026-07-21): the maintainer runs this checklist as a scheduled cloud routine, every Monday 09:00 America/Sao_Paulo, reporting only diffs vs the vendored baseline. The live baseline is the PUBLIC repo itself: the routine clones https://github.com/Mozurok/splitbr (shallow) and reads `vendor/MANIFEST.md` as the source of truth for vendored versions, so the baseline never drifts from what is actually pinned. Anyone can reproduce it manually with this file, or wire their own scheduler: the checklist above is the whole contract. Standing fact outside the MANIFEST: 3 manuais da familia Split Payment ainda nao publicados (Redes, Seguranca, Onboarding). O Manual de Tempos saiu como minuta em 15/07/2026 e esta vendorado. + +## Estado da rotina (auditado em 2026-09-04) + +A auditoria de 2026-09-04 respondeu, com evidência, a pergunta que estava em aberto desde agosto: **a rotina não cobria o artefato mais importante do projeto, por causa de uma premissa falsa registrada no próprio código.** + +- O `drift-check.mjs` afirmava, num comentário, que o OAS que gera os pacotes não tinha fonte pública e que por isso não dava para monitorá-lo (o gap D-4). O `README.md` repetia a mesma coisa. Era falso: https://www.cgibs.gov.br/split-payment serve o zip do OAS sem login e sem mTLS, e o arquivo de lá é byte-idêntico ao vendorado desde julho. +- O custo foi medido: o **OpenAPI v1.1.0** saiu em 24/08/2026 e passou **11 dias** sem detecção, junto com o Manual de Integração v1.1.0. Nenhuma das duas publicações apareceu em issue, PR ou entrada de novidades. +- Outros quatro artefatos publicados entre 04/08 e 31/08 também passaram batido: NT 2025.002 v1.51, NT 2026.006, IT 2026.001 e o PL 010f. +- O que já funcionava: o detector automático pegou o drift do contrato de produção da Calculadora e abriu a issue #6 em 31/08/2026. Ela ficou 4 dias sem tratamento, o que é falha de resposta, não de detecção. +- Correção aplicada nesta data: quarto alvo no `drift-check.mjs`, apontado para o inventário de artefatos daquela página, com o inventário pinado em `vendor/cgibs-split-payment-artefatos.json` e 6 testes cobrindo o comportamento. Artefato novo publicado ali agora reprova o run. + +A lição vale além deste caso: **uma limitação declarada em comentário nunca tinha sido verificada**. Ela virou verdade porque foi escrita com confiança, e sobreviveu a várias revisões porque ninguém testa um comentário. Quando um artefato afirma que algo é impossível, o barato é gastar cinco minutos tentando fazer. ## Estado da rotina (auditado em 2026-08-03) diff --git a/package.json b/package.json index a454af4..d1ee811 100644 --- a/package.json +++ b/package.json @@ -7,7 +7,7 @@ }, "scripts": { "build": "pnpm -r build", - "test": "pnpm -r test", + "test": "pnpm -r test && pnpm run test:scripts", "drift-check": "node scripts/drift-check.mjs", "test:scripts": "vitest run scripts/", "site:dev": "pnpm --filter @splitbr/client build && vitepress dev docs/site", diff --git a/packages/client/CHANGELOG.md b/packages/client/CHANGELOG.md index df2dc53..2aa7583 100644 --- a/packages/client/CHANGELOG.md +++ b/packages/client/CHANGELOG.md @@ -1,5 +1,12 @@ # Changelog +## 0.1.1 (2026-09-04) + +Release de vigilância: nenhuma mudança de comportamento ou de API. O que muda é o que o pacote diz sobre si. + +- Aviso no README: o contrato oficial da Plataforma saiu para a **v1.1.0** em 24/08/2026 e este pacote continua gerado da v0.0.10. A v1.1.0 renomeia as 12 rotas de stream (`{idPsp}/tributos` para `{cnpjRaizPspRecDir}/transacoes`), acrescenta 3 rotas do Mecanismo de Ocorrências, torna o header `X-JWS-Signature` obrigatório nas 43 operações e leva os schemas de 57 para 78. Quem integra a plataforma real deve tratar a v1.1.0 como fonte da verdade; a migração deste pacote é um major bump e está em aberto. +- `prepublishOnly` roda build, typecheck e testes antes de publicar. Sem ele, uma publicação a partir de um clone limpo geraria um tarball apontando para um `dist/` inexistente. + ## 0.1.0 (2026-07-21) - Client tipado gerado do OpenAPI oficial v0.0.10 (32 endpoints, hash pinado). diff --git a/packages/client/README.md b/packages/client/README.md index d0e3900..a837e70 100644 --- a/packages/client/README.md +++ b/packages/client/README.md @@ -8,6 +8,8 @@ **Avisos:** esta biblioteca não é aconselhamento jurídico nem tributário. Não tem afiliação com RFB, CGIBS, Serpro ou Núclea. O comportamento deriva de especificações oficiais públicas (spec v0.0.10, pré-1.0) e pode mudar; confira sempre a fonte primária. +> ⚠️ **O contrato oficial está na v1.1.0; este pacote ainda gera da v0.0.10.** Em 24/08/2026 o CGIBS publicou o OpenAPI v1.1.0 da Plataforma e moveu a v0.0.10 para "versões anteriores". A mudança quebra o contrato: as 12 rotas de stream trocaram `{idPsp}/tributos` por `{cnpjRaizPspRecDir}/transacoes`, entraram 3 rotas do Mecanismo de Ocorrências, o header `X-JWS-Signature` virou obrigatório em todas as operações e os schemas foram de 57 para 78. **Se você integra a plataforma real, leia a [v1.1.0](https://www.cgibs.gov.br/split-payment) como fonte da verdade.** A migração deste pacote é um major bump e está em aberto; acompanhe pelo [repositório](https://github.com/Mozurok/splitbr). + ## O que vem dentro - **Client tipado** para os 32 endpoints da plataforma (todos os arranjos da Etapa 1: boleto, Pix Dinâmico/Automático/Estático, TED, TEF), sobre [openapi-fetch]. diff --git a/packages/client/package.json b/packages/client/package.json index 91f87ad..d85ef03 100644 --- a/packages/client/package.json +++ b/packages/client/package.json @@ -1,6 +1,6 @@ { "name": "@splitbr/client", - "version": "0.1.0", + "version": "0.1.1", "description": "Client TypeScript tipado para a Plataforma Publica do Split Payment (IBS/CBS, LC 214/2025)", "license": "MIT", "type": "module", @@ -22,6 +22,7 @@ "CHANGELOG.md" ], "scripts": { + "prepublishOnly": "pnpm run build && pnpm run typecheck && pnpm run test", "build": "tsdown", "test": "vitest run", "typecheck": "tsc -p tsconfig.json", diff --git a/packages/mock/CHANGELOG.md b/packages/mock/CHANGELOG.md index fc09d88..64acc61 100644 --- a/packages/mock/CHANGELOG.md +++ b/packages/mock/CHANGELOG.md @@ -1,5 +1,12 @@ # Changelog +## 0.1.1 (2026-09-04) + +Release de vigilância: nenhuma mudança de comportamento, de rotas ou de dados. O que muda é o que o pacote diz sobre si. + +- Aviso no README: o contrato oficial da Plataforma saiu para a **v1.1.0** em 24/08/2026 e este mock continua reproduzindo a v0.0.10. A v1.1.0 renomeia as 12 rotas de stream, acrescenta 3 rotas do Mecanismo de Ocorrências, torna `X-JWS-Signature` obrigatório e retira o Pix Automático do Informe de Transação Atualizada. O mock segue fiel à v0.0.10 e continua servindo para aprender o mecanismo; a migração é um major bump e está em aberto. +- `prepublishOnly` roda build, typecheck e testes antes de publicar. + ## 0.1.0 (2026-07-21) - Mock local da Plataforma Publica do Split Payment (spec oficial OAS v0.0.10, pinado por hash). diff --git a/packages/mock/README.md b/packages/mock/README.md index afcf5a6..8079b8c 100644 --- a/packages/mock/README.md +++ b/packages/mock/README.md @@ -8,6 +8,8 @@ A plataforma real é restrita a PSPs homologados. Este mock reproduz o contrato > **Aviso**: projeto independente e não oficial. Não é afiliado à RFB, ao Comitê Gestor do IBS, ao Serpro ou à Núclea. A fonte da verdade é o contrato oficial (OAS v0.0.10), embarcado com hash pinado. Quando o contrato mudar, o mock recusa subir com uma cópia adulterada. +> ⚠️ **O contrato oficial está na v1.1.0; este mock ainda reproduz a v0.0.10.** Em 24/08/2026 o CGIBS publicou o OpenAPI v1.1.0 da Plataforma e moveu a v0.0.10 para "versões anteriores": 12 rotas de stream renomeadas (`{idPsp}/tributos` virou `{cnpjRaizPspRecDir}/transacoes`), 3 rotas novas do Mecanismo de Ocorrências, `X-JWS-Signature` obrigatório em todas as operações e o Pix Automático retirado do Informe de Transação Atualizada. O que o mock simula continua fiel à v0.0.10, e serve para aprender o mecanismo; para integrar a plataforma real, leia a [v1.1.0](https://www.cgibs.gov.br/split-payment). A migração é um major bump e está em aberto. + ## Instalação e uso ```bash diff --git a/packages/mock/package.json b/packages/mock/package.json index eb0c284..d5eef69 100644 --- a/packages/mock/package.json +++ b/packages/mock/package.json @@ -1,6 +1,6 @@ { "name": "@splitbr/mock", - "version": "0.1.0", + "version": "0.1.1", "description": "Mock local da Plataforma Publica do Split Payment (IBS/CBS, LC 214/2025) para desenvolvimento e testes de PSPs", "license": "MIT", "type": "module", @@ -24,6 +24,7 @@ "CHANGELOG.md" ], "scripts": { + "prepublishOnly": "pnpm run build && pnpm run typecheck && pnpm run test", "build": "tsdown", "test": "vitest run", "typecheck": "tsc -p tsconfig.json" diff --git a/scripts/drift-check.mjs b/scripts/drift-check.mjs index 8e40f74..d12c729 100644 --- a/scripts/drift-check.mjs +++ b/scripts/drift-check.mjs @@ -9,12 +9,20 @@ // 31/12/2026, entao sinaliza sem reprovar. Falha de leitura do arquivo // vendorado e "setup-error": problema nosso, nao drift, e reprova sempre. // -// Cobertura: os tres alvos abaixo NAO alimentam o codegen. O spec que gera -// @splitbr/client e @splitbr/mock e vendor/swagger/openapi-v0_0_10.json, que -// nao tem endpoint publico (as URLs candidatas redirecionam para /login/ e o -// acesso a plataforma e PSP-only), entao nao ha como monitora-lo aqui. A -// integridade local dele e garantida pelo hash pinado em -// packages/client/scripts/codegen.mjs. Gap declarado por D-4. +// Cobertura: os tres primeiros alvos NAO alimentam o codegen. O spec que gera +// @splitbr/client e @splitbr/mock e vendor/swagger/openapi-v0_0_10.json. +// +// Ate 2026-09-04 este comentario afirmava que nao havia fonte publica para ele +// e que por isso nao dava para monitora-lo (o gap D-4). A afirmacao era falsa: +// o CGIBS publica o OAS em https://www.cgibs.gov.br/split-payment, sem login e +// sem mTLS, e o zip de la e byte-identico ao vendorado. O custo de acreditar +// nisso foi medido: o v1.1.0 saiu em 24/08/2026 e passou 11 dias sem deteccao. +// O quarto alvo abaixo fecha o buraco. +// +// Ele nao compara o OAS por conteudo, e sim o INVENTARIO de artefatos da +// pagina, porque o nome de cada arquivo carrega o timestamp de upload +// (202608/24154448-...), entao a URL de um arquivo nunca e alvo estavel. A +// pagina e. Artefato novo publicado ali vira chave a mais no diff. import { readFileSync } from "node:fs"; import { fileURLToPath } from "node:url"; import { dirname, resolve } from "node:path"; @@ -40,8 +48,36 @@ export const TARGETS = [ live: "https://consumo.tributos.gov.br/servico/calcular-tributos-consumo/api-split/api-docs", severity: "fail", }, + { + name: "inventario de artefatos do Split Payment (CGIBS)", + vendored: "vendor/cgibs-split-payment-artefatos.json", + live: "https://www.cgibs.gov.br/split-payment", + severity: "fail", + kind: "inventario-html", + }, ]; +// Servidor gov.br costuma recusar ou desafiar cliente sem user-agent de +// navegador; o do Node basta para tomar 403 ou um HTML de challenge. +export const USER_AGENT = + "Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/126.0 Safari/537.36"; + +// A pagina do CGIBS responde HTML. Extrair os links de /upload/arquivos/ e +// trata-los como um documento JSON deixa a maquinaria de comparacao inteira +// (normalize, canonical, diffSummary) valer para ela sem nenhum caso especial: +// um artefato novo aparece no relatorio como "(so no vivo)", igual a uma chave +// nova de schema. O host e removido para o inventario nao virar drift se o +// CGIBS trocar de dominio ou alternar http/https. +export function extrairInventario(html) { + const artefatos = {}; + const re = /href=["']([^"']*\/upload\/arquivos\/[^"']+)["']/gi; + let m; + while ((m = re.exec(html)) !== null) { + artefatos[m[1].replace(/^https?:\/\/[^/]+/, "")] = true; + } + return { artefatos }; +} + function sortDeep(value) { if (Array.isArray(value)) return value.map(sortDeep); if (value && typeof value === "object") { @@ -57,7 +93,11 @@ function sortDeep(value) { // contrato e continua sendo comparado. export function normalize(doc) { if (!doc || typeof doc !== "object" || Array.isArray(doc)) return sortDeep(doc); - const { servers: _instanciaQueRespondeu, ...semServersNaRaiz } = doc; + // _meta guarda os metadados do arquivo pinado do inventario (de onde veio, + // quando foi capturado). Nao e conteudo do alvo: comparar a data de captura + // daria drift em toda execucao. O prefixo _ existe para nao colidir com uma + // chave real de contrato, que "fonte" ou "capturadoEm" poderiam ser. + const { servers: _instanciaQueRespondeu, _meta: _metadados, ...semServersNaRaiz } = doc; return sortDeep(semServersNaRaiz); } @@ -189,7 +229,13 @@ export async function fetchLive(target, fetchImpl = fetch, opts = {}) { for (let tentativa = 1; tentativa <= tentativas; tentativa += 1) { let res; try { - res = await fetchImpl(target.live, { signal: AbortSignal.timeout(30_000) }); + res = await fetchImpl(target.live, { + signal: AbortSignal.timeout(30_000), + headers: { + "user-agent": USER_AGENT, + accept: target.kind === "inventario-html" ? "text/html" : "application/json", + }, + }); } catch (err) { ultimaFalha = { ok: false, kind: "fetch", error: descreveErroDeRede(err), tentativas: tentativa }; if (tentativa < tentativas) { @@ -210,6 +256,17 @@ export async function fetchLive(target, fetchImpl = fetch, opts = {}) { } try { + if (target.kind === "inventario-html") { + const html = await res.text(); + const doc = extrairInventario(html); + // Zero artefato quase sempre significa pagina de erro ou desafio + // anti-bot devolvido com 200, nao "o CGIBS apagou tudo". Tratar como + // corpo quebrado evita apagar o inventario pinado por causa disso. + if (Object.keys(doc.artefatos).length === 0) { + return { ok: false, kind: "parse", error: `resposta ${res.status} nao lista nenhum artefato (pagina de erro ou desafio anti-bot?)` }; + } + return { ok: true, doc }; + } return { ok: true, doc: await res.json() }; } catch (err) { return { ok: false, kind: "parse", error: `resposta ${res.status} nao e JSON valido: ${err.message}` }; diff --git a/scripts/drift-check.test.mjs b/scripts/drift-check.test.mjs index fc3004a..2cca37a 100644 --- a/scripts/drift-check.test.mjs +++ b/scripts/drift-check.test.mjs @@ -7,6 +7,7 @@ import { fileURLToPath } from "node:url"; import { TARGETS, diffSummary, + extrairInventario, fetchLive, exitCodeFor, normalize, @@ -270,3 +271,76 @@ describe("diffSummary", () => { expect(diffSummary(comSeisDigitos, soQuatroDigitos, 0)).toHaveLength(0); }); }); + +// O quarto alvo existe porque a premissa oposta custou 11 dias de deteccao: o +// OAS v1.1.0 saiu em 24/08/2026 numa pagina publica que ninguem observava. +describe("inventario de artefatos do CGIBS (quarto alvo)", () => { + const CGIBS = { name: "cgibs (teste)", severity: "fail", kind: "inventario-html" }; + const pagina = (hrefs) => + `${hrefs.map((h) => `doc`).join("")}`; + + it("extrai so os links de /upload/arquivos/, sem o host", () => { + const doc = extrairInventario( + pagina([ + "https://www.cgibs.gov.br/upload/arquivos/202608/24154448-openapi-v1-1-0.zip", + "/upload/arquivos/202606/03172158-openapi-v0-0-10.zip", + "/institucional/quem-somos", + ]), + ); + expect(Object.keys(doc.artefatos).sort()).toEqual([ + "/upload/arquivos/202606/03172158-openapi-v0-0-10.zip", + "/upload/arquivos/202608/24154448-openapi-v1-1-0.zip", + ]); + }); + + it("artefato novo na pagina vira drift que reprova, nomeando o arquivo", () => { + const pinado = { artefatos: { "/upload/arquivos/202606/03172158-openapi-v0-0-10.zip": true } }; + const vivo = extrairInventario( + pagina([ + "/upload/arquivos/202606/03172158-openapi-v0-0-10.zip", + "/upload/arquivos/202608/24154448-openapi-v1-1-0.zip", + ]), + ); + const v = verdictFor(CGIBS, pinado, reachable(vivo)); + expect(v.status).toBe("drift"); + expect(exitCodeFor([v])).not.toBe(0); + expect(v.changed.join(" ")).toContain("24154448-openapi-v1-1-0.zip"); + }); + + it("a data de captura do arquivo pinado nao conta como conteudo", () => { + const pinado = { + _meta: { + descricao: "inventario", + fonte: "https://www.cgibs.gov.br/split-payment", + capturadoEm: "2026-09-04", + }, + artefatos: { "/upload/arquivos/202606/x.zip": true }, + }; + const vivo = { artefatos: { "/upload/arquivos/202606/x.zip": true } }; + expect(verdictFor(CGIBS, pinado, reachable(vivo)).status).toBe("match"); + }); + + it("pagina sem nenhum artefato e corpo quebrado, nao inventario vazio", async () => { + // O desafio anti-bot do gov.br responde 200 com HTML. Aceitar isso como + // sucesso apagaria o inventario pinado inteiro no proximo re-pin. + const fetchImpl = async () => new Response("Acesso negado", { status: 200 }); + const r = await fetchLive({ ...CGIBS, live: "https://exemplo" }, fetchImpl); + expect(r.ok).toBe(false); + expect(r.kind).toBe("parse"); + expect(verdictFor(CGIBS, { artefatos: {} }, r).status).toBe("malformed"); + }); + + it("o alvo esta registrado em TARGETS e reprova o run", () => { + const alvo = TARGETS.find((t) => t.kind === "inventario-html"); + expect(alvo).toBeDefined(); + expect(alvo.severity).toBe("fail"); + expect(alvo.vendored).toBe("vendor/cgibs-split-payment-artefatos.json"); + }); + + it("o inventario pinado no repo bate com o alvo declarado", () => { + const alvo = TARGETS.find((t) => t.kind === "inventario-html"); + const pinado = spec(alvo.vendored); + expect(Object.keys(pinado.artefatos).length).toBeGreaterThan(0); + expect(pinado._meta.fonte).toBe(alvo.live); + }); +}); diff --git a/vendor/MANIFEST.md b/vendor/MANIFEST.md index 6568a66..32b7cd4 100644 --- a/vendor/MANIFEST.md +++ b/vendor/MANIFEST.md @@ -10,17 +10,25 @@ When a file carries more than one row, the row with the latest `Retrieved` date | File | Version | Source | Retrieved | SHA-256 | |---|---|---|---|---| -| swagger/openapi-v0_0_10.json | OAS 3.1, API v0.0.10 | consumo.tributos.gov.br > menu > Manuais [exact URL to be confirmed] | 2026-07-19 | c5f60c849b22149d90ac2e3df6fcbe3ff9b0fb1f0c8b6463622fabb415629e2b | +| swagger/openapi-v0_0_10.json | OAS 3.1, API v0.0.10, 32 paths, 57 schemas (SUPERSEDIDO pelo v1.1.0 em 24/08/2026; ainda e o contrato que gera os pacotes publicados) | https://www.cgibs.gov.br/upload/arquivos/202606/03172158-openapi-v0-0-10.zip (URL confirmada em 2026-09-04: o zip baixa sem login e o JSON dentro dele e byte-identico a este hash; listado em https://www.cgibs.gov.br/split-payment sob "Versoes anteriores") | 2026-07-19 | c5f60c849b22149d90ac2e3df6fcbe3ff9b0fb1f0c8b6463622fabb415629e2b | | swagger/calculadora-openapi.portal.json | OAS 3.1.0, info.version v0, 36 paths | https://consumo.tributos.gov.br/servico/calcular-tributos-consumo/api/api-docs | 2026-07-20 | fc821c94dcfc3efebdddbbe033a0cdaeb0041a210e12111c169af7f452918c36 | | swagger/calculadora-openapi.piloto.json | OAS 3.1.0, info.version v0, 36 paths | https://piloto-cbs.tributos.gov.br/servico/calculadora-consumo/api/api-docs | 2026-07-20 | 7483d0029c985c46da901509977a1f4644e172d27168d4c53421202b468464be | | swagger/calculadora-openapi.piloto.json | OAS 3.1.0, info.version v0, 36 paths (re-vendorado apos o drift da issue #1; PINADO) | https://piloto-cbs.tributos.gov.br/servico/calculadora-consumo/api/api-docs | 2026-08-03 | 1ce6a0cb9a695669f751f9ab76d9068b4e82fbdd9df202d9fc61b58cd4b17ae0 | | swagger/calculadora-openapi.local.json | OAS 3.1.0, info.version v0, 37 paths (component api-regime-geral 1.2.4 via Docker) | http://localhost:18080/api/api-docs (container from calculadora/calculadora.tar.gz) | 2026-07-20 | 957593b74a81109fa66acfe570ab875225e620facf60f13258042220a075cf35 | | swagger/api-split-openapi.portal.json | OAS 3.1.0, info.version v0, 2 paths (Split Payment Simplificado) | https://consumo.tributos.gov.br/servico/calcular-tributos-consumo/api-split/api-docs | 2026-07-20 | 82c95912c1aed19ae77059a0b99afa42eb2f868bb198e9b9a74bf23581c9be42 | | swagger/api-split-openapi.local.json | OAS 3.1.0, info.version v0, 2 paths (api-split-payment-simplificado.jar via Docker, :8081/api) | http://localhost:18081/api/api-docs (container from calculadora/calculadora.tar.gz) | 2026-07-20 | 43ca11b929d01abecf4b249c4351cf56383ce5deaeda025135071bf5f43954d9 | +| swagger/openapi-v1_1_0.json | OAS 3.1, API v1.1.0, 35 paths, 78 schemas (SUBSTITUI o v0.0.10 como contrato corrente da Plataforma; ainda NAO alimenta o codegen) | https://www.cgibs.gov.br/upload/arquivos/202608/24154448-openapi-v1-1-0.zip (listado em https://www.cgibs.gov.br/split-payment sob "Manual de Integracao - Versao atual") | 2026-09-04 | 1a14b04e7e910b31c14913908ae6a8ce050d5b27afc2cee844a44959ee1621e7 | +| swagger/calculadora-openapi.portal.json | OAS 3.1.0, info.version v0, 40 paths, 82 schemas (re-vendorado apos o drift da issue #6; PINADO) | https://consumo.tributos.gov.br/servico/calcular-tributos-consumo/api/api-docs | 2026-09-04 | ac750153380b873185423a55f525748bbb15844ec93b600c6e1a8ae3d3ab58c5 | +| swagger/calculadora-openapi.piloto.json | OAS 3.1.0, info.version v0, 40 paths, 82 schemas (re-vendorado junto com o portal; PINADO) | https://piloto-cbs.tributos.gov.br/servico/calculadora-consumo/api/api-docs | 2026-09-04 | c86c47d3be7bbbe32fe70c69ac5fa3cf5613628b5175ac4455f477774c10aefa | +| cgibs-split-payment-artefatos.json | Inventario dos 6 artefatos linkados na pagina oficial do Split Payment no CGIBS; alvo do quarto check de drift | https://www.cgibs.gov.br/split-payment (derivado: extracao dos links /upload/arquivos/) | 2026-09-04 | 9c101d0def12d2bc0f48e6c4ffa14d2803786dcfd1b613f32dafcc3937977638 | Contract diff note (2026-07-20) **[SUPERSEDIDA em 2026-08-03, veja a nota abaixo; mantida como registro do que era verdade naquela data]**: portal and piloto share the same 36-path set but differ in content: piloto's cTribNac accepts 4 or 6 digits (`^\d{4}$|^\d{6}$`) while portal accepts only 4 (`^\d{4}$`), plus example-formatting differences; per the brief, prefer portal as the stable codegen reference and read piloto as change-anticipation. -Contract diff note (2026-08-03, ATUAL): o piloto **convergiu para o portal**. O `cTribNac` do piloto agora aceita só 4 dígitos (`^\d{4}$`), igual ao portal, e a descrição do campo mudou junto ("4 ou 6 dígitos" virou "4 dígitos"). Ou seja, a divergência descrita na nota de 2026-07-20 deixou de existir, e na direção oposta à esperada: o piloto recuou para o comportamento do portal em vez de anteceder uma mudança dele. Portal e api-split seguem inalterados (verificado ao vivo em 2026-08-03). Uma segunda diferença apareceu no mesmo intervalo: no exemplo `Transferências CBS Example` de `/calculadora/dados-abertos/transferencias-cbs`, o valor deixou de ser um array JSON e virou uma string contendo JSON, e essa string tem vírgula sobrando, então não é JSON válido. É regressão de autoria upstream num exemplo, não mudança de schema, e não afeta geração de código. Detectado pelo workflow semanal (issue #1, run 30274464570). Local (1.2.4) adds `/versao/status` and has further minor diffs vs portal. api-split note: the hosted spec's `servers[0].url` stamps the responding backend instance's port (observed :11088 then :11011 an hour apart), so its byte hash is capture-specific; the local api-split spec is content-identical to the portal one after removing the servers block. +Contract diff note (2026-08-03) **[SUPERSEDIDA em 2026-09-04, veja a nota abaixo; mantida como registro do que era verdade naquela data]**: o piloto **convergiu para o portal**. O `cTribNac` do piloto agora aceita só 4 dígitos (`^\d{4}$`), igual ao portal, e a descrição do campo mudou junto ("4 ou 6 dígitos" virou "4 dígitos"). Ou seja, a divergência descrita na nota de 2026-07-20 deixou de existir, e na direção oposta à esperada: o piloto recuou para o comportamento do portal em vez de anteceder uma mudança dele. Portal e api-split seguem inalterados (verificado ao vivo em 2026-08-03). Uma segunda diferença apareceu no mesmo intervalo: no exemplo `Transferências CBS Example` de `/calculadora/dados-abertos/transferencias-cbs`, o valor deixou de ser um array JSON e virou uma string contendo JSON, e essa string tem vírgula sobrando, então não é JSON válido. É regressão de autoria upstream num exemplo, não mudança de schema, e não afeta geração de código. Detectado pelo workflow semanal (issue #1, run 30274464570). Local (1.2.4) adds `/versao/status` and has further minor diffs vs portal. Nota de hash (vale para portal, piloto e api-split): the hosted spec's `servers[0].url` stamps the responding backend instance's port (observed :11088 then :11011 an hour apart, e :11202 -> :6069 na captura de 2026-09-04), so its byte hash is capture-specific; por isso o `drift-check.mjs` compara conteudo normalizado sem o bloco `servers` da raiz, e nunca hash de bytes; the local api-split spec is content-identical to the portal one after removing the servers block. + +Contract diff note (2026-09-04, ATUAL): **o contrato da Plataforma Publica saiu do v0.0.10 para o v1.1.0**, publicado no CGIBS em 24/08/2026 e pareado com o Manual de Integracao v1.1.0. A mudanca quebra o contrato: as 12 rotas de stream trocaram `{idPsp}/tributos` por `{cnpjRaizPspRecDir}/transacoes`, entraram 3 rotas do Mecanismo de Ocorrencias (`/api/v1/moc/notificacao`, `/api/v1/moc/solicitacao`, `/api/v1/moc/{cnpjRaizPspRecDir}/ocorrencias`), os schemas foram de 57 para 78 com 33 dos 55 compartilhados alterados, e o header `X-JWS-Signature` passou a ser `required: true` nas 43 operacoes. O v1.1.0 esta vendorado aqui como arquivo NOVO e **ainda nao alimenta o codegen**: `@splitbr/client` e `@splitbr/mock` seguem gerados do v0.0.10, e a migracao e um major bump com task propria. Na familia Calculadora, o portal divergiu (issue #6, aberta em 2026-08-31) e foi re-vendorado: 36 -> 40 rotas, com `/calculadora/nfse/local-operacao` trocando o campo unico `localOperacao` por `codigoLocalFornecimento`/`localFornecimento`/`codigoLocalIncidencia`/`localIncidencia`, e `/calculadora/nfse/indicador-operacao` apontando para um schema proprio (`NfseIndicadorOperacaoOutput`). A Calculadora de producao esta em app 1.3.1-0e46e51f e banco V0043 (31/08/2026), contra o 1.2.4 / V0039 da distribuicao offline vendorada em vendor/calculadora/. + +Aviso de coleta (2026-09-04): o `api-docs` do **piloto** passou a responder um desafio anti-bot (F5 Shape/TSPD, HTML com `window["bobcmn"]`) com HTTP 200 no lugar do JSON, ao menos sob requisicoes repetidas. O `curl` toma o desafio; o `fetch` do Node (undici) passa, provavelmente por fingerprint TLS diferente, e foi por ele que a captura saiu. Quem for recapturar a mao pelo curl vai concluir por engano que o piloto esta fora do ar. Um coletor que so olhe o status code trata esse HTML como sucesso; o `drift-check.mjs` cobre isso classificando resposta nao-JSON como `malformed`. ## manual/ @@ -31,11 +39,16 @@ Contract diff note (2026-08-03, ATUAL): o piloto **convergiu para o portal**. O | manual/30145925-minuta-split-payment-manual-de-operacoes.pdf | minuta Jun/2026 | cgibs.gov.br uploads [exact URL to be confirmed] | 2026-07-19 | c6ef3adb63981864a637fbcc1198d2956a6ba44866c8cb4000da7f07ccd59b18 | | manual/30145925-minuta-split-payment-manual-de-operacoes.txt | derived from the PDF above (pdftotext -layout) | local extraction | 2026-07-20 | 1463d1def6f45a732e9602e0371c8f97c8cdff0bc3b49649c26d82af0ccf925d | | manual/30084927-res-cgibs-n-6-30-abr-2026-regulamenta-o-ibs.pdf | Resolucao CGIBS 6/2026 (30/04/2026) | https://www.cgibs.gov.br/upload/arquivos/202604/30084927-res-cgibs-n-6-30-abr-2026-regulamenta-o-ibs.pdf | 2026-07-19 | 9ed7032ef9c25bbee51bdb5e90f60e1ad01a2bf56cb41a28221c3db7f61d419a | +| manual/manual-de-integracao-plataforma-publica-split-payment-v1.1.0.pdf | v1.1.0 (Agosto/2026; historico interno: 1.0.0 em 03/06/2026, 1.1.0 em 30/07/2026). SUBSTITUI o v1.0 vendorado. Novo: 3.9 Mecanismo de Ocorrencias (MOC), 8. Headers Padrao (X-JWS-Signature), 9. Rastreabilidade | https://www.cgibs.gov.br/upload/arquivos/202608/24154349-20260811-manual-de-integracao-plataforma-publica-split-payment-revisao-fin.pdf | 2026-09-04 | 3ca73ab4af01708ea9a50f074a4d9f96eb0594c4184dcd98714cdd3b45257afc | +| manual/manual-de-integracao-plataforma-publica-split-payment-v1.1.0.txt | derived from the PDF above (pdftotext -layout) | local extraction | 2026-09-04 | b032f9c8b5a2f9853e0d423edae8c63894bb6f5fddb23dbb07eb655fada1bf69 | +| manual/20260715-split-payment-manual-de-tempos-minuta.docx | Manual de Tempos, minuta datada 15/07/2026 (upload 20/07/2026). ANS, janelas operacionais, prazos de repasse D+N, IGA e Mecanismo de Ocorrencias | https://www.cgibs.gov.br/upload/arquivos/202607/20150141-20260715-fin-split-payment-manual-de-tempos-minuta.docx | 2026-09-04 | 1dd0cd65c6fd5805a39c0ba2d929934d290ef115ff27eec05dd07f3d42635cb6 | ## nt/ Captura de 2026-08-03 (D-5 da task drift-detector-hardening): dois artefatos publicados depois da baseline de 2026-07-20 foram vendorados, o pacote de esquemas de eventos RTC da NT 2025.002 v1.40 (27/07/2026) e a NT 2026.001 v1.02b (31/07/2026, PAA). Seguem CURRENT e inalterados desde a baseline: NT 2025.002 v1.50, IT 2025.002 v1.60, PL 010e v1.02, PL 010d v1.03. +Captura de 2026-09-04: quatro artefatos publicados depois da captura de 2026-08-03 foram vendorados: NT 2025.002 v1.51 (04/08/2026, substitui a v1.50), NT 2026.006 v1.00 (25/08/2026, vinculacao NF-e x transacao de split payment, grupo YC e evento 110300), IT 2026.001 v1.01 (25/08/2026, tabela de meios de pagamento) e o Pacote de Liberacao 010f v1.04 (31/08/2026, que empurrou o 010e v1.02 para "em desuso" no portal). Novidade de processo: as NTs e ITs de RTC passaram a ser aprovadas formalmente por **Ato Tecnico Conjunto RFB/CGIBS** (n. 1 de 31/07/2026 e n. 2 de 21/08/2026), um veiculo que a baseline anterior nao conhecia; a Resolucao CGIBS 17 e a que o habilita, e a serie de resolucoes ja vai da 7 a 17 sem estar inventariada aqui. + **Backlog conhecido, deliberadamente NAO vendorado nesta captura** (anterior a baseline, portanto lacuna de cobertura e nao drift; registrado aqui em vez de ficar silencioso): NT 2026.002 v1.00 e NT 2026.003 v1.00 (ambas de 25/05/2026, DANFE Simplificado Tipo 2 e Operacoes, assuntos fora do Split Payment) e o Pacote de Liberacao Distribuicao de DF-e v1.04 (03/07/2026). Vendorar quando algum deles passar a importar para o escopo do projeto. Aviso de coleta: os links `exibirArquivo.aspx?conteudo=` do portal podem conter espaco no token (visto em 2026-08-03: `conteudo=kp0SXLu ZdI=`). Um extrator que corta no primeiro espaco produz URL errada em silencio; codifique o espaco como `%20` ou `%2B` (os dois retornam o mesmo arquivo). O portal tambem exige user-agent de navegador e cookie jar, senao devolve 302. @@ -56,16 +69,20 @@ All downloaded 2026-07-20 directly from the Portal NF-e via `exibirArquivo.aspx? | nt/nt-2025-002-v1.35.pdf | NT 2025.002 v1.35 (31/03/2026) | Portal NF-e NT listing | 2026-07-20 | ce99aac12f51af5ebfaa46565f5bce1de90f852d079ce0f98a367e6badb108d7 | | nt/nt-2025-002-v1.36.pdf | NT 2025.002 v1.36 (30/04/2026) | Portal NF-e NT listing | 2026-07-20 | 5a11a96dccb7ee0cc7c3f71f5b05863b9f2c2a0b77d64ab831381da5bbe317da | | nt/nt-2025-002-v1.40.pdf | NT 2025.002 v1.40 (20/05/2026) | Portal NF-e NT listing | 2026-07-20 | 4af56d5fae5eceaad63bb67f663dad4fd599f5bd9482d5474b419a97710193f0 | -| nt/nt-2025-002-v1.50.pdf | NT 2025.002 v1.50 (03/06/2026, CURRENT) | Portal NF-e NT listing | 2026-07-20 | cfc11a45b6ce9b491c2abf11d01865084b7a9dbcb2904e5414ae16e8e31099e3 | +| nt/nt-2025-002-v1.50.pdf | NT 2025.002 v1.50 (03/06/2026; foi CURRENT ate 04/08/2026, quando saiu a v1.51) | Portal NF-e NT listing | 2026-07-20 | cfc11a45b6ce9b491c2abf11d01865084b7a9dbcb2904e5414ae16e8e31099e3 | | nt/nt-2026-004-v1.01.pdf | NT 2026.004 v1.01 (08/06/2026, alphanumeric CNPJ) | Portal NF-e NT listing | 2026-07-20 | 5f24a25351e790692754b07bbefac42ac67e70167a62a7806395d880f56675be | | nt/it-2025-002-v1.50.pdf | IT 2025.002 v1.50 (15/04/2026) | Portal NF-e Informes Tecnicos listing | 2026-07-20 | d7efc771c2308ba7299e0ed991dfea843afb09d6cc6164213fd6b736c3cb61bd | | nt/it-2025-002-v1.60.pdf | IT 2025.002 v1.60 (23/06/2026, CURRENT) | Portal NF-e Informes Tecnicos listing | 2026-07-20 | 0ee66e7093d7d29909de0e3fb67f2a4ae915e405b528245748715df32a972e17 | | nt/esquemas-pl-010b-nt2025002-v1.30.zip | Pacote de Liberacao 010b (NT 2025.002 v1.30 era) | Portal NF-e Esquemas XML listing | 2026-07-20 | 2deaa8d430d0acb47deae06b9b6d1202dbb436baf3d2d3aa834a534a3d6fa1b8 | | nt/esquemas-pl-010d-v1.03-cnpj-alfanumerico.zip | PL 010d v1.03 (CNPJ alfanumerico, NT 2026.004 v1.01, 10/07/2026) | Portal NF-e Esquemas XML listing | 2026-07-20 | 45ceefe4dfbbfec93958283b650a2f1e1734784f4770d070b9907754de081d9b | -| nt/esquemas-pl-010e-v1.02.zip | PL 010e v1.02 (NT 2025.002 v1.40 plus NT 2026.002/003, 10/07/2026, LATEST) | Portal NF-e Esquemas XML listing | 2026-07-20 | d44ae5aa6a0d1cabf6235d2d2d47b75be5dd87bc6b90a7ec3dcec99c3d41bda1 | +| nt/esquemas-pl-010e-v1.02.zip | PL 010e v1.02 (NT 2025.002 v1.40 plus NT 2026.002/003, 10/07/2026; foi LATEST ate 31/08/2026, quando saiu o 010f) | Portal NF-e Esquemas XML listing | 2026-07-20 | d44ae5aa6a0d1cabf6235d2d2d47b75be5dd87bc6b90a7ec3dcec99c3d41bda1 | | nt/esquemas-eventos-nt2025002-v1.30-rtc.zip | Schema dos eventos RTC (NT 2025.002 v1.30, upd. 2025) | Portal NF-e Esquemas XML listing | 2026-07-20 | e033e97cba218020ef492fc5af18a07eb4fd57d484ac3550ff331f01ae441783 | -| nt/esquemas-eventos-nt2025002-v1.40-rtc.zip | Schema dos eventos RTC (NT 2025.002 v1.40, publicado 27/07/2026, CURRENT) | Portal NF-e Esquemas XML listing | 2026-08-03 | a4c57ce95b225cd8852f90bd6c39ca28ae551636ff3f67eb2602b9fa847129b2 | +| nt/esquemas-eventos-nt2025002-v1.40-rtc.zip | Schema dos eventos RTC (NT 2025.002 v1.40, publicado 27/07/2026, CURRENT em 2026-09-04) | Portal NF-e Esquemas XML listing | 2026-08-03 | a4c57ce95b225cd8852f90bd6c39ca28ae551636ff3f67eb2602b9fa847129b2 | | nt/nt-2026-001-v1.02b.pdf | NT 2026.001 v1.02b (31/07/2026, PAA: Provedor de Assinatura e Autorizacao) | Portal NF-e NT listing | 2026-08-03 | 703310f95bff855aad9a4a7004515ce29ffff343334c53f0c45e9b32390296cd | +| nt/nt-2025-002-v1.51.pdf | NT 2025.002 v1.51 (04/08/2026, CURRENT). Alteracao de regras de validacao; aprovada pelo Ato Tecnico Conjunto RFB/CGIBS n. 1 de 31/07/2026 | Portal NF-e NT listing | 2026-09-04 | a4aaaa181522b43cd90b502f8ccb9e4bdabea30fed838e2d0790be5ba77254a4 | +| nt/nt-2026-006-v1.00.pdf | NT 2026.006 v1.00 (25/08/2026). Vinculacao entre NF-e/NFC-e e a transacao de split payment: grupo YC e evento 110300. Homologacao 05/10/2026, producao 03/11/2026 | Portal NF-e NT listing | 2026-09-04 | 47a65abde315fed1e6a8c6085a67ca483935cb57877ae5715d365377a725e05d | +| nt/it-2026-001-v1.01.pdf | IT 2026.001 v1.01 (25/08/2026). Tabela de Meios de Pagamento para a vinculacao de pagamento dos DF-e; aprovado pelo Ato Tecnico Conjunto n. 2 de 21/08/2026 | Portal NF-e Informes Tecnicos listing | 2026-09-04 | 1e58913755c4e617f30619448909dd9ef82b0c772bcd44dc85774e77bcd28900 | +| nt/esquemas-pl-010f-v1.04.zip | PL 010f v1.04 (31/08/2026, CURRENT; NT 2025.002 v1.50 e NT 2026.007 v1.00). Substitui o 010e v1.02, que o portal moveu para "em desuso" | Portal NF-e Esquemas XML listing | 2026-09-04 | b8589490a58a09a993a80e6ac4d7ed10f20892061ecfc56719337098d4b95998 | ## calculadora/ diff --git a/vendor/cgibs-split-payment-artefatos.json b/vendor/cgibs-split-payment-artefatos.json new file mode 100644 index 0000000..7dc21c3 --- /dev/null +++ b/vendor/cgibs-split-payment-artefatos.json @@ -0,0 +1,15 @@ +{ + "_meta": { + "descricao": "Inventario pinado dos artefatos linkados na pagina oficial do Split Payment no CGIBS. O nome de cada arquivo carrega o timestamp de upload, entao a URL de um arquivo nao e alvo estavel; a pagina e. Um artefato novo publicado ali aparece aqui como chave a mais no vivo. Regenerar com: node scripts/drift-check.mjs --pin-cgibs", + "fonte": "https://www.cgibs.gov.br/split-payment", + "capturadoEm": "2026-09-04" + }, + "artefatos": { + "/upload/arquivos/202606/03153733-manual-de-integracao-plataforma-publica-de-split-payment-v1.pdf": true, + "/upload/arquivos/202606/03172158-openapi-v0-0-10.zip": true, + "/upload/arquivos/202606/30145925-minuta-split-payment-manual-de-operacoes.pdf": true, + "/upload/arquivos/202607/20150141-20260715-fin-split-payment-manual-de-tempos-minuta.docx": true, + "/upload/arquivos/202608/24154349-20260811-manual-de-integracao-plataforma-publica-split-payment-revisao-fin.pdf": true, + "/upload/arquivos/202608/24154448-openapi-v1-1-0.zip": true + } +} diff --git a/vendor/manual/20260715-split-payment-manual-de-tempos-minuta.docx b/vendor/manual/20260715-split-payment-manual-de-tempos-minuta.docx new file mode 100644 index 0000000..cd198c9 Binary files /dev/null and b/vendor/manual/20260715-split-payment-manual-de-tempos-minuta.docx differ diff --git a/vendor/manual/manual-de-integracao-plataforma-publica-split-payment-v1.1.0.pdf b/vendor/manual/manual-de-integracao-plataforma-publica-split-payment-v1.1.0.pdf new file mode 100644 index 0000000..2b298a0 Binary files /dev/null and b/vendor/manual/manual-de-integracao-plataforma-publica-split-payment-v1.1.0.pdf differ diff --git a/vendor/manual/manual-de-integracao-plataforma-publica-split-payment-v1.1.0.txt b/vendor/manual/manual-de-integracao-plataforma-publica-split-payment-v1.1.0.txt new file mode 100644 index 0000000..3aa9822 --- /dev/null +++ b/vendor/manual/manual-de-integracao-plataforma-publica-split-payment-v1.1.0.txt @@ -0,0 +1,3113 @@ +CGIBS RECEITA FEDERAL +Comitê Gestor do IBS Ministério da Fazenda + + + + + Manual de + Integração + + Split Payment + Reforma Tributária + + + + + Manual de Integração + Versão 1.1.0 | Agosto de 2026 + Split Payment | Manual de Integração Versão 1.1.0 + + + SUMÁRIO + + +1. Introdução .................................................................................................................................... 2 +2. Visão Geral .................................................................................................................................. 3 +3. Fluxos de Dados e Comunicação ............................................................................................... 4 + 3.1 DICIONÁRIO DE CAMPOS .................................................................................................. 5 + 3.2 INFORME DE TRANSAÇÃO INICIADA ............................................................................. 10 + 3.2.1 Dados do Informe de Transação Iniciada .................................................................... 12 + 3.3 INFORME DE TRANSAÇÃO ATUALIZADA ....................................................................... 12 + 3.3.1 Dados do Informe de Transação Atualizada ................................................................ 14 + 3.4 INFORME DE BAIXA (EXCETO POR PAGAMENTO) ...................................................... 14 + 3.4.1 Dados do Informe de Baixa (Exceto por Pagamento) ................................................. 16 + 3.5 INFORME PRELIMINAR DE PAGAMENTO ...................................................................... 16 + 3.5.1 Dados do Informe Preliminar de Pagamento ............................................................... 18 + 3.6 INFORME DE SEGREGAÇÃO (TRANSAÇÃO FINANCEIRA LIQUIDADA) .................... 19 + 3.6.1 Dados do informe de remessa de segregação iniciada (Passo 1).............................. 21 + 3.6.2 Dados do informe de lote de transações (Passo 2)..................................................... 21 + 3.6.3 Dados do informe de finalização de remessa de segregação (Passo 3).................... 23 + 3.7 RETORNO SUPER INTELIGENTE PARA NÚCLEA/PSPS .............................................. 24 + 3.7.1 Continuidade do consumo e recuperação de conexão ............................................... 26 + 3.7.2 Tratamento de erros ..................................................................................................... 27 + 3.7.3 Dados do Retorno Super Inteligente para Núclea/PSPs ............................................. 27 + 3.8 CONSULTA RETROATIVA SUPER INTELIGENTE PARA NÚCLEA/PSPS .................... 28 + 3.8.1 Utilização da consulta retroativa e recuperação de mensagens ................................. 32 + 3.8.2 Tratamento de erros ..................................................................................................... 33 + 3.9 MECANISMO DE OCORRÊNCIAS (MOC) ........................................................................ 34 + 3.9.1 Tipos de mensagens do MOC ...................................................................................... 34 + 3.9.2 Notificação de Transação em Análise .......................................................................... 35 + 3.9.2.1 Dados da Notificação de Transação em Análise .................................................. 37 + 3.9.3 Solicitação de Estorno .................................................................................................. 38 + 3.9.3.1 Dados da Solicitação de Estorno .......................................................................... 39 + 3.9.4 Consulta Ocorrências ................................................................................................... 40 + 3.9.4.1 Dados da Consulta Ocorrências ............................................................................ 41 +4. Contrato de mensagens e payloads ......................................................................................... 42 + 4.1 EXEMPLOS DE REQUISIÇÕES E RESPOSTAS DA API ................................................ 43 +5. Política de tratamento de erros ................................................................................................. 43 + 5.1 PROCESSAMENTO E RESPOSTA DAS REQUISIÇÕES ................................................ 44 +6. Tabela de código de mensagens por arranjo ........................................................................... 47 +7. Tabela de endpoints dos informes por arranjo ......................................................................... 48 +8. Definição de Headers Padrão ................................................................................................... 52 + + Página 2 de 58 + Split Payment | Manual de Integração Versão 1.1.0 + + +9. Requisitos de Rastreabilidade .................................................................................................. 53 +10. Histórico de Revisão ............................................................................................................... 54 + + + + + Página 3 de 58 + Split Payment | Manual de Integração Versão 1.1.0 + +1. Intr o duç ão + + + + + CAPÍTULO 1 – INTRODUÇÃO + + +A Plataforma Pública (PP) do Split Payment é o ponto único de comunicação entre os PSPs +(Prestadores de Serviços de Pagamento) e instituições operadoras e os entes governamentais: +a Receita Federal do Brasil (RFB) e o Comitê Gestor do IBS (CGIBS). A PP facilita o processo +de integração dos participantes, permite o compartilhamento de experiências e mantém forte +padronização. A PP não implementa regras de negócio, seguindo os princípios de baixo +acoplamento e alta coesão. Ela tem a responsabilidade de receber eventos, aplicar validações +sintáticas e semânticas, registrar informações para garantir rastreabilidade e auditoria e repassar +eventos ao destinatário adequado. Não é escopo da PP executar regras de negócio relacionadas +ao Split Payment, arrecadação, apuração assistida, entre outras. Como ponto único de +comunicação, integra todos os PSPs, reduzindo custos por meio do desenvolvimento +centralizado, fortalecendo os controles de segurança e conformidade, simplificando a gestão de +especificações, métricas, versionamento e volumetria, além de ampliar a escalabilidade da +solução. + + + + + Página 4 de 58 + Split Payment | Manual de Integração Versão 1.1.0 + +2. Visão G er al + + + + + CAPÍTULO 2 – VISÃO GERAL + + +A Plataforma Pública (PP) é o canal de transmissão dos dados do Split Payment (CBS e IBS) +entre as instituições financeiras, de um lado, e os entes governamentais (RFB e CGIBS), de +outro. Os PSPs e instituições operadoras produzem e transmitem os dados das transações; a +RFB e o CGIBS os recebem. A PP é projetada para assegurar alta disponibilidade, escalabilidade +e segurança na troca dessas informações. + + + + + Página 5 de 58 + Split Payment | Manual de Integração Versão 1.1.0 + +3. Flu xos de Da dos e Com u nicaç ão + + + + + CAPÍTULO 3 – FLUXOS DE DADOS E COMUNICAÇÃO + + +O processo de efetivação do Split entre as instituições financeiras e os entes governamentais é +descrito pelos seguintes fluxos de processo: + • Fluxo de Informe de Transação Iniciada. + o Participam desse fluxo os arranjos Boleto, Pix Dinâmico e Pix Automático. + • Fluxo de Informe de Transação Atualizada. + o Participam desse fluxo os arranjos Boleto e Pix Dinâmico. + • Fluxo de Informe de Baixa (Exceto por Pagamento). + o Participam desse fluxo os arranjos Boleto, Pix Dinâmico e Pix Automático. + • Fluxo de Informe Preliminar de Pagamento. + o Participam desse fluxo os arranjos Boleto, Pix Dinâmico, Pix Automático, Pix + Estático, TED e TEF. + • Fluxo de Informe de Segregação (transação financeira liquidada). + o Participam desse fluxo os arranjos Boleto, Pix Dinâmico, Pix Automático, Pix + Estático, TED e TEF. + • Fluxo de Retorno Super Inteligente para Núclea/PSPs. + o Participam desse fluxo os arranjos Boleto, Pix Dinâmico e Pix Automático. + • Fluxo de Consulta Retroativa Super Inteligente para Núclea/PSPs. + o Participam desse fluxo os arranjos Boleto, Pix Dinâmico e Pix Automático. + • Fluxo do Mecanismo de Ocorrências (MOC). + o Participam desse fluxo todos os arranjos: Boleto, Pix Dinâmico, Pix Automático, Pix + Estático, TED e TEF. + +Os diagramas de fluxo de processos e o detalhamento dos dados transportados estão descritos +em detalhes nas seções a seguir deste manual. + +OBS.: Cada informe poderá enviar, no máximo, 1.000 transações por requisição. Caso sejam +enviadas mais transações, o envio será rejeitado. O limite de 1.000 transações é aplicado por +requisição, considerando cada lote de segregação e cada página de consulta de forma +independente. Dessa forma, uma remessa de segregação pode ser composta por vários lotes, +respeitado o limite de até 1.000 transações por lote. + + + + + Página 6 de 58 + Split Payment | Manual de Integração Versão 1.1.0 + + +3.1 DICIONÁRIO DE CAMPOS + +Campos do tipo Decimal utilizam duas casas decimais, com ponto (.) como separador decimal, sem sinal negativo +e sem notação científica. A notação 18,02 indica até 18 dígitos inteiros e 2 casas decimais. +Convenção para envio de campos: campos opcionais não aplicáveis devem ser omitidos (não enviados), em vez +de enviados com valor null; um campo omitido, null ou vazio é tratado como “não informado”. Campos marcados +como N/E não se aplicam ao arranjo e não devem ser enviados. + + Nome do Tam. Tam. + Campo JSON Formato Regex Descrição + campo Min Máx + Arranjo financeiro ao qual a + mensagem está associada (Pix + Automático, Pix Dinâmico, Pix + Arranjo arrj Alfanumérico 3 3 Estático, Boleto, TED, TEF). + O campo prevê os seguintes + valores: PXA, PXD, PXE, BOL, TED + ou TEF. + + Valor de CBS corrigido pela RFB, + CBS Corrigido vlCbsCorr Decimal 18,02 quando divergente do Documento + Fiscal vinculado. + + Valor de CBS não extinto do + Documento Fiscal vinculado à + CBS Em Aberto vlCbsAberto Decimal 18,02 + transação, conforme retorno da + RFB. + + Valor de CBS informado pelo + CBS Informado vlCbsInf Decimal 18,02 originador no preenchimento da + transação. + + Valor de CBS efetivamente + CBS Segregado vlCbsSegr Decimal 18,02 segregado pelo PSP Recebedor + Direto na transação. + + Identificador do Pagador que + CNPJ ou CPF ^(\d{11}|[A-Za- efetivamente realizou o pagamento. + cnpjCpfPagEfet Alfanumérico 11 14 + Pagador Efetivo z0-9]{14})$ CPF: 11 dígitos. CNPJ: 14 + caracteres alfanuméricos. + + Identificador do Pagador informado + CNPJ Pagador ^[A-Za-z0- + cnpjPagOrig Alfanumérico 14 14 na emissão da transação. CNPJ: 14 + Original 9]{14}$ + caracteres alfanuméricos. + + Identificador (CNPJ/CPF) da parte + destinatária da ocorrência (a ser + estornada). CPF: 11 dígitos; CNPJ: + CNPJ ou CPF ^(\d{11}|[A-Za- 14 caracteres alfanuméricos. Trata- + cnpjCpfDest Alfanumérico 11 14 + Parte Destinatária z0-9]{14})$ se da parte prejudicada, que + receberá de volta o valor do tributo + estornado (identificação conforme o + Manual de Operações). + + Identificação do Recebedor (que + recebe o valor líquido da transação). + ^[A-Za-z0- Em caso de cessão de recebíveis, + CNPJ Recebedor cnpjRec Alfanumérico 14 14 + 9]{14}$ preencher com o Recebedor original + (e não com o novo detentor de + direitos). + + Código identificador da mensagem, + Código da + codMsg Alfanumérico 1 9 conforme o arranjo aplicável (ex.: + mensagem + RSUP101, RSUP102). + + Código do motivo da ocorrência + Código Motivo (Solicitação de Estorno): 01 = + codMotOcor Alfanumérico 2 2 + Ocorrência Incidente de segurança; 02 = Falha + operacional (Atores Financeiros). + + Código do parecer sobre a + Código Parecer + codParecer Alfanumérico 2 2 solicitação de estorno via MOC + Solicitação + associada à transação. + + + Página 7 de 58 + Split Payment | Manual de Integração Versão 1.1.0 + + + Nome do Tam. Tam. + Campo JSON Formato Regex Descrição + campo Min Máx + 01= Aceita, 02 = Aceita + Parcialmente, 03 = Não aceita + + ^\d{4}-\d{2}- + Data Hora Data e hora da atualização da + dtHrAtu Data e Hora 25 25 \d{2}T\d{2}:\d{2}:\ + Atualização transação. + d{2}-03:00$ + + Data Hora Baixa ^\d{4}-\d{2}- + Data e hora da baixa da transação + (Exceto por dtHrBaixa Data e Hora 25 25 \d{2}T\d{2}:\d{2}:\ + sem ocorrência de pagamento. + Pagamento) d{2}-03:00$ + + Data e hora em que a Plataforma + ^\d{4}-\d{2}- + Data Hora Pública disponibilizou a mensagem + dtHrDisp Data e Hora 25 25 \d{2}T\d{2}:\d{2}:\ + Disponibilização do Retorno Super Inteligente para + d{2}-03:00$ + consumo. + + ^\d{4}-\d{2}- Data e hora de envio da ocorrência + Data Hora Envio + dtHrEnvOcor Data e Hora 25 25 \d{2}T\d{2}:\d{2}:\ pelo responsável da abertura do + Ocorrência + d{2}-03:00$ MOC. + + ^\d{4}-\d{2}- Data e hora de emissão da + Data Hora Iniciação dtHrIni Data e Hora 25 25 \d{2}T\d{2}:\d{2}:\ transação após processamento pelo + d{2}-03:00$ PSP/Núclea. + + ^\d{4}-\d{2}- + Data Hora Limite Data e hora limite para realização do + dtHrLimPgto Data e Hora 25 25 \d{2}T\d{2}:\d{2}:\ + Pagamento pagamento da transação. + d{2}-03:00$ + + ^\d{4}-\d{2}- Data e hora em que ocorreu a + Data Hora + dtHrLiq Data e Hora 25 25 \d{2}T\d{2}:\d{2}:\ efetiva Liquidação Interbancária ou + Liquidação + d{2}-03:00$ Intrabancária no arranjo. + + ^\d{4}-\d{2}- Data e hora da mensagem que está + Data Hora + dtHrMsg Data e Hora 25 25 \d{2}T\d{2}:\d{2}:\ sendo transmitida entre PSP/Núclea + Mensagem + d{2}-03:00$ e a Plataforma Pública. + + ^\d{4}-\d{2}- + Data Hora Data e hora em que o pagamento foi + dtHrPgto Data e Hora 25 25 \d{2}T\d{2}:\d{2}:\ + Pagamento realizado pelo Pagador. + d{2}-03:00$ + + Data e hora-limite para o envio do + Repasse Financeiro de CBS à RFB + ^\d{4}-\d{2}- + Data Hora Repasse e de IBS ao Comitê Gestor. + dtHrRepasse Data e Hora 25 25 \d{2}T\d{2}:\d{2}:\ + ao CG/RFB Corresponde a 12:00 (meio-dia) de + d{2}-03:00$ + D+N, conforme o Manual de Tempos + (seção 6.2). + + Data e hora da resposta da + Data Hora ^\d{4}-\d{2}- + ocorrência pela RFB/CGIBS. + Resposta dtHrRespOcor Data e Hora 25 25 \d{2}T\d{2}:\d{2}:\ + Presente apenas no Retorno da + Ocorrência d{2}-03:00$ + Solicitação de Estorno. + + Data Vencimento dtVenc Data 10 10 Data de vencimento da transação. + + Descrição Texto livre complementar ao motivo + descOcor Alfanumérico 0 100 + Ocorrência da ocorrência. + + Descrição complementar do parecer + Descrição Parecer descParecer Alfanumérico 1 500 da RFB/CGIBS. Presente no + Retorno da Solicitação de Estorno. + + Identificador do Documento Fiscal + Documento Fiscal docFiscal Alfanumérico 1 50 + vinculado à transação. + + Valor de IBS corrigido pelo Comitê + IBS Corrigido vlIbsCorr Decimal 18,02 Gestor do IBS, quando divergente + do Documento Fiscal vinculado. + + Valor de IBS não extinto do + Documento Fiscal vinculado à + IBS Em Aberto vlIbsAberto Decimal 18,02 + transação, conforme retorno do + Comitê Gestor do IBS. + + + + + Página 8 de 58 + Split Payment | Manual de Integração Versão 1.1.0 + + + Nome do Tam. Tam. + Campo JSON Formato Regex Descrição + campo Min Máx + Valor de IBS informado pelo + IBS Informado vlIbsInf Decimal 18,02 originador no preenchimento da + transação. + + Valor de IBS efetivamente + IBS Segregado vlIbsSegr Decimal 18,02 segregado pelo PSP Recebedor + Direto na transação. + + Identificador único do documento de + ID DDA idDda Alfanumérico 1 20 + cobrança no sistema DDA. + + Identificador de aprovação do + estorno via MOC, emitido pela RFB + ou CGIBS. Corresponde ao número + de controle enviado na mensagem + Identificador de estorno no SPB, conforme o + Aprovação Estorno idAprovEst Alfanumérico 20 20 tributo: NumCtrlTESOr para CBS e + RFB/CGIBS NumCtrlSTROr para IBS. + Preenchimento condicional: + retornado somente quando + codParecer for 01 (Aceita) ou 02 + (Aceita Parcialmente). + + Identificador único da ocorrência do + MOC. Formato: prefixo do tipo (SOL + ^(SOL|NOT)[A- ou NOT) (3) + raiz do CNPJ do PSP + Za-z0- Recebedor Direto (8) + arranjo + Identificador da + idOcor Alfanumérico 29 29 9]{8}(PXA|PXD|P (PXA, PXD, PXE, BOL, TED, TEF) + ocorrência + XE|BOL|TED|TE (3) + data da solicitação + F)\d{15}$ (AAAAMMDD) (8) + 7 caracteres + para o contador. Gerado pelo PSP + Recebedor Direto. + + Identificador de Identificador único da transação no + e2eId Alfanumérico 1 35 + transação (E2EID) arranjo de pagamentos Pix (E2EID). + + Identificador de Identificador único da transação Pix + txId Alfanumérico 1 35 + transação (TxID) (TxID). + + Identificador do informe de + segregação, gerado pelo + responsável pela comunicação. + Formato: ISPB do PSP Recebedor + ^[A-Za-z0- + Identificador do Direto (8) + ISPB da instituição da + 9]{16}(PXA|PXD| + informe de idInfSegr Alfanumérico 34 34 comunicação efetiva (8) + arranjo + PXE|BOL|TED|T + segregação (PXA/PXD/PXE/BOL/TED/TEF) + + EF)\d{15}$ + data de envio (AAAAMMDD) + hora + de corte HHMM (horário de corte do + arranjo, conforme o Manual de + Tempos) + sequencial (3). + + Identificador do lote enviado no + Alfanumérico ^[A-Za-z0- + Identificador do lote idLote 40 40 informe de segregação. Formato: + 9]{34}\d{6}$ + IdInfSegr + sequencial + + Identificador do + Indica a sequência do pagamento no + número do + numPgto Numérico 1 9 arranjo (ex.: quantidade de + pagamento do + pagamentos do boleto). + Arranjo + + Identificador do Repasse Financeiro + associado à transação. Formato: + ISPB do PSP Recebedor Direto (8) + + ISPB da instituição do repasse + ^[A-Za-z0- efetivo (8) + arranjo (PXA, PXD, + Identificador do 9]{16}(PXA|PXD| PXE, BOL, TED, TEF) + data + idRepasse Alfanumérico 30 30 + repasse PXE|BOL|TED|T definida para realização do Repasse + EF)\d{11}$ Financeiro (AAAAMMDD) + 3 + caracteres para o sequencial. + Gerado pelo PSP Recebedor Direto. + Um mesmo idRepasse é utilizado + para os dois tributos do Repasse + + + Página 9 de 58 + Split Payment | Manual de Integração Versão 1.1.0 + + + Nome do Tam. Tam. + Campo JSON Formato Regex Descrição + campo Min Máx + Financeiro: CBS (via TES) e IBS (via + STR), sendo comum a ambos. + + Indica se a transação foi + integralmente paga, considerando + Indicador de + indPgtoIntegral Alfanumérico 1 1 todos os pagamentos até o + Pagamento Integral + momento. 1 = pagamento integral; 0 + = não integral. + + Índice do item na Número sequencial do item na lista + index Numérico 1 5 + lista enviada enviada, iniciando em 1. + + Número Sequencial Único da + mensagem que se deseja finalizar a + NSU final nsuFinal Alfanumérico 1 19 ^\d{1,19}$ + consulta retroativa de Super + Inteligente. + + Número Sequencial Único da + mensagem a partir do qual se inicia + a consulta. Aplica-se à Consulta + Retroativa de Super Inteligente + NSU inicial nsuInicial Alfanumérico 1 19 ^\d{1,19}$ + (seção 3.8) e à Consulta de + Ocorrências do MOC (seção 3.9.4). + Na primeira consulta deve ser + informado o valor inicial igual a 1. + + Quantidade máxima de ocorrências + retornadas por página na Consulta + Limite de + limite Numérico 1 4 ^[0-9]{1,4}$ de Ocorrências do MOC (seção + ocorrências + 3.9.4). Opcional; valor padrão e + máximo igual a 1.000. + + Número de Código Número correspondente ao código + numCodBarras Alfanumérico 44 44 ^\d{44}$ + de Barras de barras do boleto. + + Número de controle + Identificador utilizado pela Núclea + do originador da numCtrlOrig Alfanumérico 1 20 + para controle interno da transação. + transação + + Identificador único da transação TED + Número de controle + numCtrlTED Alfanumérico 1 35 gerado na liquidação (NumCtrlSTR + TED + ou NumCtrlPAG). + + Número de controle Identificador da transação TEF + numCtrlTEF Alfanumérico 1 35 + TEF gerado pelo PSP. + + Número Identificador específico do evento de + numIdentcBaixa Alfanumérico 1 19 ^\d{1,19}$ + Identificação Baixa baixa da transação. + + Número do ofício, processo + Número Processo administrativo ou ordem judicial + numProcAdm Alfanumérico 1 20 + Administrativo associado à ocorrência (Notificação + de Transação em Análise). + + Número Sequencial Único da + mensagem. Identifica de forma + sequencial e única a mensagem no + Número Sequencial Retorno Super Inteligente (seções + Único da nsuId Alfanumérico 1 19 ^\d{1,19}$ 3.1 e 3.7.3) e a ocorrência na + mensagem Consulta de Ocorrências do MOC + (seção 3.9.4.1). Ambos os usos + compartilham a mesma semântica + de NSU. + + Órgão responsável pelo processo + Órgão Responsável + administrativo associado à + Processo orgRespProcAdm Alfanumérico 1 8 + ocorrência (Notificação de + Administrativo + Transação em Análise). + + Órgão que respondeu à solicitação + Órgão Responsável + orgRespRes Alfanumérico 3 5 de estorno: RFB (Receita Federal do + Resposta + Brasil) ou CGIBS (Comitê Gestor do + + + + Página 10 de 58 + Split Payment | Manual de Integração Versão 1.1.0 + + + Nome do Tam. Tam. + Campo JSON Formato Regex Descrição + campo Min Máx + IBS). Presente no Retorno da + Solicitação de Estorno. + + Orientação à parte solicitante quanto + Orientação à parte ao acompanhamento da ocorrência. + orientSolic Alfanumérico 1 500 + solicitante Presente no Retorno da Solicitação + de Estorno. + + Raiz CNPJ PSP + cnpjRaizPspPag Alfanumérico 8 8 ^[A-Za-z0-9]{8}$ Raiz do CNPJ do PSP Pagador. + Pagador + + Raiz CNPJ PSP Raiz do CNPJ do PSP Recebedor + cnpjRaizPspRecDir Alfanumérico 8 8 ^[A-Za-z0-9]{8}$ + Recebedor Direto Direto. + + Raiz do CNPJ do PSP Recebedor + Raiz CNPJ PSP + cnpjRaizPspRecInd Alfanumérico 8 8 ^[A-Za-z0-9]{8}$ Indireto onde o Recebedor mantém + Recebedor Indireto + a conta. + + Tributo a que se refere o parecer: + CBS (Contribuição sobre Bens e + Tipo Tributo tpTrib Alfanumérico 3 3 Serviços) ou IBS (Imposto sobre + Bens e Serviços). Presente no + Retorno da Solicitação de Estorno. + + Número total de transações + Total de transações totalTrans Numérico 1 17 + enviadas no Informe de Segregação + + Valor CBS a Valor de CBS solicitado para estorno + vlCbsEst Decimal 18,02 + Estornar (Solicitação de Estorno). + + Valor IBS a Valor de IBS solicitado para estorno + vlIbsEst Decimal 18,02 + Estornar (Solicitação de Estorno). + + Valor da transação informado pelo + Valor Informado vlInf Decimal 18,02 originador ao preencher (emitir) a + transação. + + Valor efetivamente pago na + Valor Pago vlPago Decimal 18,02 + transação. + + Decimal Valor total de CBS enviado no + Valor Total CBS vlTotalCbs 18,02 + Informe de Segregação + + Decimal Valor total de IBS enviado no + Valor Total IBS vlTotalIbs 18,02 + Informe de Segregação + + Valor de CBS ou IBS aprovado para + Valor Tributo a estorno, conforme tpTrib. Presente + vlTribEst Decimal 18,02 + Estornar no Retorno da Solicitação de + Estorno. + + + + + Página 11 de 58 + Split Payment | Manual de Integração Versão 1.1.0 + + +3.2 INFORME DE TRANSAÇÃO INICIADA + + + + + # Camada Tipo Descrição + + Início do processo. Núclea/PSPs envia os dados do Informe + 1 Núclea/PSPs Comunicação de Transação Iniciada para a Plataforma Pública de Split + Payment (PP). + + Plataforma Pública de A PP recebe os dados do informe enviados pela + 2 Comunicação + Split Payment (PP) Núclea/PSPs. + + A PP gera um número de controle “ResourceId”, que + Plataforma Pública de + 3 Ação representa a operação iniciada pela Núclea/PSPs e grava + Split Payment (PP) + logs da operação. + + A PP informa, no retorno da chamada à API, o número de + controle “ResourceId”, que representa a operação iniciada + Plataforma Pública de + Comunicação pela Núclea/PSPs. + 4 Split Payment (PP) + *ResourceId: Possibilita à Núclea/PSPs consultar o recurso + incluído. A consulta será especificada nas próximas versões + do manual. + + 5 Núclea/PSPs Comunicação A Núclea/PSPs recebe o retorno da chamada à API + + Plataforma Pública de A PP envia os dados do Informe de Transação Iniciada para + 6 Comunicação + Split Payment (PP) Receita/Comitê Gestor. + + + + + Página 12 de 58 + Split Payment | Manual de Integração Versão 1.1.0 + + + # Camada Tipo Descrição + + A Receita/Comitê Gestor recebem os dados do Informe de + 7 Receita/Comitê Gestor Comunicação + Transação Iniciada enviados pela PP. + + A Receita/Comitê Gestor gravam os dados do Informe de + 8 Receita/Comitê Gestor Ação + Transação Iniciada enviados pela PP. + + + +3.2.1 Dados do Informe de Transação Iniciada + +Consulta dicionário de campos +M = Mandatório, O = Opcional, N/E = Não existe + + Nome do Campo Campo JSON Boleto Pix Automático Pix Dinâmico + + Data Hora Mensagem dtHrMsg M M M + + TRANSACOES [1...n] + + Índice do item na lista de transações + index M M M + enviadas no informe + + ID DDA idDda M N/E N/E + + Número de controle do originador da + numCtrlOrig M N/E N/E + transação + + Número de Código de Barras numCodBarras M N/E N/E + + Identificador de transação (TxID) txId N/E M M + + Valor Informado vlInf M M M + + CBS Informado vlCbsInf M M M + + IBS Informado vlIbsInf M M M + + Documento Fiscal docFiscal O O O + + Raiz CNPJ PSP Recebedor Indireto cnpjRaizPspRecInd O O O + + Raiz CNPJ PSP Recebedor Direto cnpjRaizPspRecDir M M M + + CNPJ Recebedor cnpjRec M M M + + CNPJ Pagador Original cnpjPagOrig M O O + + Data Hora Iniciação dtHrIni M M M + + Data Vencimento dtVenc M O O + + Data Hora Limite Pagamento dtHrLimPgto M M M + + + +O tratamento de sucesso (HTTP 201), o processamento individual por item, a rejeição parcial e +as falhas de requisição (HTTP 400/500) seguem o descrito na seção Processamento e resposta +das requisições. + + + + + Página 13 de 58 + Split Payment | Manual de Integração Versão 1.1.0 + + +3.3 INFORME DE TRANSAÇÃO ATUALIZADA + + + + + # Camada Tipo Descrição + + Início do processo. Núclea/PSPs envia os dados do + 1 Núclea/PSPs Comunicação Informe de Transação Atualizada para a Plataforma + Pública de Split Payment (PP). + + Plataforma Pública de Comunicação A PP recebe os dados do informe enviados pela + 2 + Split Payment (PP) Núclea/PSPs. + + Ação A PP gera um número de controle “ResourceId” que + Plataforma Pública de + 3 representa o Informe de Transação Atualizada enviado + Split Payment (PP) + pela Núclea/PSPs e grava logs da operação. + + A PP informa, no retorno da chamada à API, o número + de controle “ResourceId” que representa o Informe de + Plataforma Pública de + Transação Atualizada enviado pela Núclea/PSPs. + 4 Split Payment (PP) Comunicação + *ResourceId: Possibilita a Núclea/PSP consultar o + recurso incluído. Consulta será especificada nas + próximas versões do manual. + + 5 Núclea/PSPs Ação Núclea/PSPs recebe o ResourceId gerado + + Plataforma Pública de Comunicação A PP envia os dados do Informe de Transação + 6 + Split Payment (PP) Atualizada para Receita/Comitê Gestor. + + + + + Página 14 de 58 + Split Payment | Manual de Integração Versão 1.1.0 + + + # Camada Tipo Descrição + + Comunicação A Receita/Comitê Gestor recebem os dados do Informe + 7 Receita/Comitê Gestor + de Transação Atualizada enviados pela PP. + + A Receita/Comitê Gestor gravam os dados do Informe + 8 Receita/Comitê Gestor Ação + de Transação Atualizada enviados pela PP. + + + +3.3.1 Dados do Informe de Transação Atualizada + +Consulta dicionário de campos +M = Mandatório, O = Opcional, N/E = Não existe + + Nome do Campo Campo JSON Boleto Pix Dinâmico + + Data Hora Mensagem dtHrMsg M M + + TRANSACOES [1...n] + + Índice do item na lista de transações enviadas + index M M + no informe + + ID DDA idDda M N/E + + Número de controle do originador da transação numCtrlOrig M N/E + + Identificador de transação (TxID) txId N/E M + + Valor Informado vlInf M M + + CBS Informado vlCbsInf M M + + IBS Informado vlIbsInf M M + + Documento Fiscal docFiscal O O + + Raiz CNPJ PSP Recebedor Indireto cnpjRaizPspRecInd O O + + Raiz CNPJ PSP Recebedor Direto cnpjRaizPspRecDir M M + + CNPJ Recebedor cnpjRec N/E M + + CNPJ Pagador Original cnpjPagOrig N/E O + + Data Hora Atualização dtHrAtu M M + + Data Vencimento dtVenc M O + + Data Hora Limite Pagamento dtHrLimPgto M M + + + +O tratamento de sucesso (HTTP 201), o processamento individual por item, a rejeição parcial e +as falhas de requisição (HTTP 400/500) seguem o descrito na seção Processamento e resposta +das requisições. + +3.4 INFORME DE BAIXA (EXCETO POR PAGAMENTO) + +O Informe de Baixa (Exceto por Pagamento) comunica que uma transação de Boleto, Pix +Dinâmico ou Pix Automático foi encerrada por motivo distinto do pagamento. Esse informe + + + + Página 15 de 58 + Split Payment | Manual de Integração Versão 1.1.0 + + +encerra a janela do Super Inteligente para a transação e sinaliza o encerramento à RFB e ao +CGIBS. + + + + + # Camada Tipo Descrição + + Início do processo. Núclea/PSPs envia os dados do + 1 Núclea/PSPs Comunicação Informe de Baixa (Exceto por Pagamento) para a + Plataforma Pública de Split Payment (PP). + + Plataforma Pública de Comunicação A PP recebe os dados do Informe de Baixa (Exceto + 2 + Split Payment (PP) por Pagamento) enviados pela Núclea/PSPs. + + A PP gera um número de controle “ResourceId” que + Plataforma Pública de representa o Informe de Baixa (Exceto por + Ação + 3 Split Payment (PP) Pagamento) enviado pela Núclea/PSPs e grava logs + da operação. + + + A PP informa, no retorno da chamada à API, o + número de controle “ResourceId” que representa o + Plataforma Pública de Informe de Baixa (Exceto por Pagamento) enviado + 4 Split Payment (PP) Comunicação pela Núclea/PSPs. + *ResourceId: Possibilita a Núclea/PSP consultar o + recurso incluído. A consulta será especificada nas + próximas versões do manual. + + 5 Núclea/PSPs Ação Núclea/PSPs recebe o ResourceId gerado + + + Página 16 de 58 + Split Payment | Manual de Integração Versão 1.1.0 + + + # Camada Tipo Descrição + + Plataforma Pública de + Comunicação A PP envia os dados do Informe de Baixa (Exceto + 6 Split Payment (PP) + por Pagamento) para Receita/Comitê Gestor. + + A Receita/Comitê Gestor recebem os dados do + Receita/Comitê Comunicação Informe de Baixa (Exceto por Pagamento) enviados + 7 pela PP. + Gestor + + + A Receita/Comitê Gestor gravam os dados do + Receita/Comitê Informe de Baixa (Exceto por Pagamento) enviados + 8 Ação pela PP. + Gestor + + + + +3.4.1 Dados do Informe de Baixa (Exceto por Pagamento) + +Consulta dicionário de campos +M = Mandatório, O = Opcional, N/E = Não existe + + Pix + Nome do Campo Campo JSON Boleto Pix Dinâmico + Automático + + Data Hora Mensagem dtHrMsg M M M + + TRANSACOES [1...n] + + Índice do item na lista de transações + index M M M + enviadas no informe + + ID DDA idDda M N/E N/E + + Número de controle do originador da + numCtrlOrig M N/E N/E + transação + + Identificador de transação (TxID) txId N/E M M + + Raiz CNPJ PSP Recebedor Indireto cnpjRaizPspRecInd O O O + + Raiz CNPJ PSP Recebedor Direto cnpjRaizPspRecDir M M M + + Data Hora Baixa (Exceto por + dtHrBaixa M M M + Pagamento) + + + +O tratamento de sucesso (HTTP 201), o processamento individual por item, a rejeição parcial e +as falhas de requisição (HTTP 400/500) seguem o descrito na seção Processamento e resposta +das requisições. + +3.5 INFORME PRELIMINAR DE PAGAMENTO + +Por meio do Informe Preliminar de Pagamento, o PSP comunica, em caráter informativo e não +vinculante, os dados de pagamento de uma transação assim que identifica o pagamento. Esse +envio precede o Informe de Segregação, detalhado na seção seguinte. + + + + + Página 17 de 58 + Split Payment | Manual de Integração Versão 1.1.0 + + + + + # Camada Tipo Descrição + + Início do processo. Núclea/PSPs envia os dados do + 1 Núclea/PSPs Comunicação Informe Preliminar de Pagamento para a Plataforma + Pública de Split Payment (PP). + + Plataforma Pública de Comunicação A PP recebe os dados do Informe Preliminar de + 2 + Split Payment (PP) Pagamento enviados pela Núclea/PSPs. + + Plataforma Pública de A PP gera um número de controle “ResourceId” que + Ação + 3 Split Payment (PP) representa o Informe Preliminar de Pagamento + enviado pela Núclea/PSPs e grava logs da operação. + + A PP informa, no retorno da chamada à API, o + número de controle “ResourceId” que representa o + Plataforma Pública de Informe Preliminar de Pagamento enviado pela + 4 Split Payment (PP) Comunicação Núclea/PSPs. + *ResourceId: Possibilita a Núclea/PSP consultar o + recurso incluído. A consulta será especificada nas + próximas versões do manual. + + 5 Núclea/PSPs Ação Núclea/PSPs recebe o ResourceId gerado + + Plataforma Pública de + Comunicação A PP envia os dados do Informe Preliminar de + 6 Split Payment (PP) + Pagamento para Receita/Comitê Gestor. + + + + + Página 18 de 58 + Split Payment | Manual de Integração Versão 1.1.0 + + + # Camada Tipo Descrição + + A Receita/Comitê Gestor recebem os dados do + Receita/Comitê Comunicação + 7 Informe Preliminar de Pagamento enviados pela PP. + Gestor + + A Receita/Comitê Gestor gravam os dados do + Receita/Comitê Informe Preliminar de Pagamento enviados pela PP + 8 Ação e encerra a janela do Super Inteligente + Gestor + + + + +3.5.1 Dados do Informe Preliminar de Pagamento + +Consulta dicionário de campos +M = Mandatório, O = Opcional, N/E = Não existe + + Pix Pix Pix + Nome do Campo Campo JSON Boleto TED TEF + Automático Dinâmico Estático + + Data Hora Mensagem dtHrMsg M M M M M M + + TRANSACOES [1...n] + + Índice do item na lista de + transações enviadas no index M M M M M M + informe + + ID DDA idDda M N/E N/E N/E N/E N/E + + Número de controle do + numCtrlOrig M N/E N/E N/E N/E N/E + originador da transação + + Identificador do número do + numPgto M N/E N/E N/E N/E N/E + pagamento do Arranjo + + Número Identificação Baixa numIdentcBaixa M N/E N/E N/E N/E N/E + + Identificador de transação + txId N/E M M N/E N/E N/E + (TxID) + + Identificador de transação + e2eId N/E M M M N/E N/E + (E2EID) + + Número de controle TED numCtrlTED N/E N/E N/E N/E M N/E + + Número de controle TEF numCtrlTEF N/E N/E N/E N/E N/E M + + Valor Pago vlPago M M M M M M + + CBS Segregado vlCbsSegr M M M M M M + + IBS Segregado vlIbsSegr M M M M M M + + Documento Fiscal docFiscal O O O M M M + + Indicador de Pagamento + indPgtoIntegral M M M N/E N/E N/E + Integral + + Raiz CNPJ PSP Recebedor cnpjRaizPspRec + O O O O N/E N/E + Indireto Ind + + + + Página 19 de 58 + Split Payment | Manual de Integração Versão 1.1.0 + + + Pix Pix Pix + Nome do Campo Campo JSON Boleto TED TEF + Automático Dinâmico Estático + + Raiz CNPJ PSP Recebedor cnpjRaizPspRec + M M M M M M + Direto Dir + + Raiz CNPJ PSP Pagador cnpjRaizPspPag M M M M M N/E + + CNPJ Recebedor cnpjRec M M M M M M + + CNPJ ou CPF Pagador + cnpjCpfPagEfet O M M M M M + Efetivo + + Data Hora Pagamento dtHrPgto M M M M N/E M + + Data Hora Liquidação dtHrLiq N/E M M M M M + + + +O tratamento de sucesso (HTTP 201), o processamento individual por item, a rejeição parcial e +as falhas de requisição (HTTP 400/500) seguem o descrito na seção Processamento e resposta +das requisições. + +3.6 INFORME DE SEGREGAÇÃO (TRANSAÇÃO FINANCEIRA LIQUIDADA) + +O Informe de Segregação comunica, em caráter definitivo, o conjunto de transações liquidadas +(cuja Liquidação Financeira foi concluída) em uma janela temporal, com o respectivo valor de +CBS/IBS Segregado, e constitui a base que gera a obrigação de Repasse Financeiro. Esse +informe é enviado à Plataforma Pública em três passos: + 1. Informe de remessa de segregação iniciada; + 2. Informe(s) de lote de transações; + 3. Informe de finalização de remessa de segregação. + + +O envio do Informe de Segregação inicia-se com o informe de remessa de segregação iniciada, +no qual a Núclea ou o PSP Recebedor Direto comunica à PP que iniciará a transmissão dos +dados (Passo 1). Em seguida, envia o(s) lote(s) de transações (Passo 2). Por fim, comunica a +finalização da remessa (Passo 3). + +OBS: Caso o PSP não possua transações liquidadas para enviar, ainda assim deverá transmitir +o Informe de Segregação. Nesse cenário, deverão ser enviados apenas o Passo 1 (início da +remessa) e o Passo 3 (finalização da remessa), sem envio de lotes de transações no Passo 2. +Os totais informados na finalização deverão refletir a inexistência de transações na remessa. + + + + + Página 20 de 58 + Split Payment | Manual de Integração Versão 1.1.0 + + + + + # Camada Tipo Descrição + + Início do processo. Núclea/PSPs enviam os dados do + 1 Núclea/PSPs Comunicação informe de remessa de segregação iniciada para a + Plataforma Pública de Split Payment (PP). + + Plataforma Pública Comunicação A PP recebe os dados do informe de remessa de + 2 de Split Payment + segregação iniciada enviados pela Núclea/PSPs. + (PP) + + Plataforma Pública A PP gera um número de controle “ResourceId” e grava + Ação + 3 de Split Payment logs da operação. + (PP) + + Plataforma Pública Comunicação A PP informa, no retorno da chamada à API, o número de + 4 de Split Payment controle “ResourceId” que representa a operação iniciada + (PP) pela Núclea/PSPs. + + Núclea/PSPs Comunicação + 5 A Núclea/PSPs recebem o retorno da chamada à API. + + Núclea/PSPs Comunicação A Núclea/PSPs enviam os dados do informe de lote de + 6 + transações para a PP. + + Plataforma Pública + A PP recebe os dados do informe de lote de transações + de Split Payment Comunicação + 7 enviados pela Núclea/PSPs. + (PP) + + + Plataforma Pública + A PP gera um ResourceId para o lote recebido e grava os + de Split Payment + 8 Ação dados das transações enviadas pela Núclea/PSPs. + (PP) + + + Plataforma Pública + A PP devolve para a Núclea/PSPs o ResourceId gerado + 9 de Split Payment Comunicação + para o lote. + (PP) + + A Núclea/PSPs recebem o ResourceId do lote da + 10 Núclea/PSPs Comunicação + remessa em processamento pela PP. + + Núclea/PSPs + Plataforma Pública Os passos de 6 a 10 são repetidos enquanto houver lotes + 11 Ação + de Split Payment de transações não remetidos + (PP) + + + Página 21 de 58 + Split Payment | Manual de Integração Versão 1.1.0 + + + # Camada Tipo Descrição + + A Núclea/PSPs enviam os dados do informe de + 12 Núclea/PSPs Comunicação + finalização de remessa de segregação para a PP. + + Plataforma Pública + A PP recebe os dados do informe de finalização de + 13 de Split Payment Comunicação + remessa de segregação enviado pela Núclea/PSPs. + (PP) + + A PP valida o total de registros e o valor total de CBS e + Plataforma Pública IBS da remessa, gera um número de controle + 14 de Split Payment Ação “ResourceId” e grava logs da operação. + (PP) + + Plataforma Pública A PP informa, no retorno da chamada à API, o resultado + 15 de Split Payment Comunicação da finalização da remessa e o número de controle + (PP) “ResourceId” gerado. + + A Núclea/PSPs recebem o resultado da finalização da + 16 Núclea/PSPs Comunicação + remessa e o ResourceId. + + Plataforma Pública Se a remessa for validada com sucesso, a PP envia + 17 de Split Payment Comunicação dados da remessa de segregação para a Receita/Comitê + (PP) Gestor. + + Receita Federal / A Receita / Comitê Gestor recebem os dados da remessa + 18 Comunicação + Comitê Gestor de segregação. + + A Receita / Comitê Gestor gravam os dados da remessa + Receita Federal / + 19 Ação recebida nas suas respectivas bases de dados. Fim do + Comitê Gestor + processo. + + + + +3.6.1 Dados do informe de remessa de segregação iniciada (Passo 1) + + Nome do Campo Campo JSON + + Raiz CNPJ PSP Recebedor Direto cnpjRaizPspRecDir + + Data Hora Mensagem dtHrMsg + + Identificador do Repasse idRepasse + + Arranjo arrj + + Identificador do informe de segregação idInfSegr + + + +Nesta etapa (iniciação da remessa), a requisição é aceita quando a PP valida os dados +informados e confirma que o Identificador do informe de segregação (idInfSegr) é único, ou seja, +ainda não foi utilizado em uma requisição processada com sucesso; nessas condições, a PP +retorna HTTP 201 e os lotes de transações podem ser enviados. O tratamento de sucesso (HTTP +201), o processamento individual por item, a rejeição parcial e as falhas de requisição (HTTP +400/500) seguem o descrito na seção Processamento e resposta das requisições. + +A PP rejeita o informe de remessa de segregação iniciada, com HTTP 422 (Regra de Negócio, +conforme a seção 5.1), quando o idInfSegr informado já possui remessa iniciada, retornando a +mensagem: “Já existe uma remessa de segregação iniciada para o idInfSegr informado”. + + Página 22 de 58 + Split Payment | Manual de Integração Versão 1.1.0 + + +3.6.2 Dados do informe de lote de transações (Passo 2) + +Nesse passo, a plataforma realizará uma validação prévia quanto ao formato e à obrigatoriedade +dos campos das transações enviadas no lote. Caso seja identificado algum erro em um ou mais +itens, todo o lote será rejeitado, sendo necessária a correção dos dados e o envio de um novo +lote. + +Consulta dicionário de campos +M = Mandatório, O = Opcional, N/E = Não existe + + Pix Pix Pix + Nome do Campo Campo JSON Boleto TED TEF + Automático Dinâmico Estático + + Raiz CNPJ PSP + cnpjRaizPspRecDir M M M M M M + Recebedor Direto + + Data Hora Mensagem dtHrMsg M M M M M M + + Identificador do lote idLote M M M M M M + + TRANSACOES [1...n] + + Índice do item na lista de + transações enviadas no index M M M M M M + informe + + ID DDA idDda M N/E N/E N/E N/E N/E + + Número de controle do + numCtrlOrig M N/E N/E N/E N/E N/E + originador da transação + + Número Identificação + numIdentcBaixa M N/E N/E N/E N/E N/E + Baixa + + Identificador do número + do pagamento do numPgto M N/E N/E N/E N/E N/E + Arranjo + + Identificador de + txId N/E M M N/E N/E N/E + transação (TxID) + + Identificador de + e2eId N/E M M M N/E N/E + transação (E2EID) + + Número de controle TED numCtrlTED N/E N/E N/E N/E M N/E + + Número de controle TEF numCtrlTEF N/E N/E N/E N/E N/E M + + Valor Pago vlPago M M M M M M + + CBS Segregado vlCbsSegr M M M M M M + + IBS Segregado vlIbsSegr M M M M M M + + Documento Fiscal docFiscal O O O M M M + + Indicador de Pagamento + indPgtoIntegral M M M N/E N/E N/E + Integral + + Raiz CNPJ PSP + cnpjRaizPspRecInd O O O O N/E N/E + Recebedor Indireto + + Raiz CNPJ PSP + cnpjRaizPspPag M M M M M N/E + Pagador + + Página 23 de 58 + Split Payment | Manual de Integração Versão 1.1.0 + + + Pix Pix Pix + Nome do Campo Campo JSON Boleto TED TEF + Automático Dinâmico Estático + + CNPJ Recebedor cnpjRec M M M M M M + + CNPJ ou CPF Pagador + cnpjCpfPagEfet O M M M M M + Efetivo + + Data Hora Pagamento dtHrPgto M M M M N/E M + + Data Hora Liquidação dtHrLiq M M M M M M + + Data Hora Repasse ao + dtHrRepasse M M M M M M + CG/RFB + + + +Nesta etapa (envio de lote), o lote é aceito quando a PP valida que o idInfSegr foi previamente +iniciado e ainda não finalizado e que todas as transações do lote estão corretas. Diferentemente +dos demais serviços, o lote é processado de forma integral: havendo erro em uma ou mais +transações, o lote completo é rejeitado (não há processamento parcial) e pode ser reenviado +mantendo o mesmo idLote, substituindo o anterior. O primeiro envio de um lote (idLote ainda não +criado) retorna HTTP 201 Created, com mensagem de criação do lote; o reenvio com o mesmo +idLote atualiza o lote e retorna HTTP 200, com mensagem de atualização do lote. O lote não +pode ser atualizado quando o idInfSegr não existe ou já está finalizado; nesses casos a PP +retorna HTTP 422, conforme as regras de rejeição apresentadas a seguir. As falhas de requisição +(HTTP 400/500) seguem o descrito na seção Processamento e Resposta das Requisições. + +A PP rejeita o informe de lote de transações, com HTTP 422 (Regra de Negócio, conforme a +seção 5.1), quando: + • O idInfSegr informado não possui remessa iniciada: “Não existe remessa de segregação + iniciada para o idInfSegr informado”. + • O idInfSegr informado já possui remessa finalizada: “Já existe uma remessa de + segregação finalizada para o idInfSegr informado”. + • O cnpjRaizPspRecDir difere do enviado na remessa iniciada: “O cnpjRaizPspRecDir + informado é diferente do cnpjRaizPspRecDir enviado na remessa de segregação iniciada + para o idInfSegr informado”. + +3.6.3 Dados do informe de finalização de remessa de segregação (Passo 3) + + Nome do Campo Campo JSON + + Raiz CNPJ PSP Recebedor Direto cnpjRaizPspRecDir + + Data Hora Mensagem dtHrMsg + + Identificador do informe de segregação idInfSegr + + Total de transações totalTrans + + Valor Total CBS vlTotalCbs + + Valor Total IBS vlTotalIbs + + + +Nesta etapa (finalização da remessa), a finalização é aceita quando a PP valida que o idInfSegr +corresponde a uma remessa previamente iniciada e que os totais de quantidade e de valores + + Página 24 de 58 + Split Payment | Manual de Integração Versão 1.1.0 + + +declarados coincidem exatamente com os somatórios dos lotes enviados; havendo divergência, +a finalização é rejeitada, cabendo corrigir os totais ou reenviar o lote divergente (mantendo o +mesmo idLote) antes de finalizar novamente. O tratamento de sucesso (HTTP 201), o +processamento individual por item, a rejeição parcial e as falhas de requisição (HTTP 400/500) +seguem o descrito na seção Processamento e resposta das requisições. + +A PP rejeita o informe de finalização de remessa de segregação, com HTTP 422 (Regra de +Negócio, conforme a seção 5.1), quando: + • O idInfSegr informado não possui remessa iniciada: “Não existe remessa de segregação + iniciada para o idInfSegr informado”. + • O idInfSegr informado já possui remessa finalizada: “Já existe uma remessa de + segregação finalizada para o idInfSegr informado”. + • O totalTrans difere da quantidade de transações enviadas: “O valor informado em + totalTrans difere da quantidade de transações enviadas”. + • O vlTotalCbs difere da soma dos valores de CBS enviados: “O valor informado em + vlTotalCbs difere da soma dos valores de CBS das transações enviadas”. + • O vlTotalIbs difere da soma dos valores de IBS enviados: “O valor informado em vlTotalIbs + difere da soma dos valores de IBS das transações enviadas”. + • O cnpjRaizPspRecDir difere do enviado na remessa iniciada: “O cnpjRaizPspRecDir + informado é diferente do cnpjRaizPspRecDir enviado na remessa de segregação iniciada + para o idInfSegr informado”. + +3.7 RETORNO SUPER INTELIGENTE PARA NÚCLEA/PSPS + +Nesse fluxo, a Núclea (no arranjo Boleto) e os PSPs (nos arranjos Pix Dinâmico e Pix Automático) +consultam a PP para verificar se há novas mensagens do Super Inteligente. Para atender a essas +consultas, a PP utiliza o modelo de “pull-based event streaming”; no qual o consumidor faz +leituras sequenciais utilizando cursores baseados em token, transportados via HTTP long polling. + + Fluxo de funcionamento do Long Polling + 1. O PSP pode abrir até 6 conexões simultâneas HTTPS para a PP (este valor pode ser + ajustado pela Plataforma). + 2. A PP não responde imediatamente se não houver mensagens disponíveis. + 3. A PP mantém as conexões abertas por um período configurado (tempo máximo de 6 + segundos - este tempo pode ser ajustado pela Plataforma). + 4. Se surgir uma mensagem, a PP envia imediatamente a resposta ao PSP. + 5. Se não surgir nada até o tempo máximo, a PP responde sem mensagens. + 6. O PSP envia nova requisição, reiniciando o ciclo. + +Token de posição trocado entre PP e PSP + +A PP possui um mecanismo de controle de leitura que utiliza um token de posição, enviado pela +PP para o PSP em cada resposta do long polling. Esse token indica qual foi o último lote de +mensagens entregue ao PSP e serve para: + • Garantir ordem na leitura; + + + Página 25 de 58 + Split Payment | Manual de Integração Versão 1.1.0 + + + • Permitir que o PSP continue a leitura exatamente de onde parou; + • Viabilizar reprocessamento adequado caso o PSP perca a conexão. + +Como funciona a troca do token + 1. PSP envia uma requisição de "/start" para iniciar o ciclo de consultas. + 2. PP envia resposta contendo: + • Id da stream. (Esse id poderá ser usado na consulta retroativa) + • Uma ou mais mensagens (se houver). Se não surgir nenhuma mensagem até o timeout, + retorna o status “204 No Content”; + • Um token que deverá compor a URL a ser usada na próxima requisição. + 3. PSP envia nova requisição com o token recebido /{token}. + 4. PP envia nova resposta contendo: + • Uma ou mais mensagens a partir da posição do token recebido na requisição do passo 3. + Se não surgir nenhuma mensagem até o timeout, retorna o status “204 No Content”. + • Um novo token para a próxima requisição. + 5. PSP repete os passos 3 e 4 enquanto quiser manter o fluxo de recebimento de + mensagens. + 6. PSP envia nova requisição finalizando o ciclo, quando quiser encerrar o fluxo do stream. + +* A URI usada nesse fluxo faz uso de dois pathParams “{arrj}” e “{cnpjRaizPspRecDir}” a fim de +indicar para que arranjo e psp se deseja o retorno das mensagens do Super Inteligente. + +A figura abaixo retrata o fluxo descrito: + + + + + Página 26 de 58 + Split Payment | Manual de Integração Versão 1.1.0 + + + + +3.7.1 Continuidade do consumo e recuperação de conexão + +O fluxo de Retorno Super Inteligente utiliza um mecanismo de consumo contínuo baseado em +tokens de posição. Cada resposta retornada pela Plataforma Pública contém o token que +deverá ser utilizado na próxima requisição para continuidade da leitura. + +Quando a requisição ao endpoint /start retornar HTTP 200, o PSP deverá consumir as +mensagens recebidas e realizar a próxima chamada utilizando o token retornado pela +Plataforma Pública. + +Quando a requisição ao endpoint /start retornar HTTP 204 - No Content, isso indica apenas que +não houve mensagens disponíveis dentro da janela de espera do long polling. Nesse caso, o +stream foi criado com sucesso e permanece ativo. O PSP não deve iniciar um novo stream por + + + Página 27 de 58 + Split Payment | Manual de Integração Versão 1.1.0 + + +meio de outra chamada ao endpoint /start, devendo prosseguir o consumo utilizando o token +retornado na resposta. + +Da mesma forma, durante o consumo do stream, uma resposta HTTP 204 - No Content não +representa erro ou encerramento do stream. O PSP poderá continuar realizando novas +chamadas utilizando o token vigente para aguardar a disponibilização de novas mensagens. + +Enquanto houver consumo da stream por meio das requisições de continuidade utilizando os +tokens retornados pela Plataforma Pública, o fluxo permanecerá ativo para recebimento de +novas mensagens. Caso a stream permaneça sem utilização por um período superior ao limite +configurado pela Plataforma Pública, ela poderá ser encerrada automaticamente. Esse +mecanismo tem como objetivo evitar a manutenção de streams órfãs em situações como perda +de conexão, indisponibilidade prolongada ou perda das informações de controle por parte do +PSP. Após o encerramento automático, o PSP deverá iniciar uma nova stream por meio do +endpoint /start. + +Em caso de perda de conexão, timeout de rede ou qualquer falha de comunicação que impeça +o recebimento da resposta, o PSP deverá retomar o consumo utilizando o último token +recebido com sucesso da Plataforma Pública. Dessa forma, o fluxo de leitura poderá continuar +a partir da última posição conhecida pelo consumidor. + +3.7.2 Tratamento de erros + +Uma requisição deste serviço é considerada recebida e processada com sucesso quando a +Plataforma Pública consegue iniciar ou dar continuidade ao stream de consumo de mensagens, +retornando os dados disponíveis ou mantendo o consumidor na posição de leitura +correspondente ao token informado. + +Em caso de erro, o comportamento esperado do PSP dependerá do código retornado: + +Em caso de retorno HTTP 422 - Unprocessable Entity, significa que foi identificada uma +violação de regra de negócio, como, por exemplo, utilização de um streamId inexistente ou de +um token inexistente. Nessa situação, o PSP deverá corrigir a causa do erro e reenviar a +requisição. + +Em caso de retorno HTTP 400 - Bad Request ou HTTP 500 - Internal Server Error, a requisição +não foi processada com sucesso. Nessa situação, o chamador deverá corrigir a causa do erro, +quando aplicável, e reenviar a requisição. + +Em caso de retorno HTTP 410 - Gone, significa que a stream informada foi encerrada por um +DELETE ou automaticamente em função da política de sanitização de streams inativas. Nessa +situação, o PSP deverá considerar a stream definitivamente encerrada e iniciar uma nova stream +por meio do endpoint /start. +Caso necessário, mensagens eventualmente não processadas poderão ser recuperadas por +meio da Consulta Retroativa Super Inteligente. + + + + + Página 28 de 58 + Split Payment | Manual de Integração Versão 1.1.0 + + +3.7.3 Dados do Retorno Super Inteligente para Núclea/PSPs + +Consulta dicionário de campos +M = Mandatório, O = Opcional, N/E = Não existe + + Pix Pix + Nome do Campo Campo JSON Boleto + Automático Dinâmico + + TRANSACOES[1...n] + + Número Sequencial Único da + nsuId M M M + mensagem + + Código da mensagem codMsg M M M + + Data Hora Disponibilização dtHrDisp M M M + + ID DDA idDda M N/E N/E + + Número de controle do originador da + numCtrlOrig M N/E N/E + transação + + Identificador de transação (TxID) txId N/E M M + + Valor Informado vlInf M M M + + CBS Corrigido vlCbsCorr O O O + + IBS Corrigido vlIbsCorr O O O + + CBS Em Aberto vlCbsAberto O O O + + IBS Em Aberto vlIbsAberto O O O + + Documento Fiscal docFiscal O O O + + Raiz CNPJ PSP Recebedor Indireto cnpjRaizPspRecInd O O O + + Raiz CNPJ PSP Recebedor Direto cnpjRaizPspRecDir M M M + + CNPJ Recebedor cnpjRec N/E M M + + +O token de continuação e o streamId têm validade limitada (2 minutos) Requisições com token +inválido, expirado ou já encerrado são rejeitadas. O encerramento do stream é feito por HTTP +DELETE. +Nas respostas HTTP 204 (sem corpo), o token de continuação é retornado no cabeçalho +(proximoToken): no fluxo principal do Super Inteligente, o 204 indica ausência de mensagens no +momento, cabendo ao PSP prosseguir consultando com o proximoToken. + + +3.8 CONSULTA RETROATIVA SUPER INTELIGENTE PARA NÚCLEA/PSPS + +Nesse fluxo, os PSPs acessam a PP para consultar, de forma retroativa, mensagens de retorno +do Super Inteligente. Diferentemente do fluxo principal de Retorno Super Inteligente, que entrega +as mensagens mais recentes, esse fluxo devolve mensagens já entregues anteriormente, com +base em tokens. + + + + + Página 29 de 58 + Split Payment | Manual de Integração Versão 1.1.0 + + +Os dados retornados nessa consulta são os mesmos apresentados na seção 3.7.3. Essa +consulta também utiliza o modelo de "pull-based event streaming”; e “long polling” descritos +anteriormente. + + Como funciona a troca de tokens entre PP e PSP no retroativo: + 1. PSP envia uma requisição de consulta retroativa Super Inteligente. + Exemplo: "/api/v1/retroativo/boleto/{cnpjRaizPspRecDir}/transacoes/stream/start"; + 2. PP envia resposta contendo: + a. Uma ou mais mensagens (se houver); + b. O próximo token indicando a nova posição fim de leitura. O token comporá a URL a + ser usada na próxima requisição. + +Ex Header retornado: + +proximoToken = /api/v1/retroativo/boleto/{cnpjRaizPspRecDir}/transacoes/stream/token=R1 + 3. PSP envia requisição com o token recebido “.../transacoes/stream/token=R1". + 4. PP envia nova resposta contendo: + a. Uma ou mais mensagens referentes ao token recebido na requisição do passo 3. Se + não houver mais mensagens, retorna o status “204 No Content” e um último token. + Neste caso o PSP deve fazer a chamada do passo 6, “HTTP DELETE”, com o último + token retornado para finalizar, pois indica que o stream retroativo chegou ao fim. + b. O próximo token indicando a nova posição fim de leitura. + 5. PSP repete os passos 3 e 4 se deseja recuperar as mensagens seguintes. + 6. PSP envia nova requisição encerrando o ciclo. + +Exemplo: DELETE /api/v1/retroativo/boleto/{cnpjRaizPspRecDir}/transacoes/stream/{token} + +A figura abaixo retrata o fluxo descrito: + + + + + Página 30 de 58 + Split Payment | Manual de Integração Versão 1.1.0 + + + + +A consulta retroativa Super Inteligente poderá ser realizada de 3 maneiras: + • Consulta por intervalo de NSU: +Ex: +/api/v1/retroativo/boleto/{cnpjRaizPspRecDir}/transacoes/stream/start?nsuInicial=501&nsuFinal +=550 + • Consulta por stream: +Ex: +/api/v1/retroativo/boleto/{cnpjRaizPspRecDir}/transacoes/stream/start?nsuInicial=501&nsuFinal +=550&streamId=A + • Consulta por stream encerrada: +Ex: +/api/v1/retroativo/boleto/{cnpjRaizPspRecDir}/transacoes/stream/start?nsuInicial=501&streamId +=A + + + + +Ilustração das Consultas Retroativas de Split Super Inteligente: + + + + + Página 31 de 58 + Split Payment | Manual de Integração Versão 1.1.0 + + + + + Página 32 de 58 + Split Payment | Manual de Integração Versão 1.1.0 + + + + + Página 33 de 58 + Split Payment | Manual de Integração Versão 1.1.0 + + + + +Observações: + +• Cabe ao cliente realizar as consultas da forma indicada, para minimizar o tráfego na rede e +otimizar a comunicação como um todo. + +• Serão estabelecidos mecanismos para limitar as chamadas de consulta retroativa e incentivar +as boas práticas em seu uso. + + + +3.8.1 Utilização da consulta retroativa e recuperação de mensagens + +A Consulta Retroativa Super Inteligente destina-se à recuperação de mensagens já +disponibilizadas anteriormente pela Plataforma Pública. + +Esse mecanismo pode ser utilizado, entre outras situações, quando: + + • houver falha no processamento interno das mensagens já recebidas pelo PSP; + + • forem identificadas lacunas de processamento ou indícios de perda de mensagens; + + • houver necessidade de reprocessamento, conciliação operacional, auditoria ou + reconstrução de histórico. + + + + + Página 34 de 58 + Split Payment | Manual de Integração Versão 1.1.0 + + +Durante a navegação da consulta retroativa, o PSP deverá utilizar os tokens retornados pela +Plataforma Pública para recuperar sequencialmente as mensagens pertencentes ao escopo +consultado. + +Quando a requisição de início da consulta retroativa (/start) retornar HTTP 200, a Plataforma +Pública disponibilizará as mensagens encontradas e o token que deverá ser utilizado na próxima +requisição para continuidade da recuperação. + +Quando a requisição de início da consulta retroativa (/start) retornar HTTP 204 - No Content, isso +significa que não existem mensagens disponíveis para os parâmetros informados na consulta. +Nesse caso, a stream retroativa foi criada com sucesso, porém não há registros a serem +recuperados. Após receber esse retorno, o PSP deverá realizar a chamada de encerramento da +stream retroativa por meio do endpoint HTTP DELETE utilizando o token retornado pela +Plataforma Pública. + +Durante a navegação da consulta retroativa, quando a Plataforma Pública retornar HTTP 204 - +No Content para uma requisição realizada com token, isso significa que foi atingido o final do +conjunto de mensagens disponíveis para os parâmetros informados na consulta retroativa. Após +receber esse retorno, o PSP deverá realizar a chamada de encerramento da stream retroativa +por meio do endpoint HTTP DELETE utilizando o último token recebido. + +O PSP também poderá optar por interromper a consulta retroativa antes de atingir o final das +mensagens disponíveis. Nesse caso, poderá realizar a chamada HTTP DELETE a qualquer +momento para encerrar o fluxo retroativo em andamento. + + + + +3.8.2 Tratamento de erros + +Uma requisição deste serviço é considerada recebida e processada com sucesso quando a +Plataforma Pública consegue localizar e disponibilizar as mensagens correspondentes aos +parâmetros informados na consulta ou informar que não existem registros disponíveis para +recuperação dentro do escopo consultado. + +Em caso de retorno HTTP 422 - Unprocessable Entity, significa que foi identificada uma violação +de regra de negócio, como, por exemplo, utilização de um streamId inexistente ou de um token +inexistente. Nessa situação, o PSP deverá corrigir a causa do erro e reenviar a requisição. + +Em caso de retorno HTTP 400 - Bad Request ou HTTP 500 - Internal Server Error, a requisição +não foi processada com sucesso. Nessa situação, o chamador deverá corrigir a causa do erro, +quando aplicável, e reenviar a requisição. + +Em caso de retorno HTTP 410 – Gone, significa que a stream informada foi encerrada por um +DELETE ou automaticamente em função da política de sanitização de streams inativas. Nessa +situação, o PSP deverá considerar a stream definitivamente encerrada e iniciar uma nova stream + + + Página 35 de 58 + Split Payment | Manual de Integração Versão 1.1.0 + + +por meio do endpoint /start. + + + + +3.9 MECANISMO DE OCORRÊNCIAS (MOC) + +O Mecanismo de Ocorrências (MOC) é o fluxo de integração utilizado para comunicar à +Plataforma Pública situações de exceção em transações com Split, fora do fluxo padrão dos +informes. O MOC possui duas funcionalidades: a Notificação de Transação em Análise, acionada +quando uma transação com Liquidação Interbancária ou Liquidação Intrabancária já realizada é +retida por Impeditivos Não Contratuais (por exemplo, análises de segurança, prevenção à fraude +ou compliance); e a Solicitação de Estorno, utilizada para recuperar o CBS/IBS Segregado nos +casos de incidente de segurança ou falha operacional do PSP ou da Entidade Liquidante. + +A partir desta versão, cada funcionalidade possui um endpoint de envio próprio: as solicitações +de estorno são enviadas em POST /api/v1/moc/solicitacao e as notificações de transação em +análise em POST /api/v1/moc/notificacao. À semelhança dos informes, cada requisição possui +um nível superior (infRequisicao) com os dados da mensagem e um array de ocorrências (de 1 +a 1.000 itens); cada requisição carrega exclusivamente ocorrências do seu tipo (SOL ou NOT). +O retorno das solicitações de estorno é obtido por consulta paginada em GET +/api/v1/moc/{cnpjRaizPspRecDir}/ocorrencias. + +Em todos os arranjos, o envio das mensagens do MOC é de responsabilidade do PSP Recebedor +Direto. Caso o PSP Recebedor Direto utilize Prestador de Serviço de Conexão para transmissão +dos informes do Split, o mesmo prestador deverá ser utilizado para transmitir os dados +relacionados ao MOC. No arranjo Boleto, ainda que os informes regulares sejam transmitidos +pela Núclea, o acionamento do MOC permanece sob responsabilidade do PSP Recebedor +Direto. + +3.9.1 Tipos de mensagens do MOC + +As duas funcionalidades do MOC se desdobram em três tipos de mensagem na comunicação +com a Plataforma Pública: a Notificação de Transação em Análise e a Solicitação de Estorno, +enviadas pelo PSP Recebedor Direto em endpoints distintos; e a Consulta Ocorrências, +disponibilizado pela Plataforma Pública por meio da consulta paginada. + +As mensagens do MOC são aplicáveis a todos os arranjos participantes do Split e devem estar +correlacionadas à transação original por meio dos identificadores do arranjo e dos headers +padrão definidos neste manual. + + Endpoint / evento que gera a comunicação Responsável Relação com os + Mensagem + via API pelo envio informes + + POST /api/v1/moc/notificacao: Transação com A transação não é + Notificação de liquidação interbancária ou intrabancária PSP incluída no Informe de + Transação em concluída, retida por impeditivos não Recebedor Segregação enquanto + Análise contratuais antes do envio do Informe de Direto a ocorrência de análise + Segregação. estiver em aberto. + + + + + Página 36 de 58 + Split Payment | Manual de Integração Versão 1.1.0 + + + Endpoint / evento que gera a comunicação Responsável Relação com os + Mensagem + via API pelo envio informes + + POST /api/v1/moc/solicitacao: Solicitação de PSP A ocorrência deve + Solicitação de + análise de estorno de CBS/IBS já segregado e Recebedor referenciar a + Estorno + informado à Plataforma Pública. Direto transação. + + GET A consulta é associada + Consulta /api/v1/moc/{cnpjRaizPspRecDir}/ocorrencias : Plataforma à ocorrência + Ocorrências Resposta da RFB ou do CGIBS à solicitação Pública previamente + enviada via Plataforma Pública. registrada. + + + + + Página 37 de 58 + Split Payment | Manual de Integração Versão 1.1.0 + + +3.9.2 Notificação de Transação em Análise + + + + + # Camada Tipo Descrição + + Início do processo. PSP Recebedor Direto envia os dados da + 1 PSP Recebedor Direto Comunicação Notificação de Transação em Análise para a Plataforma + Pública de Split Payment (PP). + + Plataforma Pública de A PP recebe os dados da Notificação de Transação em + 2 Comunicação + Split Payment (PP) Análise do PSP Recebedor Direto. + + A PP gera um número de controle “ResourceId”, que + Plataforma Pública de + 3 Ação representa a operação iniciada pelo PSP Recebedor Direto e + Split Payment (PP) + grava logs da operação. + + A PP informa, no retorno da chamada à API, o número de + controle “ResourceId”, que representa a operação iniciada + Plataforma Pública de + Comunicação pelo PSP Recebedor Direto. + 4 Split Payment (PP) + *ResourceId: Possibilita aos PSPs consultar o recurso + incluído. A consulta será especificada nas próximas versões + do manual. + + 5 PSPs Comunicação Os PSPs recebem o retorno da chamada à API + + Plataforma Pública de A PP envia os dados da Notificação de Transação em + 6 Comunicação + Split Payment (PP) Análise para Receita/Comitê Gestor. + + + + + Página 38 de 58 + Split Payment | Manual de Integração Versão 1.1.0 + + + # Camada Tipo Descrição + + A Receita/Comitê Gestor recebem os dados da Notificação + 7 Receita/Comitê Gestor Comunicação + de Transação em Análise enviados pela PP. + + A Receita/Comitê Gestor gravam os dados da Notificação de + 8 Receita/Comitê Gestor Ação + Transação em Análise enviados pela PP. + + + +3.9.2.1 Dados da Notificação de Transação em Análise + +Consulta dicionário de campos +M = Mandatório, O = Opcional, N/E = Não existe + + Pix Pix Pix + Nome do Campo Campo JSON Boleto TED TEF + Automático Dinâmico Estático + + Data Hora Mensagem dtHrMsg M M M M M M + + OCORRENCIAS [1...n] + + Índice do item na lista de + index M M M M M M + ocorrências enviadas + + Arranjo arrj M M M M M M + + ID DDA idDda M N/E N/E N/E N/E N/E + + Número Identificação + numIdentcBaixa O N/E N/E N/E N/E N/E + Baixa + + Identificador de transação + txId N/E M M N/E N/E N/E + (TxID) + + Identificador de transação + e2eId N/E O O M N/E N/E + (E2EID) + + Número de controle TED numCtrlTED N/E N/E N/E N/E M N/E + + Número de controle TEF numCtrlTEF N/E N/E N/E N/E N/E M + + Identificador da + idOcor M M M M M M + ocorrência + + Valor Pago vlPago M M M M M M + + CBS Segregado vlCbsSegr M M M M M M + + IBS Segregado vlIbsSegr M M M M M M + + Documento Fiscal docFiscal O O O O O O + + Data Hora Pagamento dtHrPgto M M M M N/E M + + Data Hora Liquidação dtHrLiq M M M M M M + + CNPJ Pagador Original cnpjPagOrig M M M M M M + + CNPJ ou CPF Pagador + Efetivo + cnpjCpfPagEfet O M M M M M + + Raiz CNPJ PSP Pagador cnpjRaizPspPag M M M M M N/E + + Raiz CNPJ PSP cnpjRaizPspRecDi + M M M M M M + Recebedor Direto r + + + Página 39 de 58 + Split Payment | Manual de Integração Versão 1.1.0 + + + Pix Pix Pix + Nome do Campo Campo JSON Boleto TED TEF + Automático Dinâmico Estático + + CNPJ Recebedor cnpjRec M M M M M M + + Descrição Ocorrência descOcor O O O O O O + + CNPJ ou CPF Parte + cnpjCpfDest M M M M M M + Destinatária + + Órgão Responsável + orgRespProcAdm O O O O O O + Processo Administrativo + + Número Processo + numProcAdm O O O O O O + Administrativo + + + +3.9.3 Solicitação de Estorno + + + + + # Camada Tipo Descrição + + Início do processo. PSP Recebedor Direto envia os dados da + 1 PSP Recebedor Direto Comunicação Solicitação de Estorno para a Plataforma Pública de Split + Payment (PP). + + Plataforma Pública de A PP recebe os dados da Solicitação de Estorno do PSP + 2 Comunicação + Split Payment (PP) Recebedor Direto. + + + Página 40 de 58 + Split Payment | Manual de Integração Versão 1.1.0 + + + # Camada Tipo Descrição + + A PP gera um número de controle “ResourceId”, que + Plataforma Pública de + 3 Ação representa a operação iniciada pelo PSP Recebedor Direto e + Split Payment (PP) + grava logs da operação. + + A PP informa, no retorno da chamada à API, o número de + controle “ResourceId”, que representa a operação iniciada + Plataforma Pública de + Comunicação pelo PSP Recebedor Direto. + 4 Split Payment (PP) + *ResourceId: Possibilita aos PSPs consultar o recurso + incluído. A consulta será especificada nas próximas versões + do manual. + + 5 PSPs Comunicação Os PSPs recebem o retorno da chamada à API + + Plataforma Pública de A PP envia os dados da Solicitação de Estorno para + 6 Comunicação + Split Payment (PP) Receita/Comitê Gestor. + + A Receita/Comitê Gestor recebem os dados da Solicitação + 7 Receita/Comitê Gestor Comunicação + de Estorno enviados pela PP. + + A Receita/Comitê Gestor gravam os dados da Solicitação de + 8 Receita/Comitê Gestor Ação + Estorno enviados pela PP. + + + +3.9.3.1 Dados da Solicitação de Estorno + +Consulta dicionário de campos +M = Mandatório, O = Opcional, N/E = Não existe + + Pix Pix Pix + Nome do Campo Campo JSON Boleto TED TEF + Automático Dinâmico Estático + + Data Hora Mensagem dtHrMsg M M M M M M + + OCORRENCIAS [1...n] + + Índice do item na lista de + index M M M M M M + ocorrências enviadas + + Arranjo arrj M M M M M M + + ID DDA idDda M N/E N/E N/E N/E N/E + + Número Identificação Baixa numIdentcBaixa O N/E N/E N/E N/E N/E + + Identificador de transação + txId N/E M M N/E N/E N/E + (TxID) + + Identificador de transação + e2eId N/E O O M N/E N/E + (E2EID) + + Número de controle TED numCtrlTED N/E N/E N/E N/E M N/E + + Número de controle TEF numCtrlTEF N/E N/E N/E N/E N/E M + + Identificador da ocorrência idOcor M M M M M M + + Valor Pago vlPago M M M M M M + + CBS Segregado vlCbsSegr M M M M M M + + IBS Segregado vlIbsSegr M M M M M M + + + + Página 41 de 58 + Split Payment | Manual de Integração Versão 1.1.0 + + + Pix Pix Pix + Nome do Campo Campo JSON Boleto TED TEF + Automático Dinâmico Estático + + Documento Fiscal docFiscal O O O O O O + + Data Hora Pagamento dtHrPgto M M M M N/E M + + Data Hora Liquidação dtHrLiq M M M M M M + + CNPJ Pagador Original cnpjPagOrig M M M M M M + + CNPJ ou CPF Pagador + cnpjCpfPagEfet O M M M M M + Efetivo + + Raiz CNPJ PSP Pagador cnpjRaizPspPag M M M M M N/E + + Raiz CNPJ PSP Recebedor cnpjRaizPspRec + M M M M M M + Direto Dir + + CNPJ Recebedor cnpjRec M M M M M M + + Descrição Ocorrência descOcor O O O O O O + + CNPJ ou CPF Parte + cnpjCpfDest M M M M M M + Destinatária + + Código Motivo Ocorrência codMotOcor M M M M M M + + Valor CBS a Estornar vlCbsEst M M M M M M + + Valor IBS a Estornar vlIbsEst M M M M M M + + + +3.9.4 Consulta Ocorrências + +Nesse fluxo, o PSP Recebedor Direto consulta a PP (Plataforma Pública) para obter o retorno +das solicitações de estorno enviadas via MOC (respostas da RFB/CGIBS). O retorno é obtido +por polling: o PSP realiza consultas periódicas ao endpoint e a PP responde sincronamente a +cada chamada, retornando as ocorrências disponíveis no momento ou, quando não houver +nenhuma, o status "204 No Content". Diferentemente do Retorno Super Inteligente (seção 3.7), +não há long polling: a PP não mantém a requisição em espera aguardando novas respostas; +cada consulta é atendida e encerrada de imediato, cabendo ao PSP repetir a consulta para obter +as demais ocorrências. Enquanto houver retornos com conteúdo o PSP deve continuar +requisitando a API respeitando os limites acordados. O intervalo de verificação recomendado, de +30 minutos, aplica-se apenas quando não há mais ocorrências a recuperar no momento. Nesta +situação o PSP deve aguardar pelo intervalo citado antes de consultar novamente. As +ocorrências retornadas seguem o dicionário de campos descrito no item Dados da Consulta +Ocorrências, a seguir. + +Fluxo de funcionamento do Polling: + 1. O PSP Recebedor Direto envia uma requisição HTTPS de consulta à PP. + 2. A PP responde prontamente: se houver ocorrências com resposta disponíveis, retorna-as + no corpo da resposta; caso contrário, retorna o status "204 No Content". + 3. Caso o retorno da PP contenha menos ocorrências do que o limite solicitado (ex: retorne + 499 ou menos, sendo a requisição passada com "limite=500"), deve ser inferido que não + + + + Página 42 de 58 + Split Payment | Manual de Integração Versão 1.1.0 + + + há mais mensagens disponíveis no momento, e a próxima chamada aguarda o tempo + indicado, de 30 minutos. + 4. No caso de resposta sem conteúdo (204 No Content), o PSP aguarda o tempo indicado + (30 minutos) e faz nova requisição à PP. + +* A URI usada nesse fluxo faz uso do pathParam "{cnpjRaizPspRecDir}" a fim de indicar para +qual PSP Recebedor Direto se deseja o retorno das ocorrências do MOC. Diferentemente do +Retorno Super Inteligente, a consulta de ocorrências não é segregada por arranjo: uma mesma +consulta pode retornar ocorrências de diferentes arranjos. Recomenda-se que o PSP consuma +todas as ocorrências já prontas enquanto a PP retornar conteúdo de ocorrências, encadeando +as consultas de imediato; e que, quando não houver mais ocorrências no momento, realize a +verificação a cada 30 minutos, evitando polling excessivo, a fim de minimizar o tráfego na rede e +otimizar a comunicação. + +A consulta aceita dois parâmetros de query: nsuInicial (obrigatório) — Número Sequencial Único +da mensagem a partir do qual a consulta é paginada, devendo ser informado o valor inicial igual +a 1 na primeira consulta; e limite (opcional) — quantidade máxima de ocorrências retornadas por +página, com valor padrão e máximo igual a 1.000. Exemplo: GET +/api/v1/moc/{cnpjRaizPspRecDir}/ocorrencias?nsuInicial=1&limite=1000. + +3.9.4.1 Dados da Consulta Ocorrências + +Consulta dicionário de campos +M = Mandatório, O = Opcional, N/E = Não existe + + Pix Pix Pix + Nome do Campo Campo JSON Boleto TED TEF + Automático Dinâmico Estático + + OCORRENCIAS [1...n] + Número Sequencial + nsuId M M M M M M + Único da mensagem + Arranjo arrj M M M M M M + + Identificador da + idOcor M M M M M M + ocorrência + + Data Hora Envio + dtHrEnvOcor M M M M M M + Ocorrência + + Data Hora Resposta + dtHrRespOcor M M M M M M + Ocorrência + + ID DDA idDda M N/E N/E N/E N/E N/E + + Número Identificação + numIdentcBaixa O N/E N/E N/E N/E N/E + Baixa + + Identificador de + txId N/E M M N/E N/E N/E + transação (TxID) + + Identificador de + e2eId N/E O O M N/E N/E + transação (E2EID) + + Número de controle + numCtrlTED N/E N/E N/E N/E M N/E + TED + + + + Página 43 de 58 + Split Payment | Manual de Integração Versão 1.1.0 + + + Pix Pix Pix + Nome do Campo Campo JSON Boleto TED TEF + Automático Dinâmico Estático + + Número de controle + numCtrlTEF N/E N/E N/E N/E N/E M + TEF + + Órgão Responsável + orgRespRes M M M M M M + Resposta + + Código Parecer + codParecer M M M M M M + Solicitação + + Tipo Tributo tpTrib M M M M M M + + Valor Tributo a + vlTribEst M M M M M M + Estornar + + Descrição Parecer descParecer O O O O O O + + Orientação à parte + orientSolic O O O O O O + solicitante + + Identificador + Aprovação Estorno idAprovEst O O O O O O + RFB/CGIBS¹ + + +¹Nota: Identificador Aprovação Estorno RFB/CGIBS (idAprovEst) é Mandatório quando Código +Parecer Solicitação for 01 ou 02 (Aceita ou Aceita Parcialmente). + + + + + Página 44 de 58 + Split Payment | Manual de Integração Versão 1.1.0 + +4. Con tr ato de m ens age ns e payl oa ds + + + + + CAPÍTULO 4 – CONTRATO DE MENSAGENS E PAYLOADS + + +A API da Plataforma Pública do Split Payment fornece endpoints HTTP para recebimento das +mensagens de transação do Split. + +4.1 EXEMPLOS DE REQUISIÇÕES E RESPOSTAS DA API + +Para cada arranjo, a PP disponibiliza um endpoint para transmissão do informe. Ver tabela de +endpoints por arranjo. + +Os exemplos de payload de request e response da API estão presentes na documentação da +API baseada no padrão OpenAPI Specification (OAS) v3 que será disponibilizada junto com este +documento. + + + + + Página 45 de 58 + Split Payment | Manual de Integração Versão 1.1.0 + +5. Polític a de tr atam en to de er r os + + + + + CAPÍTULO 5 – POLÍTICA DE TRATAMENTO DE ERROS + + +A Política de Tratamento de Erros estabelece as diretrizes adotadas pela Plataforma para +identificar, classificar, registrar e responder adequadamente às falhas ocorridas durante o +processamento das requisições. Seu objetivo é garantir previsibilidade, transparência e robustez +operacional, permitindo que os participantes (PSPs) compreendam de forma clara como a +Plataforma se comporta em diferentes cenários de erro e quais ações são esperadas de cada +parte. + +Ao padronizar o comportamento diante de falhas, a Plataforma assegura: + • Consistência nas respostas enviadas aos clientes; + • Confiabilidade no fluxo de integração, reduzindo ambiguidades e comportamentos + inesperados; + • Observabilidade completa, por meio de trilhas de auditoria com correlação ponta a ponta; + • Melhor experiência de integração, especialmente em cenários de alta concorrência ou + degradação parcial; + • Aderência às melhores práticas de arquiteturas distribuídas, incluindo mecanismos como + backoff exponencial e circuit breakers. + +5.1 PROCESSAMENTO E RESPOSTA DAS REQUISIÇÕES + +Esta seção descreve, de forma unificada, como a Plataforma Pública de Split Payment (PP) +processa as requisições dos serviços de envio e como o chamador deve interpretar e tratar a +resposta. As regras a seguir aplicam-se a todos os endpoints de envio, salvo particularidades +destacadas na descrição de cada serviço. + +Sucesso do processamento (HTTP 201). Uma requisição é considerada recebida e processada +com sucesso quando a PP consegue tratar tecnicamente a chamada, realizar a validação +individual de cada item enviado e retornar o código HTTP 201 com o resultado do +processamento. O código 201 confirma que a chamada foi tratada, e não necessariamente que +todos os itens foram aceitos: o resultado item a item deve ser lido no corpo da resposta. + +Processamento parcial e rejeição por item. Na resposta 201, a Plataforma Pública processa +independentemente cada item enviado. Os itens válidos são aceitos e contabilizados em +numValidos, enquanto os itens rejeitados são contabilizados em numErros e detalhados no +atributo errors. Cada objeto da lista errors informa o índice do item rejeitado (index), o campo +responsável pela inconsistência (field, quando aplicável) e a descrição do erro (message). O +chamador deve corrigir apenas os itens rejeitados e reenviá-los em uma nova requisição, não +sendo necessário reenviar os itens já processados com sucesso. O identificador resourceId +representa a solicitação processada e deve ser utilizado para consultas posteriores do +processamento. + +O corpo da resposta de processamento traz os seguintes dados: + + + + + Página 46 de 58 + Split Payment | Manual de Integração Versão 1.1.0 + + + Campo Formato Descrição + + title Alfanumérico Título resumido do resultado do processamento. Ex.: "Sucesso". + + status Numérico Código HTTP retornado pela API. Ex.: 201. + + Mensagem descritiva do resultado do processamento. Ex.: "Solicitação + detail Alfanumérico + processada com sucesso". + + numValidos Numérico Quantidade de itens recebidos e processados com sucesso. + + Quantidade de itens rejeitados durante o processamento. Quando igual a + numErros Numérico + 0, todos os itens foram processados com sucesso. + + Lista contendo apenas os itens rejeitados. O atributo pode estar vazio ou + errors Array + ausente quando não houver erros de processamento. + + Identificador único da solicitação processada. Deve ser utilizado para + resourceId Alfanumérico + consultas posteriores da operação. + + + +Objeto errors: + + Campo Formato Descrição + + Índice (1..n) do item rejeitado na lista enviada, permitindo correlacionar o + index Numérico + erro ao item original da requisição. + + field Alfanumérico Nome do campo que originou a inconsistência, quando aplicável. + + Descrição do erro identificado para o item rejeitado, permitindo o + message Alfanumérico + diagnóstico e a correção pelo chamador. + + + + +Falha da requisição (HTTP 400 e 500). Uma falha ocorre quando a requisição não pode ser +processada como um todo, seja por erro na estrutura ou nos dados da chamada (HTTP 400 Bad +Request) ou por erro inesperado no servidor (HTTP 500 Internal Server Error). Nesses casos +não há garantia de processamento de nenhum item e o chamador deve corrigir a causa do erro +antes de reenviar a requisição completa. Os erros de falha seguem o padrão RFC 7807 (media +type application/problem+json), conforme detalhado na tabela de retornos de erro a seguir, que +também especifica os cenários de autenticação/autorização, limite de requisições (rate limit), +indisponibilidade e circuit breaker, com as respectivas orientações de retentativa (retry) e +cabeçalhos retornados. + +Para notificar erros nas requisições ou problemas internos, a API utiliza um objeto baseado no +padrão descrito na especificação técnica RFC 7807 respondendo com o media type +application/problem+json. + +Lista de possíveis retornos de erro da API: + + Responsáve + Headers Exemplos + Tipo de Erro Descrição HTTP Status Retentabilidade l pela + Retornados de Cenários + resposta + + Erro Dados 400 Bad Nenhum Validação de Plataforma + Não retry + Permanente inválidos; Request schema; Pública + + Página 47 de 58 + Split Payment | Manual de Integração Versão 1.1.0 + + + Responsáve + Headers Exemplos + Tipo de Erro Descrição HTTP Status Retentabilidade l pela + Retornados de Cenários + resposta + : Requisição schema JSON mal- + Inválida inválido; formado + (Cliente) campos + obrigatórios + ausentes + + Violação de + Erro Id informe de Plataforma + regra 422 Nenhum + Permanente segregação Pública + funcional, Unprocessa Não retry + : Regra de não + operação não ble Entity + Negócio encontrado; + permitida + A stream não + está mais + disponível em + função do + Tentativa de + encerramento + utilização de + por DELETE + stream + ou automático Não reutilizar a + Stream encerrada + por stream; iniciar + Expirada/Ina 410 – Gone Nenhum automaticam Plataforma + inatividade nova stream + tiva ente pela + superior ao + Plataforma + período + Pública + máximo + configurado + pela + Plataforma + Pública. + Erro Falha de + Certificado + Permanente certificado 401 Gateway + expirado; + : digital, Unauthorize Não retry Nenhum + header + Autenticaçã expiração, d + ausente + o inválida token inválido + + Erro + PSP não Gateway + Permanente PSP não + possui 403 + : Não retry Nenhum homologado + permissão de Forbidden Plataforma + Autorização na API. + acesso Pública + negada + + PSP + Erro de + Cliente 429 Too enviando Gateway + Carga Retry permitido Retry-After: + ultrapassou Many requisições + Excedida após janela 60 + limite definido Requests acima de + (Rate Limit) + limite + + Gateway + Erro de Erro Nenhum + 500 Internal Retry permitido NullPointer; Plataforma + Plataforma: inesperado + Server Error limitado erro interno Pública + Interno não tratado + + + Retry-After: + Instabilidade Instabilidade Gateway + Erro 30 + temporária, 503 Service Retry permitido na + Transitório: X-Retry- + congestionam Unavailable após intervalo persistência + Plataforma Allowed: + ento, timeout dos logs; fila + true + + + Página 48 de 58 + Split Payment | Manual de Integração Versão 1.1.0 + + + Responsáve + Headers Exemplos + Tipo de Erro Descrição HTTP Status Retentabilidade l pela + Retornados de Cenários + resposta + congestionad + a + + Proteção do + serviço: ao + detectar + falhas + repetidas, alta X-Circuit- + latência, Breaker: + buffers cheios open Publicação + Circuit ou Não retentar X-Retry- na Fila + Breaker: indisponibilida imediatamente; Allowed: interna Gateway + Fila interna 503 Service + de na Fila retentar após o true indisponível/ + Unavailable + Degradada/ interna das intervalo Retry-After: degradada; + indisponível transações. O indicado 30* (discutir buffers + circuit com equipe cheios + breaker abre de + e a API não arquitetura) + aceita novas + requisições + temporariame + nte + + Plataforma Gateway + Manutenção Retry após Retry-After + indisponível 503 Service Janelas + ou Janela horário + manutenção + + Erro + 504 Retry permitido Timeout de + Transitório: Serviço Retry-After + Gateway com backoff consulta Gateway + Dependênci indisponível 30 + Timeout exponencial externa; + a Externa + + + +Registro e Auditoria: Todos os erros serão registrados em trilhas de logs com o resourceId para +rastreamento, garantindo integridade e suporte a auditorias. + +Canal dedicado para suporte e acompanhamento: conforme o Manual de Habilitação de +Participantes. + + + + + Página 49 de 58 + Split Payment | Manual de Integração Versão 1.1.0 + +6. Ta bela de c ódi go de m ens age ns por ar r anjo + + + + + CAPÍTULO 6 – TABELA DE CÓDIGO DE MENSAGENS POR ARRANJO + + +As mensagens transmitidas no retorno do Super Inteligente e na consulta retroativa de Super +Inteligente devem ser identificadas com um código de mensagem a fim de indicar o tipo de +retorno e o arranjo, conforme a matriz abaixo. + + Arranjo + Retorno Super Inteligente / Consulta Retroativa Super Inteligente + Evento + + RSUP101 - CBS Corrigido; + RSUP102 - CBS Em Aberto; + Boleto + RSUP103 - IBS Corrigido; + RSUP104 - IBS Em Aberto; + + RSUP201 - CBS Corrigido; + RSUP202 - CBS Em Aberto; + Pix Dinâmico + RSUP203 - IBS Corrigido; + RSUP204 - IBS Em Aberto; + + RSUP601 - CBS Corrigido; + RSUP602 - CBS Em Aberto; + Pix Automático + RSUP603 - IBS Corrigido; + RSUP604 - IBS Em Aberto; + + + + + Página 50 de 58 + Split Payment | Manual de Integração Versão 1.1.0 + +7. Ta bela de e nd poi nts dos inf or m es por ar r anj o + + + + + CAPÍTULO 7 – TABELA DE ENDPOINTS DOS INFORMES POR ARRANJO + + +Para cada arranjo e tipo de informe, a PP disponibiliza um endpoint para transmissão da +mensagem conforme a tabela abaixo: + + Informe Arranjo Endpoint + + POST + Boleto + /api/v1/boleto + + POST + Informe de Transação Iniciada Pix Dinâmico + /api/v1/pix-dinamico + + POST + Pix Automático + /api/v1/pix-automatico + + PATCH + Boleto + Informe de Transação /api/v1/boleto + Atualizada PATCH + Pix Dinâmico + /api/v1/pix-dinamico + + POST + Boleto + /api/v1/boleto/baixa-exceto-pagamento + + POST + Informe de Baixa (Exceto por Pix Dinâmico + /api/v1/pix-dinamico/baixa-exceto-pagamento + Pagamento) + POST + Pix Automático + /api/v1/pix-automatico/baixa-exceto-pagamento + + POST + Boleto + /api/v1/boleto/informe-preliminar-pagamento + + POST + Pix Dinâmico + /api/v1/pix-dinamico/informe-preliminar-pagamento + + POST + Pix Automático + Informe Preliminar de /api/v1/pix-automatico/informe-preliminar-pagamento + Pagamento POST + Pix Estático + /api/v1/pix-estatico/informe-preliminar-pagamento + + POST + TED + /api/v1/ted/informe-preliminar-pagamento + + POST + TEF + /api/v1/tef/informe-preliminar-pagamento + + POST + /api/v1/segregacao + + POST + Boleto + Informe de Segregação /api/v1/boleto/segregacao/{idInfSegr}/lotes + + POST + /api/v1/segregacao/finalizacao + + Pix Dinâmico POST + + + + + Página 51 de 58 + Split Payment | Manual de Integração Versão 1.1.0 + + + Informe Arranjo Endpoint + /api/v1/segregacao + + POST + /api/v1/pix-dinamico/segregacao/{idInfSegr}/lotes + + POST + /api/v1/segregacao/finalizacao + + POST + /api/v1/segregacao + + POST + Pix Automático + /api/v1/pix-automatico/segregacao/{idInfSegr}/lotes + + POST + /api/v1/segregacao/finalizacao + + POST + /api/v1/segregacao + + POST + Pix Estático + /api/v1/pix-estatico/segregacao/{idInfSegr}/lotes + + POST + /api/v1/segregacao/finalizacao + + POST + /api/v1/segregacao + + POST + TED + /api/v1/ted/segregacao/{idInfSegr}/lotes + + POST + /api/v1/segregacao/finalizacao + + POST + /api/v1/segregacao + + POST + TEF + /api/v1/tef/segregacao/{idInfSegr}/lotes + + POST + /api/v1/segregacao/finalizacao + + GET + /api/v1/out/boleto/{cnpjRaizPspRecDir}/transacoes/stream/ + start + GET + Retorno Super Inteligente Boleto /api/v1/out/boleto/{cnpjRaizPspRecDir}/transacoes/stream/ + {token} + DELETE + /api/v1/out/boleto/{cnpjRaizPspRecDir}/transacoes/stream/ + {token} + + Página 52 de 58 + Split Payment | Manual de Integração Versão 1.1.0 + + + Informe Arranjo Endpoint + + GET + /api/v1/out/pix- + dinamico/{cnpjRaizPspRecDir}/transacoes/stream/start + GET + Pix Dinâmico /api/v1/out/pix- + dinamico/{cnpjRaizPspRecDir}/transacoes/stream/{token} + DELETE + /api/v1/out/pix- + dinamico/{cnpjRaizPspRecDir}/transacoes/stream/{token} + + GET + /api/v1/out/pix- + automatico/{cnpjRaizPspRecDir}/transacoes/stream/start + GET + /api/v1/out/pix- + Pix Automático automatico/{cnpjRaizPspRecDir}/transacoes/stream/{token + } + DELETE + /api/v1/out/pix- + automatico/{cnpjRaizPspRecDir}/transacoes/stream/{token + } + + GET + /api/v1/retroativo/boleto/{cnpjRaizPspRecDir}/transacoes/s + tream/start + GET + Boleto /api/v1/retroativo/boleto/{cnpjRaizPspRecDir}/transacoes/s + tream/{token} + DELETE + /api/v1/retroativo/boleto/{cnpjRaizPspRecDir}/transacoes/s + tream/{token} + + GET + /api/v1/retroativo/pix- + dinamico/{cnpjRaizPspRecDir}/transacoes/stream/start + GET + Pix Dinâmico /api/v1/retroativo/pix- + Consulta Retroativa Super + dinamico/{cnpjRaizPspRecDir}/transacoes/stream/{token} + Inteligente + DELETE + /api/v1/retroativo/pix- + dinamico/{cnpjRaizPspRecDir}/transacoes/stream/{token} + + GET + /api/v1/retroativo/pix- + automatico/{cnpjRaizPspRecDir}/transacoes/stream/start + GET + /api/v1/retroativo/pix- + Pix Automático automatico/{cnpjRaizPspRecDir}/transacoes/stream/{token + } + DELETE + /api/v1/retroativo/pix- + automatico/{cnpjRaizPspRecDir}/transacoes/stream/{token + } + + Notificação de POST + Mecanismo de Ocorrências + Transação em /api/v1/moc/notificacao + + + + Página 53 de 58 + Split Payment | Manual de Integração Versão 1.1.0 + + + Informe Arranjo Endpoint + Analise (Todos + os Arranjos) + + Solicitação de + POST + Estorno (Todos + /api/v1/moc/solicitacao + os Arranjos) + + Consulta GET + Ocorrências + /api/v1/moc/{cnpjRaizPspRecDir}/ocorrencias?nsuInicial + (Todos os + Arranjos) ={nsu}&limite={limite} + + + + + Página 54 de 58 + Split Payment | Manual de Integração Versão 1.1.0 + +8. Defin ição de He ader s Pa dr ão + + + + + CAPÍTULO 8 – DEFINIÇÃO DE HEADERS PADRÃO + + +As requisições deverão conter o cabeçalho HTTP X-JWS-Signature, responsável por transportar +a assinatura digital da mensagem no formato JWS Compact Detached, conforme definido na +RFC 7515. Da mesma forma, as respostas retornadas pela Plataforma Pública, em todos os +endpoints, também deverão incluir o cabeçalho X-JWS-Signature. + +O conteúdo da mensagem deverá ser previamente canonicalizado utilizando o padrão JSON +Canonicalization Scheme (JCS), especificado na RFC 8785, antes da geração da assinatura. + +O protected header da assinatura deverá conter os seguintes atributos: + + Atributo Obrigatoriedade Descrição + + Algoritmo de assinatura digital. + alg Obrigatório + Deve possuir o valor RS256. + + Tipo da estrutura de assinatura. + typ Obrigatório + Deve possuir o valor JWS. + + Identificador da chave utilizada para + geração da assinatura, permitindo + kid Obrigatório + sua correta seleção durante a + validação. + + Identificador único da requisição, no + jti Obrigatório + formato UUID versão 4 (UUID v4). + + Data e hora de emissão da + assinatura, representada no + iat Obrigatório + formato NumericDate, conforme + definido no manual de segurança. + + Deve possuir o valor false, + indicando que o payload não será + b64 Obrigatório + codificado em Base64URL antes da + assinatura, conforme RFC 7797. + + Deve possuir o valor ["b64"], + indicando que o parâmetro b64 é + crit Obrigatório crítico e deve ser compreendido + pelo sistema receptor, conforme + RFC 7797. + + + +A assinatura deverá ser transmitida no cabeçalho X-JWS-Signature no formato JWS Compact +Detached. O atributo jti deverá ser utilizado para garantir a unicidade da requisição, enquanto o +atributo iat permitirá a validação temporal da assinatura. O uso de JCS (RFC 8785) para +canonicalização do payload, combinado com JWS Detached e o algoritmo RS256, assegura a +integridade, autenticidade e interoperabilidade das mensagens trocadas entre os sistemas +participantes. + + + + + Página 55 de 58 + Split Payment | Manual de Integração Versão 1.1.0 + +9. Requ isit os d e Rastr ea bili dad e + + + + + CAPÍTULO 9 – REQUISITOS DE RASTREABILIDADE + + +Para cada requisição processada será gerado um resourceId único, independentemente do +resultado da operação (sucesso ou erro). Esse identificador será registrado nos logs de auditoria, +permitindo a rastreabilidade completa das transações, e será propagado entre os diferentes +serviços da arquitetura para suportar o rastreamento distribuído de ponta a ponta. As ferramentas +de observabilidade adotadas pela PP deverão capturar e correlacionar esse identificador durante +o processamento das requisições, utilizando-o como referência para a geração e associação de +informações, de forma a facilitar o monitoramento, a análise de desempenho e a investigação de +falhas em ambientes distribuídos. + + + + + Página 56 de 58 + Split Payment | Manual de Integração Versão 1.1.0 + +10. Hist ór ico de Revi são + + + + + CAPÍTULO 10 – HISTÓRICO DE REVISÃO + + + Data Versão Descrição das Alterações + + 03/06/2026 1.0.0 Versão Inicial + + • Novo Mecanismo de Ocorrências (MOC) na seção 3.9: + Notificação de Transação em Análise e Solicitação de + Estorno (recuperação de CBS/IBS já segregados), + com endpoints de registro, solicitação e consulta. + • Assinatura digital obrigatória em todas as requisições, + via cabeçalho X-JWS-Signature, conforme a seção 8. + • Nova seção 5.1 – Processamento e Resposta das + Requisições: modelo de retorno das operações, + tratamento individual dos registros e padronização das + respostas de erro. + • Informe de Transação Atualizada passa a contemplar + apenas Boleto e Pix Dinâmico (retirado o Pix + Automático). + • Novos campos no dicionário de dados para o MOC e + os processos de estorno. + • Dicionário de campos reorganizado e ampliado, com + ordenação alfabética dos atributos. + • Atualização editorial: nova capa CGIBS/RFB, + numeração dos capítulos e renomeação de “Histórico + 30/07/2026 1.1.0 de Versões” para “Histórico de Revisão”. + • Convenção de campos Decimal: 2 casas, ponto como + separador, sem sinal negativo e sem notação + científica. + • Convenção de envio: campos opcionais não aplicáveis + são omitidos, em vez de enviados como null. + • Padronização dos nomes de campo entre as matrizes + e o dicionário. + • numCodBarras fixado em exatamente 44 caracteres. + • Descrição de vlTotalIbs corrigida. + • Esclarecimentos: cnpjCpfDest (parte prejudicada), + idInfSegr (formato revisado, com hora de corte + conforme o Manual de Tempos) e idRepasse (comum + a CBS/TES e IBS/STR). + • dtHrRepasse: prazo-limite de envio (12:00 de D+N, + com N variando por arranjo). + • Inclusão do campo dtHrDisp no Retorno Super + Inteligente. + • Nota mapeando os papéis da comunicação efetiva e + do repasse efetivo aos do Manual de Operações. + + + + Página 57 de 58 + Split Payment | Manual de Integração Versão 1.1.0 + + + Data Versão Descrição das Alterações + + • Remoção de linhas não aplicáveis: numPgto no + Informe de Baixa e numCodBarras no Informe de + Transação Atualizada. + • Esclarecimento do tempo máximo do long polling (em + segundos). + • Ciclo de vida de token/streamId: validade e + encerramento por HTTP DELETE. + • Esclarecimento da semântica do HTTP 204 / + proximoToken. + • Esclarecimento do limite de 1.000 itens por requisição. + • Reenvio de requisição já processada (duplicado) + passa a retornar erro. + • Assinatura X-JWS-Signature estendida às respostas + de todos os endpoints. + • Substituição de {idPsp} por {cnpjRaizPspRecDir} + • Inclusão das regras de rejeição da segregação (HTTP + 422) especificadas para os três passos: remessa + iniciada em duplicidade; lote com idInfSegr inexistente + ou já finalizado; e, na finalização, divergência de + totalTrans, vlTotalCbs ou vlTotalIbs em relação às + transações enviadas. + • Esclarecimento da idempotência do lote de + segregação: o primeiro envio de um idLote cria o lote e + retorna HTTP 201; o reenvio do mesmo idLote atualiza + o lote e retorna HTTP 200. + • Campos fromNsu e toNsu renomeados para nsuInicial + e nsuFinal + • Inclusão dos itens 3.7.1, 3.7.2, 3.8.1 e 3.8.2, + detalhando como deve ser o tratamento das respostas + das requisições do retorno do Super Inteligente e da + consulta retroativa Super Inteligente + • Termo "tributos" alterado para "transações" na matriz + do Retorno do Super Inteligente + • Inclusão no retorno HTTP 410 na lista de possíveis + retornos de erro da API. + + + + + Página 58 de 58 + \ No newline at end of file diff --git a/vendor/nt/esquemas-pl-010f-v1.04.zip b/vendor/nt/esquemas-pl-010f-v1.04.zip new file mode 100644 index 0000000..3c4ba9f Binary files /dev/null and b/vendor/nt/esquemas-pl-010f-v1.04.zip differ diff --git a/vendor/nt/it-2026-001-v1.01.pdf b/vendor/nt/it-2026-001-v1.01.pdf new file mode 100644 index 0000000..6bb4d25 Binary files /dev/null and b/vendor/nt/it-2026-001-v1.01.pdf differ diff --git a/vendor/nt/nt-2025-002-v1.51.pdf b/vendor/nt/nt-2025-002-v1.51.pdf new file mode 100644 index 0000000..dbaebaa Binary files /dev/null and b/vendor/nt/nt-2025-002-v1.51.pdf differ diff --git a/vendor/nt/nt-2026-006-v1.00.pdf b/vendor/nt/nt-2026-006-v1.00.pdf new file mode 100644 index 0000000..bf48162 Binary files /dev/null and b/vendor/nt/nt-2026-006-v1.00.pdf differ diff --git a/vendor/swagger/calculadora-openapi.piloto.json b/vendor/swagger/calculadora-openapi.piloto.json index 9408077..f035797 100644 --- a/vendor/swagger/calculadora-openapi.piloto.json +++ b/vendor/swagger/calculadora-openapi.piloto.json @@ -1 +1 @@ -{"openapi":"3.1.0","info":{"title":"OpenAPI definition","version":"v0"},"servers":[{"url":"https://piloto-cbs.tributos.gov.br:12727/servico/calculadora-consumo/api","description":"Generated server url"}],"tags":[{"name":"Base de Cálculo - VERSÃO BETA","description":"Serviço para Base de Cálculo"},{"name":"Calculadora - VERSÃO BETA","description":"Calculadora de Tributos"},{"name":"NFS-e - VERSÃO BETA","description":"Serviço para cálculo de Base de Cálculo de NFS-e"},{"name":"Dados Abertos - VERSÃO BETA","description":"Consultas para os Dados Abertos"},{"name":"Observabilidade - Calculadora","description":"Endpoint de observabilidade da Calculadora de Tributos"},{"name":"Pedágio - VERSÃO BETA","description":"IVA - Calculadora de Tributos para o Pedágio"}],"paths":{"/calculadora/xml/validate":{"get":{"tags":["Calculadora - VERSÃO BETA"],"summary":"Tipos de DFe","description":"Tipos de DFe para validação de XML","operationId":"getDocumentosValidacao","responses":{"200":{"description":"Consulta realizada com sucesso","content":{"application/json":{"schema":{"$ref":"#/components/schemas/TipoDocumentoDTO"},"examples":{"Tipos de DFe Example":{"description":"Tipos de DFe Example","value":[{"nome":"NFe","mnemonico":"nfe","versaoNotaTecnica":"v1.30"},{"nome":"NFCe","mnemonico":"nfce","versaoNotaTecnica":"v1.30"},{"nome":"NFSe","mnemonico":"nfse","versaoNotaTecnica":"ND"},{"nome":"CTe","mnemonico":"cte","versaoNotaTecnica":"v1.10"},{"nome":"CTe Simplificado","mnemonico":"cte-simplificado","versaoNotaTecnica":"v1.10"},{"nome":"BPe","mnemonico":"bpe","versaoNotaTecnica":"v1.10"},{"nome":"NF3E","mnemonico":"nf3e","versaoNotaTecnica":"v1.10"}]}}}}},"500":{"description":"Erro interno na API","content":{"application/problem+json":{"schema":{"$ref":"#/components/schemas/ProblemDetail"},"examples":{"Internal Server Error Example":{"description":"Internal Server Error Example","value":{"type":"http://url-ambiente/errors/erro-interno","title":"Erro interno na API","status":500,"detail":"Falha ao processar a requisição.","instance":"/api/calculadora/xml/validate"}}}}}}}},"post":{"tags":["Calculadora - VERSÃO BETA"],"summary":"Validação de XML","description":"Valida os dados no formato XML","operationId":"validate","parameters":[{"name":"tipo","in":"query","description":"Tipo do XML","required":true,"schema":{"type":"string","enum":["nfe","nfce","nfse","cte","cte-simplificado","bpe","bpe-tm","nf3e"]}},{"name":"subtipo","in":"query","description":"Subtipo do XML","required":true,"schema":{"type":"string","enum":["grupo","nota"]}}],"requestBody":{"description":"XML a ser validado","content":{"application/xml":{"schema":{"type":"string"}}},"required":true},"responses":{"200":{"description":"Validação realizada com sucesso","content":{"application/json":{"schema":{"type":"boolean"}}}},"400":{"description":"Estrutura e/ou dados informados em formato não reconhecido","content":{"application/problem+json":{"schema":{"$ref":"#/components/schemas/ProblemDetail"}}}},"404":{"description":"Erro na URL da requisição","content":{"application/problem+json":{"schema":{"$ref":"#/components/schemas/ProblemDetail"}}}},"422":{"description":"Erro de validação","content":{"application/problem+json":{"schema":{"$ref":"#/components/schemas/ProblemDetail"}}}},"500":{"description":"Erro interno na API","content":{"application/problem+json":{"schema":{"$ref":"#/components/schemas/ProblemDetail"}}}}}}},"/calculadora/xml/generate":{"get":{"tags":["Calculadora - VERSÃO BETA"],"summary":"Tipos de DFe","description":"Tipos de DFe para geração de XML","operationId":"getDocumentosGeracao","responses":{"200":{"description":"Consulta realizada com sucesso","content":{"application/json":{"schema":{"$ref":"#/components/schemas/TipoDocumentoDTO"},"examples":{"Tipos de DFe Example":{"description":"Tipos de DFe Example","value":[{"nome":"NFe","mnemonico":"nfe","versaoNotaTecnica":"v1.30"},{"nome":"NFCe","mnemonico":"nfce","versaoNotaTecnica":"v1.30"},{"nome":"CTe","mnemonico":"cte","versaoNotaTecnica":"v1.10"},{"nome":"CTe Simplificado","mnemonico":"cte-simplificado","versaoNotaTecnica":"v1.10"},{"nome":"BPe","mnemonico":"bpe","versaoNotaTecnica":"v1.10"},{"nome":"NF3E","mnemonico":"nf3e","versaoNotaTecnica":"v1.10"}]}}}}},"500":{"description":"Erro interno na API","content":{"application/problem+json":{"schema":{"$ref":"#/components/schemas/ProblemDetail"},"examples":{"Internal Server Error Example":{"description":"Internal Server Error Example","value":{"type":"http://url-ambiente/errors/erro-interno","title":"Erro interno na API","status":500,"detail":"Falha ao processar a requisição.","instance":"/api/calculadora/xml/generate"}}}}}}}},"post":{"tags":["Calculadora - VERSÃO BETA"],"summary":"Geração de XML","description":"Converte os dados para o formato XML","operationId":"generate","parameters":[{"name":"tipo","in":"query","description":"Tipo do documento","required":true,"schema":{"type":"string","enum":["nfe","nfce","nfse","cte","cte-simplificado","bpe","bpe-tm","nf3e"]}}],"requestBody":{"description":"Dados do CBS/IBS/IS","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ROCDomain"}}},"required":true},"responses":{"200":{"description":"Conversão realizada com sucesso","content":{"application/xml":{"schema":{"type":"string"}}}},"400":{"description":"Estrutura e/ou dados informados em formato não reconhecido","content":{"application/problem+json":{"schema":{"$ref":"#/components/schemas/ProblemDetail"}}}},"404":{"description":"Erro na URL da requisição","content":{"application/problem+json":{"schema":{"$ref":"#/components/schemas/ProblemDetail"}}}},"422":{"description":"Erro de validação","content":{"application/problem+json":{"schema":{"$ref":"#/components/schemas/ProblemDetail"}}}},"500":{"description":"Erro interno na API","content":{"application/problem+json":{"schema":{"$ref":"#/components/schemas/ProblemDetail"}}}}}}},"/calculadora/regime-geral":{"post":{"tags":["Calculadora - VERSÃO BETA"],"summary":"Cálculo do tributo","description":"Calcula os tributos a partir dos dados de uma operação de consumo","operationId":"calcularTributos","requestBody":{"description":"Dados de uma operação de consumo","content":{"application/json":{"schema":{"$ref":"#/components/schemas/OperacaoInput"}}},"required":true},"responses":{"200":{"description":"Cálculo realizado com sucesso","headers":{"x-warning-dados-simulados":{"description":"Indica que os dados são simulados. Valores possíveis: 1 (alíquotas da CBS e do IBS ainda não definidas em lei), 2 (alíquotas da CBS e do IBS, e redutor em Compras Governamentais ainda não definidos em lei), 3 (alíquotas da CBS e do IBS, alíquotas e Classificações Tributárias do IS ainda não definidos em lei), 4 (alíquotas da CBS e do IBS, redutor em Compras Governamentais fictícios, alíquotas e Classificações Tributárias do IS ainda não definidos em lei), 5 (para o cClassTrib informado a alíquota ainda não foi definida em lei). ","style":"simple","schema":{"type":"integer","example":1}}},"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ROCDomain"}}}},"400":{"description":"Estrutura e/ou dados informados em formato não reconhecido","content":{"application/problem+json":{"schema":{"$ref":"#/components/schemas/ProblemDetail"}}}},"404":{"description":"Erro na URL da requisição","content":{"application/problem+json":{"schema":{"$ref":"#/components/schemas/ProblemDetail"}}}},"422":{"description":"Erro de validação","content":{"application/problem+json":{"schema":{"$ref":"#/components/schemas/ProblemDetail"}}}},"500":{"description":"Erro interno na API","content":{"application/problem+json":{"schema":{"$ref":"#/components/schemas/ProblemDetail"}}}}}}},"/calculadora/pedagio":{"post":{"tags":["Pedágio - VERSÃO BETA"],"summary":"Cálculo do tributo","description":"Calculo do pedágio","operationId":"calcularTributo","requestBody":{"description":"Dados para cálculo do pedágio","content":{"application/json":{"schema":{"$ref":"#/components/schemas/PedagioInput"}}},"required":true},"responses":{"200":{"description":"Cálculo realizado com sucesso","headers":{"x-warning-dados-simulados":{"description":"Indica que os dados são simulados. Valores possíveis: 1 (alíquotas da CBS e do IBS ainda não definidas em lei).","style":"simple","schema":{"type":"integer","example":1}}},"content":{"application/json":{"schema":{"$ref":"#/components/schemas/PedagioOutput"}}}},"400":{"description":"Estrutura e/ou dados informados em formato não reconhecido","content":{"application/problem+json":{"schema":{"$ref":"#/components/schemas/ProblemDetail"}}}},"404":{"description":"Erro na URL da requisição","content":{"application/problem+json":{"schema":{"$ref":"#/components/schemas/ProblemDetail"}}}},"422":{"description":"Erro de validação","content":{"application/problem+json":{"schema":{"$ref":"#/components/schemas/ProblemDetail"}}}},"500":{"description":"Erro interno na API","content":{"application/problem+json":{"schema":{"$ref":"#/components/schemas/ProblemDetail"}}}}}}},"/calculadora/observabilidade/regime-geral":{"post":{"tags":["Observabilidade - Calculadora"],"summary":"Cálculo com observabilidade","description":"Processa todos os itens acumulando erros individuais. Retorna resultado parcial com estado de cada item.","operationId":"calcularTributosObservabilidade","requestBody":{"description":"Dados de uma operação de consumo","content":{"application/json":{"schema":{"$ref":"#/components/schemas/OperacaoInput"}}},"required":true},"responses":{"200":{"description":"Processamento realizado (itens podem ter erros individuais)","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ObservabilidadeROCDomain"}}}},"400":{"description":"Estrutura e/ou dados informados em formato não reconhecido","content":{"application/problem+json":{"schema":{"$ref":"#/components/schemas/ProblemDetail"}}}},"422":{"description":"Erro de validação global (UF, Município, data do fato gerador)","content":{"application/problem+json":{"schema":{"$ref":"#/components/schemas/ProblemDetail"}}}},"500":{"description":"Erro interno na API","content":{"application/problem+json":{"schema":{"$ref":"#/components/schemas/ProblemDetail"}}}}}}},"/calculadora/nfse/indicador-operacao/validate":{"post":{"tags":["NFS-e - VERSÃO BETA"],"summary":"Validação de Indicador de Operação","description":"Valida se o cIndOp é compatível com cClassTrib, NBS e cTribNac (opcional)","operationId":"validarIndicadorOperacao","requestBody":{"description":"Dados para validação: cIndOp, cClassTrib, NBS e cTribNac (opcional)","content":{"application/json":{"schema":{"$ref":"#/components/schemas/NfseValidacaoIndicadorOperacaoInput"}}},"required":true},"responses":{"200":{"description":"Validação realizada com sucesso","content":{"application/json":{"schema":{"$ref":"#/components/schemas/NfseValidacaoIndicadorOperacaoOutput"}}}},"400":{"description":"Requisição com problema","content":{"application/problem+json":{"schema":{"$ref":"#/components/schemas/ProblemDetail"}}}},"404":{"description":"Erro na URL da requisição","content":{"application/problem+json":{"schema":{"$ref":"#/components/schemas/ProblemDetail"}}}},"500":{"description":"Erro interno na API","content":{"application/problem+json":{"schema":{"$ref":"#/components/schemas/ProblemDetail"}}}}}}},"/calculadora/nfse/base-calculo":{"post":{"tags":["NFS-e - VERSÃO BETA"],"summary":"Base de Cálculo NFS-e","description":"Afere a Base de Cálculo de uma NFS-e no período de transição. ATENÇÃO: Os campos PIS e COFINS não podem ser informados a partir de 2027. O campo ISS não pode ser informado a partir de 2033.","operationId":"calcularBaseCalculo","requestBody":{"description":"Dados da base de cálculo da NFS-e","content":{"application/json":{"schema":{"$ref":"#/components/schemas/NfseBaseCalculoInput"}}},"required":true},"responses":{"200":{"description":"Cálculo realizado com sucesso","content":{"application/json":{"schema":{"$ref":"#/components/schemas/NfseBaseCalculoOutput"}}}},"400":{"description":"Estrutura e/ou dados informados em formato não reconhecido ou campos incompatíveis com o ano do fato gerador informado (PIS e COFINS a partir de 2027; ISS a partir de 2033)","content":{"application/problem+json":{"schema":{"$ref":"#/components/schemas/ProblemDetail"}}}},"404":{"description":"Erro na URL da requisição","content":{"application/problem+json":{"schema":{"$ref":"#/components/schemas/ProblemDetail"}}}},"422":{"description":"Erro de validação","content":{"application/problem+json":{"schema":{"$ref":"#/components/schemas/ProblemDetail"}}}},"500":{"description":"Erro interno na API","content":{"application/problem+json":{"schema":{"$ref":"#/components/schemas/ProblemDetail"}}}}}}},"/calculadora/base-calculo/is-mercadorias":{"post":{"tags":["Base de Cálculo - VERSÃO BETA"],"summary":"Imposto Seletivo","description":"Afere a Base de Cálculo do Imposto Seletivo de uma operação de consumo. ATENÇÃO: Os campos ICMS e ISS não podem ser informados a partir de 2033.","operationId":"calcularISMercadorias","requestBody":{"description":"Dados da base de cálculo do Imposto Seletivo","content":{"application/json":{"schema":{"$ref":"#/components/schemas/BaseCalculoISMercadoriasInput"}}},"required":true},"responses":{"200":{"description":"Cálculo realizado com sucesso","content":{"application/json":{"schema":{"$ref":"#/components/schemas/BaseCalculoISMercadoriasModel"}}}},"400":{"description":"Estrutura e/ou dados informados em formato não reconhecido ou campos incompatíveis com o ano do fato gerador informado (ICMS e ISS a partir de 2033)","content":{"application/problem+json":{"schema":{"$ref":"#/components/schemas/ProblemDetail"}}}},"404":{"description":"Erro na URL da requisição","content":{"application/problem+json":{"schema":{"$ref":"#/components/schemas/ProblemDetail"}}}},"422":{"description":"Erro de validação","content":{"application/problem+json":{"schema":{"$ref":"#/components/schemas/ProblemDetail"}}}},"500":{"description":"Erro interno na API","content":{"application/problem+json":{"schema":{"$ref":"#/components/schemas/ProblemDetail"}}}}}}},"/calculadora/base-calculo/cbs-ibs-mercadorias":{"post":{"tags":["Base de Cálculo - VERSÃO BETA"],"summary":"CIBS","description":"Afere a Base de Cálculo da CBS/IBS de uma operação de consumo. ATENÇÃO: Os campos PIS, COFINS, PIS Importação e COFINS Importação não podem ser informados a partir de 2027. Os campos ICMS e ISS não podem ser informados a partir de 2033.","operationId":"calcularCibs","requestBody":{"description":"Dados da base de cálculo do CIBS","content":{"application/json":{"schema":{"$ref":"#/components/schemas/BaseCalculoCibsInput"}}},"required":true},"responses":{"200":{"description":"Cálculo realizado com sucesso","content":{"application/json":{"schema":{"$ref":"#/components/schemas/BaseCalculoISMercadoriasModel"}}}},"400":{"description":"Estrutura e/ou dados informados em formato não reconhecido ou campos incompatíveis com o ano do fato gerador informado (PIS, COFINS, PIS Importação e COFINS a partir de 2027; ICMS e ISS a partir de 2033)","content":{"application/problem+json":{"schema":{"$ref":"#/components/schemas/ProblemDetail"}}}},"404":{"description":"Erro na URL da requisição","content":{"application/problem+json":{"schema":{"$ref":"#/components/schemas/ProblemDetail"}}}},"422":{"description":"Erro de validação","content":{"application/problem+json":{"schema":{"$ref":"#/components/schemas/ProblemDetail"}}}},"500":{"description":"Erro interno na API","content":{"application/problem+json":{"schema":{"$ref":"#/components/schemas/ProblemDetail"}}}}}}},"/calculadora/observabilidade/erros":{"get":{"tags":["Observabilidade - Calculadora"],"summary":"Consultar descrição de erro","description":"Retorna título e descrição em PT-BR para o código de erro informado (REG, CAL ou VAL).","operationId":"buscarErro","parameters":[{"name":"codigo","in":"query","description":"Código do erro (ex: REG-020, CAL-001, VAL-001)","required":true,"schema":{"type":"string"}}],"responses":{"200":{"description":"Descrição do erro encontrada","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErroDescricao"}}}},"404":{"description":"Código de erro não encontrado","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErroDescricao"}}}}}}},"/calculadora/nfse/situacoes-classificacoes-tributarias":{"get":{"tags":["NFS-e - VERSÃO BETA"],"summary":"Consultar Classificações e Situações Tributárias por NBS","description":"Retorna todas as combinações de Classificações Tributárias e Situações Tributárias associadas a um código NBS em uma data específica","operationId":"consultarSituacoesClassificacoesPorNbs","parameters":[{"name":"nbs","in":"query","description":"Código NBS sem formatação","required":true,"schema":{"type":"string","pattern":"^\\d{9}$"},"example":101011100},{"name":"data","in":"query","description":"Data no padrão ISO 8601 (yyyy-MM-dd)","required":true,"schema":{"type":"string","format":"date"},"example":"2026-06-01"}],"responses":{"200":{"description":"Consulta realizada com sucesso","content":{"application/json":{"schema":{"$ref":"#/components/schemas/NfseSituacaoClassificacaoOutput"},"examples":{"Classificações e Situações Example":{"description":"Classificações e Situações Example","value":[{"codigoClassificacaoTributaria":"200045","descricaoClassificacaoTributaria":"Operações relacionadas a projetos de reabilitação urbana de zonas históricas e de áreas críticas de recuperação e reconversão urbanística","codigoSituacaoTributaria":"200","descricaoSituacaoTributaria":"Alíquota reduzida"},{"codigoClassificacaoTributaria":"200046","descricaoClassificacaoTributaria":"Operações com bens imóveis","codigoSituacaoTributaria":"200","descricaoSituacaoTributaria":"Alíquota reduzida"}]}}}}},"400":{"description":"Parâmetros inválidos","content":{"application/problem+json":{"schema":{"$ref":"#/components/schemas/ProblemDetail"},"examples":{"Bad Request Example":{"description":"Bad Request Example","value":{"type":"about:blank","title":"Bad Request","status":400,"detail":"NBS deve conter exatamente 9 dígitos numéricos","instance":"/api/calculadora/nfse/classificacoes-situacoes-tributarias"}}}}}},"500":{"description":"Erro interno na API","content":{"application/problem+json":{"schema":{"$ref":"#/components/schemas/ProblemDetail"}}}}}}},"/calculadora/nfse/local-operacao":{"get":{"tags":["NFS-e - VERSÃO BETA"],"summary":"Local da Operação","description":"Consulta o local da operação baseado no código do Indicador de Operação (cIndOp) e data de ocorrência do fato gerador","operationId":"consultarLocalOperacao","parameters":[{"name":"cIndOp","in":"query","description":"Código do Indicador de Operação (6 dígitos)","required":true,"schema":{"type":"string","minLength":1,"pattern":"^\\d{6}$"},"example":100301},{"name":"dataOcorrenciaFatoGerador","in":"query","description":"Data de ocorrência do fato gerador no padrão ISO 8601 (yyyy-MM-dd)","required":true,"schema":{"type":"string","format":"date"},"example":"2026-01-01"}],"responses":{"200":{"description":"Consulta realizada com sucesso","content":{"application/json":{"schema":{"$ref":"#/components/schemas/NfseLocalOperacaoOutput"},"examples":{"Local Operação Example":{"description":"Local Operação Example","value":{"cIndOp":"100301","dataOcorrenciaFatoGerador":"2026-01-01","localOperacao":"Domicílio principal do adquirente"}}}}}},"400":{"description":"Requisição com problema","content":{"application/problem+json":{"schema":{"$ref":"#/components/schemas/ProblemDetail"},"examples":{"Bad Request Example":{"description":"Bad Request Example","value":{"type":"about:blank","title":"Bad Request","status":400,"detail":"Required parameter 'cIndOp' is not present.","instance":"/api/calculadora/nfse/local-operacao"}}}}}},"404":{"description":"Erro na URL da requisição","content":{"application/problem+json":{"schema":{"$ref":"#/components/schemas/ProblemDetail"},"examples":{"Not Found Example":{"description":"Not Found Example","value":{"type":"about:blank","title":"Not Found","status":404,"detail":"No static resource calculadora/nfse/local-operacao.","instance":"/api/calculadora/nfse/local-operacao-invalido"}}}}}},"500":{"description":"Erro interno na API","content":{"application/problem+json":{"schema":{"$ref":"#/components/schemas/ProblemDetail"},"examples":{"Internal Server Error Example":{"description":"Internal Server Error Example","value":{"type":"http://url-ambiente/errors/erro-interno","title":"Erro interno na API","status":500,"detail":"Falha ao processar a requisição.","instance":"/api/calculadora/nfse/local-operacao"}}}}}}}}},"/calculadora/nfse/indicador-operacao":{"get":{"tags":["NFS-e - VERSÃO BETA"],"summary":"Indicador de Operação","description":"Consulta os indicadores de operação baseado na data de ocorrência do fato gerador","operationId":"consultarIndicadoresOperacao","parameters":[{"name":"dataOcorrenciaFatoGerador","in":"query","description":"Data de ocorrência do fato gerador no padrão ISO 8601 (yyyy-MM-dd)","required":true,"schema":{"type":"string","format":"date"},"example":"2026-01-01"},{"name":"nbs","in":"query","description":"Código NBS (9 dígitos numéricos) - quando informado, retorna campos adicionais prestacaoServicoOnerosa e adquirenteExterior","required":false,"schema":{"type":"string","pattern":"^\\d{9}$"},"example":123456789}],"responses":{"200":{"description":"Consulta realizada com sucesso","content":{"application/json":{"schema":{"$ref":"#/components/schemas/NfseLocalOperacaoOutput"},"examples":{"Indicador Operação Example":{"description":"Indicador Operação Example","value":[{"cIndOp":"020101","tipoOperacao":"Operação com bem imóvel, bem imaterial, inclusive direito, relacionada a bem imóvel","codigoLocalFornecimento":14},{"cIndOp":"020201","tipoOperacao":"Serviço prestado fisicamente sobre bem imóvel","codigoLocalFornecimento":14},{"cIndOp":"020301","tipoOperacao":"Serviço de administração e intermediação de bem imóvel","codigoLocalFornecimento":14}]},"Indicador Operação com NBS Example":{"description":"Indicador Operação com NBS Example","value":[{"cIndOp":"020101","tipoOperacao":"Operação com bem imóvel, bem imaterial, inclusive direito, relacionada a bem imóvel","codigoLocalFornecimento":14,"prestacaoServicoOnerosa":true,"adquirenteExterior":false},{"cIndOp":"020201","tipoOperacao":"Serviço prestado fisicamente sobre bem imóvel","codigoLocalFornecimento":14,"prestacaoServicoOnerosa":true,"adquirenteExterior":false},{"cIndOp":"020301","tipoOperacao":"Serviço de administração e intermediação de bem imóvel","codigoLocalFornecimento":14,"prestacaoServicoOnerosa":true,"adquirenteExterior":false}]}}}}},"400":{"description":"Requisição com problema","content":{"application/problem+json":{"schema":{"$ref":"#/components/schemas/ProblemDetail"},"examples":{"Bad Request Example":{"description":"Bad Request Example","value":{"type":"about:blank","title":"Bad Request","status":400,"detail":"Required parameter 'dataOcorrenciaFatoGerador' is not present.","instance":"/api/calculadora/nfse/indicador-operacao"}}}}}},"500":{"description":"Erro interno na API","content":{"application/problem+json":{"schema":{"$ref":"#/components/schemas/ProblemDetail"},"examples":{"Internal Server Error Example":{"description":"Internal Server Error Example","value":{"type":"http://url-ambiente/errors/erro-interno","title":"Erro interno na API","status":500,"detail":"Falha ao processar a requisição.","instance":"/api/calculadora/nfse/indicador-operacao"}}}}}}}}},"/calculadora/dados-abertos/versao":{"get":{"tags":["Dados Abertos - VERSÃO BETA"],"summary":"Versão do Aplicativo e do Banco de Dados","description":"Obtém a versão do aplicativo e do banco de dados","operationId":"consultarVersao","responses":{"200":{"description":"Consulta realizada com sucesso","content":{"application/json":{"schema":{"$ref":"#/components/schemas/VersaoOutput"},"examples":{"Versão Example":{"description":"Versão Example","value":{"versaoApp":"0.0.0-SNAPSHOT","versaoDb":"v0011","descricaoVersaoDb":"Nova carga de classificação tributária e novos campos em CLASSIFICACAO_TRIBUTARIA e SITUACAO_TRIBUTARIA.","dataVersaoDb":"2025-10-16","ambiente":"online"}}}}}},"500":{"description":"Erro interno na API","content":{"application/problem+json":{"schema":{"$ref":"#/components/schemas/ProblemDetail"},"examples":{"Internal Server Error Example":{"description":"Internal Server Error Example","value":{"type":"http://url-ambiente/errors/erro-interno","title":"Erro interno na API","status":500,"detail":"Falha ao processar a requisição.","instance":"/api/calculadora/dados-abertos/versao"}}}}}}}}},"/calculadora/dados-abertos/ufs":{"get":{"tags":["Dados Abertos - VERSÃO BETA"],"summary":"Unidade Federativa","description":"Obtém a lista das unidades federativas cadastradas","operationId":"consultarUfs","responses":{"200":{"description":"Consulta realizada com sucesso","content":{"application/json":{"schema":{"$ref":"#/components/schemas/UfDadosAbertosOutput"},"examples":{"UFs Example":{"description":"UFs Example","value":[{"sigla":"RO","nome":"RONDÔNIA","codigo":11},{"sigla":"AC","nome":"ACRE","codigo":12}]}}}}},"400":{"description":"Requisição com problema","content":{"application/problem+json":{"schema":{"$ref":"#/components/schemas/ProblemDetail"},"examples":{"Bad Request Example":{"description":"Bad Request Example","value":{"type":"about:blank","title":"Bad Request","status":400,"detail":"Parâmetro inválido ou ausente.","instance":"/api/calculadora/dados-abertos/ufs"}}}}}},"404":{"description":"Erro na URL da requisição","content":{"application/problem+json":{"schema":{"$ref":"#/components/schemas/ProblemDetail"},"examples":{"Not Found Example":{"description":"Not Found Example","value":{"type":"about:blank","title":"Not Found","status":404,"detail":"No static resource calculadora/dados-abertos/ufs/1.","instance":"/api/calculadora/dados-abertos/ufs/1"}}}}}},"500":{"description":"Erro interno na API","content":{"application/problem+json":{"schema":{"$ref":"#/components/schemas/ProblemDetail"},"examples":{"Internal Server Error Example":{"description":"Internal Server Error Example","value":{"type":"http://url-ambiente/errors/erro-interno","title":"Erro interno na API","status":500,"detail":"Falha ao processar a requisição.","instance":"/api/calculadora/dados-abertos/ufs"}}}}}}}}},"/calculadora/dados-abertos/ufs/municipios":{"get":{"tags":["Dados Abertos - VERSÃO BETA"],"summary":"Município","description":"Obtém a lista dos municípios cadastrados com base na sigla de uma unidade federativa","operationId":"consultarMunicipiosPorSiglaUf","parameters":[{"name":"siglaUf","in":"query","description":"Sigla da unidade federativa","required":true,"schema":{"type":"string"},"example":"RS"}],"responses":{"200":{"description":"Consulta realizada com sucesso","content":{"application/json":{"schema":{"$ref":"#/components/schemas/MunicipioDadosAbertosOutput"},"examples":{"Municípios Example":{"description":"Municípios Example","value":[{"codigo":4314902,"nome":"Porto Alegre"},{"codigo":4305108,"nome":"Caxias do Sul"}]}}}}},"500":{"description":"Erro interno na API","content":{"application/problem+json":{"schema":{"$ref":"#/components/schemas/ProblemDetail"},"examples":{"Internal Server Error Example":{"description":"Internal Server Error Example","value":{"type":"http://url-ambiente/errors/erro-interno","title":"Erro interno na API","status":500,"detail":"Falha ao processar a requisição.","instance":"/api/calculadora/dados-abertos/municipios/RS"}}}}}}}}},"/calculadora/dados-abertos/transferencias-ibs":{"get":{"tags":["Dados Abertos - VERSÃO BETA"],"summary":"Transferência IBS para Entes Governamentais","description":"Obtém a lista de todos os percentuais de transferência IBS cadastrados","operationId":"consultarTransferenciasIBS","responses":{"200":{"description":"Consulta realizada com sucesso","content":{"application/json":{"schema":{"$ref":"#/components/schemas/TransferenciaIBSDadosAbertosOutput"},"examples":{"Transferências IBS Example":{"description":"Transferências IBS Example","value":[{"valor":0,"inicioVigencia":"2026-01-01","fimVigencia":"2026-12-31"},{"valor":100,"inicioVigencia":"2027-01-01"}]}}}}},"500":{"description":"Erro interno na API","content":{"application/problem+json":{"schema":{"$ref":"#/components/schemas/ProblemDetail"},"examples":{"Internal Server Error Example":{"description":"Internal Server Error Example","value":{"type":"http://url-ambiente/errors/erro-interno","title":"Erro interno na API","status":500,"detail":"Falha ao processar a requisição.","instance":"/api/calculadora/dados-abertos/transferencias-ibs"}}}}}}}}},"/calculadora/dados-abertos/transferencias-cbs":{"get":{"tags":["Dados Abertos - VERSÃO BETA"],"summary":"Transferência CBS para Entes Governamentais","description":"Obtém a lista de todos os percentuais de transferência CBS cadastrados","operationId":"consultarTransferenciasCBS","responses":{"200":{"description":"Consulta realizada com sucesso","content":{"application/json":{"schema":{"$ref":"#/components/schemas/TransferenciaCBSDadosAbertosOutput"},"examples":{"Transferências CBS Example":{"description":"Transferências CBS Example","value":"[\n {\n \"valor\": 0.15,\n \"inicioVigencia\": \"2026-01-01\",\n },\n {\n \"valor\": 0.10,\n \"inicioVigencia\": \"2025-01-01\",\n \"fimVigencia\": \"2025-12-31\"\n }\n]\n"}}}}},"500":{"description":"Erro interno na API","content":{"application/problem+json":{"schema":{"$ref":"#/components/schemas/ProblemDetail"},"examples":{"Internal Server Error Example":{"description":"Internal Server Error Example","value":{"type":"http://url-ambiente/errors/erro-interno","title":"Erro interno na API","status":500,"detail":"Falha ao processar a requisição.","instance":"/api/calculadora/dados-abertos/transferencias-cbs"}}}}}}}}},"/calculadora/dados-abertos/situacoes-tributarias/imposto-seletivo":{"get":{"tags":["Dados Abertos - VERSÃO BETA"],"summary":"Situação Tributária (CST)","description":"Obtém a lista das situações tributárias cadastradas para Imposto Seletivo","operationId":"consultarSituacoesTributariasImpostoSeletivo","parameters":[{"name":"data","in":"query","description":"Data no padrão ISO 8601 (yyyy-MM-dd)","required":true,"schema":{"type":"string","format":"date"},"example":"2027-01-01"}],"responses":{"200":{"description":"Consulta realizada com sucesso","content":{"application/json":{"schema":{"$ref":"#/components/schemas/SituacaoTributariaDadosAbertosOutput"},"examples":{"Situações Tributárias Example":{"description":"Situações Tributárias Example","value":[{"id":19,"codigo":"000","descricao":"Tributado com Imposto Seletivo"},{"id":20,"codigo":"100","descricao":"Imunidade"}]}}}}},"400":{"description":"Requisição com problema","content":{"application/problem+json":{"schema":{"$ref":"#/components/schemas/ProblemDetail"},"examples":{"Bad Request Example":{"description":"Bad Request Example","value":{"type":"about:blank","title":"Bad Request","status":400,"detail":"Required parameter 'data' is not present.","instance":"/api/calculadora/dados-abertos/situacoes-tributarias/imposto-seletivo"}}}}}},"500":{"description":"Erro interno na API","content":{"application/problem+json":{"schema":{"$ref":"#/components/schemas/ProblemDetail"},"examples":{"Internal Server Error Example":{"description":"Internal Server Error Example","value":{"type":"http://url-ambiente/errors/erro-interno","title":"Erro interno na API","status":500,"detail":"Falha ao processar a requisição.","instance":"/api/calculadora/dados-abertos/situacoes-tributarias/imposto-seletivo"}}}}}}}}},"/calculadora/dados-abertos/situacoes-tributarias/cbs-ibs":{"get":{"tags":["Dados Abertos - VERSÃO BETA"],"summary":"Situação Tributária (CST)","description":"Obtém a lista das situações tributárias cadastradas vigentes em uma determinada data para CBS/IBS","operationId":"consultarSituacoesTributariasCbsIbs","parameters":[{"name":"data","in":"query","description":"Data no padrão ISO 8601 (yyyy-MM-dd)","required":true,"schema":{"type":"string","format":"date"},"example":"2026-01-01"}],"responses":{"200":{"description":"Consulta realizada com sucesso","content":{"application/json":{"schema":{"$ref":"#/components/schemas/SituacaoTributariaDadosAbertosOutput"},"examples":{"Situações Tributárias Example":{"description":"Situações Tributárias Example","value":[{"id":1,"codigo":"000","descricao":"Tributação integral"},{"id":2,"codigo":"010","descricao":"Tributação com alíquotas uniformes"},{"id":3,"codigo":"011","descricao":"Tributação com alíquotas uniformes reduzidas"},{"id":4,"codigo":"200","descricao":"Alíquota reduzida"}]}}}}},"400":{"description":"Requisição com problema","content":{"application/problem+json":{"schema":{"$ref":"#/components/schemas/ProblemDetail"},"examples":{"Bad Request Example":{"description":"Bad Request Example","value":{"type":"about:blank","title":"Bad Request","status":400,"detail":"Required parameter 'data' is not present.","instance":"/api/calculadora/dados-abertos/classificacoes-tributarias/cbs-ibs"}}}}}},"500":{"description":"Erro interno na API","content":{"application/problem+json":{"schema":{"$ref":"#/components/schemas/ProblemDetail"},"examples":{"Internal Server Error Example":{"description":"Internal Server Error Example","value":{"type":"http://url-ambiente/errors/erro-interno","title":"Erro interno na API","status":500,"detail":"Falha ao processar a requisição.","instance":"/api/calculadora/dados-abertos/situacoes-tributarias/cbs-ibs"}}}}}}}}},"/calculadora/dados-abertos/redutores-compra-governamental":{"get":{"tags":["Dados Abertos - VERSÃO BETA"],"summary":"Redutor de Compra Governamental","description":"Obtém a lista de todos os redutores de compra governamental cadastrados","operationId":"consultarRedutoresCompraGovernamental","responses":{"200":{"description":"Consulta realizada com sucesso","content":{"application/json":{"schema":{"$ref":"#/components/schemas/RedutorCompraGovernamentalDadosAbertosOutput"},"examples":{"Redutores Example":{"description":"Redutores Example","value":[{"valor":0,"inicioVigencia":"2026-01-01","fimVigencia":"2026-12-31"},{"valor":50,"inicioVigencia":"2027-01-01"}]}}}}},"500":{"description":"Erro interno na API","content":{"application/problem+json":{"schema":{"$ref":"#/components/schemas/ProblemDetail"},"examples":{"Internal Server Error Example":{"description":"Internal Server Error Example","value":{"type":"http://url-ambiente/errors/erro-interno","title":"Erro interno na API","status":500,"detail":"Falha ao processar a requisição.","instance":"/api/calculadora/dados-abertos/redutores-compra-governamental"}}}}}}}}},"/calculadora/dados-abertos/ncm":{"get":{"tags":["Dados Abertos - VERSÃO BETA"],"summary":"Nomenclatura Comum do Mercosul (NCM)","description":"Obtém informações sobre a NCM em relação ao Imposto Seletivo","operationId":"consultarNcm","parameters":[{"name":"ncm","in":"query","description":"Código NCM sem formatação","required":true,"schema":{"type":"string"},"example":24021000},{"name":"data","in":"query","description":"Data no padrão ISO 8601 (yyyy-MM-dd)","required":true,"schema":{"type":"string","format":"date"},"example":"2027-01-01"}],"responses":{"200":{"description":"Consulta realizada com sucesso","content":{"application/json":{"schema":{"$ref":"#/components/schemas/NcmDadosAbertosOutput"},"examples":{"NCM Example":{"description":"NCM Example","value":{"tributadoPeloImpostoSeletivo":true,"aliquotaAdValorem":13,"aliquotaAdRem":21.3,"capitulo":"Tabaco e seus sucedâneos manufaturados; produtos, mesmo com nicotina, destinados à inalação sem combustão; outros produtos que contenham nicotina destinados à absorção da nicotina pelo corpo humano.","posicao":"Charutos, cigarrilhas e cigarros, de tabaco ou dos seus sucedâneos.","subitem":"Charutos e cigarrilhas, que contenham tabaco","unidade":"VN"}}}}}},"400":{"description":"Requisição com problema","content":{"application/problem+json":{"schema":{"$ref":"#/components/schemas/ProblemDetail"},"examples":{"Bad Request Example":{"description":"Bad Request Example","value":{"type":"about:blank","title":"Bad Request","status":400,"detail":"Required parameter 'data' is not present.","instance":"/api/calculadora/dados-abertos/ncm/24021000"}}}}}},"500":{"description":"Erro interno na API","content":{"application/problem+json":{"schema":{"$ref":"#/components/schemas/ProblemDetail"},"examples":{"Internal Server Error Example":{"description":"Internal Server Error Example","value":{"type":"http://url-ambiente/errors/erro-interno","title":"Erro interno na API","status":500,"detail":"Falha ao processar a requisição.","instance":"/api/calculadora/dados-abertos/ncm/24021000"}}}}}}}}},"/calculadora/dados-abertos/nbs":{"get":{"tags":["Dados Abertos - VERSÃO BETA"],"summary":"Nomenclatura Brasileira de Serviços (NBS)","description":"Obtém informações sobre a NBS em relação ao Imposto Seletivo","operationId":"consultarNbs","parameters":[{"name":"nbs","in":"query","description":"Código NBS sem formatação","required":true,"schema":{"type":"string"},"example":114052200},{"name":"data","in":"query","description":"Data no padrão ISO 8601 (yyyy-MM-dd)","required":true,"schema":{"type":"string","format":"date"},"example":"2027-01-01"}],"responses":{"200":{"description":"Consulta realizada com sucesso","content":{"application/json":{"schema":{"$ref":"#/components/schemas/NbsDadosAbertosOutput"},"examples":{"NBS Example":{"description":"NBS Example","value":{"tributadoPeloImpostoSeletivo":false,"capitulo":"Serviços veterinários","posicao":"Serviços veterinários para animais de corte","item":"Serviços de atendimento, assistência ou tratamento para animais de corte"}}}}}},"400":{"description":"Requisição com problema","content":{"application/problem+json":{"schema":{"$ref":"#/components/schemas/ProblemDetail"},"examples":{"Bad Request Example":{"description":"Bad Request Example","value":{"type":"about:blank","title":"Bad Request","status":400,"detail":"Required parameter 'data' is not present.","instance":"/api/calculadora/dados-abertos/nbs/114052200"}}}}}},"500":{"description":"Erro interno na API","content":{"application/problem+json":{"schema":{"$ref":"#/components/schemas/ProblemDetail"},"examples":{"Internal Server Error Example":{"description":"Internal Server Error Example","value":{"type":"http://url-ambiente/errors/erro-interno","title":"Erro interno na API","status":500,"detail":"Falha ao processar a requisição.","instance":"/api/calculadora/dados-abertos/nbs/114052200"}}}}}}}}},"/calculadora/dados-abertos/nbs/lista":{"get":{"tags":["Dados Abertos - VERSÃO BETA"],"summary":"Lista de Nomenclatura Brasileira de Serviços (NBS)","description":"Obtém a lista de todas as NBS válidas em uma data, incluindo todos os níveis hierárquicos (capítulo, posição, subposições e itens)","operationId":"listarNbs","parameters":[{"name":"data","in":"query","description":"Data no padrão ISO 8601 (yyyy-MM-dd)","required":true,"schema":{"type":"string","format":"date"},"example":"2027-01-01"}],"responses":{"200":{"description":"Consulta realizada com sucesso","content":{"application/json":{"schema":{"$ref":"#/components/schemas/NbsListaDadosAbertosOutput"},"examples":{"Lista NBS Example":{"description":"Lista NBS Example","value":[{"codigo":"101","descricao":"Serviços de construção"},{"codigo":"10101","descricao":"Serviços de construção de edificações"},{"codigo":"101011","descricao":"Serviços de construção de edificações residenciais"},{"codigo":"101011100","descricao":"Serviços de construção de edificações residenciais de um e dois pavimentos"},{"codigo":"101011200","descricao":"Serviços de construção de edificações residenciais com mais de dois pavimentos"},{"codigo":"101012","descricao":"Serviços de construção de edificações não residenciais"},{"codigo":"101012100","descricao":"Serviços de construção de edificações industriais"},{"codigo":"101012200","descricao":"Serviços de construção de edificações comerciais"},{"codigo":"101012900","descricao":"Serviços de construção de edificações não residenciais não classificados em subposições anteriores"}]}}}}},"400":{"description":"Requisição com problema","content":{"application/problem+json":{"schema":{"$ref":"#/components/schemas/ProblemDetail"},"examples":{"Bad Request Example":{"description":"Bad Request Example","value":{"type":"about:blank","title":"Bad Request","status":400,"detail":"Required parameter 'data' is not present.","instance":"/api/calculadora/dados-abertos/nbs"}}}}}},"500":{"description":"Erro interno na API","content":{"application/problem+json":{"schema":{"$ref":"#/components/schemas/ProblemDetail"},"examples":{"Internal Server Error Example":{"description":"Internal Server Error Example","value":{"type":"http://url-ambiente/errors/erro-interno","title":"Erro interno na API","status":500,"detail":"Falha ao processar a requisição.","instance":"/api/calculadora/dados-abertos/nbs"}}}}}}}}},"/calculadora/dados-abertos/nbs-aplicaveis":{"get":{"tags":["Dados Abertos - VERSÃO BETA"],"summary":"Lista de NBS aplicáveis por Classificação Tributária","description":"Obtém a lista de NBS aplicáveis a um cClassTrib em uma determinada data. Se não houver NBS associados e a nomenclatura for aplicável a serviços (NBS ou 'NBS ou NCM'), retorna todos os NBS vigentes. Se não for aplicável a serviços (apenas NCM), retorna lista vazia.","operationId":"listarNbsAplicaveisPorClassificacao","parameters":[{"name":"cClassTrib","in":"query","description":"Código da Classificação Tributária (cClassTrib)","required":true,"schema":{"type":"string","pattern":"^\\d{6}$"},"example":"000001"},{"name":"data","in":"query","description":"Data no padrão ISO 8601 (yyyy-MM-dd)","required":true,"schema":{"type":"string","format":"date"},"example":"2027-01-01"}],"responses":{"200":{"description":"Consulta realizada com sucesso","content":{"application/json":{"schema":{"$ref":"#/components/schemas/NbsListaDadosAbertosOutput"},"examples":{"Lista NBS Aplicáveis Example":{"description":"Lista NBS Aplicáveis Example","value":[{"codigo":"114052200","descricao":"Serviços de atendimento, assistência ou tratamento para animais de corte"},{"codigo":"114052300","descricao":"Serviços de atendimento, assistência ou tratamento para animais de produção"}]},"Lista NBS Aplicáveis Vazia Example":{"description":"Lista NBS Aplicáveis Vazia Example","value":[]}}}}},"400":{"description":"Requisição com problema","content":{"application/problem+json":{"schema":{"$ref":"#/components/schemas/ProblemDetail"},"examples":{"Bad Request Example":{"description":"Bad Request Example","value":{"type":"about:blank","title":"Bad Request","status":400,"detail":"Required parameter 'data' is not present.","instance":"/api/calculadora/dados-abertos/nbs/aplicaveis-por-classificacao"}}}}}},"404":{"description":"Classificação tributária não encontrada","content":{"application/problem+json":{"schema":{"$ref":"#/components/schemas/ProblemDetail"},"examples":{"Not Found Example":{"description":"Not Found Example","value":{"type":"about:blank","title":"Not Found","status":404,"detail":"Classificação tributária não encontrada para código 999999 e data 2026-01-01 (CBS/IBS)","instance":"/api/calculadora/dados-abertos/nbs/aplicaveis-por-classificacao"}}}}}},"500":{"description":"Erro interno na API","content":{"application/problem+json":{"schema":{"$ref":"#/components/schemas/ProblemDetail"},"examples":{"Internal Server Error Example":{"description":"Internal Server Error Example","value":{"type":"http://url-ambiente/errors/erro-interno","title":"Erro interno na API","status":500,"detail":"Falha ao processar a requisição.","instance":"/api/calculadora/dados-abertos/nbs/aplicaveis-por-classificacao"}}}}}}}}},"/calculadora/dados-abertos/fundamentacoes-legais":{"get":{"tags":["Dados Abertos - VERSÃO BETA"],"summary":"Fundamentação Legal","description":"Obtém informações sobre as fundamentações legais","operationId":"consultarFundamentacoesLegais","parameters":[{"name":"data","in":"query","description":"Data no padrão ISO 8601 (yyyy-MM-dd)","required":true,"schema":{"type":"string","format":"date"},"example":"2027-01-01"}],"responses":{"200":{"description":"Consulta realizada com sucesso","content":{"application/json":{"schema":{"$ref":"#/components/schemas/FundamentacaoClassificacaoDadosAbertosOutput"},"examples":{"Fundamentações Legais Example":{"description":"Fundamentações Legais Example","value":[{"codigoClassificacaoTributaria":"000001","descricaoClassificacaoTributaria":"Situações tributadas integralmente pelo IBS e CBS.","codigoSituacaoTributaria":"000","descricaoSituacaoTributaria":"Tributação integral","conjuntoTributo":"CBS e IBS","texto":"","textoCurto":"","referenciaNormativa":"LIVRO I \n\nDO IMPOSTO SOBRE BENS E SERVIÇOS (IBS) E DA CONTRIBUIÇÃO SOCIAL SOBRE BENS E SERVIÇOS (CBS) \n\nTÍTULO I \n\nDAS NORMAS GERAIS DO IBS E DA CBS \n\nCAPÍTULO I \n\nDISPOSIÇÕES PRELIMINARES"},{"codigoClassificacaoTributaria":"000002","descricaoClassificacaoTributaria":"Exploração de via","codigoSituacaoTributaria":"000","descricaoSituacaoTributaria":"Tributação integral","conjuntoTributo":"CBS e IBS","texto":"Art. 11. Considera-se local da operação com:\nVIII - serviço de exploração de via, mediante cobrança de valor a qualquer título, incluindo tarifas, pedágios e quaisquer outras formas de cobrança, o território de cada Município e Estado, ou do Distrito Federal, proporcionalmente à correspondente extensão da via explorada;","textoCurto":"Art. 11, VIII","referenciaNormativa":"LIVRO I \n\nDO IMPOSTO SOBRE BENS E SERVIÇOS (IBS) E DA CONTRIBUIÇÃO SOCIAL SOBRE BENS E SERVIÇOS (CBS) \n\nTÍTULO I \n\nDAS NORMAS GERAIS DO IBS E DA CBS \n\nCAPÍTULO II\n\nDO IBS E DA CBS SOBRE OPERAÇÕES COM BENS E SERVIÇOS\n\nSeção IV\n\nDo Local da Operação"}]}}}}},"400":{"description":"Requisição com problema","content":{"application/problem+json":{"schema":{"$ref":"#/components/schemas/ProblemDetail"},"examples":{"Bad Request Example":{"description":"Bad Request Example","value":{"type":"about:blank","title":"Bad Request","status":400,"detail":"Required parameter 'data' is not present.","instance":"/api/calculadora/dados-abertos/fundamentacoes-legais"}}}}}},"500":{"description":"Erro interno na API","content":{"application/problem+json":{"schema":{"$ref":"#/components/schemas/ProblemDetail"},"examples":{"Internal Server Error Example":{"description":"Internal Server Error Example","value":{"type":"http://url-ambiente/errors/erro-interno","title":"Erro interno na API","status":500,"detail":"Falha ao processar a requisição.","instance":"/api/calculadora/dados-abertos/fundamentacoes-legais"}}}}}}}}},"/calculadora/dados-abertos/classificacoes-tributarias/{idSituacaoTributaria}":{"get":{"tags":["Dados Abertos - VERSÃO BETA"],"summary":"Classificação Tributária (cClassTrib) - DEPRECATED","description":"Obtém a lista das classificações tributárias (cClassTrib) cadastradas com base no ID da situação tributária. DEPRECATED: Use os novos endpoints /classificacoes-tributarias/imposto-seletivo/{cst} ou /classificacoes-tributarias/cbs-ibs/{cst} que trabalham com CST ao invés de IDs.","operationId":"consultarClassificacoesTributariasPorIdSituacaoTributaria","parameters":[{"name":"idSituacaoTributaria","in":"path","description":"Id da Situação Tributária (CST)","required":true,"schema":{"type":"integer","format":"int64"},"example":1},{"name":"data","in":"query","description":"Data no padrão ISO 8601 (yyyy-MM-dd)","required":true,"schema":{"type":"string","format":"date"},"example":"2026-01-01"}],"responses":{"200":{"description":"Consulta realizada com sucesso","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ClassificacaoTributariaDadosAbertosOutput"},"examples":{"Classificações Tributárias Example":{"description":"Classificações Tributárias Example","value":[{"codigo":"000003","descricao":"Regime automotivo - projetos incentivados (art. 311)","tipoAliquota":"Padrão","nomenclatura":"NCM","descricaoTratamentoTributario":"Tributação integral","incompativelComSuspensao":false,"exigeGrupoDesoneracao":false,"possuiPercentualReducao":true,"indicaApropriacaoCreditoAdquirenteCbs":false,"indicaApropriacaoCreditoAdquirenteIbs":false,"indicaCreditoPresumidoFornecedor":false,"indicaCreditoPresumidoAdquirente":false,"tiposDfeClassificacao":[{"tipo":55,"sigla":"NFe","descricao":"Nota Fiscal Eletrônica"}],"dataAtualizacao":"2025-12-15"},{"codigo":"000004","descricao":"Regime automotivo - projetos incentivados (art. 312)","tipoAliquota":"Padrão","nomenclatura":"NCM","descricaoTratamentoTributario":"Tributação integral","incompativelComSuspensao":false,"exigeGrupoDesoneracao":false,"possuiPercentualReducao":true,"indicaApropriacaoCreditoAdquirenteCbs":false,"indicaApropriacaoCreditoAdquirenteIbs":false,"indicaCreditoPresumidoFornecedor":false,"indicaCreditoPresumidoAdquirente":false,"tiposDfeClassificacao":[{"tipo":55,"sigla":"NFe","descricao":"Nota Fiscal Eletrônica"}],"dataAtualizacao":"2025-12-15"}]}}}}},"400":{"description":"Requisição com problema","content":{"application/problem+json":{"schema":{"$ref":"#/components/schemas/ProblemDetail"},"examples":{"Bad Request Example":{"description":"Bad Request Example","value":{"type":"about:blank","title":"Bad Request","status":400,"detail":"Required parameter 'data' is not present.","instance":"/api/calculadora/dados-abertos/classificacoes-tributarias/3244253"}}}}}},"500":{"description":"Erro interno na API","content":{"application/problem+json":{"schema":{"$ref":"#/components/schemas/ProblemDetail"},"examples":{"Internal Server Error Example":{"description":"Internal Server Error Example","value":{"type":"http://url-ambiente/errors/erro-interno","title":"Erro interno na API","status":500,"detail":"Falha ao processar a requisição.","instance":"/api/calculadora/dados-abertos/classificacoes-tributarias/1"}}}}}}},"deprecated":true}},"/calculadora/dados-abertos/classificacoes-tributarias/nbs":{"get":{"tags":["Dados Abertos - VERSÃO BETA"],"summary":"Classificações Tributárias aplicáveis por NBS","description":"Obtém a lista dos códigos cClassTrib aplicáveis a um NBS em uma determinada data, considerando vínculos e regras de exceção. Também inclui classificações de serviço vigentes não vinculadas a nenhum NBS.","operationId":"listarClassificacoesTributariasPorNbs","parameters":[{"name":"nbs","in":"query","description":"Código NBS sem formatação","required":true,"schema":{"type":"string","pattern":"^\\d{9}$"},"example":114052200},{"name":"data","in":"query","description":"Data no padrão ISO 8601 (yyyy-MM-dd)","required":true,"schema":{"type":"string","format":"date"},"example":"2026-01-01"}],"responses":{"200":{"description":"Consulta realizada com sucesso","content":{"application/json":{"schema":{"type":"string"},"examples":{"cClassTrib por NBS Example":{"description":"cClassTrib por NBS Example","value":["000001","000002","000003"]}}}}},"400":{"description":"Requisição com problema","content":{"application/problem+json":{"schema":{"$ref":"#/components/schemas/ProblemDetail"},"examples":{"Bad Request Example":{"description":"Bad Request Example","value":{"type":"about:blank","title":"Bad Request","status":400,"detail":"Parâmetro inválido ou ausente.","instance":"/api/calculadora/dados-abertos/classificacoes-tributarias/nbs"}}}}}},"404":{"description":"NBS não encontrado na data especificada","content":{"application/problem+json":{"schema":{"$ref":"#/components/schemas/ProblemDetail"},"examples":{"Not Found Example":{"description":"Not Found Example","value":{"type":"about:blank","title":"Not Found","status":404,"detail":"Nenhum resultado foi encontrado para a NBS: 114052200 na data: 2026-01-01","instance":"/api/calculadora/dados-abertos/classificacoes-tributarias/nbs"}}}}}},"500":{"description":"Erro interno na API","content":{"application/problem+json":{"schema":{"$ref":"#/components/schemas/ProblemDetail"},"examples":{"Internal Server Error Example":{"description":"Internal Server Error Example","value":{"type":"http://url-ambiente/errors/erro-interno","title":"Erro interno na API","status":500,"detail":"Falha ao processar a requisição.","instance":"/api/calculadora/dados-abertos/classificacoes-tributarias/nbs"}}}}}}}}},"/calculadora/dados-abertos/classificacoes-tributarias/imposto-seletivo":{"get":{"tags":["Dados Abertos - VERSÃO BETA"],"summary":"Classificação Tributária (cClassTrib) para Imposto Seletivo","description":"Obtém a lista das classificações tributárias (cClassTrib) para Imposto Seletivo","operationId":"consultarClassificacoesTributariasImpostoSeletivo","parameters":[{"name":"data","in":"query","description":"Data no padrão ISO 8601 (yyyy-MM-dd)","required":true,"schema":{"type":"string","format":"date"},"example":"2027-01-01"}],"responses":{"200":{"description":"Consulta realizada com sucesso","headers":{"x-warning-dados-simulados":{"description":"Indica que os dados são simulados. Valores possíveis: 1 (alíquotas da CBS e do IBS ainda não definidas em lei).","style":"simple","schema":{"type":"integer","example":1}}},"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ClassificacaoTributariaDadosAbertosOutput"},"examples":{"Classificações Tributárias Imposto Seletivo Example":{"description":"Classificações Tributárias Imposto Seletivo Example","value":[{"codigo":"000001","descricao":"Primeiro fornecimento a qualquer título de bem","tipoAliquota":"Alíquotas Combinadas (Ad Valorem e Ad Rem)","nomenclatura":"NBS ou NCM","descricaoTratamentoTributario":"Tributação pelo Imposto Seletivo - Com Cálculo","incompativelComSuspensao":false,"exigeGrupoDesoneracao":false,"possuiPercentualReducao":true,"indicaApropriacaoCreditoAdquirenteCbs":false,"indicaApropriacaoCreditoAdquirenteIbs":false,"indicaCreditoPresumidoFornecedor":false,"indicaCreditoPresumidoAdquirente":false},{"codigo":"000002","descricao":"Arrematação em leilão público","tipoAliquota":"Alíquotas Combinadas (Ad Valorem e Ad Rem)","nomenclatura":"NBS ou NCM","descricaoTratamentoTributario":"Tributação pelo Imposto Seletivo - Com Cálculo","incompativelComSuspensao":false,"exigeGrupoDesoneracao":false,"possuiPercentualReducao":true,"indicaApropriacaoCreditoAdquirenteCbs":false,"indicaApropriacaoCreditoAdquirenteIbs":false,"indicaCreditoPresumidoFornecedor":false,"indicaCreditoPresumidoAdquirente":false}]},"Classificações Tributárias Imposto Seletivo Vazia Example":{"description":"Classificações Tributárias Imposto Seletivo Vazia Example","value":[]}}}}},"400":{"description":"Requisição com problema","content":{"application/problem+json":{"schema":{"$ref":"#/components/schemas/ProblemDetail"},"examples":{"Bad Request Example":{"description":"Bad Request Example","value":{"type":"about:blank","title":"Bad Request","status":400,"detail":"Required parameter 'data' is not present.","instance":"/api/calculadora/dados-abertos/classificacoes-tributarias/imposto-seletivo"}}}}}},"500":{"description":"Erro interno na API","content":{"application/problem+json":{"schema":{"$ref":"#/components/schemas/ProblemDetail"},"examples":{"Internal Server Error Example":{"description":"Internal Server Error Example","value":{"type":"http://url-ambiente/errors/erro-interno","title":"Erro interno na API","status":500,"detail":"Falha ao processar a requisição.","instance":"/api/calculadora/dados-abertos/classificacoes-tributarias/imposto-seletivo"}}}}}}}}},"/calculadora/dados-abertos/classificacoes-tributarias/imposto-seletivo/{cst}":{"get":{"tags":["Dados Abertos - VERSÃO BETA"],"summary":"Classificações Tributárias por CST - Imposto Seletivo","description":"Obtém a lista das classificações tributárias por CST para Imposto Seletivo","operationId":"listarPorCstImpostoSeletivo","parameters":[{"name":"cst","in":"path","description":"Código da Situação Tributária (CST)","required":true,"schema":{"type":"string"},"example":"000"},{"name":"data","in":"query","description":"Data no padrão ISO 8601 (yyyy-MM-dd)","required":true,"schema":{"type":"string","format":"date"},"example":"2027-01-01"}],"responses":{"200":{"description":"Consulta realizada com sucesso","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ClassificacaoTributariaDadosAbertosOutput"},"examples":{"Classificações IS Example":{"description":"Classificações IS Example","value":[{"codigo":"000001","descricao":"Primeiro fornecimento a qualquer título de bem","tipoAliquota":"Alíquotas Combinadas (Ad Valorem e Ad Rem)","nomenclatura":"NBS ou NCM","descricaoTratamentoTributario":"Tributação pelo Imposto Seletivo - Com Cálculo","incompativelComSuspensao":false,"exigeGrupoDesoneracao":false,"possuiPercentualReducao":true,"indicaApropriacaoCreditoAdquirenteCbs":false,"indicaApropriacaoCreditoAdquirenteIbs":false,"indicaCreditoPresumidoFornecedor":false,"indicaCreditoPresumidoAdquirente":false,"tiposDfeClassificacao":[]}]}}}}},"400":{"description":"Requisição com problema","content":{"application/problem+json":{"schema":{"$ref":"#/components/schemas/ProblemDetail"}}}},"500":{"description":"Erro interno na API","content":{"application/problem+json":{"schema":{"$ref":"#/components/schemas/ProblemDetail"}}}}}}},"/calculadora/dados-abertos/classificacoes-tributarias/cbs-ibs":{"get":{"tags":["Dados Abertos - VERSÃO BETA"],"summary":"Classificação Tributária (cClassTrib)","description":"Obtém a lista das classificações tributárias (cClassTrib) para CBS e IBS","operationId":"consultarClassificacoesTributariasCbsIbs","parameters":[{"name":"data","in":"query","description":"Data no padrão ISO 8601 (yyyy-MM-dd)","required":true,"schema":{"type":"string","format":"date"},"example":"2026-01-01"}],"responses":{"200":{"description":"Consulta realizada com sucesso","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ClassificacaoTributariaDadosAbertosOutput"},"examples":{"Classificações Tributárias Example":{"description":"Classificações Tributárias Example","value":[{"codigo":"000004","descricao":"Regime automotivo - projetos incentivados (art. 312)","tipoAliquota":"Padrão","nomenclatura":"NCM","descricaoTratamentoTributario":"Tributação integral","incompativelComSuspensao":false,"exigeGrupoDesoneracao":false,"possuiPercentualReducao":true,"indicaApropriacaoCreditoAdquirenteCbs":true,"indicaApropriacaoCreditoAdquirenteIbs":true,"indicaCreditoPresumidoFornecedor":true,"indicaCreditoPresumidoAdquirente":false,"creditoOperacaoAntecedente":"Manutenção","percentualReducaoCbs":0,"percentualReducaoIbsUf":0,"percentualReducaoIbsMun":0,"tiposDfeClassificacao":[{"tipo":55,"sigla":"NFe","descricao":"Nota Fiscal Eletrônica"}]},{"codigo":"010001","descricao":"Operações do FGTS não realizadas pela Caixa Econômica Federal","tipoAliquota":"Uniforme setorial","nomenclatura":"NBS","descricaoTratamentoTributario":"Tributação com alíquotas uniformes - operações do FGTS","incompativelComSuspensao":false,"exigeGrupoDesoneracao":false,"possuiPercentualReducao":true,"indicaApropriacaoCreditoAdquirenteCbs":true,"indicaApropriacaoCreditoAdquirenteIbs":true,"indicaCreditoPresumidoFornecedor":false,"indicaCreditoPresumidoAdquirente":false,"creditoOperacaoAntecedente":"Manutenção","percentualReducaoCbs":0,"percentualReducaoIbsUf":0,"percentualReducaoIbsMun":0,"tiposDfeClassificacao":[{"tipo":91,"sigla":"NFSe","descricao":"Nota Fiscal de Serviços Eletrônica"},{"tipo":94,"sigla":"DERE","descricao":"Declaração Eletrônica de Regimes Específicos"}]}]}}}}},"400":{"description":"Requisição com problema","content":{"application/problem+json":{"schema":{"$ref":"#/components/schemas/ProblemDetail"},"examples":{"Bad Request Example":{"description":"Bad Request Example","value":{"type":"about:blank","title":"Bad Request","status":400,"detail":"Required parameter 'data' is not present.","instance":"/api/calculadora/dados-abertos/classificacoes-tributarias/cbs-ibs"}}}}}},"500":{"description":"Erro interno na API","content":{"application/problem+json":{"schema":{"$ref":"#/components/schemas/ProblemDetail"},"examples":{"Internal Server Error Example":{"description":"Internal Server Error Example","value":{"type":"http://url-ambiente/errors/erro-interno","title":"Erro interno na API","status":500,"detail":"Falha ao processar a requisição.","instance":"/api/calculadora/dados-abertos/classificacoes-tributarias/cbs-ibs"}}}}}}}}},"/calculadora/dados-abertos/classificacoes-tributarias/cbs-ibs/{siglaDfe}/{cClassTrib}":{"get":{"tags":["Dados Abertos - VERSÃO BETA"],"summary":"Classificação Tributária CBS/IBS por DFe e cClassTrib","description":"Obtém a classificação tributária CBS/IBS com base na sigla do DFe e código da classificação","operationId":"consultarValidadeDfeClassificacaoTributaria","parameters":[{"name":"siglaDfe","in":"path","description":"Sigla do tipo de Documento Fiscal Eletrônico","required":true,"schema":{"type":"string"},"example":"NFSE"},{"name":"cClassTrib","in":"path","description":"Código da classificação tributária","required":true,"schema":{"type":"string"},"example":"000001"},{"name":"data","in":"query","description":"Data do fato gerador (yyyy-MM-dd)","required":true,"schema":{"type":"string","format":"date"},"example":"2026-01-01"}],"responses":{"200":{"description":"Consulta realizada com sucesso","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ValidadeDfeClassificacaoTributariaDadosAbertosOutput"}}}},"400":{"description":"Requisição com problema","content":{"application/problem+json":{"schema":{"$ref":"#/components/schemas/ProblemDetail"},"examples":{"Bad Request Example":{"description":"Bad Request Example","value":{"type":"about:blank","title":"Bad Request","status":400,"detail":"Required parameter 'data' is not present.","instance":"/api/calculadora/dados-abertos/classificacoes-tributarias/cbs-ibs/NFE/000001"}}}}}},"404":{"description":"Classificação tributária não encontrada","content":{"application/problem+json":{"schema":{"$ref":"#/components/schemas/ProblemDetail"},"examples":{"Not Found Example":{"description":"Not Found Example","value":{"type":"https://url-ambiente/errors/classificacao-tributaria-nao-encontrada","title":"Classificação Tributária Não Encontrada","status":404,"detail":"Classificação tributária não encontrada para DFe 'NFSE' e código '000001' na data '2026-01-01'","instance":"/api/calculadora/dados-abertos/classificacoes-tributarias/cbs-ibs/NFSE/000001","timestamp":1.7607241111784844E9}}}}}},"422":{"description":"Erro de validação nos parâmetros","content":{"application/problem+json":{"schema":{"$ref":"#/components/schemas/ProblemDetail"},"examples":{"Validation Error Example":{"description":"Validation Error Example","value":{"type":"http://url-ambiente/errors/sigla-dfe-nao-reconhecida","title":"Sigla DFe não reconhecida","status":422,"detail":"Sigla DFe inválida: NFEJ","instance":"/api/calculadora/dados-abertos/classificacoes-tributarias/cbs-ibs/NFEe/620002","timestamp":1.7607290741335235E9}}}}}},"500":{"description":"Erro interno na API","content":{"application/problem+json":{"schema":{"$ref":"#/components/schemas/ProblemDetail"},"examples":{"Internal Server Error Example":{"description":"Internal Server Error Example","value":{"type":"http://url-ambiente/errors/erro-de-sistema-nao-previsto","title":"Erro de sistema não previsto","status":500,"detail":"Falha ao acessar o banco de dados","instance":"/api/calculadora/dados-abertos/classificacoes-tributarias/cbs-ibs/NFE/620001","timestamp":1.7607302862395124E9}}}}}}}}},"/calculadora/dados-abertos/classificacoes-tributarias/cbs-ibs/{cst}":{"get":{"tags":["Dados Abertos - VERSÃO BETA"],"summary":"Classificações Tributárias por CST - CBS/IBS","description":"Obtém a lista das classificações tributárias por CST para CBS/IBS","operationId":"listarPorCstCbsIbs","parameters":[{"name":"cst","in":"path","description":"Código da Situação Tributária (CST)","required":true,"schema":{"type":"string"},"example":"000"},{"name":"data","in":"query","description":"Data no padrão ISO 8601 (yyyy-MM-dd)","required":true,"schema":{"type":"string","format":"date"},"example":"2025-01-01"}],"responses":{"200":{"description":"Consulta realizada com sucesso","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ClassificacaoTributariaDadosAbertosOutput"},"examples":{"Classificações CBS/IBS Example":{"description":"Classificações CBS/IBS Example","value":[{"codigo":"000001","descricao":"Situações tributadas integralmente pelo IBS e CBS.","tipoAliquota":"Padrão","nomenclatura":"NBS ou NCM","descricaoTratamentoTributario":"Tributação integral","dataAtualizacao":"2025-12-15","incompativelComSuspensao":false,"exigeGrupoDesoneracao":false,"possuiPercentualReducao":true,"indicaApropriacaoCreditoAdquirenteCbs":true,"indicaApropriacaoCreditoAdquirenteIbs":true,"indicaCreditoPresumidoFornecedor":false,"indicaCreditoPresumidoAdquirente":false,"tiposDfeClassificacao":[]}]}}}}},"400":{"description":"Requisição com problema","content":{"application/problem+json":{"schema":{"$ref":"#/components/schemas/ProblemDetail"}}}},"500":{"description":"Erro interno na API","content":{"application/problem+json":{"schema":{"$ref":"#/components/schemas/ProblemDetail"}}}}}}},"/calculadora/dados-abertos/aliquota-uniao":{"get":{"tags":["Dados Abertos - VERSÃO BETA"],"summary":"Alíquota Padrão ou de Referência","description":"Obtém a alíquota padrão ou de referência para CBS","operationId":"consultarAliquotaUniao","parameters":[{"name":"data","in":"query","description":"Data no padrão ISO 8601 (yyyy-MM-dd)","required":true,"schema":{"type":"string","format":"date"},"example":"2026-01-01"}],"responses":{"200":{"description":"Consulta realizada com sucesso","headers":{"x-warning-dados-simulados":{"description":"Indica que os dados são simulados. Valores possíveis: 1 (Classificações Tributárias para o Imposto Seletivo ainda não foram estabelecidas em lei).","style":"simple","schema":{"type":"integer","example":1}}},"content":{"application/json":{"schema":{"$ref":"#/components/schemas/AliquotaDadosAbertosOutput"},"examples":{"Alíquota União Example":{"description":"Alíquota União Example","value":{"aliquotaReferencia":0.9,"aliquotaPropria":0.9}}}}}},"400":{"description":"Requisição com problema","content":{"application/problem+json":{"schema":{"$ref":"#/components/schemas/ProblemDetail"},"examples":{"Bad Request Example":{"description":"Bad Request Example","value":{"type":"about:blank","title":"Bad Request","status":400,"detail":"Required parameter 'data' is not present.","instance":"/api/calculadora/dados-abertos/aliquota-uniao"}}}}}},"500":{"description":"Erro interno na API","content":{"application/problem+json":{"schema":{"$ref":"#/components/schemas/ProblemDetail"},"examples":{"Internal Server Error Example":{"description":"Internal Server Error Example","value":{"type":"http://url-ambiente/errors/erro-interno","title":"Erro interno na API","status":500,"detail":"Falha ao processar a requisição.","instance":"/api/calculadora/dados-abertos/aliquota-uniao"}}}}}}}}},"/calculadora/dados-abertos/aliquota-uf":{"get":{"tags":["Dados Abertos - VERSÃO BETA"],"summary":"Alíquota Padrão ou de Referência para IBS Estadual","description":"Obtém a alíquota padrão ou de referência para IBS Estadual","operationId":"consultarAliquotaUf","parameters":[{"name":"codigoUf","in":"query","description":"Código da UF","required":true,"schema":{"type":"integer","format":"int64"},"example":43},{"name":"data","in":"query","description":"Data no padrão ISO 8601 (yyyy-MM-dd)","required":true,"schema":{"type":"string","format":"date"},"example":"2026-01-01"}],"responses":{"200":{"description":"Consulta realizada com sucesso","headers":{"x-warning-dados-simulados":{"description":"Indica que os dados são simulados. Valores possíveis: 1 (alíquotas da CBS ainda não definidas em lei).","style":"simple","schema":{"type":"integer","example":1}}},"content":{"application/json":{"schema":{"$ref":"#/components/schemas/AliquotaDadosAbertosOutput"},"examples":{"Alíquota UF Example":{"description":"Alíquota UF Example","value":{"aliquotaReferencia":0.9,"aliquotaPropria":0.9}}}}}},"400":{"description":"Requisição com problema","content":{"application/problem+json":{"schema":{"$ref":"#/components/schemas/ProblemDetail"},"examples":{"Bad Request Example":{"description":"Bad Request Example","value":{"type":"about:blank","title":"Bad Request","status":400,"detail":"Required parameter 'data' is not present.","instance":"/api/calculadora/dados-abertos/aliquota-uf"}}}}}},"500":{"description":"Erro interno na API","content":{"application/problem+json":{"schema":{"$ref":"#/components/schemas/ProblemDetail"},"examples":{"Internal Server Error Example":{"description":"Internal Server Error Example","value":{"type":"http://url-ambiente/errors/erro-interno","title":"Erro interno na API","status":500,"detail":"Falha ao processar a requisição.","instance":"/api/calculadora/dados-abertos/aliquota-uf"}}}}}}}}},"/calculadora/dados-abertos/aliquota-municipio":{"get":{"tags":["Dados Abertos - VERSÃO BETA"],"summary":"Alíquota Padrão ou de Referência para IBS Municipal","description":"Obtém a alíquota padrão ou de referência para IBS Municipal","operationId":"consultarAliquotaMunicipio","parameters":[{"name":"codigoMunicipio","in":"query","description":"Código do Município (Tabela IBGE)","required":true,"schema":{"type":"integer","format":"int64"},"example":4314902},{"name":"data","in":"query","description":"Data no padrão ISO 8601 (yyyy-MM-dd)","required":true,"schema":{"type":"string","format":"date"},"example":"2026-01-01"}],"responses":{"200":{"description":"Consulta realizada com sucesso","headers":{"x-warning-dados-simulados":{"description":"Indica que os dados são simulados. Valores possíveis: 1 (alíquotas da CBS e do IBS ainda não definidas em lei).","style":"simple","schema":{"type":"integer","example":1}}},"content":{"application/json":{"schema":{"$ref":"#/components/schemas/AliquotaDadosAbertosOutput"},"examples":{"Alíquota Município Example":{"description":"Alíquota Município Example","value":{"aliquotaReferencia":0.9,"aliquotaPropria":0.9}}}}}},"400":{"description":"Requisição com problema","content":{"application/problem+json":{"schema":{"$ref":"#/components/schemas/ProblemDetail"},"examples":{"Bad Request Example":{"description":"Bad Request Example","value":{"type":"about:blank","title":"Bad Request","status":400,"detail":"Required parameter 'data' is not present.","instance":"/api/calculadora/dados-abertos/aliquota-municipio"}}}}}},"500":{"description":"Erro interno na API","content":{"application/problem+json":{"schema":{"$ref":"#/components/schemas/ProblemDetail"},"examples":{"Internal Server Error Example":{"description":"Internal Server Error Example","value":{"type":"http://url-ambiente/errors/erro-interno","title":"Erro interno na API","status":500,"detail":"Falha ao processar a requisição.","instance":"/api/calculadora/dados-abertos/aliquota-municipio"}}}}}}}}}},"components":{"schemas":{"ProblemDetail":{"type":"object","properties":{"type":{"type":"string","format":"uri"},"title":{"type":"string"},"status":{"type":"integer","format":"int32"},"detail":{"type":"string"},"instance":{"type":"string","format":"uri"},"properties":{"type":"object","additionalProperties":{}}}},"AjusteCompetenciaDomain":{"type":"object","properties":{"competApur":{"type":"string","description":"Ano e mês referência do período de apuração (AAAA-MM)"},"vIBS":{"type":"number","description":"Valor do IBS"},"vCBS":{"type":"number","description":"Valor da CBS"}}},"CBSDomain":{"type":"object","properties":{"pCBS":{"type":"number","description":"Alíquota da CBS"},"gDif":{"$ref":"#/components/schemas/DiferimentoDomain","description":"Grupo de Informações do Diferimento"},"gDevTrib":{"$ref":"#/components/schemas/DevolucaoTributosDomain","description":"Grupo de Informações da devolução de tributos"},"gRed":{"$ref":"#/components/schemas/ReducaoAliquotaDomain","description":"Grupo de Informações da redução da alíquota"},"vCBS":{"type":"number","description":"Valor da CBS"},"memoriaCalculo":{"type":"string","description":"Memória de Cálculo"}}},"CBSTotalDomain":{"type":"object","properties":{"vDif":{"type":"number","description":"Valor total do diferimento"},"vDevTrib":{"type":"number","description":"Valor total de devolução de tributos"},"vCBS":{"type":"number","description":"Valor total da CBS"},"vCredPres":{"type":"number","description":"Valor total do crédito presumido"},"vCredPresCondSus":{"type":"number","description":"Valor total do crédito presumido em condição suspensiva"}}},"CompraGovernamentalDomain":{"type":"object","properties":{"tpEnteGov":{"type":"integer","format":"int32","description":"Tipo de ente governamental: 1 - União, 2 - Estados, 3 - Distrito Federal, 4 - Municípios","enum":[1,2,3,4]},"pRedutor":{"type":"number","description":"Percentual de redução de alíquota em compra governamental"},"tpOperGov":{"type":"integer","format":"int32","description":"Tipo de operação com o ente governamental: 1 - Fornecimento, 2 - Recebimento do pagamento","enum":[1,2]}}},"CreditoPresumidoIBSZFMDomain":{"type":"object","properties":{"competApur":{"type":"string","description":"Ano e mês referência do período de apuração (AAAA-MM)"},"tpCredPresIBSZFM":{"type":"integer","format":"int32","description":"Tipo de classificação de acordo com o art. 450, § 1º, da LC 214/25 para o cálculo do crédito presumido na ZFM"},"vCredPresIBSZFM":{"type":"number","description":"Valor do crédito presumido calculado sobre o saldo devedor apurado"}}},"CreditoPresumidoOperacaoDomain":{"type":"object","properties":{"vBCCredPres":{"type":"number","description":"Valor da Base de Cálculo do Crédito Presumido da Operação"},"cCredPres":{"type":"integer","format":"int32","description":"Código de Classificação do Crédito Presumido"},"gIBSCredPres":{"$ref":"#/components/schemas/IBSCBSCreditoPresumidoDomain","description":"Grupo de Informações do Crédito Presumido referente ao IBS"},"gCBSCredPres":{"$ref":"#/components/schemas/IBSCBSCreditoPresumidoDomain","description":"Grupo de Informações do Crédito Presumido referente a CBS"}}},"DevolucaoTributosDomain":{"type":"object","properties":{"vDevTrib":{"type":"number","description":"Valor do tributo devolvido"}}},"DiferimentoDomain":{"type":"object","properties":{"pDif":{"type":"number","description":"Percentual do Diferimento"},"vDif":{"type":"number","description":"Valor do Diferimento"}}},"EstornoCreditoDomain":{"type":"object","properties":{"vIBSEstCred":{"type":"number","description":"Valor do IBS a ser estornado"},"vCBSEstCred":{"type":"number","description":"Valor da CBS a ser estornada"}}},"GrupoIBSCBSDomain":{"type":"object","properties":{"vBC":{"type":"number","description":"Base de cálculo do IBS e CBS"},"gIBSUF":{"$ref":"#/components/schemas/IBSUFDomain","description":"Grupo de Informações do IBS para a UF"},"gIBSMun":{"$ref":"#/components/schemas/IBSMunDomain","description":"Grupo de Informações do IBS para o município"},"vIBS":{"type":"number","description":"Valor do IBS"},"gCBS":{"$ref":"#/components/schemas/CBSDomain","description":"Grupo de Informações da CBS"},"gTribRegular":{"$ref":"#/components/schemas/TributacaoRegularDomain","description":"Grupo de Informações da Tributação Regular"},"gTribCompraGov":{"$ref":"#/components/schemas/TributacaoCompraGovernamentalDomain","description":"Grupo de informações da composição do valor do IBS e da CBS em compras governamentais"}}},"IBSCBSCreditoPresumidoDomain":{"type":"object","properties":{"pCredPres":{"type":"number","description":"Percentual do Crédito Presumido"},"vCredPres":{"type":"number","description":"Valor do Crédito Presumido"},"vCredPresCondSus":{"type":"number","description":"Valor do Crédito Presumido em condição suspensiva"}}},"IBSCBSDomain":{"type":"object","properties":{"CST":{"type":"string","description":"Código de Situação Tributária do IBS e CBS"},"cClassTrib":{"type":"string","description":"Código de Classificação Tributária do IBS e CBS"},"indDoacao":{"type":"integer","format":"int32","description":"Indica a natureza da operação de doação, orientando a apuração e a geração de débitos ou estornos conforme o cenário"},"gIBSCBS":{"$ref":"#/components/schemas/GrupoIBSCBSDomain","description":"Grupo de Informações do IBS e da CBS"},"gIBSCBSMono":{"$ref":"#/components/schemas/MonofasiaDomain","description":"Grupo de Informações do IBS e CBS em operações com imposto monofásico"},"gTransfCred":{"$ref":"#/components/schemas/TransferenciaCreditoDomain","description":"Transferências de Crédito"},"gAjusteCompet":{"$ref":"#/components/schemas/AjusteCompetenciaDomain","description":"Ajuste de competência"},"gEstornoCred":{"$ref":"#/components/schemas/EstornoCreditoDomain","description":"Estorno de crédito"},"gCredPresOper":{"$ref":"#/components/schemas/CreditoPresumidoOperacaoDomain","description":"Crédito presumido da Operação"},"gCredPresIBSZFM":{"$ref":"#/components/schemas/CreditoPresumidoIBSZFMDomain","description":"Informações do crédito presumido de IBS para fornecimentos a partir da ZFM"}}},"IBSCBSTotalDomain":{"type":"object","properties":{"vBCIBSCBS":{"type":"number","description":"Valor total da BC do IBS e da CBS"},"gIBS":{"$ref":"#/components/schemas/IBSTotalDomain","description":"Grupo total do IBS"},"gCBS":{"$ref":"#/components/schemas/CBSTotalDomain","description":"Grupo total da CBS"},"gMono":{"$ref":"#/components/schemas/MonofasiaTotalDomain","description":"Grupo total da Monofasia"},"gEstornoCred":{"$ref":"#/components/schemas/EstornoCreditoDomain","description":"Grupo total do Estorno de Crédito"}}},"IBSMunDomain":{"type":"object","properties":{"pIBSMun":{"type":"number","description":"Alíquota do IBS de competência do Município"},"gDif":{"$ref":"#/components/schemas/DiferimentoDomain","description":"Grupo de Informações do Diferimento"},"gDevTrib":{"$ref":"#/components/schemas/DevolucaoTributosDomain","description":"Grupo de Informações da devolução de tributos"},"gRed":{"$ref":"#/components/schemas/ReducaoAliquotaDomain","description":"Grupo de Informações da redução da alíquota"},"vIBSMun":{"type":"number","description":"Valor do IBS de competência do Município"},"memoriaCalculo":{"type":"string","description":"Memória de Cálculo"}}},"IBSMunTotalDomain":{"type":"object","properties":{"vDif":{"type":"number","description":"Valor total do diferimento"},"vDevTrib":{"type":"number","description":"Valor total de devolução de tributos"},"vIBSMun":{"type":"number","description":"Valor total do IBS do Município"}}},"IBSTotalDomain":{"type":"object","properties":{"gIBSUF":{"$ref":"#/components/schemas/IBSUFTotalDomain","description":"Grupo total do IBS da UF"},"gIBSMun":{"$ref":"#/components/schemas/IBSMunTotalDomain","description":"Grupo total do IBS do Município"},"vIBS":{"type":"number","description":"Valor total do IBS"},"vCredPres":{"type":"number","description":"Valor total do crédito presumido"},"vCredPresCondSus":{"type":"number","description":"Valor total do crédito presumido em condição suspensiva"}}},"IBSUFDomain":{"type":"object","properties":{"pIBSUF":{"type":"number","description":"Alíquota do IBS de competência das UF"},"gDif":{"$ref":"#/components/schemas/DiferimentoDomain","description":"Grupo de Informações do Diferimento"},"gDevTrib":{"$ref":"#/components/schemas/DevolucaoTributosDomain","description":"Grupo de Informações da devolução de tributos"},"gRed":{"$ref":"#/components/schemas/ReducaoAliquotaDomain","description":"Grupo de Informações da redução da alíquota"},"vIBSUF":{"type":"number","description":"Valor do IBS de competência da UF"},"memoriaCalculo":{"type":"string","description":"Memória de Cálculo"}}},"IBSUFTotalDomain":{"type":"object","properties":{"vDif":{"type":"number","description":"Valor total do diferimento"},"vDevTrib":{"type":"number","description":"Valor total de devolução de tributos"},"vIBSUF":{"type":"number","description":"Valor total do IBS da UF"}}},"ImpostoSeletivoDomain":{"type":"object","properties":{"CSTIS":{"type":"string","description":"Código de Situação Tributária do Imposto Seletivo"},"cClassTribIS":{"type":"string","description":"Código de Classificação Tributária do Imposto Seletivo"},"vBCIS":{"type":"number","description":"Valor da Base de Cálculo do Imposto Seletivo"},"pIS":{"type":"number","description":"Alíquota do Imposto Seletivo"},"pISEspec":{"type":"number","description":"Alíquota específica por unidade de medida apropriada"},"uTrib":{"type":"string","description":"Unidade de Medida Tributável"},"qTrib":{"type":"number","description":"Quantidade Tributável"},"vIS":{"type":"number","description":"Valor do Imposto Seletivo"},"memoriaCalculo":{"type":"string","description":"Memória de Cálculo"}}},"ImpostoSeletivoTotalDomain":{"type":"object","properties":{"vIS":{"type":"number","description":"Total do imposto seletivo"}}},"MonofasiaDiferimentoDomain":{"type":"object","properties":{"pDifIBS":{"type":"number","description":"Percentual do diferimento do imposto monofásico do IBS"},"vIBSMonoDif":{"type":"number","description":"Valor do IBS monofásico diferido"},"pDifCBS":{"type":"number","description":"Percentual do diferimento do imposto monofásico da CBS"},"vCBSMonoDif":{"type":"number","description":"Valor da CBS monofásica diferida"}}},"MonofasiaDomain":{"type":"object","properties":{"gMonoPadrao":{"$ref":"#/components/schemas/MonofasiaPadraoDomain","description":"Grupo de informações da Tributação Monofásica Padrão"},"gMonoReten":{"$ref":"#/components/schemas/MonofasiaRetencaoDomain","description":"Grupo de informações da Tributação Monofásica Sujeita à Retenção"},"gMonoRet":{"$ref":"#/components/schemas/MonofasiaRetidoAnteriormenteDomain","description":"Grupo de informações da Tributação Monofásica Retida Anteriormente"},"gMonoDif":{"$ref":"#/components/schemas/MonofasiaDiferimentoDomain","description":"Grupo de informações do Diferimento da Tributação Monofásica"},"vTotIBSMonoItem":{"type":"number","description":"Total de IBS monofásico"},"vTotCBSMonoItem":{"type":"number","description":"Total de CBS monofásica"}}},"MonofasiaPadraoDomain":{"type":"object","properties":{"qBCMono":{"type":"number","description":"Quantidade tributada na monofasia"},"adRemIBS":{"type":"number","description":"Alíquota ad rem do IBS"},"adRemCBS":{"type":"number","description":"Alíquota ad rem da CBS"},"vIBSMono":{"type":"number","description":"Valor do IBS monofásico"},"vCBSMono":{"type":"number","description":"Valor da CBS monofásica"}}},"MonofasiaRetencaoDomain":{"type":"object","properties":{"qBCMonoReten":{"type":"number","description":"Quantidade tributada sujeita à retenção na monofasia"},"adRemIBSReten":{"type":"number","description":"Alíquota ad rem do IBS sujeito a retenção"},"vIBSMonoReten":{"type":"number","description":"Valor do IBS monofásico sujeito a retenção"},"adRemCBSReten":{"type":"number","description":"Alíquota ad rem da CBS sujeita a retenção"},"vCBSMonoReten":{"type":"number","description":"Valor da CBS monofásica sujeita a retenção"}}},"MonofasiaRetidoAnteriormenteDomain":{"type":"object","properties":{"qBCMonoRet":{"type":"number","description":"Quantidade tributada retida anteriormente"},"adRemIBSRet":{"type":"number","description":"Alíquota ad rem do IBS retido anteriormente"},"vIBSMonoRet":{"type":"number","description":"Valor do IBS retido anteriormente"},"adRemCBSRet":{"type":"number","description":"Alíquota ad rem da CBS retida anteriormente"},"vCBSMonoRet":{"type":"number","description":"Valor da CBS retida anteriormente"}}},"MonofasiaTotalDomain":{"type":"object","properties":{"vIBSMono":{"type":"number","description":"Total do IBS monofásico"},"vCBSMono":{"type":"number","description":"Total da CBS monofásica"},"vIBSMonoReten":{"type":"number","description":"Total do IBS monofásico sujeito a retenção"},"vCBSMonoReten":{"type":"number","description":"Total da CBS monofásica sujeita a retenção"},"vIBSMonoRet":{"type":"number","description":"Total do IBS monofásico retido anteriormente"},"vCBSMonoRet":{"type":"number","description":"Total da CBS monofásica retida anteriormente"}}},"ObjetoDomain":{"type":"object","properties":{"nObj":{"type":"integer","format":"int32"},"tribCalc":{"$ref":"#/components/schemas/TributosDomain"}}},"OperacaoConsumoDomain":{"type":"object","properties":{"gCompraGov":{"$ref":"#/components/schemas/CompraGovernamentalDomain"}}},"ROCDomain":{"type":"object","properties":{"oper":{"$ref":"#/components/schemas/OperacaoConsumoDomain"},"objetos":{"type":"array","items":{"$ref":"#/components/schemas/ObjetoDomain"}},"total":{"$ref":"#/components/schemas/ValoresTotaisDomain"}}},"ReducaoAliquotaDomain":{"type":"object","properties":{"pRedAliq":{"type":"number","description":"Percentual da redução de alíquota do cClassTrib"},"pAliqEfet":{"type":"number","description":"Alíquota Efetiva que será aplicada a Base de Cálculo"}}},"TransferenciaCreditoDomain":{"type":"object","properties":{"vIBS":{"type":"number","description":"Valor do IBS a ser transferido"},"vCBS":{"type":"number","description":"Valor da CBS a ser transferida"}}},"TributacaoCompraGovernamentalDomain":{"type":"object","properties":{"pAliqIBSUF":{"type":"number","description":"Alíquota do IBS de competência do Estado"},"vTribIBSUF":{"type":"number","description":"Valor do Tributo do IBS da UF calculado"},"pAliqIBSMun":{"type":"number","description":"Alíquota do IBS de competência do Município"},"vTribIBSMun":{"type":"number","description":"Valor do Tributo do IBS do Município calculado"},"pAliqCBS":{"type":"number","description":"Alíquota da CBS"},"vTribCBS":{"type":"number","description":"Valor do Tributo da CBS calculado"}}},"TributacaoRegularDomain":{"type":"object","properties":{"CSTReg":{"type":"string","description":"Código de Situação Tributária do IBS e CBS"},"cClassTribReg":{"type":"string","description":"Código de Classificação Tributária do IBS e CBS"},"pAliqEfetRegIBSUF":{"type":"number","description":"Valor da alíquota do IBS da UF"},"vTribRegIBSUF":{"type":"number","description":"Valor do Tributo do IBS da UF"},"pAliqEfetRegIBSMun":{"type":"number","description":"Valor da alíquota do IBS do Município"},"vTribRegIBSMun":{"type":"number","description":"Valor do Tributo do IBS do Município"},"pAliqEfetRegCBS":{"type":"number","description":"Valor da alíquota da CBS"},"vTribRegCBS":{"type":"number","description":"Valor do Tributo da CBS"}}},"TributosDomain":{"type":"object","properties":{"IS":{"$ref":"#/components/schemas/ImpostoSeletivoDomain","description":"Informações do Imposto Seletivo"},"IBSCBS":{"$ref":"#/components/schemas/IBSCBSDomain","description":"Informações do Imposto de Bens e Serviços - IBS e da Contribuição de Bens e Serviços - CBS"}}},"TributosTotaisDomain":{"type":"object","properties":{"ISTot":{"$ref":"#/components/schemas/ImpostoSeletivoTotalDomain","description":"Grupo total do imposto seletivo"},"IBSCBSTot":{"$ref":"#/components/schemas/IBSCBSTotalDomain","description":"Totais com IBS e CBS"}}},"ValoresTotaisDomain":{"type":"object","properties":{"tribCalc":{"$ref":"#/components/schemas/TributosTotaisDomain"}}},"CompraGovernamentalInput":{"type":"object","properties":{"tpEnteGov":{"type":"integer","format":"int32","description":"Tipo de ente governamental: 1 - União, 2 - Estados, 3 - Distrito Federal, 4 - Municípios","enum":[1,2,3,4]},"tpOperGov":{"type":"integer","format":"int32","description":"Tipo de operação com o ente governamental: 1 - Fornecimento, 2 - Recebimento do pagamento","enum":[1,2]}},"required":["tpEnteGov","tpOperGov"]},"ImpostoSeletivoInput":{"type":"object","properties":{"cst":{"type":"string","description":"Código da situação tributária","example":"000","maxLength":3,"minLength":3,"pattern":"\\d+"},"cClassTrib":{"type":"string","description":"Código da classificação tributária","example":"000000","maxLength":6,"minLength":6,"pattern":"\\d+"},"baseCalculo":{"type":"number","description":"Base de cálculo do imposto","example":200.0},"quantidade":{"type":"number","description":"Quantidade","example":1},"unidade":{"type":"string","description":"Unidade de medida","example":"LT"},"impostoInformado":{"type":"number","description":"Imposto Seletivo informado pelo contribuinte","example":12.0}},"required":["baseCalculo","cClassTrib","cst","impostoInformado"]},"ItemOperacaoInput":{"type":"object","properties":{"numero":{"type":"integer","format":"int32","description":"Número do Item","example":1,"maximum":9999999,"minimum":1},"ncm":{"type":"string","description":"Código NCM","example":24021000},"nbs":{"type":"string","description":"Código NBS","example":109052100},"cst":{"type":"string","description":"Código de situação tributária","example":"000","maxLength":3,"minLength":3,"pattern":"\\d+"},"cClassTrib":{"type":"string","description":"Código de classificação tributária","example":"000001","maxLength":6,"minLength":6,"pattern":"\\d+"},"baseCalculo":{"type":"number","description":"Base de cálculo do imposto","example":200.0},"quantidade":{"type":"number","description":"Quantidade","example":1},"unidade":{"type":"string","description":"Unidade de medida","example":"LT"},"impostoSeletivo":{"$ref":"#/components/schemas/ImpostoSeletivoInput","description":"Informações do Imposto Seletivo"},"tributacaoRegular":{"$ref":"#/components/schemas/TributacaoRegularInput","description":"Informações sobre tributação regular"}},"required":["cClassTrib","cst","numero"]},"OperacaoInput":{"type":"object","properties":{"id":{"type":"string","description":"Identificador do ROC","example":"6194602ea71cbf9431c236de4409d920"},"versao":{"type":"string","description":"Versão do ROC","example":"0.0.1"},"dhFatoGerador":{"type":"string","format":"date-time","description":"Data e hora do fato gerador no formato UTC","example":"2026-01-01T09:50:05-03:00"},"dataHoraEmissao":{"type":"string","format":"date-time","deprecated":true,"description":"<<<ATENÇÃO>>>

ESTE CAMPO SERÁ REMOVIDO EM FUTURO PRÓXIMO

Informar dhFatoGerador

Data e hora de emissão do documento no formato UTC

","example":"2026-01-01T09:50:05-03:00"},"municipio":{"type":"integer","format":"int64","description":"Código do Município (tabela IBGE)","example":4314902,"maximum":9999999,"minimum":0},"uf":{"type":"string","description":"Sigla da UF","example":"RS","maxLength":2,"minLength":2},"gCompraGov":{"$ref":"#/components/schemas/CompraGovernamentalInput","description":"Grupo de Compra Governamental"},"itens":{"type":"array","description":"Itens da Operação","items":{"$ref":"#/components/schemas/ItemOperacaoInput"},"minItems":1}},"required":["id","itens","municipio","versao"]},"TributacaoRegularInput":{"type":"object","properties":{"cst":{"type":"string","description":"Código da situação tributária","example":"000","maxLength":3,"minLength":3,"pattern":"\\d+"},"cClassTrib":{"type":"string","description":"Código da classificação tributária","example":"000000","maxLength":6,"minLength":6,"pattern":"\\d+"}},"required":["cClassTrib","cst"]},"PedagioInput":{"type":"object","properties":{"dataHoraEmissao":{"type":"string","format":"date-time","description":"Data e hora de emissão do documento no formato UTC","example":"2027-01-01T09:50:05-03:00"},"codigoMunicipioOrigem":{"type":"integer","format":"int64","description":"Código do Município (tabela IBGE)","example":4314902,"maximum":9999999,"minimum":0},"ufMunicipioOrigem":{"type":"string","description":"Sigla da UF","example":"RS","maxLength":2,"minLength":2},"cst":{"type":"string","description":"Código de situação tributária","example":"000","maxLength":3,"minLength":3},"cClassTrib":{"type":"string","description":"Código de classificação tributária","example":"000002","maxLength":6,"minLength":6},"baseCalculo":{"type":"number","description":"Base de cálculo do imposto","example":200.0},"trechos":{"type":"array","description":"Trechos do pedágio","items":{"$ref":"#/components/schemas/TrechoPedagioInput"},"minItems":1}},"required":["baseCalculo","cClassTrib","codigoMunicipioOrigem","cst","dataHoraEmissao","trechos","ufMunicipioOrigem"]},"TrechoPedagioInput":{"type":"object","properties":{"numero":{"type":"integer","format":"int32","description":"Número do Trecho","example":1,"minimum":1},"municipio":{"type":"integer","format":"int64","description":"Código do Município (tabela IBGE)","example":4314902,"maximum":9999999,"minimum":0},"uf":{"type":"string","description":"Sigla da UF","example":"RS","maxLength":2,"minLength":2},"extensao":{"type":"number","description":"Extensão do trecho","example":10}},"required":["extensao","municipio","numero","uf"]},"PedagioOutput":{"type":"object","properties":{"dataHoraEmissao":{"type":"string","format":"date-time","description":"Data e hora de emissão do documento no formato UTC","example":"2027-01-01T09:50:05-03:00"},"municipioOrigem":{"type":"integer","format":"int64","description":"Código do Município (tabela IBGE)","example":4314902},"ufMunicipioOrigem":{"type":"string","description":"Sigla da UF","example":"RS"},"cst":{"type":"string","description":"Código de situação tributária","example":"000","maxLength":3,"minLength":3},"cClassTrib":{"type":"string","description":"Código de classificação tributária","example":"000001","maxLength":6,"minLength":6},"baseCalculo":{"type":"number","description":"Base de cálculo","example":200.0},"extensaoTotal":{"type":"number","description":"Extensão total (km)","example":200.0},"trechos":{"type":"array","description":"Trechos do pedágio","items":{"$ref":"#/components/schemas/TrechoPedagioOutput"}},"total":{"$ref":"#/components/schemas/TotalPedagioOutput","description":"Total de tributo calculado"}}},"TotalPedagioOutput":{"type":"object","properties":{"cbsTotal":{"$ref":"#/components/schemas/TributoTotalPedagioOutput","description":"Total de CBS apurado"},"ibsEstadualTotal":{"$ref":"#/components/schemas/TributoTotalPedagioOutput","description":"Total de IBS Estadual apurado"},"ibsMunicipalTotal":{"$ref":"#/components/schemas/TributoTotalPedagioOutput","description":"Total de IBS Municipal apurado"}}},"TrechoPedagioOutput":{"type":"object","properties":{"numero":{"type":"integer","format":"int32","description":"Número do Item","example":1},"municipio":{"type":"integer","format":"int64","description":"Código do Município (tabela IBGE)","example":4314902},"uf":{"type":"string","description":"Sigla da UF","example":"RS"},"baseCalculo":{"type":"number","description":"Base de cálculo do imposto","example":200.0},"extensaoTrecho":{"type":"number","description":"Extensao do trecho","example":20},"extensaoTotal":{"type":"number","description":"Extensao total","example":50},"cbs":{"$ref":"#/components/schemas/TributoPedagioOutput","description":"Informações do CBS"},"ibsEstadual":{"$ref":"#/components/schemas/TributoPedagioOutput","description":"Informações do IBS Estadual"},"ibsMunicipal":{"$ref":"#/components/schemas/TributoPedagioOutput","description":"Informações do IBS Municipal"}}},"TributoPedagioOutput":{"type":"object","properties":{"aliquota":{"type":"number","description":"Alíquota","example":0.5},"aliquotaEfetiva":{"type":"number","description":"Alíquota efetiva","example":0.5},"tributoCalculado":{"type":"number","description":"Tributo calculado","example":0.75},"memoriaCalculo":{"type":"string","description":"Descrição do processo de cálculo","example":"Texto descritivo"}}},"TributoTotalPedagioOutput":{"type":"object","properties":{"baseCalculo":{"type":"number","description":"Base de cálculo do imposto","example":200.0},"valorApurado":{"type":"number","description":"Valor de imposto apurado","example":0.75},"valorDevido":{"type":"number","description":"Valor de imposto devido","example":0.75},"valorTributo":{"type":"number","description":"Valor do tributo","example":0.75},"totalMontanteDesonerado":{"type":"number","description":"Total do montante desonerado","example":10.22}}},"ErroDetalhe":{"type":"object","properties":{"type":{"type":"string"},"title":{"type":"string"},"code":{"type":"string"},"pointer":{"type":"string"},"detail":{"type":"string"}}},"ObservabilidadeItemDomain":{"type":"object","properties":{"nObj":{"type":"integer","format":"int32"},"estadoItem":{"type":"string","enum":["CALCULADO","NAO_IMPLEMENTADO","INCONSISTENCIA_ENTRADA","FALHA_TECNICA"]},"tribCalc":{"$ref":"#/components/schemas/TributosDomain"},"erros":{"type":"array","items":{"$ref":"#/components/schemas/ErroDetalhe"}}}},"ObservabilidadeROCDomain":{"type":"object","properties":{"oper":{"$ref":"#/components/schemas/OperacaoConsumoDomain"},"objetos":{"type":"array","items":{"$ref":"#/components/schemas/ObservabilidadeItemDomain"}},"total":{"$ref":"#/components/schemas/ValoresTotaisDomain"}}},"NfseValidacaoIndicadorOperacaoInput":{"type":"object","properties":{"cTribNac":{"type":"string","description":"Código de Tributação Nacional - opcional (4 dígitos)","example":"0101","pattern":"^\\d{4}$"},"cIndOp":{"type":"string","description":"Código do Indicador de Operação (6 dígitos)","example":100301,"minLength":1,"pattern":"^\\d{6}$"},"cClassTrib":{"type":"string","description":"Código de Classificação Tributária (6 dígitos)","example":620001,"minLength":1,"pattern":"^\\d{6}$"},"nbs":{"type":"string","description":"Código NBS - Nomenclatura Brasileira de Serviços (9 dígitos)","example":115021000,"minLength":1,"pattern":"^\\d{9}$"},"dataOcorrenciaFatoGerador":{"type":"string","format":"date","description":"Data de ocorrência do fato gerador da operação (formato: YYYY-MM-DD)","example":"2026-01-15"}},"required":["cClassTrib","cIndOp","dataOcorrenciaFatoGerador","nbs"]},"NfseValidacaoIndicadorOperacaoOutput":{"type":"object","description":"Resultado da validação do indicador de operação","properties":{"cTribNac":{"type":"string","description":"Código de Tributação Nacional informado (opcional)","example":"010101"},"cIndOp":{"type":"string","description":"Código do Indicador de Operação informado","example":100301},"cClassTrib":{"type":"string","description":"Código de Classificação Tributária informado","example":"000001"},"nbs":{"type":"string","description":"Código NBS informado","example":115021000},"dataOcorrenciaFatoGerador":{"type":"string","format":"date","description":"Data de ocorrência do fato gerador informada","example":"2025-01-01"},"valido":{"type":"boolean","description":"Indica se a combinação informada é válida","example":true}}},"NfseBaseCalculoInput":{"type":"object","properties":{"anoFatoGerador":{"type":"integer","format":"int32","description":"Ano do Fato Gerador","example":2026},"valorServico":{"type":"number","description":"Valor do Serviço","example":105.0},"descontoIncondicional":{"type":"number","default":"0.00","description":"Desconto Incondicional","example":5.0},"vCalcReeRepRes":{"type":"number","default":"0.00","description":"Valor monetário (R$) total relativo ao fornecimento próprio de bens materiais ou relacionados a operações de terceiros, objeto de reembolso, repasse ou ressarcimento pelo recebedor, já tributados e aqui referenciados e que não integram da base de cálculo (BC) do ISSQN, do IBS e da CBS.","example":5.0},"vCalcDedRedIBSCBS":{"type":"number","default":"0.00","description":"Valor monetário (R$) total relativo aos valores de dedução e redução da Base de Cálculo do IBS e da CBS referentes às operações de locação, cessão onerosa ou arrendamento de bens imóveis, e serviços médicos.","example":5.0},"iss":{"type":"number","default":"0.00","description":"Imposto sobre Serviços de Qualquer Natureza","example":5.0},"pis":{"type":"number","default":"0.00","description":"Programa de Integração Social","example":5.0},"cofins":{"type":"number","default":"0.00","description":"Contribuição para o Financiamento da Seguridade Social","example":5.0}},"required":["anoFatoGerador","valorServico"]},"NfseBaseCalculoOutput":{"type":"object","properties":{"baseCalculo":{"type":"number","description":"Base de cálculo da operação","example":100.55}}},"BaseCalculoISMercadoriasInput":{"type":"object","properties":{"anoFatoGerador":{"type":"integer","format":"int32","description":"Ano do Fato Gerador","example":2027},"valorBem":{"type":"number","default":"0.00","description":"Valor do bem (antes dos descontos/ajustes)","example":105.0},"ajusteAcrescimos":{"type":"number","default":"0.00","description":"Ajuste decorrentes de acréscimos","example":5.0},"juros":{"type":"number","default":"0.00","description":"Juros","example":5.0},"multas":{"type":"number","default":"0.00","description":"Multas","example":5.0},"encargos":{"type":"number","default":"0.00","description":"Encargos","example":5.0},"freteCobrado":{"type":"number","default":"0.00","description":"Frete cobrado como parte do valor da operação","example":5.0},"outrosTributos":{"type":"number","default":"0.00","description":"Tributos (exceto CBS, IBS e o próprio IS) e preços públicos, inclusive tarifas","example":5.0},"demaisImportancias":{"type":"number","default":"0.00","description":"Demais importâncias cobradas ou recebidas como parte do valor da operação, inclusive seguros e taxas","example":5.0},"icms":{"type":"number","default":"0.00","description":"ICMS","example":5.0},"iss":{"type":"number","default":"0.00","description":"ISS","example":5.0},"cosip":{"type":"number","default":"0.00","description":"COSIP","example":5.0},"ipi":{"type":"number","default":"0.00","description":"IPI","example":5.0},"descontoIncondicional":{"type":"number","default":"0.00","description":"Desconto Incondicional","example":5.0},"bonificacao":{"type":"number","default":"0.00","description":"Bonificações que constem do respectivo documento fiscal e não dependam de evento posterior, nos termos § 2º do Art. 417","example":5.0},"devolucaoVendas":{"type":"number","default":"0.00","description":"Devoluções de bens vendidos nos termos do Art. 418","example":5.0}},"required":["anoFatoGerador"]},"BaseCalculoISMercadoriasModel":{"type":"object","properties":{"baseCalculo":{"type":"number","description":"Base de cálculo da operação","example":100.55}}},"BaseCalculoCibsInput":{"type":"object","properties":{"anoFatoGerador":{"type":"integer","format":"int32","description":"Ano do Fato Gerador","example":2026},"valorBem":{"type":"number","default":"0.00","description":"Valor do Bem (antes dos descontos/ajustes)","example":105.0},"ajusteAcrescimos":{"type":"number","default":"0.00","description":"Ajuste decorrentes de acréscimos","example":5.0},"juros":{"type":"number","default":"0.00","description":"Juros","example":5.0},"multas":{"type":"number","default":"0.00","description":"Multas","example":5.0},"encargos":{"type":"number","default":"0.00","description":"Encargos","example":5.0},"frete":{"type":"number","default":"0.00","description":"Frete cobrado como parte do valor da operação","example":5.0},"impostoSeletivo":{"type":"number","default":"0.00","description":"Imposto Seletivo","example":5.0},"outrosTributos":{"type":"number","default":"0.00","description":"Outros tributos (exceto CBS e IBS) e preços públicos, inclusive tarifas","example":5.0},"demaisImportancias":{"type":"number","default":"0.00","description":"Demais importâncias cobradas ou recebidas como parte do valor da operação, inclusive seguros e taxas","example":5.0},"icms":{"type":"number","default":"0.00","description":"ICMS","example":5.0},"iss":{"type":"number","default":"0.00","description":"ISS","example":5.0},"pis":{"type":"number","default":"0.00","description":"PIS","example":5.0},"pisImportacao":{"type":"number","default":"0.00","description":"PIS Importação","example":5.0},"cofins":{"type":"number","default":"0.00","description":"COFINS","example":5.0},"cofinsImportacao":{"type":"number","default":"0.00","description":"COFINS Importação","example":5.0},"cosip":{"type":"number","default":"0.00","description":"COSIP","example":5.0},"ipi":{"type":"number","default":"0.00","description":"IPI","example":5.0},"descontoIncondicional":{"type":"number","default":"0.00","description":"Desconto Incondicional","example":5.0}},"required":["anoFatoGerador"]},"TipoDocumentoDTO":{"type":"object","properties":{"nome":{"type":"string"},"mnemonico":{"type":"string"},"versaoNotaTecnica":{"type":"string"}}},"ErroDescricao":{"type":"object","properties":{"codigo":{"type":"string"},"titulo":{"type":"string"},"descricao":{"type":"string"}}},"NfseSituacaoClassificacaoOutput":{"type":"object","properties":{"codigoSituacaoTributaria":{"type":"string"},"descricaoSituacaoTributaria":{"type":"string"},"codigoClassificacaoTributaria":{"type":"string"},"descricaoClassificacaoTributaria":{"type":"string"}}},"NfseLocalOperacaoOutput":{"type":"object","description":"Informações sobre o local da operação baseado no indicador de operação","properties":{"cIndOp":{"type":"string","description":"Código do Indicador de Operação informado","example":100301},"dataOcorrenciaFatoGerador":{"type":"string","format":"date","description":"Data de ocorrência do fato gerador informada","example":"2026-01-01"},"localOperacao":{"type":"string","description":"Local da operação","example":"Local do estabelecimento prestador"}}},"VersaoOutput":{"type":"object","properties":{"versaoApp":{"type":"string","description":"Versão do aplicativo","example":"0.0.0-SNAPSHOT"},"versaoDb":{"type":"string","description":"Versão do banco de dados","example":"1.0.0"},"descricaoVersaoDb":{"type":"string","description":"Descrição da versão do banco de dados","example":"Versão de homologação"},"dataVersaoDb":{"type":"string","description":"Data da versão do banco de dados","example":"2026-01-01"},"ambiente":{"type":"string","description":"Ambiente da aplicação","example":"Online"}}},"UfDadosAbertosOutput":{"type":"object","properties":{"sigla":{"type":"string","description":"Sigla da UF","example":"RS"},"nome":{"type":"string","description":"Nome da UF","example":"Rio Grande do Sul"},"codigo":{"type":"integer","format":"int64","description":"Código IBGE da UF","example":43}}},"MunicipioDadosAbertosOutput":{"type":"object","properties":{"codigo":{"type":"integer","format":"int64","description":"Código IBGE do Município","example":4314902},"nome":{"type":"string","description":"Nome do município","example":"Porto Alegre"}}},"TransferenciaIBSDadosAbertosOutput":{"type":"object","properties":{"valor":{"type":"number","description":"Percentual de transferência IBS","example":0.15},"inicioVigencia":{"type":"string","format":"date","description":"Data de início da vigência","example":"2026-01-01"},"fimVigencia":{"type":"string","format":"date","description":"Data de fim da vigência","example":"2026-12-31"}}},"TransferenciaCBSDadosAbertosOutput":{"type":"object","properties":{"valor":{"type":"number","description":"Percentual de transferência CBS","example":0.15},"inicioVigencia":{"type":"string","format":"date","description":"Data de início da vigência","example":"2026-01-01"},"fimVigencia":{"type":"string","format":"date","description":"Data de fim da vigência","example":"2026-12-31"}}},"SituacaoTributariaDadosAbertosOutput":{"type":"object","properties":{"id":{"type":"integer","format":"int64","description":"Identificador único da situacao tributária","example":0},"codigo":{"type":"string","description":"Código da situacao tributária","example":"000"},"descricao":{"type":"string","description":"Descricao da situacao tributária","example":"Tributação Integral"}}},"RedutorCompraGovernamentalDadosAbertosOutput":{"type":"object","properties":{"valor":{"type":"number","description":"Valor do redutor","example":0.6},"inicioVigencia":{"type":"string","format":"date","description":"Data de início da vigência","example":"2026-01-01"},"fimVigencia":{"type":"string","format":"date","description":"Data de fim da vigência","example":"2026-12-31"}}},"NcmDadosAbertosOutput":{"type":"object","properties":{"tributadoPeloImpostoSeletivo":{"type":"boolean","description":"Tributado pelo Imposto Seletivo"},"aliquotaAdValorem":{"type":"number","description":"Alíquota ad valorem do Imposto Seletivo"},"aliquotaAdRem":{"type":"number","description":"Alíquota ad rem do Imposto Seletivo"},"capitulo":{"type":"string","description":"Capítulo da NCM"},"posicao":{"type":"string","description":"Posição da NCM"},"subposicao":{"type":"string","description":"Subposição da NCM"},"item":{"type":"string","description":"Item da NCM"},"subitem":{"type":"string","description":"Subitem da NCM"},"unidade":{"type":"string","description":"Unidade da NCM"}}},"NbsDadosAbertosOutput":{"type":"object","properties":{"tributadoPeloImpostoSeletivo":{"type":"boolean","description":"Tributado pelo Imposto Seletivo"},"aliquotaAdValorem":{"type":"number","description":"Alíquota ad valorem do Imposto Seletivo"},"capitulo":{"type":"string","description":"Capítulo da NBS"},"posicao":{"type":"string","description":"Posição da NBS"},"subposicao1":{"type":"string","description":"Subposição 1 da NBS"},"subposicao2":{"type":"string","description":"Subposição 2 da NBS"},"item":{"type":"string","description":"Item da NBS"}}},"NbsListaDadosAbertosOutput":{"type":"object","properties":{"codigo":{"type":"string","description":"Código NBS","example":10101},"descricao":{"type":"string","description":"Descrição da NBS","example":"Serviços de construção de edificações"}}},"FundamentacaoClassificacaoDadosAbertosOutput":{"type":"object","properties":{"codigoClassificacaoTributaria":{"type":"string","description":"Código da classificação tributária vinculada à fundamentacao legal","example":"000001"},"descricaoClassificacaoTributaria":{"type":"string","description":"Descrição da classificação tributária vinculada à fundamentacao legal","example":"000001"},"codigoSituacaoTributaria":{"type":"string","description":"Código da situação tributária vinculada à fundamentacao legal","example":"000001"},"descricaoSituacaoTributaria":{"type":"string","description":"Descrição da situação tributária vinculada à fundamentacao legal","example":"000001"},"conjuntoTributo":{"type":"string","description":"Tributo(s) vinculado(s) à fundamentacao legal","example":"CBS e IBS"},"texto":{"type":"string","description":"Texto da fundamentação legal"},"textoCurto":{"type":"string","description":"Texto curto da fundamentação legal"},"referenciaNormativa":{"type":"string","description":"Referência normativa da fundamentação legal"}}},"ClassificacaoTributariaDadosAbertosOutput":{"type":"object","properties":{"codigo":{"type":"string","description":"Código da classificação tributária","example":"000001"},"descricao":{"type":"string","description":"Descrição da classificação tributária"},"tipoAliquota":{"type":"string","description":"Tipo de alíquota da classificação tributária"},"nomenclatura":{"type":"string","description":"Nomenclatura da classificação tributária"},"descricaoTratamentoTributario":{"type":"string","description":"Descrição do tratamento tributário da classificação tributária"},"incompativelComSuspensao":{"type":"boolean"},"exigeGrupoDesoneracao":{"type":"boolean"},"possuiPercentualReducao":{"type":"boolean"},"indicaApropriacaoCreditoAdquirenteCbs":{"type":"boolean"},"indicaApropriacaoCreditoAdquirenteIbs":{"type":"boolean"},"indicaCreditoPresumidoFornecedor":{"type":"boolean"},"indicaCreditoPresumidoAdquirente":{"type":"boolean"},"creditoOperacaoAntecedente":{"type":"string"},"percentualReducaoCbs":{"type":"number"},"percentualReducaoIbsUf":{"type":"number"},"percentualReducaoIbsMun":{"type":"number"},"tiposDfeClassificacao":{"type":"array","items":{"$ref":"#/components/schemas/TipoDfeClassificacaoDadosAbertosOutput"}},"dataAtualizacao":{"type":"string","format":"date","description":"Data de atualização da classificação tributária (YYYY-MM-DD)","example":"2025-12-15"}}},"TipoDfeClassificacaoDadosAbertosOutput":{"type":"object","properties":{"tipo":{"type":"integer","format":"int32","description":"Tipo de DFE","example":55},"sigla":{"type":"string","description":"Sigla do DFE","example":"NF-e"},"descricao":{"type":"string","description":"Descrição do DFE","example":"Documento Fiscal Eletrônico"}}},"ValidadeDfeClassificacaoTributariaDadosAbertosOutput":{"type":"object","properties":{"siglaDfeInformado":{"type":"string","description":"Sigla do DFE informado","example":"NFSe"},"validoParaSiglaDfeInformado":{"type":"boolean","description":"Indica se a classificação tributária é válida para a sigla do DFE informado","example":true},"nomenclatura":{"type":"string","description":"Nomenclatura da classificação tributária informada","example":"NBS ou NCM"},"exigeGrupoTributacaoRegular":{"type":"boolean","description":"Indica se a classificação tributária exige grupo de tributação regular","example":false},"permiteDiferimento":{"type":"boolean","description":"Indica se a classificação tributária permite diferimento","example":false},"possibilidadeCreditoPresumido":{"type":"boolean","description":"Indica se há possibilidade de crédito presumido na operação","example":false}}},"AliquotaDadosAbertosOutput":{"type":"object","properties":{"aliquotaReferencia":{"type":"number","description":"Alíquota de referência","example":0},"aliquotaPropria":{"type":"number","description":"Alíquota própria","example":0},"formaAplicacao":{"type":"string","description":"Forma de aplicação da alíquota própria em relação à alíquota de referência","enum":["SUBSTITUICAO","ACRESCIMO","DECRESCIMO"],"example":"ACRESCIMO"}}}}}} \ No newline at end of file +{"openapi":"3.1.0","info":{"title":"OpenAPI definition","version":"v0"},"servers":[{"url":"https://piloto-cbs.tributos.gov.br:18987/servico/calculadora-consumo/api","description":"Generated server url"}],"tags":[{"name":"Base de Cálculo - VERSÃO BETA","description":"Serviço para Base de Cálculo"},{"name":"Calculadora - VERSÃO BETA","description":"Calculadora de Tributos"},{"name":"NFS-e - VERSÃO BETA","description":"Serviço para cálculo de Base de Cálculo de NFS-e"},{"name":"Dados Abertos - VERSÃO BETA","description":"Consultas para os Dados Abertos"},{"name":"Observabilidade - Calculadora","description":"Endpoint de observabilidade da Calculadora de Tributos"},{"name":"Pedágio - VERSÃO BETA","description":"IVA - Calculadora de Tributos para o Pedágio"}],"paths":{"/calculadora/xml/validate":{"get":{"tags":["Calculadora - VERSÃO BETA"],"summary":"Tipos de DFe","description":"Tipos de DFe para validação de XML","operationId":"getDocumentosValidacao","responses":{"200":{"description":"Consulta realizada com sucesso","content":{"application/json":{"schema":{"$ref":"#/components/schemas/TipoDocumentoDTO"},"examples":{"Tipos de DFe Example":{"description":"Tipos de DFe Example","value":[{"nome":"NFe","mnemonico":"nfe","versaoNotaTecnica":"v1.30"},{"nome":"NFCe","mnemonico":"nfce","versaoNotaTecnica":"v1.30"},{"nome":"NFSe","mnemonico":"nfse","versaoNotaTecnica":"ND"},{"nome":"CTe","mnemonico":"cte","versaoNotaTecnica":"v1.10"},{"nome":"CTe Simplificado","mnemonico":"cte-simplificado","versaoNotaTecnica":"v1.10"},{"nome":"BPe","mnemonico":"bpe","versaoNotaTecnica":"v1.10"},{"nome":"NF3E","mnemonico":"nf3e","versaoNotaTecnica":"v1.10"}]}}}}},"500":{"description":"Erro interno na API","content":{"application/problem+json":{"schema":{"$ref":"#/components/schemas/ProblemDetail"},"examples":{"Internal Server Error Example":{"description":"Internal Server Error Example","value":{"type":"http://url-ambiente/errors/erro-interno","title":"Erro interno na API","status":500,"detail":"Falha ao processar a requisição.","instance":"/api/calculadora/xml/validate"}}}}}}}},"post":{"tags":["Calculadora - VERSÃO BETA"],"summary":"Validação de XML","description":"Valida os dados no formato XML","operationId":"validate","parameters":[{"name":"tipo","in":"query","description":"Tipo do XML","required":true,"schema":{"type":"string","enum":["nfe","nfce","nfse","cte","cte-simplificado","bpe","bpe-tm","nf3e"]}},{"name":"subtipo","in":"query","description":"Subtipo do XML","required":true,"schema":{"type":"string","enum":["grupo","nota"]}}],"requestBody":{"description":"XML a ser validado","content":{"application/xml":{"schema":{"type":"string"}}},"required":true},"responses":{"200":{"description":"Validação realizada com sucesso","content":{"application/json":{"schema":{"type":"boolean"}}}},"400":{"description":"Estrutura e/ou dados informados em formato não reconhecido","content":{"application/problem+json":{"schema":{"$ref":"#/components/schemas/ProblemDetail"}}}},"404":{"description":"Erro na URL da requisição","content":{"application/problem+json":{"schema":{"$ref":"#/components/schemas/ProblemDetail"}}}},"422":{"description":"Erro de validação","content":{"application/problem+json":{"schema":{"$ref":"#/components/schemas/ProblemDetail"}}}},"500":{"description":"Erro interno na API","content":{"application/problem+json":{"schema":{"$ref":"#/components/schemas/ProblemDetail"}}}}}}},"/calculadora/xml/generate":{"get":{"tags":["Calculadora - VERSÃO BETA"],"summary":"Tipos de DFe","description":"Tipos de DFe para geração de XML","operationId":"getDocumentosGeracao","responses":{"200":{"description":"Consulta realizada com sucesso","content":{"application/json":{"schema":{"$ref":"#/components/schemas/TipoDocumentoDTO"},"examples":{"Tipos de DFe Example":{"description":"Tipos de DFe Example","value":[{"nome":"NFe","mnemonico":"nfe","versaoNotaTecnica":"v1.30"},{"nome":"NFCe","mnemonico":"nfce","versaoNotaTecnica":"v1.30"},{"nome":"CTe","mnemonico":"cte","versaoNotaTecnica":"v1.10"},{"nome":"CTe Simplificado","mnemonico":"cte-simplificado","versaoNotaTecnica":"v1.10"},{"nome":"BPe","mnemonico":"bpe","versaoNotaTecnica":"v1.10"},{"nome":"NF3E","mnemonico":"nf3e","versaoNotaTecnica":"v1.10"}]}}}}},"500":{"description":"Erro interno na API","content":{"application/problem+json":{"schema":{"$ref":"#/components/schemas/ProblemDetail"},"examples":{"Internal Server Error Example":{"description":"Internal Server Error Example","value":{"type":"http://url-ambiente/errors/erro-interno","title":"Erro interno na API","status":500,"detail":"Falha ao processar a requisição.","instance":"/api/calculadora/xml/generate"}}}}}}}},"post":{"tags":["Calculadora - VERSÃO BETA"],"summary":"Geração de XML","description":"Converte os dados para o formato XML","operationId":"generate","parameters":[{"name":"tipo","in":"query","description":"Tipo do documento","required":true,"schema":{"type":"string","enum":["nfe","nfce","nfse","cte","cte-simplificado","bpe","bpe-tm","nf3e"]}}],"requestBody":{"description":"Dados do CBS/IBS/IS","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ROCDomain"}}},"required":true},"responses":{"200":{"description":"Conversão realizada com sucesso","content":{"application/xml":{"schema":{"type":"string"}}}},"400":{"description":"Estrutura e/ou dados informados em formato não reconhecido","content":{"application/problem+json":{"schema":{"$ref":"#/components/schemas/ProblemDetail"}}}},"404":{"description":"Erro na URL da requisição","content":{"application/problem+json":{"schema":{"$ref":"#/components/schemas/ProblemDetail"}}}},"422":{"description":"Erro de validação","content":{"application/problem+json":{"schema":{"$ref":"#/components/schemas/ProblemDetail"}}}},"500":{"description":"Erro interno na API","content":{"application/problem+json":{"schema":{"$ref":"#/components/schemas/ProblemDetail"}}}}}}},"/calculadora/regime-geral":{"post":{"tags":["Calculadora - VERSÃO BETA"],"summary":"Cálculo do tributo","description":"Calcula os tributos a partir dos dados de uma operação de consumo","operationId":"calcularTributos","requestBody":{"description":"Dados de uma operação de consumo","content":{"application/json":{"schema":{"$ref":"#/components/schemas/OperacaoInput"}}},"required":true},"responses":{"200":{"description":"Cálculo realizado com sucesso","headers":{"x-warning-dados-simulados":{"description":"Indica que os dados são simulados. Valores possíveis: 1 (alíquotas da CBS e do IBS ainda não definidas em lei), 2 (alíquotas da CBS e do IBS, e redutor em Compras Governamentais ainda não definidos em lei), 3 (alíquotas da CBS e do IBS, alíquotas e Classificações Tributárias do IS ainda não definidos em lei), 4 (alíquotas da CBS e do IBS, redutor em Compras Governamentais fictícios, alíquotas e Classificações Tributárias do IS ainda não definidos em lei), 5 (para o cClassTrib informado a alíquota ainda não foi definida em lei). ","style":"simple","schema":{"type":"integer","example":1}}},"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ROCDomain"}}}},"400":{"description":"Estrutura e/ou dados informados em formato não reconhecido","content":{"application/problem+json":{"schema":{"$ref":"#/components/schemas/ProblemDetail"}}}},"404":{"description":"Erro na URL da requisição","content":{"application/problem+json":{"schema":{"$ref":"#/components/schemas/ProblemDetail"}}}},"422":{"description":"Erro de validação","content":{"application/problem+json":{"schema":{"$ref":"#/components/schemas/ProblemDetail"}}}},"500":{"description":"Erro interno na API","content":{"application/problem+json":{"schema":{"$ref":"#/components/schemas/ProblemDetail"}}}}}}},"/calculadora/pedagio":{"post":{"tags":["Pedágio - VERSÃO BETA"],"summary":"Cálculo do tributo","description":"Calculo do pedágio","operationId":"calcularTributo","requestBody":{"description":"Dados para cálculo do pedágio","content":{"application/json":{"schema":{"$ref":"#/components/schemas/PedagioInput"}}},"required":true},"responses":{"200":{"description":"Cálculo realizado com sucesso","headers":{"x-warning-dados-simulados":{"description":"Indica que os dados são simulados. Valores possíveis: 1 (alíquotas da CBS e do IBS ainda não definidas em lei).","style":"simple","schema":{"type":"integer","example":1}}},"content":{"application/json":{"schema":{"$ref":"#/components/schemas/PedagioOutput"}}}},"400":{"description":"Estrutura e/ou dados informados em formato não reconhecido","content":{"application/problem+json":{"schema":{"$ref":"#/components/schemas/ProblemDetail"}}}},"404":{"description":"Erro na URL da requisição","content":{"application/problem+json":{"schema":{"$ref":"#/components/schemas/ProblemDetail"}}}},"422":{"description":"Erro de validação","content":{"application/problem+json":{"schema":{"$ref":"#/components/schemas/ProblemDetail"}}}},"500":{"description":"Erro interno na API","content":{"application/problem+json":{"schema":{"$ref":"#/components/schemas/ProblemDetail"}}}}}}},"/calculadora/observabilidade/regime-geral":{"post":{"tags":["Observabilidade - Calculadora"],"summary":"Cálculo com observabilidade","description":"Processa todos os itens acumulando erros individuais. Retorna resultado parcial com estado de cada item.","operationId":"calcularTributosObservabilidade","requestBody":{"description":"Dados de uma operação de consumo","content":{"application/json":{"schema":{"$ref":"#/components/schemas/OperacaoInput"}}},"required":true},"responses":{"200":{"description":"Processamento realizado (itens podem ter erros individuais)","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ObservabilidadeROCDomain"}}}},"400":{"description":"Estrutura e/ou dados informados em formato não reconhecido","content":{"application/problem+json":{"schema":{"$ref":"#/components/schemas/ProblemDetail"}}}},"422":{"description":"Erro de validação global (UF, Município, data do fato gerador)","content":{"application/problem+json":{"schema":{"$ref":"#/components/schemas/ProblemDetail"}}}},"500":{"description":"Erro interno na API","content":{"application/problem+json":{"schema":{"$ref":"#/components/schemas/ProblemDetail"}}}}}}},"/calculadora/nfse/indicador-operacao/validate":{"post":{"tags":["NFS-e - VERSÃO BETA"],"summary":"Validação de Indicador de Operação","description":"Valida se o cIndOp é compatível com cClassTrib, NBS e cTribNac (opcional)","operationId":"validarIndicadorOperacao","requestBody":{"description":"Dados para validação: cIndOp, cClassTrib, NBS e cTribNac (opcional)","content":{"application/json":{"schema":{"$ref":"#/components/schemas/NfseValidacaoIndicadorOperacaoInput"}}},"required":true},"responses":{"200":{"description":"Validação realizada com sucesso","content":{"application/json":{"schema":{"$ref":"#/components/schemas/NfseValidacaoIndicadorOperacaoOutput"}}}},"400":{"description":"Requisição com problema","content":{"application/problem+json":{"schema":{"$ref":"#/components/schemas/ProblemDetail"}}}},"404":{"description":"Erro na URL da requisição","content":{"application/problem+json":{"schema":{"$ref":"#/components/schemas/ProblemDetail"}}}},"500":{"description":"Erro interno na API","content":{"application/problem+json":{"schema":{"$ref":"#/components/schemas/ProblemDetail"}}}}}}},"/calculadora/nfse/base-calculo":{"post":{"tags":["NFS-e - VERSÃO BETA"],"summary":"Base de Cálculo NFS-e","description":"Afere a Base de Cálculo de uma NFS-e no período de transição. ATENÇÃO: Os campos PIS e COFINS não podem ser informados a partir de 2027. O campo ISS não pode ser informado a partir de 2033.","operationId":"calcularBaseCalculo","requestBody":{"description":"Dados da base de cálculo da NFS-e","content":{"application/json":{"schema":{"$ref":"#/components/schemas/NfseBaseCalculoInput"}}},"required":true},"responses":{"200":{"description":"Cálculo realizado com sucesso","content":{"application/json":{"schema":{"$ref":"#/components/schemas/NfseBaseCalculoOutput"}}}},"400":{"description":"Estrutura e/ou dados informados em formato não reconhecido ou campos incompatíveis com o ano do fato gerador informado (PIS e COFINS a partir de 2027; ISS a partir de 2033)","content":{"application/problem+json":{"schema":{"$ref":"#/components/schemas/ProblemDetail"}}}},"404":{"description":"Erro na URL da requisição","content":{"application/problem+json":{"schema":{"$ref":"#/components/schemas/ProblemDetail"}}}},"422":{"description":"Erro de validação","content":{"application/problem+json":{"schema":{"$ref":"#/components/schemas/ProblemDetail"}}}},"500":{"description":"Erro interno na API","content":{"application/problem+json":{"schema":{"$ref":"#/components/schemas/ProblemDetail"}}}}}}},"/calculadora/base-calculo/is-mercadorias":{"post":{"tags":["Base de Cálculo - VERSÃO BETA"],"summary":"Imposto Seletivo","description":"Afere a Base de Cálculo do Imposto Seletivo de uma operação de consumo. ATENÇÃO: Os campos ICMS e ISS não podem ser informados a partir de 2033.","operationId":"calcularISMercadorias","requestBody":{"description":"Dados da base de cálculo do Imposto Seletivo","content":{"application/json":{"schema":{"$ref":"#/components/schemas/BaseCalculoISMercadoriasInput"}}},"required":true},"responses":{"200":{"description":"Cálculo realizado com sucesso","content":{"application/json":{"schema":{"$ref":"#/components/schemas/BaseCalculoISMercadoriasModel"}}}},"400":{"description":"Estrutura e/ou dados informados em formato não reconhecido ou campos incompatíveis com o ano do fato gerador informado (ICMS e ISS a partir de 2033)","content":{"application/problem+json":{"schema":{"$ref":"#/components/schemas/ProblemDetail"}}}},"404":{"description":"Erro na URL da requisição","content":{"application/problem+json":{"schema":{"$ref":"#/components/schemas/ProblemDetail"}}}},"422":{"description":"Erro de validação","content":{"application/problem+json":{"schema":{"$ref":"#/components/schemas/ProblemDetail"}}}},"500":{"description":"Erro interno na API","content":{"application/problem+json":{"schema":{"$ref":"#/components/schemas/ProblemDetail"}}}}}}},"/calculadora/base-calculo/cbs-ibs-mercadorias":{"post":{"tags":["Base de Cálculo - VERSÃO BETA"],"summary":"CIBS","description":"Afere a Base de Cálculo da CBS/IBS de uma operação de consumo. ATENÇÃO: Os campos PIS, COFINS, PIS Importação e COFINS Importação não podem ser informados a partir de 2027. Os campos ICMS e ISS não podem ser informados a partir de 2033.","operationId":"calcularCibs","requestBody":{"description":"Dados da base de cálculo do CIBS","content":{"application/json":{"schema":{"$ref":"#/components/schemas/BaseCalculoCibsInput"}}},"required":true},"responses":{"200":{"description":"Cálculo realizado com sucesso","content":{"application/json":{"schema":{"$ref":"#/components/schemas/BaseCalculoISMercadoriasModel"}}}},"400":{"description":"Estrutura e/ou dados informados em formato não reconhecido ou campos incompatíveis com o ano do fato gerador informado (PIS, COFINS, PIS Importação e COFINS a partir de 2027; ICMS e ISS a partir de 2033)","content":{"application/problem+json":{"schema":{"$ref":"#/components/schemas/ProblemDetail"}}}},"404":{"description":"Erro na URL da requisição","content":{"application/problem+json":{"schema":{"$ref":"#/components/schemas/ProblemDetail"}}}},"422":{"description":"Erro de validação","content":{"application/problem+json":{"schema":{"$ref":"#/components/schemas/ProblemDetail"}}}},"500":{"description":"Erro interno na API","content":{"application/problem+json":{"schema":{"$ref":"#/components/schemas/ProblemDetail"}}}}}}},"/calculadora/observabilidade/erros":{"get":{"tags":["Observabilidade - Calculadora"],"summary":"Consultar descrição de erro","description":"Retorna título e descrição em PT-BR para o código de erro informado (REG, CAL ou VAL).","operationId":"buscarErro","parameters":[{"name":"codigo","in":"query","description":"Código do erro (ex: REG-020, CAL-001, VAL-001)","required":true,"schema":{"type":"string"}}],"responses":{"200":{"description":"Descrição do erro encontrada","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErroDescricao"}}}},"404":{"description":"Código de erro não encontrado","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErroDescricao"}}}}}}},"/calculadora/nfse/situacoes-classificacoes-tributarias":{"get":{"tags":["NFS-e - VERSÃO BETA"],"summary":"Consultar Classificações e Situações Tributárias por NBS","description":"Retorna todas as combinações de Classificações Tributárias e Situações Tributárias associadas a um código NBS em uma data específica","operationId":"consultarSituacoesClassificacoesPorNbs","parameters":[{"name":"nbs","in":"query","description":"Código NBS sem formatação","required":true,"schema":{"type":"string","pattern":"^\\d{9}$"},"example":101011100},{"name":"data","in":"query","description":"Data no padrão ISO 8601 (yyyy-MM-dd)","required":true,"schema":{"type":"string","format":"date"},"example":"2026-06-01"}],"responses":{"200":{"description":"Consulta realizada com sucesso","content":{"application/json":{"schema":{"$ref":"#/components/schemas/NfseSituacaoClassificacaoOutput"},"examples":{"Classificações e Situações Example":{"description":"Classificações e Situações Example","value":[{"codigoClassificacaoTributaria":"200045","descricaoClassificacaoTributaria":"Operações relacionadas a projetos de reabilitação urbana de zonas históricas e de áreas críticas de recuperação e reconversão urbanística","codigoSituacaoTributaria":"200","descricaoSituacaoTributaria":"Alíquota reduzida"},{"codigoClassificacaoTributaria":"200046","descricaoClassificacaoTributaria":"Operações com bens imóveis","codigoSituacaoTributaria":"200","descricaoSituacaoTributaria":"Alíquota reduzida"}]}}}}},"400":{"description":"Parâmetros inválidos","content":{"application/problem+json":{"schema":{"$ref":"#/components/schemas/ProblemDetail"},"examples":{"Bad Request Example":{"description":"Bad Request Example","value":{"type":"about:blank","title":"Bad Request","status":400,"detail":"NBS deve conter exatamente 9 dígitos numéricos","instance":"/api/calculadora/nfse/classificacoes-situacoes-tributarias"}}}}}},"500":{"description":"Erro interno na API","content":{"application/problem+json":{"schema":{"$ref":"#/components/schemas/ProblemDetail"}}}}}}},"/calculadora/nfse/local-operacao":{"get":{"tags":["NFS-e - VERSÃO BETA"],"summary":"Local da Operação","description":"Consulta o local da operação baseado no código do Indicador de Operação (cIndOp) e data de ocorrência do fato gerador","operationId":"consultarLocalOperacao","parameters":[{"name":"cIndOp","in":"query","description":"Código do Indicador de Operação (6 dígitos)","required":true,"schema":{"type":"string","minLength":1,"pattern":"^\\d{6}$"},"example":100301},{"name":"dataOcorrenciaFatoGerador","in":"query","description":"Data de ocorrência do fato gerador no padrão ISO 8601 (yyyy-MM-dd)","required":true,"schema":{"type":"string","format":"date"},"example":"2026-01-01"}],"responses":{"200":{"description":"Consulta realizada com sucesso","content":{"application/json":{"schema":{"$ref":"#/components/schemas/NfseLocalOperacaoOutput"},"examples":{"Local Operação Example":{"description":"Local Operação Example","value":{"cIndOp":"100301","dataOcorrenciaFatoGerador":"2026-01-01","codigoLocalFornecimento":11,"localFornecimento":"Local do domicílio principal do adquirente residente ou domiciliado no País. Nas aquisições indicadas no art. 11, §4º, II, considera-se domicílio principal do adquirente o estabelecimentro matriz","codigoLocalIncidencia":2,"localIncidencia":"Endereço do Tomador/Adquirente"}}}}}},"400":{"description":"Requisição com problema","content":{"application/problem+json":{"schema":{"$ref":"#/components/schemas/ProblemDetail"},"examples":{"Bad Request Example":{"description":"Bad Request Example","value":{"type":"about:blank","title":"Bad Request","status":400,"detail":"Required parameter 'cIndOp' is not present.","instance":"/api/calculadora/nfse/local-operacao"}}}}}},"404":{"description":"Erro na URL da requisição","content":{"application/problem+json":{"schema":{"$ref":"#/components/schemas/ProblemDetail"},"examples":{"Not Found Example":{"description":"Not Found Example","value":{"type":"about:blank","title":"Not Found","status":404,"detail":"No static resource calculadora/nfse/local-operacao.","instance":"/api/calculadora/nfse/local-operacao-invalido"}}}}}},"500":{"description":"Erro interno na API","content":{"application/problem+json":{"schema":{"$ref":"#/components/schemas/ProblemDetail"},"examples":{"Internal Server Error Example":{"description":"Internal Server Error Example","value":{"type":"http://url-ambiente/errors/erro-interno","title":"Erro interno na API","status":500,"detail":"Falha ao processar a requisição.","instance":"/api/calculadora/nfse/local-operacao"}}}}}}}}},"/calculadora/nfse/locais-incidencia":{"get":{"tags":["NFS-e - VERSÃO BETA"],"summary":"Locais de Incidência","description":"Retorna a lista de códigos e descrições dos locais de incidência. Se o parâmetro codigo for informado, retorna apenas o valor correspondente.","operationId":"consultarLocaisIncidencia","parameters":[{"name":"codigo","in":"query","description":"Código do local de incidência (opcional)","required":false,"schema":{"type":"integer","format":"int32"},"example":3}],"responses":{"200":{"description":"Consulta realizada com sucesso","content":{"application/json":{"schema":{"$ref":"#/components/schemas/NfseCodigoDescricaoOutput"}}}},"400":{"description":"Código inválido","content":{"application/problem+json":{"schema":{"$ref":"#/components/schemas/ProblemDetail"}}}},"500":{"description":"Erro interno na API","content":{"application/problem+json":{"schema":{"$ref":"#/components/schemas/ProblemDetail"}}}}}}},"/calculadora/nfse/locais-fornecimento":{"get":{"tags":["NFS-e - VERSÃO BETA"],"summary":"Locais de Fornecimento","description":"Retorna a lista de códigos e descrições dos locais de fornecimento. Se o parâmetro codigo for informado, retorna apenas o valor correspondente.","operationId":"consultarLocaisFornecimento","parameters":[{"name":"codigo","in":"query","description":"Código do local de fornecimento (opcional)","required":false,"schema":{"type":"integer","format":"int32"},"example":5}],"responses":{"200":{"description":"Consulta realizada com sucesso","content":{"application/json":{"schema":{"$ref":"#/components/schemas/NfseCodigoDescricaoOutput"}}}},"400":{"description":"Código inválido","content":{"application/problem+json":{"schema":{"$ref":"#/components/schemas/ProblemDetail"}}}},"500":{"description":"Erro interno na API","content":{"application/problem+json":{"schema":{"$ref":"#/components/schemas/ProblemDetail"}}}}}}},"/calculadora/nfse/indicador-operacao":{"get":{"tags":["NFS-e - VERSÃO BETA"],"summary":"Indicador de Operação","description":"Consulta os indicadores de operação baseado na data de ocorrência do fato gerador","operationId":"consultarIndicadoresOperacao","parameters":[{"name":"dataOcorrenciaFatoGerador","in":"query","description":"Data de ocorrência do fato gerador no padrão ISO 8601 (yyyy-MM-dd)","required":true,"schema":{"type":"string","format":"date"},"example":"2026-01-01"},{"name":"nbs","in":"query","description":"Código NBS (9 dígitos numéricos) - quando informado, retorna campos adicionais prestacaoServicoOnerosa e adquirenteExterior","required":false,"schema":{"type":"string","pattern":"^\\d{9}$"},"example":123456789}],"responses":{"200":{"description":"Consulta realizada com sucesso","content":{"application/json":{"schema":{"$ref":"#/components/schemas/NfseIndicadorOperacaoOutput"},"examples":{"Indicador Operação Example":{"description":"Indicador Operação Example","value":[{"cIndOp":"020101","tipoOperacao":"Operação com bem imóvel, bem imaterial, inclusive direito, relacionada a bem imóvel","codigoLocalFornecimento":14,"localFornecimento":"Localidade do imóvel","codigoLocalIncidencia":6,"localIncidencia":"Localidade do Imóvel"},{"cIndOp":"020201","tipoOperacao":"Serviço prestado fisicamente sobre bem imóvel","codigoLocalFornecimento":14,"localFornecimento":"Localidade do imóvel","codigoLocalIncidencia":6,"localIncidencia":"Localidade do Imóvel"},{"cIndOp":"020301","tipoOperacao":"Serviço de administração e intermediação de bem imóvel","codigoLocalFornecimento":14,"localFornecimento":"Localidade do imóvel","codigoLocalIncidencia":6,"localIncidencia":"Localidade do Imóvel"}]},"Indicador Operação com NBS Example":{"description":"Indicador Operação com NBS Example","value":[{"cIndOp":"100301","tipoOperacao":"Demais serviços, em operações onerosas","codigoLocalFornecimento":11,"localFornecimento":"Local do domicílio principal do adquirente residente ou domiciliado no País. Nas aquisições indicadas no art. 11, §4º, II, considera-se domicílio principal do adquirente o estabelecimentro matriz","codigoLocalIncidencia":2,"localIncidencia":"Endereço do Tomador/Adquirente","prestacaoServicoOnerosa":true,"adquirenteExterior":false}]}}}}},"400":{"description":"Requisição com problema","content":{"application/problem+json":{"schema":{"$ref":"#/components/schemas/ProblemDetail"},"examples":{"Bad Request Example":{"description":"Bad Request Example","value":{"type":"about:blank","title":"Bad Request","status":400,"detail":"Required parameter 'dataOcorrenciaFatoGerador' is not present.","instance":"/api/calculadora/nfse/indicador-operacao"}}}}}},"500":{"description":"Erro interno na API","content":{"application/problem+json":{"schema":{"$ref":"#/components/schemas/ProblemDetail"},"examples":{"Internal Server Error Example":{"description":"Internal Server Error Example","value":{"type":"http://url-ambiente/errors/erro-interno","title":"Erro interno na API","status":500,"detail":"Falha ao processar a requisição.","instance":"/api/calculadora/nfse/indicador-operacao"}}}}}}}}},"/calculadora/dados-abertos/versao":{"get":{"tags":["Dados Abertos - VERSÃO BETA"],"summary":"Versão do Aplicativo e do Banco de Dados","description":"Obtém a versão do aplicativo e do banco de dados","operationId":"consultarVersao","responses":{"200":{"description":"Consulta realizada com sucesso","content":{"application/json":{"schema":{"$ref":"#/components/schemas/VersaoOutput"},"examples":{"Versão Example":{"description":"Versão Example","value":{"versaoApp":"0.0.0-SNAPSHOT","versaoDb":"v0011","descricaoVersaoDb":"Nova carga de classificação tributária e novos campos em CLASSIFICACAO_TRIBUTARIA e SITUACAO_TRIBUTARIA.","dataVersaoDb":"2025-10-16","ambiente":"online"}}}}}},"500":{"description":"Erro interno na API","content":{"application/problem+json":{"schema":{"$ref":"#/components/schemas/ProblemDetail"},"examples":{"Internal Server Error Example":{"description":"Internal Server Error Example","value":{"type":"http://url-ambiente/errors/erro-interno","title":"Erro interno na API","status":500,"detail":"Falha ao processar a requisição.","instance":"/api/calculadora/dados-abertos/versao"}}}}}}}}},"/calculadora/dados-abertos/ufs":{"get":{"tags":["Dados Abertos - VERSÃO BETA"],"summary":"Unidade Federativa","description":"Obtém a lista das unidades federativas cadastradas","operationId":"consultarUfs","responses":{"200":{"description":"Consulta realizada com sucesso","content":{"application/json":{"schema":{"$ref":"#/components/schemas/UfDadosAbertosOutput"},"examples":{"UFs Example":{"description":"UFs Example","value":[{"sigla":"RO","nome":"RONDÔNIA","codigo":11},{"sigla":"AC","nome":"ACRE","codigo":12}]}}}}},"400":{"description":"Requisição com problema","content":{"application/problem+json":{"schema":{"$ref":"#/components/schemas/ProblemDetail"},"examples":{"Bad Request Example":{"description":"Bad Request Example","value":{"type":"about:blank","title":"Bad Request","status":400,"detail":"Parâmetro inválido ou ausente.","instance":"/api/calculadora/dados-abertos/ufs"}}}}}},"404":{"description":"Erro na URL da requisição","content":{"application/problem+json":{"schema":{"$ref":"#/components/schemas/ProblemDetail"},"examples":{"Not Found Example":{"description":"Not Found Example","value":{"type":"about:blank","title":"Not Found","status":404,"detail":"No static resource calculadora/dados-abertos/ufs/1.","instance":"/api/calculadora/dados-abertos/ufs/1"}}}}}},"500":{"description":"Erro interno na API","content":{"application/problem+json":{"schema":{"$ref":"#/components/schemas/ProblemDetail"},"examples":{"Internal Server Error Example":{"description":"Internal Server Error Example","value":{"type":"http://url-ambiente/errors/erro-interno","title":"Erro interno na API","status":500,"detail":"Falha ao processar a requisição.","instance":"/api/calculadora/dados-abertos/ufs"}}}}}}}}},"/calculadora/dados-abertos/ufs/municipios":{"get":{"tags":["Dados Abertos - VERSÃO BETA"],"summary":"Município","description":"Obtém a lista dos municípios cadastrados com base na sigla de uma unidade federativa","operationId":"consultarMunicipiosPorSiglaUf","parameters":[{"name":"siglaUf","in":"query","description":"Sigla da unidade federativa","required":true,"schema":{"type":"string"},"example":"RS"}],"responses":{"200":{"description":"Consulta realizada com sucesso","content":{"application/json":{"schema":{"$ref":"#/components/schemas/MunicipioDadosAbertosOutput"},"examples":{"Municípios Example":{"description":"Municípios Example","value":[{"codigo":4314902,"nome":"Porto Alegre"},{"codigo":4305108,"nome":"Caxias do Sul"}]}}}}},"500":{"description":"Erro interno na API","content":{"application/problem+json":{"schema":{"$ref":"#/components/schemas/ProblemDetail"},"examples":{"Internal Server Error Example":{"description":"Internal Server Error Example","value":{"type":"http://url-ambiente/errors/erro-interno","title":"Erro interno na API","status":500,"detail":"Falha ao processar a requisição.","instance":"/api/calculadora/dados-abertos/municipios/RS"}}}}}}}}},"/calculadora/dados-abertos/transferencias-ibs":{"get":{"tags":["Dados Abertos - VERSÃO BETA"],"summary":"Transferência IBS para Entes Governamentais","description":"Obtém a lista de todos os percentuais de transferência IBS cadastrados","operationId":"consultarTransferenciasIBS","responses":{"200":{"description":"Consulta realizada com sucesso","content":{"application/json":{"schema":{"$ref":"#/components/schemas/TransferenciaIBSDadosAbertosOutput"},"examples":{"Transferências IBS Example":{"description":"Transferências IBS Example","value":[{"valor":0,"inicioVigencia":"2026-01-01","fimVigencia":"2026-12-31"},{"valor":100,"inicioVigencia":"2027-01-01"}]}}}}},"500":{"description":"Erro interno na API","content":{"application/problem+json":{"schema":{"$ref":"#/components/schemas/ProblemDetail"},"examples":{"Internal Server Error Example":{"description":"Internal Server Error Example","value":{"type":"http://url-ambiente/errors/erro-interno","title":"Erro interno na API","status":500,"detail":"Falha ao processar a requisição.","instance":"/api/calculadora/dados-abertos/transferencias-ibs"}}}}}}}}},"/calculadora/dados-abertos/transferencias-cbs":{"get":{"tags":["Dados Abertos - VERSÃO BETA"],"summary":"Transferência CBS para Entes Governamentais","description":"Obtém a lista de todos os percentuais de transferência CBS cadastrados","operationId":"consultarTransferenciasCBS","responses":{"200":{"description":"Consulta realizada com sucesso","content":{"application/json":{"schema":{"$ref":"#/components/schemas/TransferenciaCBSDadosAbertosOutput"},"examples":{"Transferências CBS Example":{"description":"Transferências CBS Example","value":"[\n {\n \"valor\": 0.15,\n \"inicioVigencia\": \"2026-01-01\",\n },\n {\n \"valor\": 0.10,\n \"inicioVigencia\": \"2025-01-01\",\n \"fimVigencia\": \"2025-12-31\"\n }\n]\n"}}}}},"500":{"description":"Erro interno na API","content":{"application/problem+json":{"schema":{"$ref":"#/components/schemas/ProblemDetail"},"examples":{"Internal Server Error Example":{"description":"Internal Server Error Example","value":{"type":"http://url-ambiente/errors/erro-interno","title":"Erro interno na API","status":500,"detail":"Falha ao processar a requisição.","instance":"/api/calculadora/dados-abertos/transferencias-cbs"}}}}}}}}},"/calculadora/dados-abertos/situacoes-tributarias/imposto-seletivo":{"get":{"tags":["Dados Abertos - VERSÃO BETA"],"summary":"Situação Tributária (CST)","description":"Obtém a lista das situações tributárias cadastradas para Imposto Seletivo","operationId":"consultarSituacoesTributariasImpostoSeletivo","parameters":[{"name":"data","in":"query","description":"Data no padrão ISO 8601 (yyyy-MM-dd)","required":true,"schema":{"type":"string","format":"date"},"example":"2027-01-01"}],"responses":{"200":{"description":"Consulta realizada com sucesso","content":{"application/json":{"schema":{"$ref":"#/components/schemas/SituacaoTributariaDadosAbertosOutput"},"examples":{"Situações Tributárias Example":{"description":"Situações Tributárias Example","value":[{"id":19,"codigo":"000","descricao":"Tributado com Imposto Seletivo"},{"id":20,"codigo":"100","descricao":"Imunidade"}]}}}}},"400":{"description":"Requisição com problema","content":{"application/problem+json":{"schema":{"$ref":"#/components/schemas/ProblemDetail"},"examples":{"Bad Request Example":{"description":"Bad Request Example","value":{"type":"about:blank","title":"Bad Request","status":400,"detail":"Required parameter 'data' is not present.","instance":"/api/calculadora/dados-abertos/situacoes-tributarias/imposto-seletivo"}}}}}},"500":{"description":"Erro interno na API","content":{"application/problem+json":{"schema":{"$ref":"#/components/schemas/ProblemDetail"},"examples":{"Internal Server Error Example":{"description":"Internal Server Error Example","value":{"type":"http://url-ambiente/errors/erro-interno","title":"Erro interno na API","status":500,"detail":"Falha ao processar a requisição.","instance":"/api/calculadora/dados-abertos/situacoes-tributarias/imposto-seletivo"}}}}}}}}},"/calculadora/dados-abertos/situacoes-tributarias/cbs-ibs":{"get":{"tags":["Dados Abertos - VERSÃO BETA"],"summary":"Situação Tributária (CST)","description":"Obtém a lista das situações tributárias cadastradas vigentes em uma determinada data para CBS/IBS","operationId":"consultarSituacoesTributariasCbsIbs","parameters":[{"name":"data","in":"query","description":"Data no padrão ISO 8601 (yyyy-MM-dd)","required":true,"schema":{"type":"string","format":"date"},"example":"2026-01-01"}],"responses":{"200":{"description":"Consulta realizada com sucesso","content":{"application/json":{"schema":{"$ref":"#/components/schemas/SituacaoTributariaDadosAbertosOutput"},"examples":{"Situações Tributárias Example":{"description":"Situações Tributárias Example","value":[{"id":1,"codigo":"000","descricao":"Tributação integral"},{"id":2,"codigo":"010","descricao":"Tributação com alíquotas uniformes"},{"id":3,"codigo":"011","descricao":"Tributação com alíquotas uniformes reduzidas"},{"id":4,"codigo":"200","descricao":"Alíquota reduzida"}]}}}}},"400":{"description":"Requisição com problema","content":{"application/problem+json":{"schema":{"$ref":"#/components/schemas/ProblemDetail"},"examples":{"Bad Request Example":{"description":"Bad Request Example","value":{"type":"about:blank","title":"Bad Request","status":400,"detail":"Required parameter 'data' is not present.","instance":"/api/calculadora/dados-abertos/classificacoes-tributarias/cbs-ibs"}}}}}},"500":{"description":"Erro interno na API","content":{"application/problem+json":{"schema":{"$ref":"#/components/schemas/ProblemDetail"},"examples":{"Internal Server Error Example":{"description":"Internal Server Error Example","value":{"type":"http://url-ambiente/errors/erro-interno","title":"Erro interno na API","status":500,"detail":"Falha ao processar a requisição.","instance":"/api/calculadora/dados-abertos/situacoes-tributarias/cbs-ibs"}}}}}}}}},"/calculadora/dados-abertos/redutores-compra-governamental":{"get":{"tags":["Dados Abertos - VERSÃO BETA"],"summary":"Redutor de Compra Governamental","description":"Obtém a lista de todos os redutores de compra governamental cadastrados","operationId":"consultarRedutoresCompraGovernamental","responses":{"200":{"description":"Consulta realizada com sucesso","content":{"application/json":{"schema":{"$ref":"#/components/schemas/RedutorCompraGovernamentalDadosAbertosOutput"},"examples":{"Redutores Example":{"description":"Redutores Example","value":[{"valor":0,"inicioVigencia":"2026-01-01","fimVigencia":"2026-12-31"},{"valor":50,"inicioVigencia":"2027-01-01"}]}}}}},"500":{"description":"Erro interno na API","content":{"application/problem+json":{"schema":{"$ref":"#/components/schemas/ProblemDetail"},"examples":{"Internal Server Error Example":{"description":"Internal Server Error Example","value":{"type":"http://url-ambiente/errors/erro-interno","title":"Erro interno na API","status":500,"detail":"Falha ao processar a requisição.","instance":"/api/calculadora/dados-abertos/redutores-compra-governamental"}}}}}}}}},"/calculadora/dados-abertos/ncm":{"get":{"tags":["Dados Abertos - VERSÃO BETA"],"summary":"Nomenclatura Comum do Mercosul (NCM)","description":"Obtém informações sobre a NCM em relação ao Imposto Seletivo","operationId":"consultarNcm","parameters":[{"name":"ncm","in":"query","description":"Código NCM sem formatação","required":true,"schema":{"type":"string"},"example":24021000},{"name":"data","in":"query","description":"Data no padrão ISO 8601 (yyyy-MM-dd)","required":true,"schema":{"type":"string","format":"date"},"example":"2027-01-01"}],"responses":{"200":{"description":"Consulta realizada com sucesso","content":{"application/json":{"schema":{"$ref":"#/components/schemas/NcmDadosAbertosOutput"},"examples":{"NCM Example":{"description":"NCM Example","value":{"tributadoPeloImpostoSeletivo":true,"aliquotaAdValorem":13,"aliquotaAdRem":21.3,"capitulo":"Tabaco e seus sucedâneos manufaturados; produtos, mesmo com nicotina, destinados à inalação sem combustão; outros produtos que contenham nicotina destinados à absorção da nicotina pelo corpo humano.","posicao":"Charutos, cigarrilhas e cigarros, de tabaco ou dos seus sucedâneos.","subitem":"Charutos e cigarrilhas, que contenham tabaco","unidade":"VN"}}}}}},"400":{"description":"Requisição com problema","content":{"application/problem+json":{"schema":{"$ref":"#/components/schemas/ProblemDetail"},"examples":{"Bad Request Example":{"description":"Bad Request Example","value":{"type":"about:blank","title":"Bad Request","status":400,"detail":"Required parameter 'data' is not present.","instance":"/api/calculadora/dados-abertos/ncm/24021000"}}}}}},"500":{"description":"Erro interno na API","content":{"application/problem+json":{"schema":{"$ref":"#/components/schemas/ProblemDetail"},"examples":{"Internal Server Error Example":{"description":"Internal Server Error Example","value":{"type":"http://url-ambiente/errors/erro-interno","title":"Erro interno na API","status":500,"detail":"Falha ao processar a requisição.","instance":"/api/calculadora/dados-abertos/ncm/24021000"}}}}}}}}},"/calculadora/dados-abertos/nbs":{"get":{"tags":["Dados Abertos - VERSÃO BETA"],"summary":"Nomenclatura Brasileira de Serviços (NBS)","description":"Obtém informações sobre a NBS em relação ao Imposto Seletivo","operationId":"consultarNbs","parameters":[{"name":"nbs","in":"query","description":"Código NBS sem formatação","required":true,"schema":{"type":"string"},"example":114052200},{"name":"data","in":"query","description":"Data no padrão ISO 8601 (yyyy-MM-dd)","required":true,"schema":{"type":"string","format":"date"},"example":"2027-01-01"}],"responses":{"200":{"description":"Consulta realizada com sucesso","content":{"application/json":{"schema":{"$ref":"#/components/schemas/NbsDadosAbertosOutput"},"examples":{"NBS Example":{"description":"NBS Example","value":{"tributadoPeloImpostoSeletivo":false,"capitulo":"Serviços veterinários","posicao":"Serviços veterinários para animais de corte","item":"Serviços de atendimento, assistência ou tratamento para animais de corte"}}}}}},"400":{"description":"Requisição com problema","content":{"application/problem+json":{"schema":{"$ref":"#/components/schemas/ProblemDetail"},"examples":{"Bad Request Example":{"description":"Bad Request Example","value":{"type":"about:blank","title":"Bad Request","status":400,"detail":"Required parameter 'data' is not present.","instance":"/api/calculadora/dados-abertos/nbs/114052200"}}}}}},"500":{"description":"Erro interno na API","content":{"application/problem+json":{"schema":{"$ref":"#/components/schemas/ProblemDetail"},"examples":{"Internal Server Error Example":{"description":"Internal Server Error Example","value":{"type":"http://url-ambiente/errors/erro-interno","title":"Erro interno na API","status":500,"detail":"Falha ao processar a requisição.","instance":"/api/calculadora/dados-abertos/nbs/114052200"}}}}}}}}},"/calculadora/dados-abertos/nbs/lista":{"get":{"tags":["Dados Abertos - VERSÃO BETA"],"summary":"Lista de Nomenclatura Brasileira de Serviços (NBS)","description":"Obtém a lista de todas as NBS válidas em uma data, incluindo todos os níveis hierárquicos (capítulo, posição, subposições e itens)","operationId":"listarNbs","parameters":[{"name":"data","in":"query","description":"Data no padrão ISO 8601 (yyyy-MM-dd)","required":true,"schema":{"type":"string","format":"date"},"example":"2027-01-01"}],"responses":{"200":{"description":"Consulta realizada com sucesso","content":{"application/json":{"schema":{"$ref":"#/components/schemas/NbsListaDadosAbertosOutput"},"examples":{"Lista NBS Example":{"description":"Lista NBS Example","value":[{"codigo":"101","descricao":"Serviços de construção"},{"codigo":"10101","descricao":"Serviços de construção de edificações"},{"codigo":"101011","descricao":"Serviços de construção de edificações residenciais"},{"codigo":"101011100","descricao":"Serviços de construção de edificações residenciais de um e dois pavimentos"},{"codigo":"101011200","descricao":"Serviços de construção de edificações residenciais com mais de dois pavimentos"},{"codigo":"101012","descricao":"Serviços de construção de edificações não residenciais"},{"codigo":"101012100","descricao":"Serviços de construção de edificações industriais"},{"codigo":"101012200","descricao":"Serviços de construção de edificações comerciais"},{"codigo":"101012900","descricao":"Serviços de construção de edificações não residenciais não classificados em subposições anteriores"}]}}}}},"400":{"description":"Requisição com problema","content":{"application/problem+json":{"schema":{"$ref":"#/components/schemas/ProblemDetail"},"examples":{"Bad Request Example":{"description":"Bad Request Example","value":{"type":"about:blank","title":"Bad Request","status":400,"detail":"Required parameter 'data' is not present.","instance":"/api/calculadora/dados-abertos/nbs"}}}}}},"500":{"description":"Erro interno na API","content":{"application/problem+json":{"schema":{"$ref":"#/components/schemas/ProblemDetail"},"examples":{"Internal Server Error Example":{"description":"Internal Server Error Example","value":{"type":"http://url-ambiente/errors/erro-interno","title":"Erro interno na API","status":500,"detail":"Falha ao processar a requisição.","instance":"/api/calculadora/dados-abertos/nbs"}}}}}}}}},"/calculadora/dados-abertos/nbs-aplicaveis":{"get":{"tags":["Dados Abertos - VERSÃO BETA"],"summary":"Lista de NBS aplicáveis por Classificação Tributária","description":"Obtém a lista de NBS aplicáveis a um cClassTrib em uma determinada data. Se não houver NBS associados e a nomenclatura for aplicável a serviços (NBS ou 'NBS ou NCM'), retorna todos os NBS vigentes. Se não for aplicável a serviços (apenas NCM), retorna lista vazia.","operationId":"listarNbsAplicaveisPorClassificacao","parameters":[{"name":"cClassTrib","in":"query","description":"Código da Classificação Tributária (cClassTrib)","required":true,"schema":{"type":"string","pattern":"^\\d{6}$"},"example":"000001"},{"name":"data","in":"query","description":"Data no padrão ISO 8601 (yyyy-MM-dd)","required":true,"schema":{"type":"string","format":"date"},"example":"2027-01-01"}],"responses":{"200":{"description":"Consulta realizada com sucesso","content":{"application/json":{"schema":{"$ref":"#/components/schemas/NbsListaDadosAbertosOutput"},"examples":{"Lista NBS Aplicáveis Example":{"description":"Lista NBS Aplicáveis Example","value":[{"codigo":"114052200","descricao":"Serviços de atendimento, assistência ou tratamento para animais de corte"},{"codigo":"114052300","descricao":"Serviços de atendimento, assistência ou tratamento para animais de produção"}]},"Lista NBS Aplicáveis Vazia Example":{"description":"Lista NBS Aplicáveis Vazia Example","value":[]}}}}},"400":{"description":"Requisição com problema","content":{"application/problem+json":{"schema":{"$ref":"#/components/schemas/ProblemDetail"},"examples":{"Bad Request Example":{"description":"Bad Request Example","value":{"type":"about:blank","title":"Bad Request","status":400,"detail":"Required parameter 'data' is not present.","instance":"/api/calculadora/dados-abertos/nbs/aplicaveis-por-classificacao"}}}}}},"404":{"description":"Classificação tributária não encontrada","content":{"application/problem+json":{"schema":{"$ref":"#/components/schemas/ProblemDetail"},"examples":{"Not Found Example":{"description":"Not Found Example","value":{"type":"about:blank","title":"Not Found","status":404,"detail":"Classificação tributária não encontrada para código 999999 e data 2026-01-01 (CBS/IBS)","instance":"/api/calculadora/dados-abertos/nbs/aplicaveis-por-classificacao"}}}}}},"500":{"description":"Erro interno na API","content":{"application/problem+json":{"schema":{"$ref":"#/components/schemas/ProblemDetail"},"examples":{"Internal Server Error Example":{"description":"Internal Server Error Example","value":{"type":"http://url-ambiente/errors/erro-interno","title":"Erro interno na API","status":500,"detail":"Falha ao processar a requisição.","instance":"/api/calculadora/dados-abertos/nbs/aplicaveis-por-classificacao"}}}}}}}}},"/calculadora/dados-abertos/fundamentacoes-legais":{"get":{"tags":["Dados Abertos - VERSÃO BETA"],"summary":"Fundamentação Legal","description":"Obtém informações sobre as fundamentações legais","operationId":"consultarFundamentacoesLegais","parameters":[{"name":"data","in":"query","description":"Data no padrão ISO 8601 (yyyy-MM-dd)","required":true,"schema":{"type":"string","format":"date"},"example":"2027-01-01"}],"responses":{"200":{"description":"Consulta realizada com sucesso","content":{"application/json":{"schema":{"$ref":"#/components/schemas/FundamentacaoClassificacaoDadosAbertosOutput"},"examples":{"Fundamentações Legais Example":{"description":"Fundamentações Legais Example","value":[{"codigoClassificacaoTributaria":"000001","descricaoClassificacaoTributaria":"Situações tributadas integralmente pelo IBS e CBS.","codigoSituacaoTributaria":"000","descricaoSituacaoTributaria":"Tributação integral","conjuntoTributo":"CBS e IBS","texto":"","textoCurto":"","referenciaNormativa":"LIVRO I \n\nDO IMPOSTO SOBRE BENS E SERVIÇOS (IBS) E DA CONTRIBUIÇÃO SOCIAL SOBRE BENS E SERVIÇOS (CBS) \n\nTÍTULO I \n\nDAS NORMAS GERAIS DO IBS E DA CBS \n\nCAPÍTULO I \n\nDISPOSIÇÕES PRELIMINARES"},{"codigoClassificacaoTributaria":"000002","descricaoClassificacaoTributaria":"Exploração de via","codigoSituacaoTributaria":"000","descricaoSituacaoTributaria":"Tributação integral","conjuntoTributo":"CBS e IBS","texto":"Art. 11. Considera-se local da operação com:\nVIII - serviço de exploração de via, mediante cobrança de valor a qualquer título, incluindo tarifas, pedágios e quaisquer outras formas de cobrança, o território de cada Município e Estado, ou do Distrito Federal, proporcionalmente à correspondente extensão da via explorada;","textoCurto":"Art. 11, VIII","referenciaNormativa":"LIVRO I \n\nDO IMPOSTO SOBRE BENS E SERVIÇOS (IBS) E DA CONTRIBUIÇÃO SOCIAL SOBRE BENS E SERVIÇOS (CBS) \n\nTÍTULO I \n\nDAS NORMAS GERAIS DO IBS E DA CBS \n\nCAPÍTULO II\n\nDO IBS E DA CBS SOBRE OPERAÇÕES COM BENS E SERVIÇOS\n\nSeção IV\n\nDo Local da Operação"}]}}}}},"400":{"description":"Requisição com problema","content":{"application/problem+json":{"schema":{"$ref":"#/components/schemas/ProblemDetail"},"examples":{"Bad Request Example":{"description":"Bad Request Example","value":{"type":"about:blank","title":"Bad Request","status":400,"detail":"Required parameter 'data' is not present.","instance":"/api/calculadora/dados-abertos/fundamentacoes-legais"}}}}}},"500":{"description":"Erro interno na API","content":{"application/problem+json":{"schema":{"$ref":"#/components/schemas/ProblemDetail"},"examples":{"Internal Server Error Example":{"description":"Internal Server Error Example","value":{"type":"http://url-ambiente/errors/erro-interno","title":"Erro interno na API","status":500,"detail":"Falha ao processar a requisição.","instance":"/api/calculadora/dados-abertos/fundamentacoes-legais"}}}}}}}}},"/calculadora/dados-abertos/classificacoes-tributarias/{idSituacaoTributaria}":{"get":{"tags":["Dados Abertos - VERSÃO BETA"],"summary":"Classificação Tributária (cClassTrib) - DEPRECATED","description":"Obtém a lista das classificações tributárias (cClassTrib) cadastradas com base no ID da situação tributária. DEPRECATED: Use os novos endpoints /classificacoes-tributarias/imposto-seletivo/{cst} ou /classificacoes-tributarias/cbs-ibs/{cst} que trabalham com CST ao invés de IDs.","operationId":"consultarClassificacoesTributariasPorIdSituacaoTributaria","parameters":[{"name":"idSituacaoTributaria","in":"path","description":"Id da Situação Tributária (CST)","required":true,"schema":{"type":"integer","format":"int64"},"example":1},{"name":"data","in":"query","description":"Data no padrão ISO 8601 (yyyy-MM-dd)","required":true,"schema":{"type":"string","format":"date"},"example":"2026-01-01"}],"responses":{"200":{"description":"Consulta realizada com sucesso","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ClassificacaoTributariaDadosAbertosOutput"},"examples":{"Classificações Tributárias Example":{"description":"Classificações Tributárias Example","value":[{"codigo":"000003","descricao":"Regime automotivo - projetos incentivados (art. 311)","tipoAliquota":"Padrão","nomenclatura":"NCM","descricaoTratamentoTributario":"Tributação integral","incompativelComSuspensao":false,"exigeGrupoDesoneracao":false,"possuiPercentualReducao":true,"indicaApropriacaoCreditoAdquirenteCbs":false,"indicaApropriacaoCreditoAdquirenteIbs":false,"indicaCreditoPresumidoFornecedor":false,"indicaCreditoPresumidoAdquirente":false,"tiposDfeClassificacao":[{"tipo":55,"sigla":"NFe","descricao":"Nota Fiscal Eletrônica"}],"dataAtualizacao":"2025-12-15"},{"codigo":"000004","descricao":"Regime automotivo - projetos incentivados (art. 312)","tipoAliquota":"Padrão","nomenclatura":"NCM","descricaoTratamentoTributario":"Tributação integral","incompativelComSuspensao":false,"exigeGrupoDesoneracao":false,"possuiPercentualReducao":true,"indicaApropriacaoCreditoAdquirenteCbs":false,"indicaApropriacaoCreditoAdquirenteIbs":false,"indicaCreditoPresumidoFornecedor":false,"indicaCreditoPresumidoAdquirente":false,"tiposDfeClassificacao":[{"tipo":55,"sigla":"NFe","descricao":"Nota Fiscal Eletrônica"}],"dataAtualizacao":"2025-12-15"}]}}}}},"400":{"description":"Requisição com problema","content":{"application/problem+json":{"schema":{"$ref":"#/components/schemas/ProblemDetail"},"examples":{"Bad Request Example":{"description":"Bad Request Example","value":{"type":"about:blank","title":"Bad Request","status":400,"detail":"Required parameter 'data' is not present.","instance":"/api/calculadora/dados-abertos/classificacoes-tributarias/3244253"}}}}}},"500":{"description":"Erro interno na API","content":{"application/problem+json":{"schema":{"$ref":"#/components/schemas/ProblemDetail"},"examples":{"Internal Server Error Example":{"description":"Internal Server Error Example","value":{"type":"http://url-ambiente/errors/erro-interno","title":"Erro interno na API","status":500,"detail":"Falha ao processar a requisição.","instance":"/api/calculadora/dados-abertos/classificacoes-tributarias/1"}}}}}}},"deprecated":true}},"/calculadora/dados-abertos/classificacoes-tributarias/ncm-aplicavel":{"get":{"tags":["Dados Abertos - VERSÃO BETA"],"summary":"Validar NCM Aplicável","description":"Valida se um NCM é aplicável para uma classificação tributária relacionada ao CBS e IBS em determinada data.","operationId":"validarNcmAplicavel","parameters":[{"name":"cClassTrib","in":"query","description":"Código da classificação tributária CBS/IBS","required":true,"schema":{"type":"string"},"example":"000001"},{"name":"ncm","in":"query","description":"NCM","required":true,"schema":{"type":"string"},"example":"09024000"},{"name":"dataOcorrenciaFatoGerador","in":"query","description":"Data de ocorrência do fato gerador","required":true,"schema":{"type":"string","format":"date"},"example":"2026-01-01"}],"responses":{"200":{"description":"Validação realizada com sucesso","content":{"application/json":{"schema":{"$ref":"#/components/schemas/NcmAplicavelOutput"},"examples":{"NCM Aplicável Example":{"description":"NCM Aplicável Example","value":{"cClassTrib":"000001","ncm":"09024000","dataOcorrenciaFatoGerador":"2026-01-01","valido":true}}}}}},"400":{"description":"Parâmetro inválido","content":{"application/problem+json":{"schema":{"$ref":"#/components/schemas/ProblemDetail"},"examples":{"Bad Request Example":{"description":"Bad Request Example","value":{"type":"http://url-ambiente/errors/parametro-invalido","title":"Parâmetro inválido","status":400,"detail":"NCM ou cClassTrib inválido.","instance":"/api/calculadora/dados-abertos/classificacoes-tributarias/ncm-aplicavel"}}}}}},"500":{"description":"Erro interno na API","content":{"application/problem+json":{"schema":{"$ref":"#/components/schemas/ProblemDetail"},"examples":{"Internal Server Error Example":{"description":"Internal Server Error Example","value":{"type":"http://url-ambiente/errors/erro-interno","title":"Erro interno na API","status":500,"detail":"Falha ao processar a requisição.","instance":"/api/calculadora/dados-abertos/classificacoes-tributarias/ncm-aplicavel"}}}}}}}}},"/calculadora/dados-abertos/classificacoes-tributarias/nbs":{"get":{"tags":["Dados Abertos - VERSÃO BETA"],"summary":"Classificações Tributárias aplicáveis por NBS","description":"Obtém a lista dos códigos cClassTrib aplicáveis a um NBS em uma determinada data, considerando vínculos e regras de exceção. Também inclui classificações de serviço vigentes não vinculadas a nenhum NBS.","operationId":"listarClassificacoesTributariasPorNbs","parameters":[{"name":"nbs","in":"query","description":"Código NBS sem formatação","required":true,"schema":{"type":"string","pattern":"^\\d{9}$"},"example":114052200},{"name":"data","in":"query","description":"Data no padrão ISO 8601 (yyyy-MM-dd)","required":true,"schema":{"type":"string","format":"date"},"example":"2026-01-01"}],"responses":{"200":{"description":"Consulta realizada com sucesso","content":{"application/json":{"schema":{"type":"string"},"examples":{"cClassTrib por NBS Example":{"description":"cClassTrib por NBS Example","value":["000001","000002","000003"]}}}}},"400":{"description":"Requisição com problema","content":{"application/problem+json":{"schema":{"$ref":"#/components/schemas/ProblemDetail"},"examples":{"Bad Request Example":{"description":"Bad Request Example","value":{"type":"about:blank","title":"Bad Request","status":400,"detail":"Parâmetro inválido ou ausente.","instance":"/api/calculadora/dados-abertos/classificacoes-tributarias/nbs"}}}}}},"404":{"description":"NBS não encontrado na data especificada","content":{"application/problem+json":{"schema":{"$ref":"#/components/schemas/ProblemDetail"},"examples":{"Not Found Example":{"description":"Not Found Example","value":{"type":"about:blank","title":"Not Found","status":404,"detail":"Nenhum resultado foi encontrado para a NBS: 114052200 na data: 2026-01-01","instance":"/api/calculadora/dados-abertos/classificacoes-tributarias/nbs"}}}}}},"500":{"description":"Erro interno na API","content":{"application/problem+json":{"schema":{"$ref":"#/components/schemas/ProblemDetail"},"examples":{"Internal Server Error Example":{"description":"Internal Server Error Example","value":{"type":"http://url-ambiente/errors/erro-interno","title":"Erro interno na API","status":500,"detail":"Falha ao processar a requisição.","instance":"/api/calculadora/dados-abertos/classificacoes-tributarias/nbs"}}}}}}}}},"/calculadora/dados-abertos/classificacoes-tributarias/nbs-aplicavel":{"get":{"tags":["Dados Abertos - VERSÃO BETA"],"summary":"Validar NBS Aplicável","description":"Valida se um NBS é aplicável para uma classificação tributária relacionada ao CBS e IBS em determinada data.","operationId":"validarNbsAplicavel","parameters":[{"name":"cClassTrib","in":"query","description":"Código da classificação tributária","required":true,"schema":{"type":"string"},"example":"000001"},{"name":"nbs","in":"query","description":"NBS","required":true,"schema":{"type":"string"},"example":114052200},{"name":"dataOcorrenciaFatoGerador","in":"query","description":"Data de ocorrência do fato gerador","required":true,"schema":{"type":"string","format":"date"},"example":"2026-01-01"}],"responses":{"200":{"description":"Validação realizada com sucesso","content":{"application/json":{"schema":{"$ref":"#/components/schemas/NbsAplicavelOutput"},"examples":{"NBS Aplicável Example":{"description":"NBS Aplicável Example","value":{"cClassTrib":"000001","nbs":"114052200","dataOcorrenciaFatoGerador":"2026-01-01","valido":true}}}}}},"400":{"description":"Parâmetro inválido","content":{"application/problem+json":{"schema":{"$ref":"#/components/schemas/ProblemDetail"},"examples":{"Bad Request Example":{"description":"Bad Request Example","value":{"type":"http://url-ambiente/errors/parametro-invalido","title":"Parâmetro inválido","status":400,"detail":"NBS ou cClassTrib inválido.","instance":"/api/calculadora/dados-abertos/classificacoes-tributarias/nbs-aplicavel"}}}}}},"500":{"description":"Erro interno na API","content":{"application/problem+json":{"schema":{"$ref":"#/components/schemas/ProblemDetail"},"examples":{"Internal Server Error Example":{"description":"Internal Server Error Example","value":{"type":"http://url-ambiente/errors/erro-interno","title":"Erro interno na API","status":500,"detail":"Falha ao processar a requisição.","instance":"/api/calculadora/dados-abertos/classificacoes-tributarias/nbs-aplicavel"}}}}}}}}},"/calculadora/dados-abertos/classificacoes-tributarias/imposto-seletivo":{"get":{"tags":["Dados Abertos - VERSÃO BETA"],"summary":"Classificação Tributária (cClassTrib) para Imposto Seletivo","description":"Obtém a lista das classificações tributárias (cClassTrib) para Imposto Seletivo","operationId":"consultarClassificacoesTributariasImpostoSeletivo","parameters":[{"name":"data","in":"query","description":"Data no padrão ISO 8601 (yyyy-MM-dd)","required":true,"schema":{"type":"string","format":"date"},"example":"2027-01-01"}],"responses":{"200":{"description":"Consulta realizada com sucesso","headers":{"x-warning-dados-simulados":{"description":"Indica que os dados são simulados. Valores possíveis: 1 (alíquotas da CBS e do IBS ainda não definidas em lei).","style":"simple","schema":{"type":"integer","example":1}}},"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ClassificacaoTributariaDadosAbertosOutput"},"examples":{"Classificações Tributárias Imposto Seletivo Example":{"description":"Classificações Tributárias Imposto Seletivo Example","value":[{"codigo":"000001","descricao":"Primeiro fornecimento a qualquer título de bem","tipoAliquota":"Alíquotas Combinadas (Ad Valorem e Ad Rem)","nomenclatura":"NBS ou NCM","descricaoTratamentoTributario":"Tributação pelo Imposto Seletivo - Com Cálculo","incompativelComSuspensao":false,"exigeGrupoDesoneracao":false,"possuiPercentualReducao":true,"indicaApropriacaoCreditoAdquirenteCbs":false,"indicaApropriacaoCreditoAdquirenteIbs":false,"indicaCreditoPresumidoFornecedor":false,"indicaCreditoPresumidoAdquirente":false},{"codigo":"000002","descricao":"Arrematação em leilão público","tipoAliquota":"Alíquotas Combinadas (Ad Valorem e Ad Rem)","nomenclatura":"NBS ou NCM","descricaoTratamentoTributario":"Tributação pelo Imposto Seletivo - Com Cálculo","incompativelComSuspensao":false,"exigeGrupoDesoneracao":false,"possuiPercentualReducao":true,"indicaApropriacaoCreditoAdquirenteCbs":false,"indicaApropriacaoCreditoAdquirenteIbs":false,"indicaCreditoPresumidoFornecedor":false,"indicaCreditoPresumidoAdquirente":false}]},"Classificações Tributárias Imposto Seletivo Vazia Example":{"description":"Classificações Tributárias Imposto Seletivo Vazia Example","value":[]}}}}},"400":{"description":"Requisição com problema","content":{"application/problem+json":{"schema":{"$ref":"#/components/schemas/ProblemDetail"},"examples":{"Bad Request Example":{"description":"Bad Request Example","value":{"type":"about:blank","title":"Bad Request","status":400,"detail":"Required parameter 'data' is not present.","instance":"/api/calculadora/dados-abertos/classificacoes-tributarias/imposto-seletivo"}}}}}},"500":{"description":"Erro interno na API","content":{"application/problem+json":{"schema":{"$ref":"#/components/schemas/ProblemDetail"},"examples":{"Internal Server Error Example":{"description":"Internal Server Error Example","value":{"type":"http://url-ambiente/errors/erro-interno","title":"Erro interno na API","status":500,"detail":"Falha ao processar a requisição.","instance":"/api/calculadora/dados-abertos/classificacoes-tributarias/imposto-seletivo"}}}}}}}}},"/calculadora/dados-abertos/classificacoes-tributarias/imposto-seletivo/{cst}":{"get":{"tags":["Dados Abertos - VERSÃO BETA"],"summary":"Classificações Tributárias por CST - Imposto Seletivo","description":"Obtém a lista das classificações tributárias por CST para Imposto Seletivo","operationId":"listarPorCstImpostoSeletivo","parameters":[{"name":"cst","in":"path","description":"Código da Situação Tributária (CST)","required":true,"schema":{"type":"string"},"example":"000"},{"name":"data","in":"query","description":"Data no padrão ISO 8601 (yyyy-MM-dd)","required":true,"schema":{"type":"string","format":"date"},"example":"2027-01-01"}],"responses":{"200":{"description":"Consulta realizada com sucesso","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ClassificacaoTributariaDadosAbertosOutput"},"examples":{"Classificações IS Example":{"description":"Classificações IS Example","value":[{"codigo":"000001","descricao":"Primeiro fornecimento a qualquer título de bem","tipoAliquota":"Alíquotas Combinadas (Ad Valorem e Ad Rem)","nomenclatura":"NBS ou NCM","descricaoTratamentoTributario":"Tributação pelo Imposto Seletivo - Com Cálculo","incompativelComSuspensao":false,"exigeGrupoDesoneracao":false,"possuiPercentualReducao":true,"indicaApropriacaoCreditoAdquirenteCbs":false,"indicaApropriacaoCreditoAdquirenteIbs":false,"indicaCreditoPresumidoFornecedor":false,"indicaCreditoPresumidoAdquirente":false,"tiposDfeClassificacao":[]}]}}}}},"400":{"description":"Requisição com problema","content":{"application/problem+json":{"schema":{"$ref":"#/components/schemas/ProblemDetail"}}}},"500":{"description":"Erro interno na API","content":{"application/problem+json":{"schema":{"$ref":"#/components/schemas/ProblemDetail"}}}}}}},"/calculadora/dados-abertos/classificacoes-tributarias/cbs-ibs":{"get":{"tags":["Dados Abertos - VERSÃO BETA"],"summary":"Classificação Tributária (cClassTrib)","description":"Obtém a lista das classificações tributárias (cClassTrib) para CBS e IBS","operationId":"consultarClassificacoesTributariasCbsIbs","parameters":[{"name":"data","in":"query","description":"Data no padrão ISO 8601 (yyyy-MM-dd)","required":true,"schema":{"type":"string","format":"date"},"example":"2026-01-01"}],"responses":{"200":{"description":"Consulta realizada com sucesso","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ClassificacaoTributariaDadosAbertosOutput"},"examples":{"Classificações Tributárias Example":{"description":"Classificações Tributárias Example","value":[{"codigo":"000004","descricao":"Regime automotivo - projetos incentivados (art. 312)","tipoAliquota":"Padrão","nomenclatura":"NCM","descricaoTratamentoTributario":"Tributação integral","incompativelComSuspensao":false,"exigeGrupoDesoneracao":false,"possuiPercentualReducao":true,"indicaApropriacaoCreditoAdquirenteCbs":true,"indicaApropriacaoCreditoAdquirenteIbs":true,"indicaCreditoPresumidoFornecedor":true,"indicaCreditoPresumidoAdquirente":false,"creditoOperacaoAntecedente":"Manutenção","percentualReducaoCbs":0,"percentualReducaoIbsUf":0,"percentualReducaoIbsMun":0,"tiposDfeClassificacao":[{"tipo":55,"sigla":"NFe","descricao":"Nota Fiscal Eletrônica"}]},{"codigo":"010001","descricao":"Operações do FGTS não realizadas pela Caixa Econômica Federal","tipoAliquota":"Uniforme setorial","nomenclatura":"NBS","descricaoTratamentoTributario":"Tributação com alíquotas uniformes - operações do FGTS","incompativelComSuspensao":false,"exigeGrupoDesoneracao":false,"possuiPercentualReducao":true,"indicaApropriacaoCreditoAdquirenteCbs":true,"indicaApropriacaoCreditoAdquirenteIbs":true,"indicaCreditoPresumidoFornecedor":false,"indicaCreditoPresumidoAdquirente":false,"creditoOperacaoAntecedente":"Manutenção","percentualReducaoCbs":0,"percentualReducaoIbsUf":0,"percentualReducaoIbsMun":0,"tiposDfeClassificacao":[{"tipo":91,"sigla":"NFSe","descricao":"Nota Fiscal de Serviços Eletrônica"},{"tipo":94,"sigla":"DERE","descricao":"Declaração Eletrônica de Regimes Específicos"}]}]}}}}},"400":{"description":"Requisição com problema","content":{"application/problem+json":{"schema":{"$ref":"#/components/schemas/ProblemDetail"},"examples":{"Bad Request Example":{"description":"Bad Request Example","value":{"type":"about:blank","title":"Bad Request","status":400,"detail":"Required parameter 'data' is not present.","instance":"/api/calculadora/dados-abertos/classificacoes-tributarias/cbs-ibs"}}}}}},"500":{"description":"Erro interno na API","content":{"application/problem+json":{"schema":{"$ref":"#/components/schemas/ProblemDetail"},"examples":{"Internal Server Error Example":{"description":"Internal Server Error Example","value":{"type":"http://url-ambiente/errors/erro-interno","title":"Erro interno na API","status":500,"detail":"Falha ao processar a requisição.","instance":"/api/calculadora/dados-abertos/classificacoes-tributarias/cbs-ibs"}}}}}}}}},"/calculadora/dados-abertos/classificacoes-tributarias/cbs-ibs/{siglaDfe}/{cClassTrib}":{"get":{"tags":["Dados Abertos - VERSÃO BETA"],"summary":"Classificação Tributária CBS/IBS por DFe e cClassTrib","description":"Obtém a classificação tributária CBS/IBS com base na sigla do DFe e código da classificação","operationId":"consultarValidadeDfeClassificacaoTributaria","parameters":[{"name":"siglaDfe","in":"path","description":"Sigla do tipo de Documento Fiscal Eletrônico","required":true,"schema":{"type":"string"},"example":"NFSE"},{"name":"cClassTrib","in":"path","description":"Código da classificação tributária","required":true,"schema":{"type":"string"},"example":"000001"},{"name":"data","in":"query","description":"Data do fato gerador (yyyy-MM-dd)","required":true,"schema":{"type":"string","format":"date"},"example":"2026-01-01"}],"responses":{"200":{"description":"Consulta realizada com sucesso","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ValidadeDfeClassificacaoTributariaDadosAbertosOutput"}}}},"400":{"description":"Requisição com problema","content":{"application/problem+json":{"schema":{"$ref":"#/components/schemas/ProblemDetail"},"examples":{"Bad Request Example":{"description":"Bad Request Example","value":{"type":"about:blank","title":"Bad Request","status":400,"detail":"Required parameter 'data' is not present.","instance":"/api/calculadora/dados-abertos/classificacoes-tributarias/cbs-ibs/NFE/000001"}}}}}},"404":{"description":"Classificação tributária não encontrada","content":{"application/problem+json":{"schema":{"$ref":"#/components/schemas/ProblemDetail"},"examples":{"Not Found Example":{"description":"Not Found Example","value":{"type":"https://url-ambiente/errors/classificacao-tributaria-nao-encontrada","title":"Classificação Tributária Não Encontrada","status":404,"detail":"Classificação tributária não encontrada para DFe 'NFSE' e código '000001' na data '2026-01-01'","instance":"/api/calculadora/dados-abertos/classificacoes-tributarias/cbs-ibs/NFSE/000001","timestamp":1.7607241111784844E9}}}}}},"422":{"description":"Erro de validação nos parâmetros","content":{"application/problem+json":{"schema":{"$ref":"#/components/schemas/ProblemDetail"},"examples":{"Validation Error Example":{"description":"Validation Error Example","value":{"type":"http://url-ambiente/errors/sigla-dfe-nao-reconhecida","title":"Sigla DFe não reconhecida","status":422,"detail":"Sigla DFe inválida: NFEJ","instance":"/api/calculadora/dados-abertos/classificacoes-tributarias/cbs-ibs/NFEe/620002","timestamp":1.7607290741335235E9}}}}}},"500":{"description":"Erro interno na API","content":{"application/problem+json":{"schema":{"$ref":"#/components/schemas/ProblemDetail"},"examples":{"Internal Server Error Example":{"description":"Internal Server Error Example","value":{"type":"http://url-ambiente/errors/erro-de-sistema-nao-previsto","title":"Erro de sistema não previsto","status":500,"detail":"Falha ao acessar o banco de dados","instance":"/api/calculadora/dados-abertos/classificacoes-tributarias/cbs-ibs/NFE/620001","timestamp":1.7607302862395124E9}}}}}}}}},"/calculadora/dados-abertos/classificacoes-tributarias/cbs-ibs/{cst}":{"get":{"tags":["Dados Abertos - VERSÃO BETA"],"summary":"Classificações Tributárias por CST - CBS/IBS","description":"Obtém a lista das classificações tributárias por CST para CBS/IBS","operationId":"listarPorCstCbsIbs","parameters":[{"name":"cst","in":"path","description":"Código da Situação Tributária (CST)","required":true,"schema":{"type":"string"},"example":"000"},{"name":"data","in":"query","description":"Data no padrão ISO 8601 (yyyy-MM-dd)","required":true,"schema":{"type":"string","format":"date"},"example":"2025-01-01"}],"responses":{"200":{"description":"Consulta realizada com sucesso","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ClassificacaoTributariaDadosAbertosOutput"},"examples":{"Classificações CBS/IBS Example":{"description":"Classificações CBS/IBS Example","value":[{"codigo":"000001","descricao":"Situações tributadas integralmente pelo IBS e CBS.","tipoAliquota":"Padrão","nomenclatura":"NBS ou NCM","descricaoTratamentoTributario":"Tributação integral","dataAtualizacao":"2025-12-15","incompativelComSuspensao":false,"exigeGrupoDesoneracao":false,"possuiPercentualReducao":true,"indicaApropriacaoCreditoAdquirenteCbs":true,"indicaApropriacaoCreditoAdquirenteIbs":true,"indicaCreditoPresumidoFornecedor":false,"indicaCreditoPresumidoAdquirente":false,"tiposDfeClassificacao":[]}]}}}}},"400":{"description":"Requisição com problema","content":{"application/problem+json":{"schema":{"$ref":"#/components/schemas/ProblemDetail"}}}},"500":{"description":"Erro interno na API","content":{"application/problem+json":{"schema":{"$ref":"#/components/schemas/ProblemDetail"}}}}}}},"/calculadora/dados-abertos/aliquota-uniao":{"get":{"tags":["Dados Abertos - VERSÃO BETA"],"summary":"Alíquota Padrão ou de Referência","description":"Obtém a alíquota padrão ou de referência para CBS","operationId":"consultarAliquotaUniao","parameters":[{"name":"data","in":"query","description":"Data no padrão ISO 8601 (yyyy-MM-dd)","required":true,"schema":{"type":"string","format":"date"},"example":"2026-01-01"}],"responses":{"200":{"description":"Consulta realizada com sucesso","headers":{"x-warning-dados-simulados":{"description":"Indica que os dados são simulados. Valores possíveis: 1 (Classificações Tributárias para o Imposto Seletivo ainda não foram estabelecidas em lei).","style":"simple","schema":{"type":"integer","example":1}}},"content":{"application/json":{"schema":{"$ref":"#/components/schemas/AliquotaDadosAbertosOutput"},"examples":{"Alíquota União Example":{"description":"Alíquota União Example","value":{"aliquotaReferencia":0.9,"aliquotaPropria":0.9}}}}}},"400":{"description":"Requisição com problema","content":{"application/problem+json":{"schema":{"$ref":"#/components/schemas/ProblemDetail"},"examples":{"Bad Request Example":{"description":"Bad Request Example","value":{"type":"about:blank","title":"Bad Request","status":400,"detail":"Required parameter 'data' is not present.","instance":"/api/calculadora/dados-abertos/aliquota-uniao"}}}}}},"500":{"description":"Erro interno na API","content":{"application/problem+json":{"schema":{"$ref":"#/components/schemas/ProblemDetail"},"examples":{"Internal Server Error Example":{"description":"Internal Server Error Example","value":{"type":"http://url-ambiente/errors/erro-interno","title":"Erro interno na API","status":500,"detail":"Falha ao processar a requisição.","instance":"/api/calculadora/dados-abertos/aliquota-uniao"}}}}}}}}},"/calculadora/dados-abertos/aliquota-uf":{"get":{"tags":["Dados Abertos - VERSÃO BETA"],"summary":"Alíquota Padrão ou de Referência para IBS Estadual","description":"Obtém a alíquota padrão ou de referência para IBS Estadual","operationId":"consultarAliquotaUf","parameters":[{"name":"codigoUf","in":"query","description":"Código da UF","required":true,"schema":{"type":"integer","format":"int64"},"example":43},{"name":"data","in":"query","description":"Data no padrão ISO 8601 (yyyy-MM-dd)","required":true,"schema":{"type":"string","format":"date"},"example":"2026-01-01"}],"responses":{"200":{"description":"Consulta realizada com sucesso","headers":{"x-warning-dados-simulados":{"description":"Indica que os dados são simulados. Valores possíveis: 1 (alíquotas da CBS ainda não definidas em lei).","style":"simple","schema":{"type":"integer","example":1}}},"content":{"application/json":{"schema":{"$ref":"#/components/schemas/AliquotaDadosAbertosOutput"},"examples":{"Alíquota UF Example":{"description":"Alíquota UF Example","value":{"aliquotaReferencia":0.9,"aliquotaPropria":0.9}}}}}},"400":{"description":"Requisição com problema","content":{"application/problem+json":{"schema":{"$ref":"#/components/schemas/ProblemDetail"},"examples":{"Bad Request Example":{"description":"Bad Request Example","value":{"type":"about:blank","title":"Bad Request","status":400,"detail":"Required parameter 'data' is not present.","instance":"/api/calculadora/dados-abertos/aliquota-uf"}}}}}},"500":{"description":"Erro interno na API","content":{"application/problem+json":{"schema":{"$ref":"#/components/schemas/ProblemDetail"},"examples":{"Internal Server Error Example":{"description":"Internal Server Error Example","value":{"type":"http://url-ambiente/errors/erro-interno","title":"Erro interno na API","status":500,"detail":"Falha ao processar a requisição.","instance":"/api/calculadora/dados-abertos/aliquota-uf"}}}}}}}}},"/calculadora/dados-abertos/aliquota-municipio":{"get":{"tags":["Dados Abertos - VERSÃO BETA"],"summary":"Alíquota Padrão ou de Referência para IBS Municipal","description":"Obtém a alíquota padrão ou de referência para IBS Municipal","operationId":"consultarAliquotaMunicipio","parameters":[{"name":"codigoMunicipio","in":"query","description":"Código do Município (Tabela IBGE)","required":true,"schema":{"type":"integer","format":"int64"},"example":4314902},{"name":"data","in":"query","description":"Data no padrão ISO 8601 (yyyy-MM-dd)","required":true,"schema":{"type":"string","format":"date"},"example":"2026-01-01"}],"responses":{"200":{"description":"Consulta realizada com sucesso","headers":{"x-warning-dados-simulados":{"description":"Indica que os dados são simulados. Valores possíveis: 1 (alíquotas da CBS e do IBS ainda não definidas em lei).","style":"simple","schema":{"type":"integer","example":1}}},"content":{"application/json":{"schema":{"$ref":"#/components/schemas/AliquotaDadosAbertosOutput"},"examples":{"Alíquota Município Example":{"description":"Alíquota Município Example","value":{"aliquotaReferencia":0.9,"aliquotaPropria":0.9}}}}}},"400":{"description":"Requisição com problema","content":{"application/problem+json":{"schema":{"$ref":"#/components/schemas/ProblemDetail"},"examples":{"Bad Request Example":{"description":"Bad Request Example","value":{"type":"about:blank","title":"Bad Request","status":400,"detail":"Required parameter 'data' is not present.","instance":"/api/calculadora/dados-abertos/aliquota-municipio"}}}}}},"500":{"description":"Erro interno na API","content":{"application/problem+json":{"schema":{"$ref":"#/components/schemas/ProblemDetail"},"examples":{"Internal Server Error Example":{"description":"Internal Server Error Example","value":{"type":"http://url-ambiente/errors/erro-interno","title":"Erro interno na API","status":500,"detail":"Falha ao processar a requisição.","instance":"/api/calculadora/dados-abertos/aliquota-municipio"}}}}}}}}}},"components":{"schemas":{"ProblemDetail":{"type":"object","properties":{"type":{"type":"string","format":"uri"},"title":{"type":"string"},"status":{"type":"integer","format":"int32"},"detail":{"type":"string"},"instance":{"type":"string","format":"uri"},"properties":{"type":"object","additionalProperties":{}}}},"AjusteCompetenciaDomain":{"type":"object","properties":{"competApur":{"type":"string","description":"Ano e mês referência do período de apuração (AAAA-MM)"},"vIBS":{"type":"number","description":"Valor do IBS"},"vCBS":{"type":"number","description":"Valor da CBS"}}},"CBSDomain":{"type":"object","properties":{"pCBS":{"type":"number","description":"Alíquota da CBS"},"gDif":{"$ref":"#/components/schemas/DiferimentoDomain","description":"Grupo de Informações do Diferimento"},"gDevTrib":{"$ref":"#/components/schemas/DevolucaoTributosDomain","description":"Grupo de Informações da devolução de tributos"},"gRed":{"$ref":"#/components/schemas/ReducaoAliquotaDomain","description":"Grupo de Informações da redução da alíquota"},"vCBS":{"type":"number","description":"Valor da CBS"},"memoriaCalculo":{"type":"string","description":"Memória de Cálculo"}}},"CBSTotalDomain":{"type":"object","properties":{"vDif":{"type":"number","description":"Valor total do diferimento"},"vDevTrib":{"type":"number","description":"Valor total de devolução de tributos"},"vCBS":{"type":"number","description":"Valor total da CBS"},"vCredPres":{"type":"number","description":"Valor total do crédito presumido"},"vCredPresCondSus":{"type":"number","description":"Valor total do crédito presumido em condição suspensiva"}}},"CompraGovernamentalDomain":{"type":"object","properties":{"tpEnteGov":{"type":"integer","format":"int32","description":"Tipo de ente governamental.

\nValores:

\n

    \n
  • 1 = União\n
  • 2 = Estado\n
  • 3 = Distrito Federal\n
  • 4 = Município\n
  • 5 = Consórcio Público\n
  • 6 = Comitê Gestor do IBS\n
\n"},"pRedutor":{"type":"number","description":"Percentual de redução de alíquota em compra governamental"},"tpOperGov":{"type":"integer","format":"int32","description":"Tipo de operação com o ente governamental.

\nValores:

\n

    \n
  • 1 = Fornecimento com pagamento posterior\n
  • 2 = Recebimento do pagamento com fornecimento já realizado\n
  • 3 = Fornecimento com pagamento já realizado\n
  • 4 = Recebimento do pagamento com fornecimento posterior\n
  • 5 = Fornecimento e recebimento do pagamento concomitantes\n
\n"}}},"CreditoPresumidoIBSZFMDomain":{"type":"object","properties":{"competApur":{"type":"string","description":"Ano e mês referência do período de apuração (AAAA-MM)"},"tpCredPresIBSZFM":{"type":"integer","format":"int32","description":"Tipo de classificação de acordo com o art. 450, § 1º, da LC 214/25 para o cálculo do crédito presumido na ZFM"},"vCredPresIBSZFM":{"type":"number","description":"Valor do crédito presumido calculado sobre o saldo devedor apurado"}}},"CreditoPresumidoOperacaoDomain":{"type":"object","properties":{"vBCCredPres":{"type":"number","description":"Valor da Base de Cálculo do Crédito Presumido da Operação"},"cCredPres":{"type":"integer","format":"int32","description":"Código de Classificação do Crédito Presumido"},"gIBSCredPres":{"$ref":"#/components/schemas/IBSCBSCreditoPresumidoDomain","description":"Grupo de Informações do Crédito Presumido referente ao IBS"},"gCBSCredPres":{"$ref":"#/components/schemas/IBSCBSCreditoPresumidoDomain","description":"Grupo de Informações do Crédito Presumido referente a CBS"}}},"DevolucaoTributosDomain":{"type":"object","properties":{"vDevTrib":{"type":"number","description":"Valor do tributo devolvido"}}},"DiferimentoDomain":{"type":"object","properties":{"pDif":{"type":"number","description":"Percentual do Diferimento"},"vDif":{"type":"number","description":"Valor do Diferimento"}}},"EstornoCreditoDomain":{"type":"object","properties":{"vIBSEstCred":{"type":"number","description":"Valor do IBS a ser estornado"},"vCBSEstCred":{"type":"number","description":"Valor da CBS a ser estornada"}}},"GrupoIBSCBSDomain":{"type":"object","properties":{"vBC":{"type":"number","description":"Base de cálculo do IBS e CBS"},"gIBSUF":{"$ref":"#/components/schemas/IBSUFDomain","description":"Grupo de Informações do IBS para a UF"},"gIBSMun":{"$ref":"#/components/schemas/IBSMunDomain","description":"Grupo de Informações do IBS para o município"},"vIBS":{"type":"number","description":"Valor do IBS"},"gCBS":{"$ref":"#/components/schemas/CBSDomain","description":"Grupo de Informações da CBS"},"gTribRegular":{"$ref":"#/components/schemas/TributacaoRegularDomain","description":"Grupo de Informações da Tributação Regular"},"gTribCompraGov":{"$ref":"#/components/schemas/TributacaoCompraGovernamentalDomain","description":"Grupo de informações da composição do valor do IBS e da CBS em compras governamentais"}}},"IBSCBSCreditoPresumidoDomain":{"type":"object","properties":{"pCredPres":{"type":"number","description":"Percentual do Crédito Presumido"},"vCredPres":{"type":"number","description":"Valor do Crédito Presumido"},"vCredPresCondSus":{"type":"number","description":"Valor do Crédito Presumido em condição suspensiva"}}},"IBSCBSDomain":{"type":"object","properties":{"CST":{"type":"string","description":"Código de Situação Tributária do IBS e CBS"},"cClassTrib":{"type":"string","description":"Código de Classificação Tributária do IBS e CBS"},"indDoacao":{"type":"integer","format":"int32","description":"Indica a natureza da operação de doação, orientando a apuração e a geração de débitos ou estornos conforme o cenário"},"gIBSCBS":{"$ref":"#/components/schemas/GrupoIBSCBSDomain","description":"Grupo de Informações do IBS e da CBS"},"gIBSCBSMono":{"$ref":"#/components/schemas/MonofasiaDomain","description":"Grupo de Informações do IBS e CBS em operações com imposto monofásico"},"gTransfCred":{"$ref":"#/components/schemas/TransferenciaCreditoDomain","description":"Transferências de Crédito"},"gAjusteCompet":{"$ref":"#/components/schemas/AjusteCompetenciaDomain","description":"Ajuste de competência"},"gEstornoCred":{"$ref":"#/components/schemas/EstornoCreditoDomain","description":"Estorno de crédito"},"gCredPresOper":{"$ref":"#/components/schemas/CreditoPresumidoOperacaoDomain","description":"Crédito presumido da Operação"},"gCredPresIBSZFM":{"$ref":"#/components/schemas/CreditoPresumidoIBSZFMDomain","description":"Informações do crédito presumido de IBS para fornecimentos a partir da ZFM"}}},"IBSCBSTotalDomain":{"type":"object","properties":{"vBCIBSCBS":{"type":"number","description":"Valor total da BC do IBS e da CBS"},"gIBS":{"$ref":"#/components/schemas/IBSTotalDomain","description":"Grupo total do IBS"},"gCBS":{"$ref":"#/components/schemas/CBSTotalDomain","description":"Grupo total da CBS"},"gMono":{"$ref":"#/components/schemas/MonofasiaTotalDomain","description":"Grupo total da Monofasia"},"gEstornoCred":{"$ref":"#/components/schemas/EstornoCreditoDomain","description":"Grupo total do Estorno de Crédito"}}},"IBSMunDomain":{"type":"object","properties":{"pIBSMun":{"type":"number","description":"Alíquota do IBS de competência do Município"},"gDif":{"$ref":"#/components/schemas/DiferimentoDomain","description":"Grupo de Informações do Diferimento"},"gDevTrib":{"$ref":"#/components/schemas/DevolucaoTributosDomain","description":"Grupo de Informações da devolução de tributos"},"gRed":{"$ref":"#/components/schemas/ReducaoAliquotaDomain","description":"Grupo de Informações da redução da alíquota"},"vIBSMun":{"type":"number","description":"Valor do IBS de competência do Município"},"memoriaCalculo":{"type":"string","description":"Memória de Cálculo"}}},"IBSMunTotalDomain":{"type":"object","properties":{"vDif":{"type":"number","description":"Valor total do diferimento"},"vDevTrib":{"type":"number","description":"Valor total de devolução de tributos"},"vIBSMun":{"type":"number","description":"Valor total do IBS do Município"}}},"IBSTotalDomain":{"type":"object","properties":{"gIBSUF":{"$ref":"#/components/schemas/IBSUFTotalDomain","description":"Grupo total do IBS da UF"},"gIBSMun":{"$ref":"#/components/schemas/IBSMunTotalDomain","description":"Grupo total do IBS do Município"},"vIBS":{"type":"number","description":"Valor total do IBS"},"vCredPres":{"type":"number","description":"Valor total do crédito presumido"},"vCredPresCondSus":{"type":"number","description":"Valor total do crédito presumido em condição suspensiva"}}},"IBSUFDomain":{"type":"object","properties":{"pIBSUF":{"type":"number","description":"Alíquota do IBS de competência das UF"},"gDif":{"$ref":"#/components/schemas/DiferimentoDomain","description":"Grupo de Informações do Diferimento"},"gDevTrib":{"$ref":"#/components/schemas/DevolucaoTributosDomain","description":"Grupo de Informações da devolução de tributos"},"gRed":{"$ref":"#/components/schemas/ReducaoAliquotaDomain","description":"Grupo de Informações da redução da alíquota"},"vIBSUF":{"type":"number","description":"Valor do IBS de competência da UF"},"memoriaCalculo":{"type":"string","description":"Memória de Cálculo"}}},"IBSUFTotalDomain":{"type":"object","properties":{"vDif":{"type":"number","description":"Valor total do diferimento"},"vDevTrib":{"type":"number","description":"Valor total de devolução de tributos"},"vIBSUF":{"type":"number","description":"Valor total do IBS da UF"}}},"ImpostoSeletivoDomain":{"type":"object","properties":{"CSTIS":{"type":"string","description":"Código de Situação Tributária do Imposto Seletivo"},"cClassTribIS":{"type":"string","description":"Código de Classificação Tributária do Imposto Seletivo"},"vBCIS":{"type":"number","description":"Valor da Base de Cálculo do Imposto Seletivo"},"pIS":{"type":"number","description":"Alíquota do Imposto Seletivo"},"pISEspec":{"type":"number","description":"Alíquota específica por unidade de medida apropriada"},"uTrib":{"type":"string","description":"Unidade de Medida Tributável"},"qTrib":{"type":"number","description":"Quantidade Tributável"},"vIS":{"type":"number","description":"Valor do Imposto Seletivo"},"memoriaCalculo":{"type":"string","description":"Memória de Cálculo"}}},"ImpostoSeletivoTotalDomain":{"type":"object","properties":{"vIS":{"type":"number","description":"Total do imposto seletivo"}}},"MonofasiaDiferimentoDomain":{"type":"object","properties":{"pDifIBS":{"type":"number","description":"Percentual do diferimento do imposto monofásico do IBS"},"vIBSMonoDif":{"type":"number","description":"Valor do IBS monofásico diferido"},"pDifCBS":{"type":"number","description":"Percentual do diferimento do imposto monofásico da CBS"},"vCBSMonoDif":{"type":"number","description":"Valor da CBS monofásica diferida"}}},"MonofasiaDomain":{"type":"object","properties":{"gMonoPadrao":{"$ref":"#/components/schemas/MonofasiaPadraoDomain","description":"Grupo de informações da Tributação Monofásica Padrão"},"gMonoReten":{"$ref":"#/components/schemas/MonofasiaRetencaoDomain","description":"Grupo de informações da Tributação Monofásica Sujeita à Retenção"},"gMonoRet":{"$ref":"#/components/schemas/MonofasiaRetidoAnteriormenteDomain","description":"Grupo de informações da Tributação Monofásica Retida Anteriormente"},"gMonoDif":{"$ref":"#/components/schemas/MonofasiaDiferimentoDomain","description":"Grupo de informações do Diferimento da Tributação Monofásica"},"vTotIBSMonoItem":{"type":"number","description":"Total de IBS monofásico"},"vTotCBSMonoItem":{"type":"number","description":"Total de CBS monofásica"}}},"MonofasiaPadraoDomain":{"type":"object","properties":{"qBCMono":{"type":"number","description":"Quantidade tributada na monofasia"},"adRemIBS":{"type":"number","description":"Alíquota ad rem do IBS"},"adRemCBS":{"type":"number","description":"Alíquota ad rem da CBS"},"vIBSMono":{"type":"number","description":"Valor do IBS monofásico"},"vCBSMono":{"type":"number","description":"Valor da CBS monofásica"}}},"MonofasiaRetencaoDomain":{"type":"object","properties":{"qBCMonoReten":{"type":"number","description":"Quantidade tributada sujeita à retenção na monofasia"},"adRemIBSReten":{"type":"number","description":"Alíquota ad rem do IBS sujeito a retenção"},"vIBSMonoReten":{"type":"number","description":"Valor do IBS monofásico sujeito a retenção"},"adRemCBSReten":{"type":"number","description":"Alíquota ad rem da CBS sujeita a retenção"},"vCBSMonoReten":{"type":"number","description":"Valor da CBS monofásica sujeita a retenção"}}},"MonofasiaRetidoAnteriormenteDomain":{"type":"object","properties":{"qBCMonoRet":{"type":"number","description":"Quantidade tributada retida anteriormente"},"adRemIBSRet":{"type":"number","description":"Alíquota ad rem do IBS retido anteriormente"},"vIBSMonoRet":{"type":"number","description":"Valor do IBS retido anteriormente"},"adRemCBSRet":{"type":"number","description":"Alíquota ad rem da CBS retida anteriormente"},"vCBSMonoRet":{"type":"number","description":"Valor da CBS retida anteriormente"}}},"MonofasiaTotalDomain":{"type":"object","properties":{"vIBSMono":{"type":"number","description":"Total do IBS monofásico"},"vCBSMono":{"type":"number","description":"Total da CBS monofásica"},"vIBSMonoReten":{"type":"number","description":"Total do IBS monofásico sujeito a retenção"},"vCBSMonoReten":{"type":"number","description":"Total da CBS monofásica sujeita a retenção"},"vIBSMonoRet":{"type":"number","description":"Total do IBS monofásico retido anteriormente"},"vCBSMonoRet":{"type":"number","description":"Total da CBS monofásica retida anteriormente"}}},"ObjetoDomain":{"type":"object","properties":{"nObj":{"type":"integer","format":"int32"},"tribCalc":{"$ref":"#/components/schemas/TributosDomain"}}},"OperacaoConsumoDomain":{"type":"object","properties":{"gCompraGov":{"$ref":"#/components/schemas/CompraGovernamentalDomain"}}},"ROCDomain":{"type":"object","properties":{"oper":{"$ref":"#/components/schemas/OperacaoConsumoDomain"},"objetos":{"type":"array","items":{"$ref":"#/components/schemas/ObjetoDomain"}},"total":{"$ref":"#/components/schemas/ValoresTotaisDomain"}}},"ReducaoAliquotaDomain":{"type":"object","properties":{"pRedAliq":{"type":"number","description":"Percentual da redução de alíquota do cClassTrib"},"pAliqEfet":{"type":"number","description":"Alíquota Efetiva que será aplicada a Base de Cálculo"}}},"TransferenciaCreditoDomain":{"type":"object","properties":{"vIBS":{"type":"number","description":"Valor do IBS a ser transferido"},"vCBS":{"type":"number","description":"Valor da CBS a ser transferida"}}},"TributacaoCompraGovernamentalDomain":{"type":"object","properties":{"pAliqIBSUF":{"type":"number","description":"Alíquota do IBS de competência do Estado"},"vTribIBSUF":{"type":"number","description":"Valor do Tributo do IBS da UF calculado"},"pAliqIBSMun":{"type":"number","description":"Alíquota do IBS de competência do Município"},"vTribIBSMun":{"type":"number","description":"Valor do Tributo do IBS do Município calculado"},"pAliqCBS":{"type":"number","description":"Alíquota da CBS"},"vTribCBS":{"type":"number","description":"Valor do Tributo da CBS calculado"}}},"TributacaoRegularDomain":{"type":"object","properties":{"CSTReg":{"type":"string","description":"Código de Situação Tributária do IBS e CBS"},"cClassTribReg":{"type":"string","description":"Código de Classificação Tributária do IBS e CBS"},"pAliqEfetRegIBSUF":{"type":"number","description":"Valor da alíquota do IBS da UF"},"vTribRegIBSUF":{"type":"number","description":"Valor do Tributo do IBS da UF"},"pAliqEfetRegIBSMun":{"type":"number","description":"Valor da alíquota do IBS do Município"},"vTribRegIBSMun":{"type":"number","description":"Valor do Tributo do IBS do Município"},"pAliqEfetRegCBS":{"type":"number","description":"Valor da alíquota da CBS"},"vTribRegCBS":{"type":"number","description":"Valor do Tributo da CBS"}}},"TributosDomain":{"type":"object","properties":{"IS":{"$ref":"#/components/schemas/ImpostoSeletivoDomain","description":"Informações do Imposto Seletivo"},"IBSCBS":{"$ref":"#/components/schemas/IBSCBSDomain","description":"Informações do Imposto de Bens e Serviços - IBS e da Contribuição de Bens e Serviços - CBS"}}},"TributosTotaisDomain":{"type":"object","properties":{"ISTot":{"$ref":"#/components/schemas/ImpostoSeletivoTotalDomain","description":"Grupo total do imposto seletivo"},"IBSCBSTot":{"$ref":"#/components/schemas/IBSCBSTotalDomain","description":"Totais com IBS e CBS"}}},"ValoresTotaisDomain":{"type":"object","properties":{"tribCalc":{"$ref":"#/components/schemas/TributosTotaisDomain"}}},"CompraGovernamentalInput":{"type":"object","properties":{"tpEnteGov":{"type":"integer","format":"int32","description":"Tipo de ente governamental.

\nValores:

\n

    \n
  • 1 = União\n
  • 2 = Estado\n
  • 3 = Distrito Federal\n
  • 4 = Município\n
  • 5 = Consórcio Público\n
  • 6 = Comitê Gestor do IBS\n
\n"},"tpOperGov":{"type":"integer","format":"int32","description":"Tipo de operação com o ente governamental.

\nValores:

\n

    \n
  • 1 = Fornecimento com pagamento posterior\n
  • 2 = Recebimento do pagamento com fornecimento já realizado\n
  • 3 = Fornecimento com pagamento já realizado\n
  • 4 = Recebimento do pagamento com fornecimento posterior\n
  • 5 = Fornecimento e recebimento do pagamento concomitantes\n
\n"}},"required":["tpEnteGov","tpOperGov"]},"ImpostoSeletivoInput":{"type":"object","properties":{"cst":{"type":"string","description":"Código da situação tributária","example":"000","maxLength":3,"minLength":3,"pattern":"\\d+"},"cClassTrib":{"type":"string","description":"Código da classificação tributária","example":"000000","maxLength":6,"minLength":6,"pattern":"\\d+"},"baseCalculo":{"type":"number","description":"Base de cálculo do imposto","example":200.0},"quantidade":{"type":"number","description":"Quantidade","example":1},"unidade":{"type":"string","description":"Unidade de medida","example":"LT"},"impostoInformado":{"type":"number","description":"Imposto Seletivo informado pelo contribuinte","example":12.0}},"required":["baseCalculo","cClassTrib","cst","impostoInformado"]},"ItemOperacaoInput":{"type":"object","properties":{"numero":{"type":"integer","format":"int32","description":"Número do Item","example":1,"maximum":9999999,"minimum":1},"ncm":{"type":"string","description":"Código NCM","example":24021000},"nbs":{"type":"string","description":"Código NBS","example":109052100},"cst":{"type":"string","description":"Código de situação tributária","example":"000","maxLength":3,"minLength":3,"pattern":"\\d+"},"cClassTrib":{"type":"string","description":"Código de classificação tributária","example":"000001","maxLength":6,"minLength":6,"pattern":"\\d+"},"baseCalculo":{"type":"number","description":"Base de cálculo do imposto","example":200.0},"quantidade":{"type":"number","description":"Quantidade","example":1},"unidade":{"type":"string","description":"Unidade de medida","example":"LT"},"impostoSeletivo":{"$ref":"#/components/schemas/ImpostoSeletivoInput","description":"Informações do Imposto Seletivo"},"tributacaoRegular":{"$ref":"#/components/schemas/TributacaoRegularInput","description":"Informações sobre tributação regular"}},"required":["cClassTrib","cst","numero"]},"OperacaoInput":{"type":"object","properties":{"id":{"type":"string","description":"Identificador do ROC","example":"6194602ea71cbf9431c236de4409d920"},"versao":{"type":"string","description":"Versão do ROC","example":"0.0.1"},"dhFatoGerador":{"type":"string","format":"date-time","description":"Data e hora do fato gerador no formato UTC","example":"2026-01-01T09:50:05-03:00"},"dataHoraEmissao":{"type":"string","format":"date-time","deprecated":true,"description":"<<<ATENÇÃO>>>

ESTE CAMPO SERÁ REMOVIDO EM FUTURO PRÓXIMO

Informar dhFatoGerador

Data e hora de emissão do documento no formato UTC

","example":"2026-01-01T09:50:05-03:00"},"municipio":{"type":"integer","format":"int64","description":"Código do Município (tabela IBGE)","example":4314902,"maximum":9999999,"minimum":0},"uf":{"type":"string","description":"Sigla da UF","example":"RS","maxLength":2,"minLength":2},"gCompraGov":{"$ref":"#/components/schemas/CompraGovernamentalInput","description":"Grupo de Compra Governamental"},"itens":{"type":"array","description":"Itens da Operação","items":{"$ref":"#/components/schemas/ItemOperacaoInput"},"minItems":1}},"required":["id","itens","municipio","versao"]},"TributacaoRegularInput":{"type":"object","properties":{"cst":{"type":"string","description":"Código da situação tributária","example":"000","maxLength":3,"minLength":3,"pattern":"\\d+"},"cClassTrib":{"type":"string","description":"Código da classificação tributária","example":"000000","maxLength":6,"minLength":6,"pattern":"\\d+"}},"required":["cClassTrib","cst"]},"PedagioInput":{"type":"object","properties":{"dataHoraEmissao":{"type":"string","format":"date-time","description":"Data e hora de emissão do documento no formato UTC","example":"2027-01-01T09:50:05-03:00"},"codigoMunicipioOrigem":{"type":"integer","format":"int64","description":"Código do Município (tabela IBGE)","example":4314902,"maximum":9999999,"minimum":0},"ufMunicipioOrigem":{"type":"string","description":"Sigla da UF","example":"RS","maxLength":2,"minLength":2},"cst":{"type":"string","description":"Código de situação tributária","example":"000","maxLength":3,"minLength":3},"cClassTrib":{"type":"string","description":"Código de classificação tributária","example":"000002","maxLength":6,"minLength":6},"baseCalculo":{"type":"number","description":"Base de cálculo do imposto","example":200.0},"trechos":{"type":"array","description":"Trechos do pedágio","items":{"$ref":"#/components/schemas/TrechoPedagioInput"},"minItems":1}},"required":["baseCalculo","cClassTrib","codigoMunicipioOrigem","cst","dataHoraEmissao","trechos","ufMunicipioOrigem"]},"TrechoPedagioInput":{"type":"object","properties":{"numero":{"type":"integer","format":"int32","description":"Número do Trecho","example":1,"minimum":1},"municipio":{"type":"integer","format":"int64","description":"Código do Município (tabela IBGE)","example":4314902,"maximum":9999999,"minimum":0},"uf":{"type":"string","description":"Sigla da UF","example":"RS","maxLength":2,"minLength":2},"extensao":{"type":"number","description":"Extensão do trecho","example":10}},"required":["extensao","municipio","numero","uf"]},"PedagioOutput":{"type":"object","properties":{"dataHoraEmissao":{"type":"string","format":"date-time","description":"Data e hora de emissão do documento no formato UTC","example":"2027-01-01T09:50:05-03:00"},"municipioOrigem":{"type":"integer","format":"int64","description":"Código do Município (tabela IBGE)","example":4314902},"ufMunicipioOrigem":{"type":"string","description":"Sigla da UF","example":"RS"},"cst":{"type":"string","description":"Código de situação tributária","example":"000","maxLength":3,"minLength":3},"cClassTrib":{"type":"string","description":"Código de classificação tributária","example":"000001","maxLength":6,"minLength":6},"baseCalculo":{"type":"number","description":"Base de cálculo","example":200.0},"extensaoTotal":{"type":"number","description":"Extensão total (km)","example":200.0},"trechos":{"type":"array","description":"Trechos do pedágio","items":{"$ref":"#/components/schemas/TrechoPedagioOutput"}},"total":{"$ref":"#/components/schemas/TotalPedagioOutput","description":"Total de tributo calculado"}}},"TotalPedagioOutput":{"type":"object","properties":{"cbsTotal":{"$ref":"#/components/schemas/TributoTotalPedagioOutput","description":"Total de CBS apurado"},"ibsEstadualTotal":{"$ref":"#/components/schemas/TributoTotalPedagioOutput","description":"Total de IBS Estadual apurado"},"ibsMunicipalTotal":{"$ref":"#/components/schemas/TributoTotalPedagioOutput","description":"Total de IBS Municipal apurado"}}},"TrechoPedagioOutput":{"type":"object","properties":{"numero":{"type":"integer","format":"int32","description":"Número do Item","example":1},"municipio":{"type":"integer","format":"int64","description":"Código do Município (tabela IBGE)","example":4314902},"uf":{"type":"string","description":"Sigla da UF","example":"RS"},"baseCalculo":{"type":"number","description":"Base de cálculo do imposto","example":200.0},"extensaoTrecho":{"type":"number","description":"Extensao do trecho","example":20},"extensaoTotal":{"type":"number","description":"Extensao total","example":50},"cbs":{"$ref":"#/components/schemas/TributoPedagioOutput","description":"Informações do CBS"},"ibsEstadual":{"$ref":"#/components/schemas/TributoPedagioOutput","description":"Informações do IBS Estadual"},"ibsMunicipal":{"$ref":"#/components/schemas/TributoPedagioOutput","description":"Informações do IBS Municipal"}}},"TributoPedagioOutput":{"type":"object","properties":{"aliquota":{"type":"number","description":"Alíquota","example":0.5},"aliquotaEfetiva":{"type":"number","description":"Alíquota efetiva","example":0.5},"tributoCalculado":{"type":"number","description":"Tributo calculado","example":0.75},"memoriaCalculo":{"type":"string","description":"Descrição do processo de cálculo","example":"Texto descritivo"}}},"TributoTotalPedagioOutput":{"type":"object","properties":{"baseCalculo":{"type":"number","description":"Base de cálculo do imposto","example":200.0},"valorApurado":{"type":"number","description":"Valor de imposto apurado","example":0.75},"valorDevido":{"type":"number","description":"Valor de imposto devido","example":0.75},"valorTributo":{"type":"number","description":"Valor do tributo","example":0.75},"totalMontanteDesonerado":{"type":"number","description":"Total do montante desonerado","example":10.22}}},"ErroDetalhe":{"type":"object","properties":{"type":{"type":"string"},"title":{"type":"string"},"code":{"type":"string"},"pointer":{"type":"string"},"detail":{"type":"string"}}},"ObservabilidadeItemDomain":{"type":"object","properties":{"nObj":{"type":"integer","format":"int32"},"estadoItem":{"type":"string","enum":["CALCULADO","NAO_IMPLEMENTADO","INCONSISTENCIA_ENTRADA","FALHA_TECNICA"]},"tribCalc":{"$ref":"#/components/schemas/TributosDomain"},"erros":{"type":"array","items":{"$ref":"#/components/schemas/ErroDetalhe"}}}},"ObservabilidadeROCDomain":{"type":"object","properties":{"oper":{"$ref":"#/components/schemas/OperacaoConsumoDomain"},"objetos":{"type":"array","items":{"$ref":"#/components/schemas/ObservabilidadeItemDomain"}},"total":{"$ref":"#/components/schemas/ValoresTotaisDomain"}}},"NfseValidacaoIndicadorOperacaoInput":{"type":"object","properties":{"cTribNac":{"type":"string","description":"Código de Tributação Nacional - opcional (4 ou 6 dígitos)","example":"0101","pattern":"^\\d{4}$|^\\d{6}$"},"cIndOp":{"type":"string","description":"Código do Indicador de Operação (6 dígitos)","example":100301,"minLength":1,"pattern":"^\\d{6}$"},"cClassTrib":{"type":"string","description":"Código de Classificação Tributária (6 dígitos)","example":620001,"minLength":1,"pattern":"^\\d{6}$"},"nbs":{"type":"string","description":"Código NBS - Nomenclatura Brasileira de Serviços (9 dígitos)","example":115021000,"minLength":1,"pattern":"^\\d{9}$"},"dataOcorrenciaFatoGerador":{"type":"string","format":"date","description":"Data de ocorrência do fato gerador da operação (formato: YYYY-MM-DD)","example":"2026-01-15"}},"required":["cClassTrib","cIndOp","dataOcorrenciaFatoGerador","nbs"]},"NfseValidacaoIndicadorOperacaoOutput":{"type":"object","description":"Resultado da validação do indicador de operação","properties":{"cTribNac":{"type":"string","description":"Código de Tributação Nacional informado (opcional)","example":"010101"},"cIndOp":{"type":"string","description":"Código do Indicador de Operação informado","example":100301},"cClassTrib":{"type":"string","description":"Código de Classificação Tributária informado","example":"000001"},"nbs":{"type":"string","description":"Código NBS informado","example":115021000},"dataOcorrenciaFatoGerador":{"type":"string","format":"date","description":"Data de ocorrência do fato gerador informada","example":"2025-01-01"},"valido":{"type":"boolean","description":"Indica se a combinação informada é válida","example":true}}},"NfseBaseCalculoInput":{"type":"object","properties":{"anoFatoGerador":{"type":"integer","format":"int32","description":"Ano do Fato Gerador","example":2026},"valorServico":{"type":"number","description":"Valor do Serviço","example":105.0},"descontoIncondicional":{"type":"number","default":"0.00","description":"Desconto Incondicional","example":5.0},"vCalcReeRepRes":{"type":"number","default":"0.00","description":"Valor monetário (R$) total relativo ao fornecimento próprio de bens materiais ou relacionados a operações de terceiros, objeto de reembolso, repasse ou ressarcimento pelo recebedor, já tributados e aqui referenciados e que não integram da base de cálculo (BC) do ISSQN, do IBS e da CBS.","example":5.0},"vCalcDedRedIBSCBS":{"type":"number","default":"0.00","description":"Valor monetário (R$) total relativo aos valores de dedução e redução da Base de Cálculo do IBS e da CBS referentes às operações de locação, cessão onerosa ou arrendamento de bens imóveis, e serviços médicos.","example":5.0},"iss":{"type":"number","default":"0.00","description":"Imposto sobre Serviços de Qualquer Natureza","example":5.0},"pis":{"type":"number","default":"0.00","description":"Programa de Integração Social","example":5.0},"cofins":{"type":"number","default":"0.00","description":"Contribuição para o Financiamento da Seguridade Social","example":5.0}},"required":["anoFatoGerador","valorServico"]},"NfseBaseCalculoOutput":{"type":"object","properties":{"baseCalculo":{"type":"number","description":"Base de cálculo da operação","example":100.55}}},"BaseCalculoISMercadoriasInput":{"type":"object","properties":{"anoFatoGerador":{"type":"integer","format":"int32","description":"Ano do Fato Gerador","example":2027},"valorBem":{"type":"number","default":"0.00","description":"Valor do bem (antes dos descontos/ajustes)","example":105.0},"ajusteAcrescimos":{"type":"number","default":"0.00","description":"Ajuste decorrentes de acréscimos","example":5.0},"juros":{"type":"number","default":"0.00","description":"Juros","example":5.0},"multas":{"type":"number","default":"0.00","description":"Multas","example":5.0},"encargos":{"type":"number","default":"0.00","description":"Encargos","example":5.0},"freteCobrado":{"type":"number","default":"0.00","description":"Frete cobrado como parte do valor da operação","example":5.0},"outrosTributos":{"type":"number","default":"0.00","description":"Tributos (exceto CBS, IBS e o próprio IS) e preços públicos, inclusive tarifas","example":5.0},"demaisImportancias":{"type":"number","default":"0.00","description":"Demais importâncias cobradas ou recebidas como parte do valor da operação, inclusive seguros e taxas","example":5.0},"icms":{"type":"number","default":"0.00","description":"ICMS","example":5.0},"iss":{"type":"number","default":"0.00","description":"ISS","example":5.0},"cosip":{"type":"number","default":"0.00","description":"COSIP","example":5.0},"ipi":{"type":"number","default":"0.00","description":"IPI","example":5.0},"descontoIncondicional":{"type":"number","default":"0.00","description":"Desconto Incondicional","example":5.0},"bonificacao":{"type":"number","default":"0.00","description":"Bonificações que constem do respectivo documento fiscal e não dependam de evento posterior, nos termos § 2º do Art. 417","example":5.0},"devolucaoVendas":{"type":"number","default":"0.00","description":"Devoluções de bens vendidos nos termos do Art. 418","example":5.0}},"required":["anoFatoGerador"]},"BaseCalculoISMercadoriasModel":{"type":"object","properties":{"baseCalculo":{"type":"number","description":"Base de cálculo da operação","example":100.55}}},"BaseCalculoCibsInput":{"type":"object","properties":{"anoFatoGerador":{"type":"integer","format":"int32","description":"Ano do Fato Gerador","example":2026},"valorBem":{"type":"number","default":"0.00","description":"Valor do Bem (antes dos descontos/ajustes)","example":105.0},"ajusteAcrescimos":{"type":"number","default":"0.00","description":"Ajuste decorrentes de acréscimos","example":5.0},"juros":{"type":"number","default":"0.00","description":"Juros","example":5.0},"multas":{"type":"number","default":"0.00","description":"Multas","example":5.0},"encargos":{"type":"number","default":"0.00","description":"Encargos","example":5.0},"frete":{"type":"number","default":"0.00","description":"Frete cobrado como parte do valor da operação","example":5.0},"impostoSeletivo":{"type":"number","default":"0.00","description":"Imposto Seletivo","example":5.0},"outrosTributos":{"type":"number","default":"0.00","description":"Outros tributos (exceto CBS e IBS) e preços públicos, inclusive tarifas","example":5.0},"demaisImportancias":{"type":"number","default":"0.00","description":"Demais importâncias cobradas ou recebidas como parte do valor da operação, inclusive seguros e taxas","example":5.0},"icms":{"type":"number","default":"0.00","description":"ICMS","example":5.0},"iss":{"type":"number","default":"0.00","description":"ISS","example":5.0},"pis":{"type":"number","default":"0.00","description":"PIS","example":5.0},"pisImportacao":{"type":"number","default":"0.00","description":"PIS Importação","example":5.0},"cofins":{"type":"number","default":"0.00","description":"COFINS","example":5.0},"cofinsImportacao":{"type":"number","default":"0.00","description":"COFINS Importação","example":5.0},"cosip":{"type":"number","default":"0.00","description":"COSIP","example":5.0},"ipi":{"type":"number","default":"0.00","description":"IPI","example":5.0},"descontoIncondicional":{"type":"number","default":"0.00","description":"Desconto Incondicional","example":5.0}},"required":["anoFatoGerador"]},"TipoDocumentoDTO":{"type":"object","properties":{"nome":{"type":"string"},"mnemonico":{"type":"string"},"versaoNotaTecnica":{"type":"string"}}},"ErroDescricao":{"type":"object","properties":{"codigo":{"type":"string"},"titulo":{"type":"string"},"descricao":{"type":"string"}}},"NfseSituacaoClassificacaoOutput":{"type":"object","properties":{"codigoSituacaoTributaria":{"type":"string"},"descricaoSituacaoTributaria":{"type":"string"},"codigoClassificacaoTributaria":{"type":"string"},"descricaoClassificacaoTributaria":{"type":"string"}}},"NfseLocalOperacaoOutput":{"type":"object","description":"Informações sobre o local da operação baseado no indicador de operação","properties":{"cIndOp":{"type":"string","description":"Código do Indicador de Operação informado","example":100301},"dataOcorrenciaFatoGerador":{"type":"string","format":"date","description":"Data de ocorrência do fato gerador informada","example":"2026-01-01"},"codigoLocalFornecimento":{"type":"string","description":"Código do local de fornecimento","enum":["1","2","3","4","5","6","7","8","9","10","11","12","13","14","15","16","17","18","19","20","21","22","23","24","25","26","27","28"],"example":5},"localFornecimento":{"type":"string","description":"Local de fornecimento","example":"Estabelecimento do Fornecedor"},"codigoLocalIncidencia":{"type":"string","description":"Código do local de incidência","enum":["1","2","3","4","5","6","7"],"example":3},"localIncidencia":{"type":"string","description":"Local de incidência","example":"Estabelecimento do Prestador/Fornecedor"}}},"NfseCodigoDescricaoOutput":{"type":"object","description":"Código e descrição de um valor de enumeração","properties":{"codigo":{"type":"integer","format":"int32","description":"Código do valor","example":1},"descricao":{"type":"string","description":"Descrição do valor","example":"Endereço do Destinatário"}}},"NfseIndicadorOperacaoOutput":{"type":"object","description":"Informações sobre o indicador de operação","properties":{"cIndOp":{"type":"string","description":"Código do Indicador de Operação","example":"020301"},"tipoOperacao":{"type":"string","description":"Tipo de operação","example":"Serviço de administração e intermediação de bem imóvel"},"codigoLocalFornecimento":{"type":"string","description":"Código do local de fornecimento","enum":["1","2","3","4","5","6","7","8","9","10","11","12","13","14","15","16","17","18","19","20","21","22","23","24","25","26","27","28"],"example":14},"localFornecimento":{"type":"string","description":"Local de fornecimento","example":"Estabelecimento do Fornecedor"},"codigoLocalIncidencia":{"type":"string","description":"Código do local de incidência","enum":["1","2","3","4","5","6","7"],"example":3},"localIncidencia":{"type":"string","description":"Local de incidência","example":"Estabelecimento do Prestador/Fornecedor"},"prestacaoServicoOnerosa":{"type":"boolean","description":"Indicador se é prestação de serviço onerosa (apenas quando NBS é informado)","example":true},"adquirenteExterior":{"type":"boolean","description":"Indicador se o adquirente é do exterior (apenas quando NBS é informado)","example":false}}},"VersaoOutput":{"type":"object","properties":{"versaoApp":{"type":"string","description":"Versão do aplicativo","example":"0.0.0-SNAPSHOT"},"versaoDb":{"type":"string","description":"Versão do banco de dados","example":"1.0.0"},"descricaoVersaoDb":{"type":"string","description":"Descrição da versão do banco de dados","example":"Versão de homologação"},"dataVersaoDb":{"type":"string","description":"Data da versão do banco de dados","example":"2026-01-01"},"ambiente":{"type":"string","description":"Ambiente da aplicação","example":"Online"}}},"UfDadosAbertosOutput":{"type":"object","properties":{"sigla":{"type":"string","description":"Sigla da UF","example":"RS"},"nome":{"type":"string","description":"Nome da UF","example":"Rio Grande do Sul"},"codigo":{"type":"integer","format":"int64","description":"Código IBGE da UF","example":43}}},"MunicipioDadosAbertosOutput":{"type":"object","properties":{"codigo":{"type":"integer","format":"int64","description":"Código IBGE do Município","example":4314902},"nome":{"type":"string","description":"Nome do município","example":"Porto Alegre"}}},"TransferenciaIBSDadosAbertosOutput":{"type":"object","properties":{"valor":{"type":"number","description":"Percentual de transferência IBS","example":0.15},"inicioVigencia":{"type":"string","format":"date","description":"Data de início da vigência","example":"2026-01-01"},"fimVigencia":{"type":"string","format":"date","description":"Data de fim da vigência","example":"2026-12-31"}}},"TransferenciaCBSDadosAbertosOutput":{"type":"object","properties":{"valor":{"type":"number","description":"Percentual de transferência CBS","example":0.15},"inicioVigencia":{"type":"string","format":"date","description":"Data de início da vigência","example":"2026-01-01"},"fimVigencia":{"type":"string","format":"date","description":"Data de fim da vigência","example":"2026-12-31"}}},"SituacaoTributariaDadosAbertosOutput":{"type":"object","properties":{"id":{"type":"integer","format":"int64","description":"Identificador único da situacao tributária","example":0},"codigo":{"type":"string","description":"Código da situacao tributária","example":"000"},"descricao":{"type":"string","description":"Descricao da situacao tributária","example":"Tributação Integral"}}},"RedutorCompraGovernamentalDadosAbertosOutput":{"type":"object","properties":{"valor":{"type":"number","description":"Valor do redutor","example":0.6},"inicioVigencia":{"type":"string","format":"date","description":"Data de início da vigência","example":"2026-01-01"},"fimVigencia":{"type":"string","format":"date","description":"Data de fim da vigência","example":"2026-12-31"}}},"NcmDadosAbertosOutput":{"type":"object","properties":{"tributadoPeloImpostoSeletivo":{"type":"boolean","description":"Tributado pelo Imposto Seletivo"},"aliquotaAdValorem":{"type":"number","description":"Alíquota ad valorem do Imposto Seletivo"},"aliquotaAdRem":{"type":"number","description":"Alíquota ad rem do Imposto Seletivo"},"capitulo":{"type":"string","description":"Capítulo da NCM"},"posicao":{"type":"string","description":"Posição da NCM"},"subposicao":{"type":"string","description":"Subposição da NCM"},"item":{"type":"string","description":"Item da NCM"},"subitem":{"type":"string","description":"Subitem da NCM"},"unidade":{"type":"string","description":"Unidade da NCM"}}},"NbsDadosAbertosOutput":{"type":"object","properties":{"tributadoPeloImpostoSeletivo":{"type":"boolean","description":"Tributado pelo Imposto Seletivo"},"aliquotaAdValorem":{"type":"number","description":"Alíquota ad valorem do Imposto Seletivo"},"capitulo":{"type":"string","description":"Capítulo da NBS"},"posicao":{"type":"string","description":"Posição da NBS"},"subposicao1":{"type":"string","description":"Subposição 1 da NBS"},"subposicao2":{"type":"string","description":"Subposição 2 da NBS"},"item":{"type":"string","description":"Item da NBS"}}},"NbsListaDadosAbertosOutput":{"type":"object","properties":{"codigo":{"type":"string","description":"Código NBS","example":10101},"descricao":{"type":"string","description":"Descrição da NBS","example":"Serviços de construção de edificações"}}},"FundamentacaoClassificacaoDadosAbertosOutput":{"type":"object","properties":{"codigoClassificacaoTributaria":{"type":"string","description":"Código da classificação tributária vinculada à fundamentacao legal","example":"000001"},"descricaoClassificacaoTributaria":{"type":"string","description":"Descrição da classificação tributária vinculada à fundamentacao legal","example":"000001"},"codigoSituacaoTributaria":{"type":"string","description":"Código da situação tributária vinculada à fundamentacao legal","example":"000001"},"descricaoSituacaoTributaria":{"type":"string","description":"Descrição da situação tributária vinculada à fundamentacao legal","example":"000001"},"conjuntoTributo":{"type":"string","description":"Tributo(s) vinculado(s) à fundamentacao legal","example":"CBS e IBS"},"texto":{"type":"string","description":"Texto da fundamentação legal"},"textoCurto":{"type":"string","description":"Texto curto da fundamentação legal"},"referenciaNormativa":{"type":"string","description":"Referência normativa da fundamentação legal"}}},"ClassificacaoTributariaDadosAbertosOutput":{"type":"object","properties":{"codigo":{"type":"string","description":"Código da classificação tributária","example":"000001"},"descricao":{"type":"string","description":"Descrição da classificação tributária"},"tipoAliquota":{"type":"string","description":"Tipo de alíquota da classificação tributária"},"nomenclatura":{"type":"string","description":"Nomenclatura da classificação tributária"},"descricaoTratamentoTributario":{"type":"string","description":"Descrição do tratamento tributário da classificação tributária"},"incompativelComSuspensao":{"type":"boolean"},"exigeGrupoDesoneracao":{"type":"boolean"},"possuiPercentualReducao":{"type":"boolean"},"indicaApropriacaoCreditoAdquirenteCbs":{"type":"boolean"},"indicaApropriacaoCreditoAdquirenteIbs":{"type":"boolean"},"indicaCreditoPresumidoFornecedor":{"type":"boolean"},"indicaCreditoPresumidoAdquirente":{"type":"boolean"},"creditoOperacaoAntecedente":{"type":"string"},"percentualReducaoCbs":{"type":"number"},"percentualReducaoIbsUf":{"type":"number"},"percentualReducaoIbsMun":{"type":"number"},"tiposDfeClassificacao":{"type":"array","items":{"$ref":"#/components/schemas/TipoDfeClassificacaoDadosAbertosOutput"}},"dataAtualizacao":{"type":"string","format":"date","description":"Data de atualização da classificação tributária (YYYY-MM-DD)","example":"2025-12-15"}}},"TipoDfeClassificacaoDadosAbertosOutput":{"type":"object","properties":{"tipo":{"type":"integer","format":"int32","description":"Tipo de DFE","example":55},"sigla":{"type":"string","description":"Sigla do DFE","example":"NF-e"},"descricao":{"type":"string","description":"Descrição do DFE","example":"Documento Fiscal Eletrônico"}}},"NcmAplicavelOutput":{"type":"object","properties":{"cClassTrib":{"type":"string","description":"Código da Classificação Tributária","example":"000001"},"ncm":{"type":"string","description":"Código NCM (Nomenclatura Comum do Mercosul)","example":24021000},"dataOcorrenciaFatoGerador":{"type":"string","description":"Data de ocorrência do fato gerador","example":"2026-01-01"},"valido":{"type":"boolean","description":"Indicador se o NCM é válido para a classificação tributária informada"}}},"NbsAplicavelOutput":{"type":"object","properties":{"cClassTrib":{"type":"string","description":"Código da Classificação Tributária","example":"000001"},"nbs":{"type":"string","description":"Código NBS (Nomenclatura Brasileira de Serviços)","example":114052200},"dataOcorrenciaFatoGerador":{"type":"string","description":"Data de ocorrência do fato gerador","example":"2026-01-01"},"valido":{"type":"boolean","description":"Indicador se a NBS é válida para a classificação tributária informada"}}},"ValidadeDfeClassificacaoTributariaDadosAbertosOutput":{"type":"object","properties":{"siglaDfeInformado":{"type":"string","description":"Sigla do DFE informado","example":"NFSe"},"validoParaSiglaDfeInformado":{"type":"boolean","description":"Indica se a classificação tributária é válida para a sigla do DFE informado","example":true},"nomenclatura":{"type":"string","description":"Nomenclatura da classificação tributária informada","example":"NBS ou NCM"},"exigeGrupoTributacaoRegular":{"type":"boolean","description":"Indica se a classificação tributária exige grupo de tributação regular","example":false},"permiteDiferimento":{"type":"boolean","description":"Indica se a classificação tributária permite diferimento","example":false},"possibilidadeCreditoPresumido":{"type":"boolean","description":"Indica se há possibilidade de crédito presumido na operação","example":false}}},"AliquotaDadosAbertosOutput":{"type":"object","properties":{"aliquotaReferencia":{"type":"number","description":"Alíquota de referência","example":0},"aliquotaPropria":{"type":"number","description":"Alíquota própria","example":0},"formaAplicacao":{"type":"string","description":"Forma de aplicação da alíquota própria em relação à alíquota de referência","enum":["SUBSTITUICAO","ACRESCIMO","DECRESCIMO"],"example":"ACRESCIMO"}}}}}} \ No newline at end of file diff --git a/vendor/swagger/calculadora-openapi.portal.json b/vendor/swagger/calculadora-openapi.portal.json index 4e6508b..e975572 100644 --- a/vendor/swagger/calculadora-openapi.portal.json +++ b/vendor/swagger/calculadora-openapi.portal.json @@ -1 +1 @@ -{"openapi":"3.1.0","info":{"title":"OpenAPI definition","version":"v0"},"servers":[{"url":"https://consumo.tributos.gov.br:11202/servico/calcular-tributos-consumo/api","description":"Generated server url"}],"tags":[{"name":"Base de Cálculo - VERSÃO BETA","description":"Serviço para Base de Cálculo"},{"name":"Calculadora - VERSÃO BETA","description":"Calculadora de Tributos"},{"name":"NFS-e - VERSÃO BETA","description":"Serviço para cálculo de Base de Cálculo de NFS-e"},{"name":"Dados Abertos - VERSÃO BETA","description":"Consultas para os Dados Abertos"},{"name":"Observabilidade - Calculadora","description":"Endpoint de observabilidade da Calculadora de Tributos"},{"name":"Pedágio - VERSÃO BETA","description":"IVA - Calculadora de Tributos para o Pedágio"}],"paths":{"/calculadora/xml/validate":{"get":{"tags":["Calculadora - VERSÃO BETA"],"summary":"Tipos de DFe","description":"Tipos de DFe para validação de XML","operationId":"getDocumentosValidacao","responses":{"200":{"description":"Consulta realizada com sucesso","content":{"application/json":{"schema":{"$ref":"#/components/schemas/TipoDocumentoDTO"},"examples":{"Tipos de DFe Example":{"description":"Tipos de DFe Example","value":[{"nome":"NFe","mnemonico":"nfe","versaoNotaTecnica":"v1.30"},{"nome":"NFCe","mnemonico":"nfce","versaoNotaTecnica":"v1.30"},{"nome":"NFSe","mnemonico":"nfse","versaoNotaTecnica":"ND"},{"nome":"CTe","mnemonico":"cte","versaoNotaTecnica":"v1.10"},{"nome":"CTe Simplificado","mnemonico":"cte-simplificado","versaoNotaTecnica":"v1.10"},{"nome":"BPe","mnemonico":"bpe","versaoNotaTecnica":"v1.10"},{"nome":"NF3E","mnemonico":"nf3e","versaoNotaTecnica":"v1.10"}]}}}}},"500":{"description":"Erro interno na API","content":{"application/problem+json":{"schema":{"$ref":"#/components/schemas/ProblemDetail"},"examples":{"Internal Server Error Example":{"description":"Internal Server Error Example","value":{"type":"http://url-ambiente/errors/erro-interno","title":"Erro interno na API","status":500,"detail":"Falha ao processar a requisição.","instance":"/api/calculadora/xml/validate"}}}}}}}},"post":{"tags":["Calculadora - VERSÃO BETA"],"summary":"Validação de XML","description":"Valida os dados no formato XML","operationId":"validate","parameters":[{"name":"tipo","in":"query","description":"Tipo do XML","required":true,"schema":{"type":"string","enum":["nfe","nfce","nfse","cte","cte-simplificado","bpe","bpe-tm","nf3e"]}},{"name":"subtipo","in":"query","description":"Subtipo do XML","required":true,"schema":{"type":"string","enum":["grupo","nota"]}}],"requestBody":{"description":"XML a ser validado","content":{"application/xml":{"schema":{"type":"string"}}},"required":true},"responses":{"200":{"description":"Validação realizada com sucesso","content":{"application/json":{"schema":{"type":"boolean"}}}},"400":{"description":"Estrutura e/ou dados informados em formato não reconhecido","content":{"application/problem+json":{"schema":{"$ref":"#/components/schemas/ProblemDetail"}}}},"404":{"description":"Erro na URL da requisição","content":{"application/problem+json":{"schema":{"$ref":"#/components/schemas/ProblemDetail"}}}},"422":{"description":"Erro de validação","content":{"application/problem+json":{"schema":{"$ref":"#/components/schemas/ProblemDetail"}}}},"500":{"description":"Erro interno na API","content":{"application/problem+json":{"schema":{"$ref":"#/components/schemas/ProblemDetail"}}}}}}},"/calculadora/xml/generate":{"get":{"tags":["Calculadora - VERSÃO BETA"],"summary":"Tipos de DFe","description":"Tipos de DFe para geração de XML","operationId":"getDocumentosGeracao","responses":{"200":{"description":"Consulta realizada com sucesso","content":{"application/json":{"schema":{"$ref":"#/components/schemas/TipoDocumentoDTO"},"examples":{"Tipos de DFe Example":{"description":"Tipos de DFe Example","value":[{"nome":"NFe","mnemonico":"nfe","versaoNotaTecnica":"v1.30"},{"nome":"NFCe","mnemonico":"nfce","versaoNotaTecnica":"v1.30"},{"nome":"CTe","mnemonico":"cte","versaoNotaTecnica":"v1.10"},{"nome":"CTe Simplificado","mnemonico":"cte-simplificado","versaoNotaTecnica":"v1.10"},{"nome":"BPe","mnemonico":"bpe","versaoNotaTecnica":"v1.10"},{"nome":"NF3E","mnemonico":"nf3e","versaoNotaTecnica":"v1.10"}]}}}}},"500":{"description":"Erro interno na API","content":{"application/problem+json":{"schema":{"$ref":"#/components/schemas/ProblemDetail"},"examples":{"Internal Server Error Example":{"description":"Internal Server Error Example","value":{"type":"http://url-ambiente/errors/erro-interno","title":"Erro interno na API","status":500,"detail":"Falha ao processar a requisição.","instance":"/api/calculadora/xml/generate"}}}}}}}},"post":{"tags":["Calculadora - VERSÃO BETA"],"summary":"Geração de XML","description":"Converte os dados para o formato XML","operationId":"generate","parameters":[{"name":"tipo","in":"query","description":"Tipo do documento","required":true,"schema":{"type":"string","enum":["nfe","nfce","nfse","cte","cte-simplificado","bpe","bpe-tm","nf3e"]}}],"requestBody":{"description":"Dados do CBS/IBS/IS","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ROCDomain"}}},"required":true},"responses":{"200":{"description":"Conversão realizada com sucesso","content":{"application/xml":{"schema":{"type":"string"}}}},"400":{"description":"Estrutura e/ou dados informados em formato não reconhecido","content":{"application/problem+json":{"schema":{"$ref":"#/components/schemas/ProblemDetail"}}}},"404":{"description":"Erro na URL da requisição","content":{"application/problem+json":{"schema":{"$ref":"#/components/schemas/ProblemDetail"}}}},"422":{"description":"Erro de validação","content":{"application/problem+json":{"schema":{"$ref":"#/components/schemas/ProblemDetail"}}}},"500":{"description":"Erro interno na API","content":{"application/problem+json":{"schema":{"$ref":"#/components/schemas/ProblemDetail"}}}}}}},"/calculadora/regime-geral":{"post":{"tags":["Calculadora - VERSÃO BETA"],"summary":"Cálculo do tributo","description":"Calcula os tributos a partir dos dados de uma operação de consumo","operationId":"calcularTributos","requestBody":{"description":"Dados de uma operação de consumo","content":{"application/json":{"schema":{"$ref":"#/components/schemas/OperacaoInput"}}},"required":true},"responses":{"200":{"description":"Cálculo realizado com sucesso","headers":{"x-warning-dados-simulados":{"description":"Indica que os dados são simulados. Valores possíveis: 1 (alíquotas da CBS e do IBS ainda não definidas em lei), 2 (alíquotas da CBS e do IBS, e redutor em Compras Governamentais ainda não definidos em lei), 3 (alíquotas da CBS e do IBS, alíquotas e Classificações Tributárias do IS ainda não definidos em lei), 4 (alíquotas da CBS e do IBS, redutor em Compras Governamentais fictícios, alíquotas e Classificações Tributárias do IS ainda não definidos em lei), 5 (para o cClassTrib informado a alíquota ainda não foi definida em lei). ","style":"simple","schema":{"type":"integer","example":1}}},"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ROCDomain"}}}},"400":{"description":"Estrutura e/ou dados informados em formato não reconhecido","content":{"application/problem+json":{"schema":{"$ref":"#/components/schemas/ProblemDetail"}}}},"404":{"description":"Erro na URL da requisição","content":{"application/problem+json":{"schema":{"$ref":"#/components/schemas/ProblemDetail"}}}},"422":{"description":"Erro de validação","content":{"application/problem+json":{"schema":{"$ref":"#/components/schemas/ProblemDetail"}}}},"500":{"description":"Erro interno na API","content":{"application/problem+json":{"schema":{"$ref":"#/components/schemas/ProblemDetail"}}}}}}},"/calculadora/pedagio":{"post":{"tags":["Pedágio - VERSÃO BETA"],"summary":"Cálculo do tributo","description":"Calculo do pedágio","operationId":"calcularTributo","requestBody":{"description":"Dados para cálculo do pedágio","content":{"application/json":{"schema":{"$ref":"#/components/schemas/PedagioInput"}}},"required":true},"responses":{"200":{"description":"Cálculo realizado com sucesso","headers":{"x-warning-dados-simulados":{"description":"Indica que os dados são simulados. Valores possíveis: 1 (alíquotas da CBS e do IBS ainda não definidas em lei).","style":"simple","schema":{"type":"integer","example":1}}},"content":{"application/json":{"schema":{"$ref":"#/components/schemas/PedagioOutput"}}}},"400":{"description":"Estrutura e/ou dados informados em formato não reconhecido","content":{"application/problem+json":{"schema":{"$ref":"#/components/schemas/ProblemDetail"}}}},"404":{"description":"Erro na URL da requisição","content":{"application/problem+json":{"schema":{"$ref":"#/components/schemas/ProblemDetail"}}}},"422":{"description":"Erro de validação","content":{"application/problem+json":{"schema":{"$ref":"#/components/schemas/ProblemDetail"}}}},"500":{"description":"Erro interno na API","content":{"application/problem+json":{"schema":{"$ref":"#/components/schemas/ProblemDetail"}}}}}}},"/calculadora/observabilidade/regime-geral":{"post":{"tags":["Observabilidade - Calculadora"],"summary":"Cálculo com observabilidade","description":"Processa todos os itens acumulando erros individuais. Retorna resultado parcial com estado de cada item.","operationId":"calcularTributosObservabilidade","requestBody":{"description":"Dados de uma operação de consumo","content":{"application/json":{"schema":{"$ref":"#/components/schemas/OperacaoInput"}}},"required":true},"responses":{"200":{"description":"Processamento realizado (itens podem ter erros individuais)","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ObservabilidadeROCDomain"}}}},"400":{"description":"Estrutura e/ou dados informados em formato não reconhecido","content":{"application/problem+json":{"schema":{"$ref":"#/components/schemas/ProblemDetail"}}}},"422":{"description":"Erro de validação global (UF, Município, data do fato gerador)","content":{"application/problem+json":{"schema":{"$ref":"#/components/schemas/ProblemDetail"}}}},"500":{"description":"Erro interno na API","content":{"application/problem+json":{"schema":{"$ref":"#/components/schemas/ProblemDetail"}}}}}}},"/calculadora/nfse/indicador-operacao/validate":{"post":{"tags":["NFS-e - VERSÃO BETA"],"summary":"Validação de Indicador de Operação","description":"Valida se o cIndOp é compatível com cClassTrib, NBS e cTribNac (opcional)","operationId":"validarIndicadorOperacao","requestBody":{"description":"Dados para validação: cIndOp, cClassTrib, NBS e cTribNac (opcional)","content":{"application/json":{"schema":{"$ref":"#/components/schemas/NfseValidacaoIndicadorOperacaoInput"}}},"required":true},"responses":{"200":{"description":"Validação realizada com sucesso","content":{"application/json":{"schema":{"$ref":"#/components/schemas/NfseValidacaoIndicadorOperacaoOutput"}}}},"400":{"description":"Requisição com problema","content":{"application/problem+json":{"schema":{"$ref":"#/components/schemas/ProblemDetail"}}}},"404":{"description":"Erro na URL da requisição","content":{"application/problem+json":{"schema":{"$ref":"#/components/schemas/ProblemDetail"}}}},"500":{"description":"Erro interno na API","content":{"application/problem+json":{"schema":{"$ref":"#/components/schemas/ProblemDetail"}}}}}}},"/calculadora/nfse/base-calculo":{"post":{"tags":["NFS-e - VERSÃO BETA"],"summary":"Base de Cálculo NFS-e","description":"Afere a Base de Cálculo de uma NFS-e no período de transição. ATENÇÃO: Os campos PIS e COFINS não podem ser informados a partir de 2027. O campo ISS não pode ser informado a partir de 2033.","operationId":"calcularBaseCalculo","requestBody":{"description":"Dados da base de cálculo da NFS-e","content":{"application/json":{"schema":{"$ref":"#/components/schemas/NfseBaseCalculoInput"}}},"required":true},"responses":{"200":{"description":"Cálculo realizado com sucesso","content":{"application/json":{"schema":{"$ref":"#/components/schemas/NfseBaseCalculoOutput"}}}},"400":{"description":"Estrutura e/ou dados informados em formato não reconhecido ou campos incompatíveis com o ano do fato gerador informado (PIS e COFINS a partir de 2027; ISS a partir de 2033)","content":{"application/problem+json":{"schema":{"$ref":"#/components/schemas/ProblemDetail"}}}},"404":{"description":"Erro na URL da requisição","content":{"application/problem+json":{"schema":{"$ref":"#/components/schemas/ProblemDetail"}}}},"422":{"description":"Erro de validação","content":{"application/problem+json":{"schema":{"$ref":"#/components/schemas/ProblemDetail"}}}},"500":{"description":"Erro interno na API","content":{"application/problem+json":{"schema":{"$ref":"#/components/schemas/ProblemDetail"}}}}}}},"/calculadora/base-calculo/is-mercadorias":{"post":{"tags":["Base de Cálculo - VERSÃO BETA"],"summary":"Imposto Seletivo","description":"Afere a Base de Cálculo do Imposto Seletivo de uma operação de consumo. ATENÇÃO: Os campos ICMS e ISS não podem ser informados a partir de 2033.","operationId":"calcularISMercadorias","requestBody":{"description":"Dados da base de cálculo do Imposto Seletivo","content":{"application/json":{"schema":{"$ref":"#/components/schemas/BaseCalculoISMercadoriasInput"}}},"required":true},"responses":{"200":{"description":"Cálculo realizado com sucesso","content":{"application/json":{"schema":{"$ref":"#/components/schemas/BaseCalculoISMercadoriasModel"}}}},"400":{"description":"Estrutura e/ou dados informados em formato não reconhecido ou campos incompatíveis com o ano do fato gerador informado (ICMS e ISS a partir de 2033)","content":{"application/problem+json":{"schema":{"$ref":"#/components/schemas/ProblemDetail"}}}},"404":{"description":"Erro na URL da requisição","content":{"application/problem+json":{"schema":{"$ref":"#/components/schemas/ProblemDetail"}}}},"422":{"description":"Erro de validação","content":{"application/problem+json":{"schema":{"$ref":"#/components/schemas/ProblemDetail"}}}},"500":{"description":"Erro interno na API","content":{"application/problem+json":{"schema":{"$ref":"#/components/schemas/ProblemDetail"}}}}}}},"/calculadora/base-calculo/cbs-ibs-mercadorias":{"post":{"tags":["Base de Cálculo - VERSÃO BETA"],"summary":"CIBS","description":"Afere a Base de Cálculo da CBS/IBS de uma operação de consumo. ATENÇÃO: Os campos PIS, COFINS, PIS Importação e COFINS Importação não podem ser informados a partir de 2027. Os campos ICMS e ISS não podem ser informados a partir de 2033.","operationId":"calcularCibs","requestBody":{"description":"Dados da base de cálculo do CIBS","content":{"application/json":{"schema":{"$ref":"#/components/schemas/BaseCalculoCibsInput"}}},"required":true},"responses":{"200":{"description":"Cálculo realizado com sucesso","content":{"application/json":{"schema":{"$ref":"#/components/schemas/BaseCalculoISMercadoriasModel"}}}},"400":{"description":"Estrutura e/ou dados informados em formato não reconhecido ou campos incompatíveis com o ano do fato gerador informado (PIS, COFINS, PIS Importação e COFINS a partir de 2027; ICMS e ISS a partir de 2033)","content":{"application/problem+json":{"schema":{"$ref":"#/components/schemas/ProblemDetail"}}}},"404":{"description":"Erro na URL da requisição","content":{"application/problem+json":{"schema":{"$ref":"#/components/schemas/ProblemDetail"}}}},"422":{"description":"Erro de validação","content":{"application/problem+json":{"schema":{"$ref":"#/components/schemas/ProblemDetail"}}}},"500":{"description":"Erro interno na API","content":{"application/problem+json":{"schema":{"$ref":"#/components/schemas/ProblemDetail"}}}}}}},"/calculadora/observabilidade/erros":{"get":{"tags":["Observabilidade - Calculadora"],"summary":"Consultar descrição de erro","description":"Retorna título e descrição em PT-BR para o código de erro informado (REG, CAL ou VAL).","operationId":"buscarErro","parameters":[{"name":"codigo","in":"query","description":"Código do erro (ex: REG-020, CAL-001, VAL-001)","required":true,"schema":{"type":"string"}}],"responses":{"200":{"description":"Descrição do erro encontrada","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErroDescricao"}}}},"404":{"description":"Código de erro não encontrado","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErroDescricao"}}}}}}},"/calculadora/nfse/situacoes-classificacoes-tributarias":{"get":{"tags":["NFS-e - VERSÃO BETA"],"summary":"Consultar Classificações e Situações Tributárias por NBS","description":"Retorna todas as combinações de Classificações Tributárias e Situações Tributárias associadas a um código NBS em uma data específica","operationId":"consultarSituacoesClassificacoesPorNbs","parameters":[{"name":"nbs","in":"query","description":"Código NBS sem formatação","required":true,"schema":{"type":"string","pattern":"^\\d{9}$"},"example":101011100},{"name":"data","in":"query","description":"Data no padrão ISO 8601 (yyyy-MM-dd)","required":true,"schema":{"type":"string","format":"date"},"example":"2026-06-01"}],"responses":{"200":{"description":"Consulta realizada com sucesso","content":{"application/json":{"schema":{"$ref":"#/components/schemas/NfseSituacaoClassificacaoOutput"},"examples":{"Classificações e Situações Example":{"description":"Classificações e Situações Example","value":[{"codigoClassificacaoTributaria":"200045","descricaoClassificacaoTributaria":"Operações relacionadas a projetos de reabilitação urbana de zonas históricas e de áreas críticas de recuperação e reconversão urbanística","codigoSituacaoTributaria":"200","descricaoSituacaoTributaria":"Alíquota reduzida"},{"codigoClassificacaoTributaria":"200046","descricaoClassificacaoTributaria":"Operações com bens imóveis","codigoSituacaoTributaria":"200","descricaoSituacaoTributaria":"Alíquota reduzida"}]}}}}},"400":{"description":"Parâmetros inválidos","content":{"application/problem+json":{"schema":{"$ref":"#/components/schemas/ProblemDetail"},"examples":{"Bad Request Example":{"description":"Bad Request Example","value":{"type":"about:blank","title":"Bad Request","status":400,"detail":"NBS deve conter exatamente 9 dígitos numéricos","instance":"/api/calculadora/nfse/classificacoes-situacoes-tributarias"}}}}}},"500":{"description":"Erro interno na API","content":{"application/problem+json":{"schema":{"$ref":"#/components/schemas/ProblemDetail"}}}}}}},"/calculadora/nfse/local-operacao":{"get":{"tags":["NFS-e - VERSÃO BETA"],"summary":"Local da Operação","description":"Consulta o local da operação baseado no código do Indicador de Operação (cIndOp) e data de ocorrência do fato gerador","operationId":"consultarLocalOperacao","parameters":[{"name":"cIndOp","in":"query","description":"Código do Indicador de Operação (6 dígitos)","required":true,"schema":{"type":"string","minLength":1,"pattern":"^\\d{6}$"},"example":100301},{"name":"dataOcorrenciaFatoGerador","in":"query","description":"Data de ocorrência do fato gerador no padrão ISO 8601 (yyyy-MM-dd)","required":true,"schema":{"type":"string","format":"date"},"example":"2026-01-01"}],"responses":{"200":{"description":"Consulta realizada com sucesso","content":{"application/json":{"schema":{"$ref":"#/components/schemas/NfseLocalOperacaoOutput"},"examples":{"Local Operação Example":{"description":"Local Operação Example","value":{"cIndOp":"100301","dataOcorrenciaFatoGerador":"2026-01-01","localOperacao":"Domicílio principal do adquirente"}}}}}},"400":{"description":"Requisição com problema","content":{"application/problem+json":{"schema":{"$ref":"#/components/schemas/ProblemDetail"},"examples":{"Bad Request Example":{"description":"Bad Request Example","value":{"type":"about:blank","title":"Bad Request","status":400,"detail":"Required parameter 'cIndOp' is not present.","instance":"/api/calculadora/nfse/local-operacao"}}}}}},"404":{"description":"Erro na URL da requisição","content":{"application/problem+json":{"schema":{"$ref":"#/components/schemas/ProblemDetail"},"examples":{"Not Found Example":{"description":"Not Found Example","value":{"type":"about:blank","title":"Not Found","status":404,"detail":"No static resource calculadora/nfse/local-operacao.","instance":"/api/calculadora/nfse/local-operacao-invalido"}}}}}},"500":{"description":"Erro interno na API","content":{"application/problem+json":{"schema":{"$ref":"#/components/schemas/ProblemDetail"},"examples":{"Internal Server Error Example":{"description":"Internal Server Error Example","value":{"type":"http://url-ambiente/errors/erro-interno","title":"Erro interno na API","status":500,"detail":"Falha ao processar a requisição.","instance":"/api/calculadora/nfse/local-operacao"}}}}}}}}},"/calculadora/nfse/indicador-operacao":{"get":{"tags":["NFS-e - VERSÃO BETA"],"summary":"Indicador de Operação","description":"Consulta os indicadores de operação baseado na data de ocorrência do fato gerador","operationId":"consultarIndicadoresOperacao","parameters":[{"name":"dataOcorrenciaFatoGerador","in":"query","description":"Data de ocorrência do fato gerador no padrão ISO 8601 (yyyy-MM-dd)","required":true,"schema":{"type":"string","format":"date"},"example":"2026-01-01"},{"name":"nbs","in":"query","description":"Código NBS (9 dígitos numéricos) - quando informado, retorna campos adicionais prestacaoServicoOnerosa e adquirenteExterior","required":false,"schema":{"type":"string","pattern":"^\\d{9}$"},"example":123456789}],"responses":{"200":{"description":"Consulta realizada com sucesso","content":{"application/json":{"schema":{"$ref":"#/components/schemas/NfseLocalOperacaoOutput"},"examples":{"Indicador Operação Example":{"description":"Indicador Operação Example","value":[{"cIndOp":"020101","tipoOperacao":"Operação com bem imóvel, bem imaterial, inclusive direito, relacionada a bem imóvel","codigoLocalFornecimento":14},{"cIndOp":"020201","tipoOperacao":"Serviço prestado fisicamente sobre bem imóvel","codigoLocalFornecimento":14},{"cIndOp":"020301","tipoOperacao":"Serviço de administração e intermediação de bem imóvel","codigoLocalFornecimento":14}]},"Indicador Operação com NBS Example":{"description":"Indicador Operação com NBS Example","value":[{"cIndOp":"020101","tipoOperacao":"Operação com bem imóvel, bem imaterial, inclusive direito, relacionada a bem imóvel","codigoLocalFornecimento":14,"prestacaoServicoOnerosa":true,"adquirenteExterior":false},{"cIndOp":"020201","tipoOperacao":"Serviço prestado fisicamente sobre bem imóvel","codigoLocalFornecimento":14,"prestacaoServicoOnerosa":true,"adquirenteExterior":false},{"cIndOp":"020301","tipoOperacao":"Serviço de administração e intermediação de bem imóvel","codigoLocalFornecimento":14,"prestacaoServicoOnerosa":true,"adquirenteExterior":false}]}}}}},"400":{"description":"Requisição com problema","content":{"application/problem+json":{"schema":{"$ref":"#/components/schemas/ProblemDetail"},"examples":{"Bad Request Example":{"description":"Bad Request Example","value":{"type":"about:blank","title":"Bad Request","status":400,"detail":"Required parameter 'dataOcorrenciaFatoGerador' is not present.","instance":"/api/calculadora/nfse/indicador-operacao"}}}}}},"500":{"description":"Erro interno na API","content":{"application/problem+json":{"schema":{"$ref":"#/components/schemas/ProblemDetail"},"examples":{"Internal Server Error Example":{"description":"Internal Server Error Example","value":{"type":"http://url-ambiente/errors/erro-interno","title":"Erro interno na API","status":500,"detail":"Falha ao processar a requisição.","instance":"/api/calculadora/nfse/indicador-operacao"}}}}}}}}},"/calculadora/dados-abertos/versao":{"get":{"tags":["Dados Abertos - VERSÃO BETA"],"summary":"Versão do Aplicativo e do Banco de Dados","description":"Obtém a versão do aplicativo e do banco de dados","operationId":"consultarVersao","responses":{"200":{"description":"Consulta realizada com sucesso","content":{"application/json":{"schema":{"$ref":"#/components/schemas/VersaoOutput"},"examples":{"Versão Example":{"description":"Versão Example","value":{"versaoApp":"0.0.0-SNAPSHOT","versaoDb":"v0011","descricaoVersaoDb":"Nova carga de classificação tributária e novos campos em CLASSIFICACAO_TRIBUTARIA e SITUACAO_TRIBUTARIA.","dataVersaoDb":"2025-10-16","ambiente":"online"}}}}}},"500":{"description":"Erro interno na API","content":{"application/problem+json":{"schema":{"$ref":"#/components/schemas/ProblemDetail"},"examples":{"Internal Server Error Example":{"description":"Internal Server Error Example","value":{"type":"http://url-ambiente/errors/erro-interno","title":"Erro interno na API","status":500,"detail":"Falha ao processar a requisição.","instance":"/api/calculadora/dados-abertos/versao"}}}}}}}}},"/calculadora/dados-abertos/ufs":{"get":{"tags":["Dados Abertos - VERSÃO BETA"],"summary":"Unidade Federativa","description":"Obtém a lista das unidades federativas cadastradas","operationId":"consultarUfs","responses":{"200":{"description":"Consulta realizada com sucesso","content":{"application/json":{"schema":{"$ref":"#/components/schemas/UfDadosAbertosOutput"},"examples":{"UFs Example":{"description":"UFs Example","value":[{"sigla":"RO","nome":"RONDÔNIA","codigo":11},{"sigla":"AC","nome":"ACRE","codigo":12}]}}}}},"400":{"description":"Requisição com problema","content":{"application/problem+json":{"schema":{"$ref":"#/components/schemas/ProblemDetail"},"examples":{"Bad Request Example":{"description":"Bad Request Example","value":{"type":"about:blank","title":"Bad Request","status":400,"detail":"Parâmetro inválido ou ausente.","instance":"/api/calculadora/dados-abertos/ufs"}}}}}},"404":{"description":"Erro na URL da requisição","content":{"application/problem+json":{"schema":{"$ref":"#/components/schemas/ProblemDetail"},"examples":{"Not Found Example":{"description":"Not Found Example","value":{"type":"about:blank","title":"Not Found","status":404,"detail":"No static resource calculadora/dados-abertos/ufs/1.","instance":"/api/calculadora/dados-abertos/ufs/1"}}}}}},"500":{"description":"Erro interno na API","content":{"application/problem+json":{"schema":{"$ref":"#/components/schemas/ProblemDetail"},"examples":{"Internal Server Error Example":{"description":"Internal Server Error Example","value":{"type":"http://url-ambiente/errors/erro-interno","title":"Erro interno na API","status":500,"detail":"Falha ao processar a requisição.","instance":"/api/calculadora/dados-abertos/ufs"}}}}}}}}},"/calculadora/dados-abertos/ufs/municipios":{"get":{"tags":["Dados Abertos - VERSÃO BETA"],"summary":"Município","description":"Obtém a lista dos municípios cadastrados com base na sigla de uma unidade federativa","operationId":"consultarMunicipiosPorSiglaUf","parameters":[{"name":"siglaUf","in":"query","description":"Sigla da unidade federativa","required":true,"schema":{"type":"string"},"example":"RS"}],"responses":{"200":{"description":"Consulta realizada com sucesso","content":{"application/json":{"schema":{"$ref":"#/components/schemas/MunicipioDadosAbertosOutput"},"examples":{"Municípios Example":{"description":"Municípios Example","value":[{"codigo":4314902,"nome":"Porto Alegre"},{"codigo":4305108,"nome":"Caxias do Sul"}]}}}}},"500":{"description":"Erro interno na API","content":{"application/problem+json":{"schema":{"$ref":"#/components/schemas/ProblemDetail"},"examples":{"Internal Server Error Example":{"description":"Internal Server Error Example","value":{"type":"http://url-ambiente/errors/erro-interno","title":"Erro interno na API","status":500,"detail":"Falha ao processar a requisição.","instance":"/api/calculadora/dados-abertos/municipios/RS"}}}}}}}}},"/calculadora/dados-abertos/transferencias-ibs":{"get":{"tags":["Dados Abertos - VERSÃO BETA"],"summary":"Transferência IBS para Entes Governamentais","description":"Obtém a lista de todos os percentuais de transferência IBS cadastrados","operationId":"consultarTransferenciasIBS","responses":{"200":{"description":"Consulta realizada com sucesso","content":{"application/json":{"schema":{"$ref":"#/components/schemas/TransferenciaIBSDadosAbertosOutput"},"examples":{"Transferências IBS Example":{"description":"Transferências IBS Example","value":[{"valor":0,"inicioVigencia":"2026-01-01","fimVigencia":"2026-12-31"},{"valor":100,"inicioVigencia":"2027-01-01"}]}}}}},"500":{"description":"Erro interno na API","content":{"application/problem+json":{"schema":{"$ref":"#/components/schemas/ProblemDetail"},"examples":{"Internal Server Error Example":{"description":"Internal Server Error Example","value":{"type":"http://url-ambiente/errors/erro-interno","title":"Erro interno na API","status":500,"detail":"Falha ao processar a requisição.","instance":"/api/calculadora/dados-abertos/transferencias-ibs"}}}}}}}}},"/calculadora/dados-abertos/transferencias-cbs":{"get":{"tags":["Dados Abertos - VERSÃO BETA"],"summary":"Transferência CBS para Entes Governamentais","description":"Obtém a lista de todos os percentuais de transferência CBS cadastrados","operationId":"consultarTransferenciasCBS","responses":{"200":{"description":"Consulta realizada com sucesso","content":{"application/json":{"schema":{"$ref":"#/components/schemas/TransferenciaCBSDadosAbertosOutput"},"examples":{"Transferências CBS Example":{"description":"Transferências CBS Example","value":"[\n {\n \"valor\": 0.15,\n \"inicioVigencia\": \"2026-01-01\",\n },\n {\n \"valor\": 0.10,\n \"inicioVigencia\": \"2025-01-01\",\n \"fimVigencia\": \"2025-12-31\"\n }\n]\n"}}}}},"500":{"description":"Erro interno na API","content":{"application/problem+json":{"schema":{"$ref":"#/components/schemas/ProblemDetail"},"examples":{"Internal Server Error Example":{"description":"Internal Server Error Example","value":{"type":"http://url-ambiente/errors/erro-interno","title":"Erro interno na API","status":500,"detail":"Falha ao processar a requisição.","instance":"/api/calculadora/dados-abertos/transferencias-cbs"}}}}}}}}},"/calculadora/dados-abertos/situacoes-tributarias/imposto-seletivo":{"get":{"tags":["Dados Abertos - VERSÃO BETA"],"summary":"Situação Tributária (CST)","description":"Obtém a lista das situações tributárias cadastradas para Imposto Seletivo","operationId":"consultarSituacoesTributariasImpostoSeletivo","parameters":[{"name":"data","in":"query","description":"Data no padrão ISO 8601 (yyyy-MM-dd)","required":true,"schema":{"type":"string","format":"date"},"example":"2027-01-01"}],"responses":{"200":{"description":"Consulta realizada com sucesso","content":{"application/json":{"schema":{"$ref":"#/components/schemas/SituacaoTributariaDadosAbertosOutput"},"examples":{"Situações Tributárias Example":{"description":"Situações Tributárias Example","value":[{"id":19,"codigo":"000","descricao":"Tributado com Imposto Seletivo"},{"id":20,"codigo":"100","descricao":"Imunidade"}]}}}}},"400":{"description":"Requisição com problema","content":{"application/problem+json":{"schema":{"$ref":"#/components/schemas/ProblemDetail"},"examples":{"Bad Request Example":{"description":"Bad Request Example","value":{"type":"about:blank","title":"Bad Request","status":400,"detail":"Required parameter 'data' is not present.","instance":"/api/calculadora/dados-abertos/situacoes-tributarias/imposto-seletivo"}}}}}},"500":{"description":"Erro interno na API","content":{"application/problem+json":{"schema":{"$ref":"#/components/schemas/ProblemDetail"},"examples":{"Internal Server Error Example":{"description":"Internal Server Error Example","value":{"type":"http://url-ambiente/errors/erro-interno","title":"Erro interno na API","status":500,"detail":"Falha ao processar a requisição.","instance":"/api/calculadora/dados-abertos/situacoes-tributarias/imposto-seletivo"}}}}}}}}},"/calculadora/dados-abertos/situacoes-tributarias/cbs-ibs":{"get":{"tags":["Dados Abertos - VERSÃO BETA"],"summary":"Situação Tributária (CST)","description":"Obtém a lista das situações tributárias cadastradas vigentes em uma determinada data para CBS/IBS","operationId":"consultarSituacoesTributariasCbsIbs","parameters":[{"name":"data","in":"query","description":"Data no padrão ISO 8601 (yyyy-MM-dd)","required":true,"schema":{"type":"string","format":"date"},"example":"2026-01-01"}],"responses":{"200":{"description":"Consulta realizada com sucesso","content":{"application/json":{"schema":{"$ref":"#/components/schemas/SituacaoTributariaDadosAbertosOutput"},"examples":{"Situações Tributárias Example":{"description":"Situações Tributárias Example","value":[{"id":1,"codigo":"000","descricao":"Tributação integral"},{"id":2,"codigo":"010","descricao":"Tributação com alíquotas uniformes"},{"id":3,"codigo":"011","descricao":"Tributação com alíquotas uniformes reduzidas"},{"id":4,"codigo":"200","descricao":"Alíquota reduzida"}]}}}}},"400":{"description":"Requisição com problema","content":{"application/problem+json":{"schema":{"$ref":"#/components/schemas/ProblemDetail"},"examples":{"Bad Request Example":{"description":"Bad Request Example","value":{"type":"about:blank","title":"Bad Request","status":400,"detail":"Required parameter 'data' is not present.","instance":"/api/calculadora/dados-abertos/classificacoes-tributarias/cbs-ibs"}}}}}},"500":{"description":"Erro interno na API","content":{"application/problem+json":{"schema":{"$ref":"#/components/schemas/ProblemDetail"},"examples":{"Internal Server Error Example":{"description":"Internal Server Error Example","value":{"type":"http://url-ambiente/errors/erro-interno","title":"Erro interno na API","status":500,"detail":"Falha ao processar a requisição.","instance":"/api/calculadora/dados-abertos/situacoes-tributarias/cbs-ibs"}}}}}}}}},"/calculadora/dados-abertos/redutores-compra-governamental":{"get":{"tags":["Dados Abertos - VERSÃO BETA"],"summary":"Redutor de Compra Governamental","description":"Obtém a lista de todos os redutores de compra governamental cadastrados","operationId":"consultarRedutoresCompraGovernamental","responses":{"200":{"description":"Consulta realizada com sucesso","content":{"application/json":{"schema":{"$ref":"#/components/schemas/RedutorCompraGovernamentalDadosAbertosOutput"},"examples":{"Redutores Example":{"description":"Redutores Example","value":[{"valor":0,"inicioVigencia":"2026-01-01","fimVigencia":"2026-12-31"},{"valor":50,"inicioVigencia":"2027-01-01"}]}}}}},"500":{"description":"Erro interno na API","content":{"application/problem+json":{"schema":{"$ref":"#/components/schemas/ProblemDetail"},"examples":{"Internal Server Error Example":{"description":"Internal Server Error Example","value":{"type":"http://url-ambiente/errors/erro-interno","title":"Erro interno na API","status":500,"detail":"Falha ao processar a requisição.","instance":"/api/calculadora/dados-abertos/redutores-compra-governamental"}}}}}}}}},"/calculadora/dados-abertos/ncm":{"get":{"tags":["Dados Abertos - VERSÃO BETA"],"summary":"Nomenclatura Comum do Mercosul (NCM)","description":"Obtém informações sobre a NCM em relação ao Imposto Seletivo","operationId":"consultarNcm","parameters":[{"name":"ncm","in":"query","description":"Código NCM sem formatação","required":true,"schema":{"type":"string"},"example":24021000},{"name":"data","in":"query","description":"Data no padrão ISO 8601 (yyyy-MM-dd)","required":true,"schema":{"type":"string","format":"date"},"example":"2027-01-01"}],"responses":{"200":{"description":"Consulta realizada com sucesso","content":{"application/json":{"schema":{"$ref":"#/components/schemas/NcmDadosAbertosOutput"},"examples":{"NCM Example":{"description":"NCM Example","value":{"tributadoPeloImpostoSeletivo":true,"aliquotaAdValorem":13,"aliquotaAdRem":21.3,"capitulo":"Tabaco e seus sucedâneos manufaturados; produtos, mesmo com nicotina, destinados à inalação sem combustão; outros produtos que contenham nicotina destinados à absorção da nicotina pelo corpo humano.","posicao":"Charutos, cigarrilhas e cigarros, de tabaco ou dos seus sucedâneos.","subitem":"Charutos e cigarrilhas, que contenham tabaco","unidade":"VN"}}}}}},"400":{"description":"Requisição com problema","content":{"application/problem+json":{"schema":{"$ref":"#/components/schemas/ProblemDetail"},"examples":{"Bad Request Example":{"description":"Bad Request Example","value":{"type":"about:blank","title":"Bad Request","status":400,"detail":"Required parameter 'data' is not present.","instance":"/api/calculadora/dados-abertos/ncm/24021000"}}}}}},"500":{"description":"Erro interno na API","content":{"application/problem+json":{"schema":{"$ref":"#/components/schemas/ProblemDetail"},"examples":{"Internal Server Error Example":{"description":"Internal Server Error Example","value":{"type":"http://url-ambiente/errors/erro-interno","title":"Erro interno na API","status":500,"detail":"Falha ao processar a requisição.","instance":"/api/calculadora/dados-abertos/ncm/24021000"}}}}}}}}},"/calculadora/dados-abertos/nbs":{"get":{"tags":["Dados Abertos - VERSÃO BETA"],"summary":"Nomenclatura Brasileira de Serviços (NBS)","description":"Obtém informações sobre a NBS em relação ao Imposto Seletivo","operationId":"consultarNbs","parameters":[{"name":"nbs","in":"query","description":"Código NBS sem formatação","required":true,"schema":{"type":"string"},"example":114052200},{"name":"data","in":"query","description":"Data no padrão ISO 8601 (yyyy-MM-dd)","required":true,"schema":{"type":"string","format":"date"},"example":"2027-01-01"}],"responses":{"200":{"description":"Consulta realizada com sucesso","content":{"application/json":{"schema":{"$ref":"#/components/schemas/NbsDadosAbertosOutput"},"examples":{"NBS Example":{"description":"NBS Example","value":{"tributadoPeloImpostoSeletivo":false,"capitulo":"Serviços veterinários","posicao":"Serviços veterinários para animais de corte","item":"Serviços de atendimento, assistência ou tratamento para animais de corte"}}}}}},"400":{"description":"Requisição com problema","content":{"application/problem+json":{"schema":{"$ref":"#/components/schemas/ProblemDetail"},"examples":{"Bad Request Example":{"description":"Bad Request Example","value":{"type":"about:blank","title":"Bad Request","status":400,"detail":"Required parameter 'data' is not present.","instance":"/api/calculadora/dados-abertos/nbs/114052200"}}}}}},"500":{"description":"Erro interno na API","content":{"application/problem+json":{"schema":{"$ref":"#/components/schemas/ProblemDetail"},"examples":{"Internal Server Error Example":{"description":"Internal Server Error Example","value":{"type":"http://url-ambiente/errors/erro-interno","title":"Erro interno na API","status":500,"detail":"Falha ao processar a requisição.","instance":"/api/calculadora/dados-abertos/nbs/114052200"}}}}}}}}},"/calculadora/dados-abertos/nbs/lista":{"get":{"tags":["Dados Abertos - VERSÃO BETA"],"summary":"Lista de Nomenclatura Brasileira de Serviços (NBS)","description":"Obtém a lista de todas as NBS válidas em uma data, incluindo todos os níveis hierárquicos (capítulo, posição, subposições e itens)","operationId":"listarNbs","parameters":[{"name":"data","in":"query","description":"Data no padrão ISO 8601 (yyyy-MM-dd)","required":true,"schema":{"type":"string","format":"date"},"example":"2027-01-01"}],"responses":{"200":{"description":"Consulta realizada com sucesso","content":{"application/json":{"schema":{"$ref":"#/components/schemas/NbsListaDadosAbertosOutput"},"examples":{"Lista NBS Example":{"description":"Lista NBS Example","value":[{"codigo":"101","descricao":"Serviços de construção"},{"codigo":"10101","descricao":"Serviços de construção de edificações"},{"codigo":"101011","descricao":"Serviços de construção de edificações residenciais"},{"codigo":"101011100","descricao":"Serviços de construção de edificações residenciais de um e dois pavimentos"},{"codigo":"101011200","descricao":"Serviços de construção de edificações residenciais com mais de dois pavimentos"},{"codigo":"101012","descricao":"Serviços de construção de edificações não residenciais"},{"codigo":"101012100","descricao":"Serviços de construção de edificações industriais"},{"codigo":"101012200","descricao":"Serviços de construção de edificações comerciais"},{"codigo":"101012900","descricao":"Serviços de construção de edificações não residenciais não classificados em subposições anteriores"}]}}}}},"400":{"description":"Requisição com problema","content":{"application/problem+json":{"schema":{"$ref":"#/components/schemas/ProblemDetail"},"examples":{"Bad Request Example":{"description":"Bad Request Example","value":{"type":"about:blank","title":"Bad Request","status":400,"detail":"Required parameter 'data' is not present.","instance":"/api/calculadora/dados-abertos/nbs"}}}}}},"500":{"description":"Erro interno na API","content":{"application/problem+json":{"schema":{"$ref":"#/components/schemas/ProblemDetail"},"examples":{"Internal Server Error Example":{"description":"Internal Server Error Example","value":{"type":"http://url-ambiente/errors/erro-interno","title":"Erro interno na API","status":500,"detail":"Falha ao processar a requisição.","instance":"/api/calculadora/dados-abertos/nbs"}}}}}}}}},"/calculadora/dados-abertos/nbs-aplicaveis":{"get":{"tags":["Dados Abertos - VERSÃO BETA"],"summary":"Lista de NBS aplicáveis por Classificação Tributária","description":"Obtém a lista de NBS aplicáveis a um cClassTrib em uma determinada data. Se não houver NBS associados e a nomenclatura for aplicável a serviços (NBS ou 'NBS ou NCM'), retorna todos os NBS vigentes. Se não for aplicável a serviços (apenas NCM), retorna lista vazia.","operationId":"listarNbsAplicaveisPorClassificacao","parameters":[{"name":"cClassTrib","in":"query","description":"Código da Classificação Tributária (cClassTrib)","required":true,"schema":{"type":"string","pattern":"^\\d{6}$"},"example":"000001"},{"name":"data","in":"query","description":"Data no padrão ISO 8601 (yyyy-MM-dd)","required":true,"schema":{"type":"string","format":"date"},"example":"2027-01-01"}],"responses":{"200":{"description":"Consulta realizada com sucesso","content":{"application/json":{"schema":{"$ref":"#/components/schemas/NbsListaDadosAbertosOutput"},"examples":{"Lista NBS Aplicáveis Example":{"description":"Lista NBS Aplicáveis Example","value":[{"codigo":"114052200","descricao":"Serviços de atendimento, assistência ou tratamento para animais de corte"},{"codigo":"114052300","descricao":"Serviços de atendimento, assistência ou tratamento para animais de produção"}]},"Lista NBS Aplicáveis Vazia Example":{"description":"Lista NBS Aplicáveis Vazia Example","value":[]}}}}},"400":{"description":"Requisição com problema","content":{"application/problem+json":{"schema":{"$ref":"#/components/schemas/ProblemDetail"},"examples":{"Bad Request Example":{"description":"Bad Request Example","value":{"type":"about:blank","title":"Bad Request","status":400,"detail":"Required parameter 'data' is not present.","instance":"/api/calculadora/dados-abertos/nbs/aplicaveis-por-classificacao"}}}}}},"404":{"description":"Classificação tributária não encontrada","content":{"application/problem+json":{"schema":{"$ref":"#/components/schemas/ProblemDetail"},"examples":{"Not Found Example":{"description":"Not Found Example","value":{"type":"about:blank","title":"Not Found","status":404,"detail":"Classificação tributária não encontrada para código 999999 e data 2026-01-01 (CBS/IBS)","instance":"/api/calculadora/dados-abertos/nbs/aplicaveis-por-classificacao"}}}}}},"500":{"description":"Erro interno na API","content":{"application/problem+json":{"schema":{"$ref":"#/components/schemas/ProblemDetail"},"examples":{"Internal Server Error Example":{"description":"Internal Server Error Example","value":{"type":"http://url-ambiente/errors/erro-interno","title":"Erro interno na API","status":500,"detail":"Falha ao processar a requisição.","instance":"/api/calculadora/dados-abertos/nbs/aplicaveis-por-classificacao"}}}}}}}}},"/calculadora/dados-abertos/fundamentacoes-legais":{"get":{"tags":["Dados Abertos - VERSÃO BETA"],"summary":"Fundamentação Legal","description":"Obtém informações sobre as fundamentações legais","operationId":"consultarFundamentacoesLegais","parameters":[{"name":"data","in":"query","description":"Data no padrão ISO 8601 (yyyy-MM-dd)","required":true,"schema":{"type":"string","format":"date"},"example":"2027-01-01"}],"responses":{"200":{"description":"Consulta realizada com sucesso","content":{"application/json":{"schema":{"$ref":"#/components/schemas/FundamentacaoClassificacaoDadosAbertosOutput"},"examples":{"Fundamentações Legais Example":{"description":"Fundamentações Legais Example","value":[{"codigoClassificacaoTributaria":"000001","descricaoClassificacaoTributaria":"Situações tributadas integralmente pelo IBS e CBS.","codigoSituacaoTributaria":"000","descricaoSituacaoTributaria":"Tributação integral","conjuntoTributo":"CBS e IBS","texto":"","textoCurto":"","referenciaNormativa":"LIVRO I \n\nDO IMPOSTO SOBRE BENS E SERVIÇOS (IBS) E DA CONTRIBUIÇÃO SOCIAL SOBRE BENS E SERVIÇOS (CBS) \n\nTÍTULO I \n\nDAS NORMAS GERAIS DO IBS E DA CBS \n\nCAPÍTULO I \n\nDISPOSIÇÕES PRELIMINARES"},{"codigoClassificacaoTributaria":"000002","descricaoClassificacaoTributaria":"Exploração de via","codigoSituacaoTributaria":"000","descricaoSituacaoTributaria":"Tributação integral","conjuntoTributo":"CBS e IBS","texto":"Art. 11. Considera-se local da operação com:\nVIII - serviço de exploração de via, mediante cobrança de valor a qualquer título, incluindo tarifas, pedágios e quaisquer outras formas de cobrança, o território de cada Município e Estado, ou do Distrito Federal, proporcionalmente à correspondente extensão da via explorada;","textoCurto":"Art. 11, VIII","referenciaNormativa":"LIVRO I \n\nDO IMPOSTO SOBRE BENS E SERVIÇOS (IBS) E DA CONTRIBUIÇÃO SOCIAL SOBRE BENS E SERVIÇOS (CBS) \n\nTÍTULO I \n\nDAS NORMAS GERAIS DO IBS E DA CBS \n\nCAPÍTULO II\n\nDO IBS E DA CBS SOBRE OPERAÇÕES COM BENS E SERVIÇOS\n\nSeção IV\n\nDo Local da Operação"}]}}}}},"400":{"description":"Requisição com problema","content":{"application/problem+json":{"schema":{"$ref":"#/components/schemas/ProblemDetail"},"examples":{"Bad Request Example":{"description":"Bad Request Example","value":{"type":"about:blank","title":"Bad Request","status":400,"detail":"Required parameter 'data' is not present.","instance":"/api/calculadora/dados-abertos/fundamentacoes-legais"}}}}}},"500":{"description":"Erro interno na API","content":{"application/problem+json":{"schema":{"$ref":"#/components/schemas/ProblemDetail"},"examples":{"Internal Server Error Example":{"description":"Internal Server Error Example","value":{"type":"http://url-ambiente/errors/erro-interno","title":"Erro interno na API","status":500,"detail":"Falha ao processar a requisição.","instance":"/api/calculadora/dados-abertos/fundamentacoes-legais"}}}}}}}}},"/calculadora/dados-abertos/classificacoes-tributarias/{idSituacaoTributaria}":{"get":{"tags":["Dados Abertos - VERSÃO BETA"],"summary":"Classificação Tributária (cClassTrib) - DEPRECATED","description":"Obtém a lista das classificações tributárias (cClassTrib) cadastradas com base no ID da situação tributária. DEPRECATED: Use os novos endpoints /classificacoes-tributarias/imposto-seletivo/{cst} ou /classificacoes-tributarias/cbs-ibs/{cst} que trabalham com CST ao invés de IDs.","operationId":"consultarClassificacoesTributariasPorIdSituacaoTributaria","parameters":[{"name":"idSituacaoTributaria","in":"path","description":"Id da Situação Tributária (CST)","required":true,"schema":{"type":"integer","format":"int64"},"example":1},{"name":"data","in":"query","description":"Data no padrão ISO 8601 (yyyy-MM-dd)","required":true,"schema":{"type":"string","format":"date"},"example":"2026-01-01"}],"responses":{"200":{"description":"Consulta realizada com sucesso","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ClassificacaoTributariaDadosAbertosOutput"},"examples":{"Classificações Tributárias Example":{"description":"Classificações Tributárias Example","value":[{"codigo":"000003","descricao":"Regime automotivo - projetos incentivados (art. 311)","tipoAliquota":"Padrão","nomenclatura":"NCM","descricaoTratamentoTributario":"Tributação integral","incompativelComSuspensao":false,"exigeGrupoDesoneracao":false,"possuiPercentualReducao":true,"indicaApropriacaoCreditoAdquirenteCbs":false,"indicaApropriacaoCreditoAdquirenteIbs":false,"indicaCreditoPresumidoFornecedor":false,"indicaCreditoPresumidoAdquirente":false,"tiposDfeClassificacao":[{"tipo":55,"sigla":"NFe","descricao":"Nota Fiscal Eletrônica"}],"dataAtualizacao":"2025-12-15"},{"codigo":"000004","descricao":"Regime automotivo - projetos incentivados (art. 312)","tipoAliquota":"Padrão","nomenclatura":"NCM","descricaoTratamentoTributario":"Tributação integral","incompativelComSuspensao":false,"exigeGrupoDesoneracao":false,"possuiPercentualReducao":true,"indicaApropriacaoCreditoAdquirenteCbs":false,"indicaApropriacaoCreditoAdquirenteIbs":false,"indicaCreditoPresumidoFornecedor":false,"indicaCreditoPresumidoAdquirente":false,"tiposDfeClassificacao":[{"tipo":55,"sigla":"NFe","descricao":"Nota Fiscal Eletrônica"}],"dataAtualizacao":"2025-12-15"}]}}}}},"400":{"description":"Requisição com problema","content":{"application/problem+json":{"schema":{"$ref":"#/components/schemas/ProblemDetail"},"examples":{"Bad Request Example":{"description":"Bad Request Example","value":{"type":"about:blank","title":"Bad Request","status":400,"detail":"Required parameter 'data' is not present.","instance":"/api/calculadora/dados-abertos/classificacoes-tributarias/3244253"}}}}}},"500":{"description":"Erro interno na API","content":{"application/problem+json":{"schema":{"$ref":"#/components/schemas/ProblemDetail"},"examples":{"Internal Server Error Example":{"description":"Internal Server Error Example","value":{"type":"http://url-ambiente/errors/erro-interno","title":"Erro interno na API","status":500,"detail":"Falha ao processar a requisição.","instance":"/api/calculadora/dados-abertos/classificacoes-tributarias/1"}}}}}}},"deprecated":true}},"/calculadora/dados-abertos/classificacoes-tributarias/nbs":{"get":{"tags":["Dados Abertos - VERSÃO BETA"],"summary":"Classificações Tributárias aplicáveis por NBS","description":"Obtém a lista dos códigos cClassTrib aplicáveis a um NBS em uma determinada data, considerando vínculos e regras de exceção. Também inclui classificações de serviço vigentes não vinculadas a nenhum NBS.","operationId":"listarClassificacoesTributariasPorNbs","parameters":[{"name":"nbs","in":"query","description":"Código NBS sem formatação","required":true,"schema":{"type":"string","pattern":"^\\d{9}$"},"example":114052200},{"name":"data","in":"query","description":"Data no padrão ISO 8601 (yyyy-MM-dd)","required":true,"schema":{"type":"string","format":"date"},"example":"2026-01-01"}],"responses":{"200":{"description":"Consulta realizada com sucesso","content":{"application/json":{"schema":{"type":"string"},"examples":{"cClassTrib por NBS Example":{"description":"cClassTrib por NBS Example","value":["000001","000002","000003"]}}}}},"400":{"description":"Requisição com problema","content":{"application/problem+json":{"schema":{"$ref":"#/components/schemas/ProblemDetail"},"examples":{"Bad Request Example":{"description":"Bad Request Example","value":{"type":"about:blank","title":"Bad Request","status":400,"detail":"Parâmetro inválido ou ausente.","instance":"/api/calculadora/dados-abertos/classificacoes-tributarias/nbs"}}}}}},"404":{"description":"NBS não encontrado na data especificada","content":{"application/problem+json":{"schema":{"$ref":"#/components/schemas/ProblemDetail"},"examples":{"Not Found Example":{"description":"Not Found Example","value":{"type":"about:blank","title":"Not Found","status":404,"detail":"Nenhum resultado foi encontrado para a NBS: 114052200 na data: 2026-01-01","instance":"/api/calculadora/dados-abertos/classificacoes-tributarias/nbs"}}}}}},"500":{"description":"Erro interno na API","content":{"application/problem+json":{"schema":{"$ref":"#/components/schemas/ProblemDetail"},"examples":{"Internal Server Error Example":{"description":"Internal Server Error Example","value":{"type":"http://url-ambiente/errors/erro-interno","title":"Erro interno na API","status":500,"detail":"Falha ao processar a requisição.","instance":"/api/calculadora/dados-abertos/classificacoes-tributarias/nbs"}}}}}}}}},"/calculadora/dados-abertos/classificacoes-tributarias/imposto-seletivo":{"get":{"tags":["Dados Abertos - VERSÃO BETA"],"summary":"Classificação Tributária (cClassTrib) para Imposto Seletivo","description":"Obtém a lista das classificações tributárias (cClassTrib) para Imposto Seletivo","operationId":"consultarClassificacoesTributariasImpostoSeletivo","parameters":[{"name":"data","in":"query","description":"Data no padrão ISO 8601 (yyyy-MM-dd)","required":true,"schema":{"type":"string","format":"date"},"example":"2027-01-01"}],"responses":{"200":{"description":"Consulta realizada com sucesso","headers":{"x-warning-dados-simulados":{"description":"Indica que os dados são simulados. Valores possíveis: 1 (alíquotas da CBS e do IBS ainda não definidas em lei).","style":"simple","schema":{"type":"integer","example":1}}},"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ClassificacaoTributariaDadosAbertosOutput"},"examples":{"Classificações Tributárias Imposto Seletivo Example":{"description":"Classificações Tributárias Imposto Seletivo Example","value":[{"codigo":"000001","descricao":"Primeiro fornecimento a qualquer título de bem","tipoAliquota":"Alíquotas Combinadas (Ad Valorem e Ad Rem)","nomenclatura":"NBS ou NCM","descricaoTratamentoTributario":"Tributação pelo Imposto Seletivo - Com Cálculo","incompativelComSuspensao":false,"exigeGrupoDesoneracao":false,"possuiPercentualReducao":true,"indicaApropriacaoCreditoAdquirenteCbs":false,"indicaApropriacaoCreditoAdquirenteIbs":false,"indicaCreditoPresumidoFornecedor":false,"indicaCreditoPresumidoAdquirente":false},{"codigo":"000002","descricao":"Arrematação em leilão público","tipoAliquota":"Alíquotas Combinadas (Ad Valorem e Ad Rem)","nomenclatura":"NBS ou NCM","descricaoTratamentoTributario":"Tributação pelo Imposto Seletivo - Com Cálculo","incompativelComSuspensao":false,"exigeGrupoDesoneracao":false,"possuiPercentualReducao":true,"indicaApropriacaoCreditoAdquirenteCbs":false,"indicaApropriacaoCreditoAdquirenteIbs":false,"indicaCreditoPresumidoFornecedor":false,"indicaCreditoPresumidoAdquirente":false}]},"Classificações Tributárias Imposto Seletivo Vazia Example":{"description":"Classificações Tributárias Imposto Seletivo Vazia Example","value":[]}}}}},"400":{"description":"Requisição com problema","content":{"application/problem+json":{"schema":{"$ref":"#/components/schemas/ProblemDetail"},"examples":{"Bad Request Example":{"description":"Bad Request Example","value":{"type":"about:blank","title":"Bad Request","status":400,"detail":"Required parameter 'data' is not present.","instance":"/api/calculadora/dados-abertos/classificacoes-tributarias/imposto-seletivo"}}}}}},"500":{"description":"Erro interno na API","content":{"application/problem+json":{"schema":{"$ref":"#/components/schemas/ProblemDetail"},"examples":{"Internal Server Error Example":{"description":"Internal Server Error Example","value":{"type":"http://url-ambiente/errors/erro-interno","title":"Erro interno na API","status":500,"detail":"Falha ao processar a requisição.","instance":"/api/calculadora/dados-abertos/classificacoes-tributarias/imposto-seletivo"}}}}}}}}},"/calculadora/dados-abertos/classificacoes-tributarias/imposto-seletivo/{cst}":{"get":{"tags":["Dados Abertos - VERSÃO BETA"],"summary":"Classificações Tributárias por CST - Imposto Seletivo","description":"Obtém a lista das classificações tributárias por CST para Imposto Seletivo","operationId":"listarPorCstImpostoSeletivo","parameters":[{"name":"cst","in":"path","description":"Código da Situação Tributária (CST)","required":true,"schema":{"type":"string"},"example":"000"},{"name":"data","in":"query","description":"Data no padrão ISO 8601 (yyyy-MM-dd)","required":true,"schema":{"type":"string","format":"date"},"example":"2027-01-01"}],"responses":{"200":{"description":"Consulta realizada com sucesso","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ClassificacaoTributariaDadosAbertosOutput"},"examples":{"Classificações IS Example":{"description":"Classificações IS Example","value":[{"codigo":"000001","descricao":"Primeiro fornecimento a qualquer título de bem","tipoAliquota":"Alíquotas Combinadas (Ad Valorem e Ad Rem)","nomenclatura":"NBS ou NCM","descricaoTratamentoTributario":"Tributação pelo Imposto Seletivo - Com Cálculo","incompativelComSuspensao":false,"exigeGrupoDesoneracao":false,"possuiPercentualReducao":true,"indicaApropriacaoCreditoAdquirenteCbs":false,"indicaApropriacaoCreditoAdquirenteIbs":false,"indicaCreditoPresumidoFornecedor":false,"indicaCreditoPresumidoAdquirente":false,"tiposDfeClassificacao":[]}]}}}}},"400":{"description":"Requisição com problema","content":{"application/problem+json":{"schema":{"$ref":"#/components/schemas/ProblemDetail"}}}},"500":{"description":"Erro interno na API","content":{"application/problem+json":{"schema":{"$ref":"#/components/schemas/ProblemDetail"}}}}}}},"/calculadora/dados-abertos/classificacoes-tributarias/cbs-ibs":{"get":{"tags":["Dados Abertos - VERSÃO BETA"],"summary":"Classificação Tributária (cClassTrib)","description":"Obtém a lista das classificações tributárias (cClassTrib) para CBS e IBS","operationId":"consultarClassificacoesTributariasCbsIbs","parameters":[{"name":"data","in":"query","description":"Data no padrão ISO 8601 (yyyy-MM-dd)","required":true,"schema":{"type":"string","format":"date"},"example":"2026-01-01"}],"responses":{"200":{"description":"Consulta realizada com sucesso","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ClassificacaoTributariaDadosAbertosOutput"},"examples":{"Classificações Tributárias Example":{"description":"Classificações Tributárias Example","value":[{"codigo":"000004","descricao":"Regime automotivo - projetos incentivados (art. 312)","tipoAliquota":"Padrão","nomenclatura":"NCM","descricaoTratamentoTributario":"Tributação integral","incompativelComSuspensao":false,"exigeGrupoDesoneracao":false,"possuiPercentualReducao":true,"indicaApropriacaoCreditoAdquirenteCbs":true,"indicaApropriacaoCreditoAdquirenteIbs":true,"indicaCreditoPresumidoFornecedor":true,"indicaCreditoPresumidoAdquirente":false,"creditoOperacaoAntecedente":"Manutenção","percentualReducaoCbs":0,"percentualReducaoIbsUf":0,"percentualReducaoIbsMun":0,"tiposDfeClassificacao":[{"tipo":55,"sigla":"NFe","descricao":"Nota Fiscal Eletrônica"}]},{"codigo":"010001","descricao":"Operações do FGTS não realizadas pela Caixa Econômica Federal","tipoAliquota":"Uniforme setorial","nomenclatura":"NBS","descricaoTratamentoTributario":"Tributação com alíquotas uniformes - operações do FGTS","incompativelComSuspensao":false,"exigeGrupoDesoneracao":false,"possuiPercentualReducao":true,"indicaApropriacaoCreditoAdquirenteCbs":true,"indicaApropriacaoCreditoAdquirenteIbs":true,"indicaCreditoPresumidoFornecedor":false,"indicaCreditoPresumidoAdquirente":false,"creditoOperacaoAntecedente":"Manutenção","percentualReducaoCbs":0,"percentualReducaoIbsUf":0,"percentualReducaoIbsMun":0,"tiposDfeClassificacao":[{"tipo":91,"sigla":"NFSe","descricao":"Nota Fiscal de Serviços Eletrônica"},{"tipo":94,"sigla":"DERE","descricao":"Declaração Eletrônica de Regimes Específicos"}]}]}}}}},"400":{"description":"Requisição com problema","content":{"application/problem+json":{"schema":{"$ref":"#/components/schemas/ProblemDetail"},"examples":{"Bad Request Example":{"description":"Bad Request Example","value":{"type":"about:blank","title":"Bad Request","status":400,"detail":"Required parameter 'data' is not present.","instance":"/api/calculadora/dados-abertos/classificacoes-tributarias/cbs-ibs"}}}}}},"500":{"description":"Erro interno na API","content":{"application/problem+json":{"schema":{"$ref":"#/components/schemas/ProblemDetail"},"examples":{"Internal Server Error Example":{"description":"Internal Server Error Example","value":{"type":"http://url-ambiente/errors/erro-interno","title":"Erro interno na API","status":500,"detail":"Falha ao processar a requisição.","instance":"/api/calculadora/dados-abertos/classificacoes-tributarias/cbs-ibs"}}}}}}}}},"/calculadora/dados-abertos/classificacoes-tributarias/cbs-ibs/{siglaDfe}/{cClassTrib}":{"get":{"tags":["Dados Abertos - VERSÃO BETA"],"summary":"Classificação Tributária CBS/IBS por DFe e cClassTrib","description":"Obtém a classificação tributária CBS/IBS com base na sigla do DFe e código da classificação","operationId":"consultarValidadeDfeClassificacaoTributaria","parameters":[{"name":"siglaDfe","in":"path","description":"Sigla do tipo de Documento Fiscal Eletrônico","required":true,"schema":{"type":"string"},"example":"NFSE"},{"name":"cClassTrib","in":"path","description":"Código da classificação tributária","required":true,"schema":{"type":"string"},"example":"000001"},{"name":"data","in":"query","description":"Data do fato gerador (yyyy-MM-dd)","required":true,"schema":{"type":"string","format":"date"},"example":"2026-01-01"}],"responses":{"200":{"description":"Consulta realizada com sucesso","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ValidadeDfeClassificacaoTributariaDadosAbertosOutput"}}}},"400":{"description":"Requisição com problema","content":{"application/problem+json":{"schema":{"$ref":"#/components/schemas/ProblemDetail"},"examples":{"Bad Request Example":{"description":"Bad Request Example","value":{"type":"about:blank","title":"Bad Request","status":400,"detail":"Required parameter 'data' is not present.","instance":"/api/calculadora/dados-abertos/classificacoes-tributarias/cbs-ibs/NFE/000001"}}}}}},"404":{"description":"Classificação tributária não encontrada","content":{"application/problem+json":{"schema":{"$ref":"#/components/schemas/ProblemDetail"},"examples":{"Not Found Example":{"description":"Not Found Example","value":{"type":"https://url-ambiente/errors/classificacao-tributaria-nao-encontrada","title":"Classificação Tributária Não Encontrada","status":404,"detail":"Classificação tributária não encontrada para DFe 'NFSE' e código '000001' na data '2026-01-01'","instance":"/api/calculadora/dados-abertos/classificacoes-tributarias/cbs-ibs/NFSE/000001","timestamp":1.7607241111784844E9}}}}}},"422":{"description":"Erro de validação nos parâmetros","content":{"application/problem+json":{"schema":{"$ref":"#/components/schemas/ProblemDetail"},"examples":{"Validation Error Example":{"description":"Validation Error Example","value":{"type":"http://url-ambiente/errors/sigla-dfe-nao-reconhecida","title":"Sigla DFe não reconhecida","status":422,"detail":"Sigla DFe inválida: NFEJ","instance":"/api/calculadora/dados-abertos/classificacoes-tributarias/cbs-ibs/NFEe/620002","timestamp":1.7607290741335235E9}}}}}},"500":{"description":"Erro interno na API","content":{"application/problem+json":{"schema":{"$ref":"#/components/schemas/ProblemDetail"},"examples":{"Internal Server Error Example":{"description":"Internal Server Error Example","value":{"type":"http://url-ambiente/errors/erro-de-sistema-nao-previsto","title":"Erro de sistema não previsto","status":500,"detail":"Falha ao acessar o banco de dados","instance":"/api/calculadora/dados-abertos/classificacoes-tributarias/cbs-ibs/NFE/620001","timestamp":1.7607302862395124E9}}}}}}}}},"/calculadora/dados-abertos/classificacoes-tributarias/cbs-ibs/{cst}":{"get":{"tags":["Dados Abertos - VERSÃO BETA"],"summary":"Classificações Tributárias por CST - CBS/IBS","description":"Obtém a lista das classificações tributárias por CST para CBS/IBS","operationId":"listarPorCstCbsIbs","parameters":[{"name":"cst","in":"path","description":"Código da Situação Tributária (CST)","required":true,"schema":{"type":"string"},"example":"000"},{"name":"data","in":"query","description":"Data no padrão ISO 8601 (yyyy-MM-dd)","required":true,"schema":{"type":"string","format":"date"},"example":"2025-01-01"}],"responses":{"200":{"description":"Consulta realizada com sucesso","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ClassificacaoTributariaDadosAbertosOutput"},"examples":{"Classificações CBS/IBS Example":{"description":"Classificações CBS/IBS Example","value":[{"codigo":"000001","descricao":"Situações tributadas integralmente pelo IBS e CBS.","tipoAliquota":"Padrão","nomenclatura":"NBS ou NCM","descricaoTratamentoTributario":"Tributação integral","dataAtualizacao":"2025-12-15","incompativelComSuspensao":false,"exigeGrupoDesoneracao":false,"possuiPercentualReducao":true,"indicaApropriacaoCreditoAdquirenteCbs":true,"indicaApropriacaoCreditoAdquirenteIbs":true,"indicaCreditoPresumidoFornecedor":false,"indicaCreditoPresumidoAdquirente":false,"tiposDfeClassificacao":[]}]}}}}},"400":{"description":"Requisição com problema","content":{"application/problem+json":{"schema":{"$ref":"#/components/schemas/ProblemDetail"}}}},"500":{"description":"Erro interno na API","content":{"application/problem+json":{"schema":{"$ref":"#/components/schemas/ProblemDetail"}}}}}}},"/calculadora/dados-abertos/aliquota-uniao":{"get":{"tags":["Dados Abertos - VERSÃO BETA"],"summary":"Alíquota Padrão ou de Referência","description":"Obtém a alíquota padrão ou de referência para CBS","operationId":"consultarAliquotaUniao","parameters":[{"name":"data","in":"query","description":"Data no padrão ISO 8601 (yyyy-MM-dd)","required":true,"schema":{"type":"string","format":"date"},"example":"2026-01-01"}],"responses":{"200":{"description":"Consulta realizada com sucesso","headers":{"x-warning-dados-simulados":{"description":"Indica que os dados são simulados. Valores possíveis: 1 (Classificações Tributárias para o Imposto Seletivo ainda não foram estabelecidas em lei).","style":"simple","schema":{"type":"integer","example":1}}},"content":{"application/json":{"schema":{"$ref":"#/components/schemas/AliquotaDadosAbertosOutput"},"examples":{"Alíquota União Example":{"description":"Alíquota União Example","value":{"aliquotaReferencia":0.9,"aliquotaPropria":0.9}}}}}},"400":{"description":"Requisição com problema","content":{"application/problem+json":{"schema":{"$ref":"#/components/schemas/ProblemDetail"},"examples":{"Bad Request Example":{"description":"Bad Request Example","value":{"type":"about:blank","title":"Bad Request","status":400,"detail":"Required parameter 'data' is not present.","instance":"/api/calculadora/dados-abertos/aliquota-uniao"}}}}}},"500":{"description":"Erro interno na API","content":{"application/problem+json":{"schema":{"$ref":"#/components/schemas/ProblemDetail"},"examples":{"Internal Server Error Example":{"description":"Internal Server Error Example","value":{"type":"http://url-ambiente/errors/erro-interno","title":"Erro interno na API","status":500,"detail":"Falha ao processar a requisição.","instance":"/api/calculadora/dados-abertos/aliquota-uniao"}}}}}}}}},"/calculadora/dados-abertos/aliquota-uf":{"get":{"tags":["Dados Abertos - VERSÃO BETA"],"summary":"Alíquota Padrão ou de Referência para IBS Estadual","description":"Obtém a alíquota padrão ou de referência para IBS Estadual","operationId":"consultarAliquotaUf","parameters":[{"name":"codigoUf","in":"query","description":"Código da UF","required":true,"schema":{"type":"integer","format":"int64"},"example":43},{"name":"data","in":"query","description":"Data no padrão ISO 8601 (yyyy-MM-dd)","required":true,"schema":{"type":"string","format":"date"},"example":"2026-01-01"}],"responses":{"200":{"description":"Consulta realizada com sucesso","headers":{"x-warning-dados-simulados":{"description":"Indica que os dados são simulados. Valores possíveis: 1 (alíquotas da CBS ainda não definidas em lei).","style":"simple","schema":{"type":"integer","example":1}}},"content":{"application/json":{"schema":{"$ref":"#/components/schemas/AliquotaDadosAbertosOutput"},"examples":{"Alíquota UF Example":{"description":"Alíquota UF Example","value":{"aliquotaReferencia":0.9,"aliquotaPropria":0.9}}}}}},"400":{"description":"Requisição com problema","content":{"application/problem+json":{"schema":{"$ref":"#/components/schemas/ProblemDetail"},"examples":{"Bad Request Example":{"description":"Bad Request Example","value":{"type":"about:blank","title":"Bad Request","status":400,"detail":"Required parameter 'data' is not present.","instance":"/api/calculadora/dados-abertos/aliquota-uf"}}}}}},"500":{"description":"Erro interno na API","content":{"application/problem+json":{"schema":{"$ref":"#/components/schemas/ProblemDetail"},"examples":{"Internal Server Error Example":{"description":"Internal Server Error Example","value":{"type":"http://url-ambiente/errors/erro-interno","title":"Erro interno na API","status":500,"detail":"Falha ao processar a requisição.","instance":"/api/calculadora/dados-abertos/aliquota-uf"}}}}}}}}},"/calculadora/dados-abertos/aliquota-municipio":{"get":{"tags":["Dados Abertos - VERSÃO BETA"],"summary":"Alíquota Padrão ou de Referência para IBS Municipal","description":"Obtém a alíquota padrão ou de referência para IBS Municipal","operationId":"consultarAliquotaMunicipio","parameters":[{"name":"codigoMunicipio","in":"query","description":"Código do Município (Tabela IBGE)","required":true,"schema":{"type":"integer","format":"int64"},"example":4314902},{"name":"data","in":"query","description":"Data no padrão ISO 8601 (yyyy-MM-dd)","required":true,"schema":{"type":"string","format":"date"},"example":"2026-01-01"}],"responses":{"200":{"description":"Consulta realizada com sucesso","headers":{"x-warning-dados-simulados":{"description":"Indica que os dados são simulados. Valores possíveis: 1 (alíquotas da CBS e do IBS ainda não definidas em lei).","style":"simple","schema":{"type":"integer","example":1}}},"content":{"application/json":{"schema":{"$ref":"#/components/schemas/AliquotaDadosAbertosOutput"},"examples":{"Alíquota Município Example":{"description":"Alíquota Município Example","value":{"aliquotaReferencia":0.9,"aliquotaPropria":0.9}}}}}},"400":{"description":"Requisição com problema","content":{"application/problem+json":{"schema":{"$ref":"#/components/schemas/ProblemDetail"},"examples":{"Bad Request Example":{"description":"Bad Request Example","value":{"type":"about:blank","title":"Bad Request","status":400,"detail":"Required parameter 'data' is not present.","instance":"/api/calculadora/dados-abertos/aliquota-municipio"}}}}}},"500":{"description":"Erro interno na API","content":{"application/problem+json":{"schema":{"$ref":"#/components/schemas/ProblemDetail"},"examples":{"Internal Server Error Example":{"description":"Internal Server Error Example","value":{"type":"http://url-ambiente/errors/erro-interno","title":"Erro interno na API","status":500,"detail":"Falha ao processar a requisição.","instance":"/api/calculadora/dados-abertos/aliquota-municipio"}}}}}}}}}},"components":{"schemas":{"ProblemDetail":{"type":"object","properties":{"type":{"type":"string","format":"uri"},"title":{"type":"string"},"status":{"type":"integer","format":"int32"},"detail":{"type":"string"},"instance":{"type":"string","format":"uri"},"properties":{"type":"object","additionalProperties":{}}}},"AjusteCompetenciaDomain":{"type":"object","properties":{"competApur":{"type":"string","description":"Ano e mês referência do período de apuração (AAAA-MM)"},"vIBS":{"type":"number","description":"Valor do IBS"},"vCBS":{"type":"number","description":"Valor da CBS"}}},"CBSDomain":{"type":"object","properties":{"pCBS":{"type":"number","description":"Alíquota da CBS"},"gDif":{"$ref":"#/components/schemas/DiferimentoDomain","description":"Grupo de Informações do Diferimento"},"gDevTrib":{"$ref":"#/components/schemas/DevolucaoTributosDomain","description":"Grupo de Informações da devolução de tributos"},"gRed":{"$ref":"#/components/schemas/ReducaoAliquotaDomain","description":"Grupo de Informações da redução da alíquota"},"vCBS":{"type":"number","description":"Valor da CBS"},"memoriaCalculo":{"type":"string","description":"Memória de Cálculo"}}},"CBSTotalDomain":{"type":"object","properties":{"vDif":{"type":"number","description":"Valor total do diferimento"},"vDevTrib":{"type":"number","description":"Valor total de devolução de tributos"},"vCBS":{"type":"number","description":"Valor total da CBS"},"vCredPres":{"type":"number","description":"Valor total do crédito presumido"},"vCredPresCondSus":{"type":"number","description":"Valor total do crédito presumido em condição suspensiva"}}},"CompraGovernamentalDomain":{"type":"object","properties":{"tpEnteGov":{"type":"integer","format":"int32","description":"Tipo de ente governamental: 1 - União, 2 - Estados, 3 - Distrito Federal, 4 - Municípios","enum":[1,2,3,4]},"pRedutor":{"type":"number","description":"Percentual de redução de alíquota em compra governamental"},"tpOperGov":{"type":"integer","format":"int32","description":"Tipo de operação com o ente governamental: 1 - Fornecimento, 2 - Recebimento do pagamento","enum":[1,2]}}},"CreditoPresumidoIBSZFMDomain":{"type":"object","properties":{"competApur":{"type":"string","description":"Ano e mês referência do período de apuração (AAAA-MM)"},"tpCredPresIBSZFM":{"type":"integer","format":"int32","description":"Tipo de classificação de acordo com o art. 450, § 1º, da LC 214/25 para o cálculo do crédito presumido na ZFM"},"vCredPresIBSZFM":{"type":"number","description":"Valor do crédito presumido calculado sobre o saldo devedor apurado"}}},"CreditoPresumidoOperacaoDomain":{"type":"object","properties":{"vBCCredPres":{"type":"number","description":"Valor da Base de Cálculo do Crédito Presumido da Operação"},"cCredPres":{"type":"integer","format":"int32","description":"Código de Classificação do Crédito Presumido"},"gIBSCredPres":{"$ref":"#/components/schemas/IBSCBSCreditoPresumidoDomain","description":"Grupo de Informações do Crédito Presumido referente ao IBS"},"gCBSCredPres":{"$ref":"#/components/schemas/IBSCBSCreditoPresumidoDomain","description":"Grupo de Informações do Crédito Presumido referente a CBS"}}},"DevolucaoTributosDomain":{"type":"object","properties":{"vDevTrib":{"type":"number","description":"Valor do tributo devolvido"}}},"DiferimentoDomain":{"type":"object","properties":{"pDif":{"type":"number","description":"Percentual do Diferimento"},"vDif":{"type":"number","description":"Valor do Diferimento"}}},"EstornoCreditoDomain":{"type":"object","properties":{"vIBSEstCred":{"type":"number","description":"Valor do IBS a ser estornado"},"vCBSEstCred":{"type":"number","description":"Valor da CBS a ser estornada"}}},"GrupoIBSCBSDomain":{"type":"object","properties":{"vBC":{"type":"number","description":"Base de cálculo do IBS e CBS"},"gIBSUF":{"$ref":"#/components/schemas/IBSUFDomain","description":"Grupo de Informações do IBS para a UF"},"gIBSMun":{"$ref":"#/components/schemas/IBSMunDomain","description":"Grupo de Informações do IBS para o município"},"vIBS":{"type":"number","description":"Valor do IBS"},"gCBS":{"$ref":"#/components/schemas/CBSDomain","description":"Grupo de Informações da CBS"},"gTribRegular":{"$ref":"#/components/schemas/TributacaoRegularDomain","description":"Grupo de Informações da Tributação Regular"},"gTribCompraGov":{"$ref":"#/components/schemas/TributacaoCompraGovernamentalDomain","description":"Grupo de informações da composição do valor do IBS e da CBS em compras governamentais"}}},"IBSCBSCreditoPresumidoDomain":{"type":"object","properties":{"pCredPres":{"type":"number","description":"Percentual do Crédito Presumido"},"vCredPres":{"type":"number","description":"Valor do Crédito Presumido"},"vCredPresCondSus":{"type":"number","description":"Valor do Crédito Presumido em condição suspensiva"}}},"IBSCBSDomain":{"type":"object","properties":{"CST":{"type":"string","description":"Código de Situação Tributária do IBS e CBS"},"cClassTrib":{"type":"string","description":"Código de Classificação Tributária do IBS e CBS"},"indDoacao":{"type":"integer","format":"int32","description":"Indica a natureza da operação de doação, orientando a apuração e a geração de débitos ou estornos conforme o cenário"},"gIBSCBS":{"$ref":"#/components/schemas/GrupoIBSCBSDomain","description":"Grupo de Informações do IBS e da CBS"},"gIBSCBSMono":{"$ref":"#/components/schemas/MonofasiaDomain","description":"Grupo de Informações do IBS e CBS em operações com imposto monofásico"},"gTransfCred":{"$ref":"#/components/schemas/TransferenciaCreditoDomain","description":"Transferências de Crédito"},"gAjusteCompet":{"$ref":"#/components/schemas/AjusteCompetenciaDomain","description":"Ajuste de competência"},"gEstornoCred":{"$ref":"#/components/schemas/EstornoCreditoDomain","description":"Estorno de crédito"},"gCredPresOper":{"$ref":"#/components/schemas/CreditoPresumidoOperacaoDomain","description":"Crédito presumido da Operação"},"gCredPresIBSZFM":{"$ref":"#/components/schemas/CreditoPresumidoIBSZFMDomain","description":"Informações do crédito presumido de IBS para fornecimentos a partir da ZFM"}}},"IBSCBSTotalDomain":{"type":"object","properties":{"vBCIBSCBS":{"type":"number","description":"Valor total da BC do IBS e da CBS"},"gIBS":{"$ref":"#/components/schemas/IBSTotalDomain","description":"Grupo total do IBS"},"gCBS":{"$ref":"#/components/schemas/CBSTotalDomain","description":"Grupo total da CBS"},"gMono":{"$ref":"#/components/schemas/MonofasiaTotalDomain","description":"Grupo total da Monofasia"},"gEstornoCred":{"$ref":"#/components/schemas/EstornoCreditoDomain","description":"Grupo total do Estorno de Crédito"}}},"IBSMunDomain":{"type":"object","properties":{"pIBSMun":{"type":"number","description":"Alíquota do IBS de competência do Município"},"gDif":{"$ref":"#/components/schemas/DiferimentoDomain","description":"Grupo de Informações do Diferimento"},"gDevTrib":{"$ref":"#/components/schemas/DevolucaoTributosDomain","description":"Grupo de Informações da devolução de tributos"},"gRed":{"$ref":"#/components/schemas/ReducaoAliquotaDomain","description":"Grupo de Informações da redução da alíquota"},"vIBSMun":{"type":"number","description":"Valor do IBS de competência do Município"},"memoriaCalculo":{"type":"string","description":"Memória de Cálculo"}}},"IBSMunTotalDomain":{"type":"object","properties":{"vDif":{"type":"number","description":"Valor total do diferimento"},"vDevTrib":{"type":"number","description":"Valor total de devolução de tributos"},"vIBSMun":{"type":"number","description":"Valor total do IBS do Município"}}},"IBSTotalDomain":{"type":"object","properties":{"gIBSUF":{"$ref":"#/components/schemas/IBSUFTotalDomain","description":"Grupo total do IBS da UF"},"gIBSMun":{"$ref":"#/components/schemas/IBSMunTotalDomain","description":"Grupo total do IBS do Município"},"vIBS":{"type":"number","description":"Valor total do IBS"},"vCredPres":{"type":"number","description":"Valor total do crédito presumido"},"vCredPresCondSus":{"type":"number","description":"Valor total do crédito presumido em condição suspensiva"}}},"IBSUFDomain":{"type":"object","properties":{"pIBSUF":{"type":"number","description":"Alíquota do IBS de competência das UF"},"gDif":{"$ref":"#/components/schemas/DiferimentoDomain","description":"Grupo de Informações do Diferimento"},"gDevTrib":{"$ref":"#/components/schemas/DevolucaoTributosDomain","description":"Grupo de Informações da devolução de tributos"},"gRed":{"$ref":"#/components/schemas/ReducaoAliquotaDomain","description":"Grupo de Informações da redução da alíquota"},"vIBSUF":{"type":"number","description":"Valor do IBS de competência da UF"},"memoriaCalculo":{"type":"string","description":"Memória de Cálculo"}}},"IBSUFTotalDomain":{"type":"object","properties":{"vDif":{"type":"number","description":"Valor total do diferimento"},"vDevTrib":{"type":"number","description":"Valor total de devolução de tributos"},"vIBSUF":{"type":"number","description":"Valor total do IBS da UF"}}},"ImpostoSeletivoDomain":{"type":"object","properties":{"CSTIS":{"type":"string","description":"Código de Situação Tributária do Imposto Seletivo"},"cClassTribIS":{"type":"string","description":"Código de Classificação Tributária do Imposto Seletivo"},"vBCIS":{"type":"number","description":"Valor da Base de Cálculo do Imposto Seletivo"},"pIS":{"type":"number","description":"Alíquota do Imposto Seletivo"},"pISEspec":{"type":"number","description":"Alíquota específica por unidade de medida apropriada"},"uTrib":{"type":"string","description":"Unidade de Medida Tributável"},"qTrib":{"type":"number","description":"Quantidade Tributável"},"vIS":{"type":"number","description":"Valor do Imposto Seletivo"},"memoriaCalculo":{"type":"string","description":"Memória de Cálculo"}}},"ImpostoSeletivoTotalDomain":{"type":"object","properties":{"vIS":{"type":"number","description":"Total do imposto seletivo"}}},"MonofasiaDiferimentoDomain":{"type":"object","properties":{"pDifIBS":{"type":"number","description":"Percentual do diferimento do imposto monofásico do IBS"},"vIBSMonoDif":{"type":"number","description":"Valor do IBS monofásico diferido"},"pDifCBS":{"type":"number","description":"Percentual do diferimento do imposto monofásico da CBS"},"vCBSMonoDif":{"type":"number","description":"Valor da CBS monofásica diferida"}}},"MonofasiaDomain":{"type":"object","properties":{"gMonoPadrao":{"$ref":"#/components/schemas/MonofasiaPadraoDomain","description":"Grupo de informações da Tributação Monofásica Padrão"},"gMonoReten":{"$ref":"#/components/schemas/MonofasiaRetencaoDomain","description":"Grupo de informações da Tributação Monofásica Sujeita à Retenção"},"gMonoRet":{"$ref":"#/components/schemas/MonofasiaRetidoAnteriormenteDomain","description":"Grupo de informações da Tributação Monofásica Retida Anteriormente"},"gMonoDif":{"$ref":"#/components/schemas/MonofasiaDiferimentoDomain","description":"Grupo de informações do Diferimento da Tributação Monofásica"},"vTotIBSMonoItem":{"type":"number","description":"Total de IBS monofásico"},"vTotCBSMonoItem":{"type":"number","description":"Total de CBS monofásica"}}},"MonofasiaPadraoDomain":{"type":"object","properties":{"qBCMono":{"type":"number","description":"Quantidade tributada na monofasia"},"adRemIBS":{"type":"number","description":"Alíquota ad rem do IBS"},"adRemCBS":{"type":"number","description":"Alíquota ad rem da CBS"},"vIBSMono":{"type":"number","description":"Valor do IBS monofásico"},"vCBSMono":{"type":"number","description":"Valor da CBS monofásica"}}},"MonofasiaRetencaoDomain":{"type":"object","properties":{"qBCMonoReten":{"type":"number","description":"Quantidade tributada sujeita à retenção na monofasia"},"adRemIBSReten":{"type":"number","description":"Alíquota ad rem do IBS sujeito a retenção"},"vIBSMonoReten":{"type":"number","description":"Valor do IBS monofásico sujeito a retenção"},"adRemCBSReten":{"type":"number","description":"Alíquota ad rem da CBS sujeita a retenção"},"vCBSMonoReten":{"type":"number","description":"Valor da CBS monofásica sujeita a retenção"}}},"MonofasiaRetidoAnteriormenteDomain":{"type":"object","properties":{"qBCMonoRet":{"type":"number","description":"Quantidade tributada retida anteriormente"},"adRemIBSRet":{"type":"number","description":"Alíquota ad rem do IBS retido anteriormente"},"vIBSMonoRet":{"type":"number","description":"Valor do IBS retido anteriormente"},"adRemCBSRet":{"type":"number","description":"Alíquota ad rem da CBS retida anteriormente"},"vCBSMonoRet":{"type":"number","description":"Valor da CBS retida anteriormente"}}},"MonofasiaTotalDomain":{"type":"object","properties":{"vIBSMono":{"type":"number","description":"Total do IBS monofásico"},"vCBSMono":{"type":"number","description":"Total da CBS monofásica"},"vIBSMonoReten":{"type":"number","description":"Total do IBS monofásico sujeito a retenção"},"vCBSMonoReten":{"type":"number","description":"Total da CBS monofásica sujeita a retenção"},"vIBSMonoRet":{"type":"number","description":"Total do IBS monofásico retido anteriormente"},"vCBSMonoRet":{"type":"number","description":"Total da CBS monofásica retida anteriormente"}}},"ObjetoDomain":{"type":"object","properties":{"nObj":{"type":"integer","format":"int32"},"tribCalc":{"$ref":"#/components/schemas/TributosDomain"}}},"OperacaoConsumoDomain":{"type":"object","properties":{"gCompraGov":{"$ref":"#/components/schemas/CompraGovernamentalDomain"}}},"ROCDomain":{"type":"object","properties":{"oper":{"$ref":"#/components/schemas/OperacaoConsumoDomain"},"objetos":{"type":"array","items":{"$ref":"#/components/schemas/ObjetoDomain"}},"total":{"$ref":"#/components/schemas/ValoresTotaisDomain"}}},"ReducaoAliquotaDomain":{"type":"object","properties":{"pRedAliq":{"type":"number","description":"Percentual da redução de alíquota do cClassTrib"},"pAliqEfet":{"type":"number","description":"Alíquota Efetiva que será aplicada a Base de Cálculo"}}},"TransferenciaCreditoDomain":{"type":"object","properties":{"vIBS":{"type":"number","description":"Valor do IBS a ser transferido"},"vCBS":{"type":"number","description":"Valor da CBS a ser transferida"}}},"TributacaoCompraGovernamentalDomain":{"type":"object","properties":{"pAliqIBSUF":{"type":"number","description":"Alíquota do IBS de competência do Estado"},"vTribIBSUF":{"type":"number","description":"Valor do Tributo do IBS da UF calculado"},"pAliqIBSMun":{"type":"number","description":"Alíquota do IBS de competência do Município"},"vTribIBSMun":{"type":"number","description":"Valor do Tributo do IBS do Município calculado"},"pAliqCBS":{"type":"number","description":"Alíquota da CBS"},"vTribCBS":{"type":"number","description":"Valor do Tributo da CBS calculado"}}},"TributacaoRegularDomain":{"type":"object","properties":{"CSTReg":{"type":"string","description":"Código de Situação Tributária do IBS e CBS"},"cClassTribReg":{"type":"string","description":"Código de Classificação Tributária do IBS e CBS"},"pAliqEfetRegIBSUF":{"type":"number","description":"Valor da alíquota do IBS da UF"},"vTribRegIBSUF":{"type":"number","description":"Valor do Tributo do IBS da UF"},"pAliqEfetRegIBSMun":{"type":"number","description":"Valor da alíquota do IBS do Município"},"vTribRegIBSMun":{"type":"number","description":"Valor do Tributo do IBS do Município"},"pAliqEfetRegCBS":{"type":"number","description":"Valor da alíquota da CBS"},"vTribRegCBS":{"type":"number","description":"Valor do Tributo da CBS"}}},"TributosDomain":{"type":"object","properties":{"IS":{"$ref":"#/components/schemas/ImpostoSeletivoDomain","description":"Informações do Imposto Seletivo"},"IBSCBS":{"$ref":"#/components/schemas/IBSCBSDomain","description":"Informações do Imposto de Bens e Serviços - IBS e da Contribuição de Bens e Serviços - CBS"}}},"TributosTotaisDomain":{"type":"object","properties":{"ISTot":{"$ref":"#/components/schemas/ImpostoSeletivoTotalDomain","description":"Grupo total do imposto seletivo"},"IBSCBSTot":{"$ref":"#/components/schemas/IBSCBSTotalDomain","description":"Totais com IBS e CBS"}}},"ValoresTotaisDomain":{"type":"object","properties":{"tribCalc":{"$ref":"#/components/schemas/TributosTotaisDomain"}}},"CompraGovernamentalInput":{"type":"object","properties":{"tpEnteGov":{"type":"integer","format":"int32","description":"Tipo de ente governamental: 1 - União, 2 - Estados, 3 - Distrito Federal, 4 - Municípios","enum":[1,2,3,4]},"tpOperGov":{"type":"integer","format":"int32","description":"Tipo de operação com o ente governamental: 1 - Fornecimento, 2 - Recebimento do pagamento","enum":[1,2]}},"required":["tpEnteGov","tpOperGov"]},"ImpostoSeletivoInput":{"type":"object","properties":{"cst":{"type":"string","description":"Código da situação tributária","example":"000","maxLength":3,"minLength":3,"pattern":"\\d+"},"cClassTrib":{"type":"string","description":"Código da classificação tributária","example":"000000","maxLength":6,"minLength":6,"pattern":"\\d+"},"baseCalculo":{"type":"number","description":"Base de cálculo do imposto","example":200.0},"quantidade":{"type":"number","description":"Quantidade","example":1},"unidade":{"type":"string","description":"Unidade de medida","example":"LT"},"impostoInformado":{"type":"number","description":"Imposto Seletivo informado pelo contribuinte","example":12.0}},"required":["baseCalculo","cClassTrib","cst","impostoInformado"]},"ItemOperacaoInput":{"type":"object","properties":{"numero":{"type":"integer","format":"int32","description":"Número do Item","example":1,"maximum":9999999,"minimum":1},"ncm":{"type":"string","description":"Código NCM","example":24021000},"nbs":{"type":"string","description":"Código NBS","example":109052100},"cst":{"type":"string","description":"Código de situação tributária","example":"000","maxLength":3,"minLength":3,"pattern":"\\d+"},"cClassTrib":{"type":"string","description":"Código de classificação tributária","example":"000001","maxLength":6,"minLength":6,"pattern":"\\d+"},"baseCalculo":{"type":"number","description":"Base de cálculo do imposto","example":200.0},"quantidade":{"type":"number","description":"Quantidade","example":1},"unidade":{"type":"string","description":"Unidade de medida","example":"LT"},"impostoSeletivo":{"$ref":"#/components/schemas/ImpostoSeletivoInput","description":"Informações do Imposto Seletivo"},"tributacaoRegular":{"$ref":"#/components/schemas/TributacaoRegularInput","description":"Informações sobre tributação regular"}},"required":["cClassTrib","cst","numero"]},"OperacaoInput":{"type":"object","properties":{"id":{"type":"string","description":"Identificador do ROC","example":"6194602ea71cbf9431c236de4409d920"},"versao":{"type":"string","description":"Versão do ROC","example":"0.0.1"},"dhFatoGerador":{"type":"string","format":"date-time","description":"Data e hora do fato gerador no formato UTC","example":"2026-01-01T09:50:05-03:00"},"dataHoraEmissao":{"type":"string","format":"date-time","deprecated":true,"description":"<<<ATENÇÃO>>>

ESTE CAMPO SERÁ REMOVIDO EM FUTURO PRÓXIMO

Informar dhFatoGerador

Data e hora de emissão do documento no formato UTC

","example":"2026-01-01T09:50:05-03:00"},"municipio":{"type":"integer","format":"int64","description":"Código do Município (tabela IBGE)","example":4314902,"maximum":9999999,"minimum":0},"uf":{"type":"string","description":"Sigla da UF","example":"RS","maxLength":2,"minLength":2},"gCompraGov":{"$ref":"#/components/schemas/CompraGovernamentalInput","description":"Grupo de Compra Governamental"},"itens":{"type":"array","description":"Itens da Operação","items":{"$ref":"#/components/schemas/ItemOperacaoInput"},"minItems":1}},"required":["id","itens","municipio","versao"]},"TributacaoRegularInput":{"type":"object","properties":{"cst":{"type":"string","description":"Código da situação tributária","example":"000","maxLength":3,"minLength":3,"pattern":"\\d+"},"cClassTrib":{"type":"string","description":"Código da classificação tributária","example":"000000","maxLength":6,"minLength":6,"pattern":"\\d+"}},"required":["cClassTrib","cst"]},"PedagioInput":{"type":"object","properties":{"dataHoraEmissao":{"type":"string","format":"date-time","description":"Data e hora de emissão do documento no formato UTC","example":"2027-01-01T09:50:05-03:00"},"codigoMunicipioOrigem":{"type":"integer","format":"int64","description":"Código do Município (tabela IBGE)","example":4314902,"maximum":9999999,"minimum":0},"ufMunicipioOrigem":{"type":"string","description":"Sigla da UF","example":"RS","maxLength":2,"minLength":2},"cst":{"type":"string","description":"Código de situação tributária","example":"000","maxLength":3,"minLength":3},"cClassTrib":{"type":"string","description":"Código de classificação tributária","example":"000002","maxLength":6,"minLength":6},"baseCalculo":{"type":"number","description":"Base de cálculo do imposto","example":200.0},"trechos":{"type":"array","description":"Trechos do pedágio","items":{"$ref":"#/components/schemas/TrechoPedagioInput"},"minItems":1}},"required":["baseCalculo","cClassTrib","codigoMunicipioOrigem","cst","dataHoraEmissao","trechos","ufMunicipioOrigem"]},"TrechoPedagioInput":{"type":"object","properties":{"numero":{"type":"integer","format":"int32","description":"Número do Trecho","example":1,"minimum":1},"municipio":{"type":"integer","format":"int64","description":"Código do Município (tabela IBGE)","example":4314902,"maximum":9999999,"minimum":0},"uf":{"type":"string","description":"Sigla da UF","example":"RS","maxLength":2,"minLength":2},"extensao":{"type":"number","description":"Extensão do trecho","example":10}},"required":["extensao","municipio","numero","uf"]},"PedagioOutput":{"type":"object","properties":{"dataHoraEmissao":{"type":"string","format":"date-time","description":"Data e hora de emissão do documento no formato UTC","example":"2027-01-01T09:50:05-03:00"},"municipioOrigem":{"type":"integer","format":"int64","description":"Código do Município (tabela IBGE)","example":4314902},"ufMunicipioOrigem":{"type":"string","description":"Sigla da UF","example":"RS"},"cst":{"type":"string","description":"Código de situação tributária","example":"000","maxLength":3,"minLength":3},"cClassTrib":{"type":"string","description":"Código de classificação tributária","example":"000001","maxLength":6,"minLength":6},"baseCalculo":{"type":"number","description":"Base de cálculo","example":200.0},"extensaoTotal":{"type":"number","description":"Extensão total (km)","example":200.0},"trechos":{"type":"array","description":"Trechos do pedágio","items":{"$ref":"#/components/schemas/TrechoPedagioOutput"}},"total":{"$ref":"#/components/schemas/TotalPedagioOutput","description":"Total de tributo calculado"}}},"TotalPedagioOutput":{"type":"object","properties":{"cbsTotal":{"$ref":"#/components/schemas/TributoTotalPedagioOutput","description":"Total de CBS apurado"},"ibsEstadualTotal":{"$ref":"#/components/schemas/TributoTotalPedagioOutput","description":"Total de IBS Estadual apurado"},"ibsMunicipalTotal":{"$ref":"#/components/schemas/TributoTotalPedagioOutput","description":"Total de IBS Municipal apurado"}}},"TrechoPedagioOutput":{"type":"object","properties":{"numero":{"type":"integer","format":"int32","description":"Número do Item","example":1},"municipio":{"type":"integer","format":"int64","description":"Código do Município (tabela IBGE)","example":4314902},"uf":{"type":"string","description":"Sigla da UF","example":"RS"},"baseCalculo":{"type":"number","description":"Base de cálculo do imposto","example":200.0},"extensaoTrecho":{"type":"number","description":"Extensao do trecho","example":20},"extensaoTotal":{"type":"number","description":"Extensao total","example":50},"cbs":{"$ref":"#/components/schemas/TributoPedagioOutput","description":"Informações do CBS"},"ibsEstadual":{"$ref":"#/components/schemas/TributoPedagioOutput","description":"Informações do IBS Estadual"},"ibsMunicipal":{"$ref":"#/components/schemas/TributoPedagioOutput","description":"Informações do IBS Municipal"}}},"TributoPedagioOutput":{"type":"object","properties":{"aliquota":{"type":"number","description":"Alíquota","example":0.5},"aliquotaEfetiva":{"type":"number","description":"Alíquota efetiva","example":0.5},"tributoCalculado":{"type":"number","description":"Tributo calculado","example":0.75},"memoriaCalculo":{"type":"string","description":"Descrição do processo de cálculo","example":"Texto descritivo"}}},"TributoTotalPedagioOutput":{"type":"object","properties":{"baseCalculo":{"type":"number","description":"Base de cálculo do imposto","example":200.0},"valorApurado":{"type":"number","description":"Valor de imposto apurado","example":0.75},"valorDevido":{"type":"number","description":"Valor de imposto devido","example":0.75},"valorTributo":{"type":"number","description":"Valor do tributo","example":0.75},"totalMontanteDesonerado":{"type":"number","description":"Total do montante desonerado","example":10.22}}},"ErroDetalhe":{"type":"object","properties":{"type":{"type":"string"},"title":{"type":"string"},"code":{"type":"string"},"pointer":{"type":"string"},"detail":{"type":"string"}}},"ObservabilidadeItemDomain":{"type":"object","properties":{"nObj":{"type":"integer","format":"int32"},"estadoItem":{"type":"string","enum":["CALCULADO","NAO_IMPLEMENTADO","INCONSISTENCIA_ENTRADA","FALHA_TECNICA"]},"tribCalc":{"$ref":"#/components/schemas/TributosDomain"},"erros":{"type":"array","items":{"$ref":"#/components/schemas/ErroDetalhe"}}}},"ObservabilidadeROCDomain":{"type":"object","properties":{"oper":{"$ref":"#/components/schemas/OperacaoConsumoDomain"},"objetos":{"type":"array","items":{"$ref":"#/components/schemas/ObservabilidadeItemDomain"}},"total":{"$ref":"#/components/schemas/ValoresTotaisDomain"}}},"NfseValidacaoIndicadorOperacaoInput":{"type":"object","properties":{"cTribNac":{"type":"string","description":"Código de Tributação Nacional - opcional (4 dígitos)","example":"0101","pattern":"^\\d{4}$"},"cIndOp":{"type":"string","description":"Código do Indicador de Operação (6 dígitos)","example":100301,"minLength":1,"pattern":"^\\d{6}$"},"cClassTrib":{"type":"string","description":"Código de Classificação Tributária (6 dígitos)","example":620001,"minLength":1,"pattern":"^\\d{6}$"},"nbs":{"type":"string","description":"Código NBS - Nomenclatura Brasileira de Serviços (9 dígitos)","example":115021000,"minLength":1,"pattern":"^\\d{9}$"},"dataOcorrenciaFatoGerador":{"type":"string","format":"date","description":"Data de ocorrência do fato gerador da operação (formato: YYYY-MM-DD)","example":"2026-01-15"}},"required":["cClassTrib","cIndOp","dataOcorrenciaFatoGerador","nbs"]},"NfseValidacaoIndicadorOperacaoOutput":{"type":"object","description":"Resultado da validação do indicador de operação","properties":{"cTribNac":{"type":"string","description":"Código de Tributação Nacional informado (opcional)","example":"010101"},"cIndOp":{"type":"string","description":"Código do Indicador de Operação informado","example":100301},"cClassTrib":{"type":"string","description":"Código de Classificação Tributária informado","example":"000001"},"nbs":{"type":"string","description":"Código NBS informado","example":115021000},"dataOcorrenciaFatoGerador":{"type":"string","format":"date","description":"Data de ocorrência do fato gerador informada","example":"2025-01-01"},"valido":{"type":"boolean","description":"Indica se a combinação informada é válida","example":true}}},"NfseBaseCalculoInput":{"type":"object","properties":{"anoFatoGerador":{"type":"integer","format":"int32","description":"Ano do Fato Gerador","example":2026},"valorServico":{"type":"number","description":"Valor do Serviço","example":105.0},"descontoIncondicional":{"type":"number","default":"0.00","description":"Desconto Incondicional","example":5.0},"vCalcReeRepRes":{"type":"number","default":"0.00","description":"Valor monetário (R$) total relativo ao fornecimento próprio de bens materiais ou relacionados a operações de terceiros, objeto de reembolso, repasse ou ressarcimento pelo recebedor, já tributados e aqui referenciados e que não integram da base de cálculo (BC) do ISSQN, do IBS e da CBS.","example":5.0},"vCalcDedRedIBSCBS":{"type":"number","default":"0.00","description":"Valor monetário (R$) total relativo aos valores de dedução e redução da Base de Cálculo do IBS e da CBS referentes às operações de locação, cessão onerosa ou arrendamento de bens imóveis, e serviços médicos.","example":5.0},"iss":{"type":"number","default":"0.00","description":"Imposto sobre Serviços de Qualquer Natureza","example":5.0},"pis":{"type":"number","default":"0.00","description":"Programa de Integração Social","example":5.0},"cofins":{"type":"number","default":"0.00","description":"Contribuição para o Financiamento da Seguridade Social","example":5.0}},"required":["anoFatoGerador","valorServico"]},"NfseBaseCalculoOutput":{"type":"object","properties":{"baseCalculo":{"type":"number","description":"Base de cálculo da operação","example":100.55}}},"BaseCalculoISMercadoriasInput":{"type":"object","properties":{"anoFatoGerador":{"type":"integer","format":"int32","description":"Ano do Fato Gerador","example":2027},"valorBem":{"type":"number","default":"0.00","description":"Valor do bem (antes dos descontos/ajustes)","example":105.0},"ajusteAcrescimos":{"type":"number","default":"0.00","description":"Ajuste decorrentes de acréscimos","example":5.0},"juros":{"type":"number","default":"0.00","description":"Juros","example":5.0},"multas":{"type":"number","default":"0.00","description":"Multas","example":5.0},"encargos":{"type":"number","default":"0.00","description":"Encargos","example":5.0},"freteCobrado":{"type":"number","default":"0.00","description":"Frete cobrado como parte do valor da operação","example":5.0},"outrosTributos":{"type":"number","default":"0.00","description":"Tributos (exceto CBS, IBS e o próprio IS) e preços públicos, inclusive tarifas","example":5.0},"demaisImportancias":{"type":"number","default":"0.00","description":"Demais importâncias cobradas ou recebidas como parte do valor da operação, inclusive seguros e taxas","example":5.0},"icms":{"type":"number","default":"0.00","description":"ICMS","example":5.0},"iss":{"type":"number","default":"0.00","description":"ISS","example":5.0},"cosip":{"type":"number","default":"0.00","description":"COSIP","example":5.0},"ipi":{"type":"number","default":"0.00","description":"IPI","example":5.0},"descontoIncondicional":{"type":"number","default":"0.00","description":"Desconto Incondicional","example":5.0},"bonificacao":{"type":"number","default":"0.00","description":"Bonificações que constem do respectivo documento fiscal e não dependam de evento posterior, nos termos § 2º do Art. 417","example":5.0},"devolucaoVendas":{"type":"number","default":"0.00","description":"Devoluções de bens vendidos nos termos do Art. 418","example":5.0}},"required":["anoFatoGerador"]},"BaseCalculoISMercadoriasModel":{"type":"object","properties":{"baseCalculo":{"type":"number","description":"Base de cálculo da operação","example":100.55}}},"BaseCalculoCibsInput":{"type":"object","properties":{"anoFatoGerador":{"type":"integer","format":"int32","description":"Ano do Fato Gerador","example":2026},"valorBem":{"type":"number","default":"0.00","description":"Valor do Bem (antes dos descontos/ajustes)","example":105.0},"ajusteAcrescimos":{"type":"number","default":"0.00","description":"Ajuste decorrentes de acréscimos","example":5.0},"juros":{"type":"number","default":"0.00","description":"Juros","example":5.0},"multas":{"type":"number","default":"0.00","description":"Multas","example":5.0},"encargos":{"type":"number","default":"0.00","description":"Encargos","example":5.0},"frete":{"type":"number","default":"0.00","description":"Frete cobrado como parte do valor da operação","example":5.0},"impostoSeletivo":{"type":"number","default":"0.00","description":"Imposto Seletivo","example":5.0},"outrosTributos":{"type":"number","default":"0.00","description":"Outros tributos (exceto CBS e IBS) e preços públicos, inclusive tarifas","example":5.0},"demaisImportancias":{"type":"number","default":"0.00","description":"Demais importâncias cobradas ou recebidas como parte do valor da operação, inclusive seguros e taxas","example":5.0},"icms":{"type":"number","default":"0.00","description":"ICMS","example":5.0},"iss":{"type":"number","default":"0.00","description":"ISS","example":5.0},"pis":{"type":"number","default":"0.00","description":"PIS","example":5.0},"pisImportacao":{"type":"number","default":"0.00","description":"PIS Importação","example":5.0},"cofins":{"type":"number","default":"0.00","description":"COFINS","example":5.0},"cofinsImportacao":{"type":"number","default":"0.00","description":"COFINS Importação","example":5.0},"cosip":{"type":"number","default":"0.00","description":"COSIP","example":5.0},"ipi":{"type":"number","default":"0.00","description":"IPI","example":5.0},"descontoIncondicional":{"type":"number","default":"0.00","description":"Desconto Incondicional","example":5.0}},"required":["anoFatoGerador"]},"TipoDocumentoDTO":{"type":"object","properties":{"nome":{"type":"string"},"mnemonico":{"type":"string"},"versaoNotaTecnica":{"type":"string"}}},"ErroDescricao":{"type":"object","properties":{"codigo":{"type":"string"},"titulo":{"type":"string"},"descricao":{"type":"string"}}},"NfseSituacaoClassificacaoOutput":{"type":"object","properties":{"codigoSituacaoTributaria":{"type":"string"},"descricaoSituacaoTributaria":{"type":"string"},"codigoClassificacaoTributaria":{"type":"string"},"descricaoClassificacaoTributaria":{"type":"string"}}},"NfseLocalOperacaoOutput":{"type":"object","description":"Informações sobre o local da operação baseado no indicador de operação","properties":{"cIndOp":{"type":"string","description":"Código do Indicador de Operação informado","example":100301},"dataOcorrenciaFatoGerador":{"type":"string","format":"date","description":"Data de ocorrência do fato gerador informada","example":"2026-01-01"},"localOperacao":{"type":"string","description":"Local da operação","example":"Local do estabelecimento prestador"}}},"VersaoOutput":{"type":"object","properties":{"versaoApp":{"type":"string","description":"Versão do aplicativo","example":"0.0.0-SNAPSHOT"},"versaoDb":{"type":"string","description":"Versão do banco de dados","example":"1.0.0"},"descricaoVersaoDb":{"type":"string","description":"Descrição da versão do banco de dados","example":"Versão de homologação"},"dataVersaoDb":{"type":"string","description":"Data da versão do banco de dados","example":"2026-01-01"},"ambiente":{"type":"string","description":"Ambiente da aplicação","example":"Online"}}},"UfDadosAbertosOutput":{"type":"object","properties":{"sigla":{"type":"string","description":"Sigla da UF","example":"RS"},"nome":{"type":"string","description":"Nome da UF","example":"Rio Grande do Sul"},"codigo":{"type":"integer","format":"int64","description":"Código IBGE da UF","example":43}}},"MunicipioDadosAbertosOutput":{"type":"object","properties":{"codigo":{"type":"integer","format":"int64","description":"Código IBGE do Município","example":4314902},"nome":{"type":"string","description":"Nome do município","example":"Porto Alegre"}}},"TransferenciaIBSDadosAbertosOutput":{"type":"object","properties":{"valor":{"type":"number","description":"Percentual de transferência IBS","example":0.15},"inicioVigencia":{"type":"string","format":"date","description":"Data de início da vigência","example":"2026-01-01"},"fimVigencia":{"type":"string","format":"date","description":"Data de fim da vigência","example":"2026-12-31"}}},"TransferenciaCBSDadosAbertosOutput":{"type":"object","properties":{"valor":{"type":"number","description":"Percentual de transferência CBS","example":0.15},"inicioVigencia":{"type":"string","format":"date","description":"Data de início da vigência","example":"2026-01-01"},"fimVigencia":{"type":"string","format":"date","description":"Data de fim da vigência","example":"2026-12-31"}}},"SituacaoTributariaDadosAbertosOutput":{"type":"object","properties":{"id":{"type":"integer","format":"int64","description":"Identificador único da situacao tributária","example":0},"codigo":{"type":"string","description":"Código da situacao tributária","example":"000"},"descricao":{"type":"string","description":"Descricao da situacao tributária","example":"Tributação Integral"}}},"RedutorCompraGovernamentalDadosAbertosOutput":{"type":"object","properties":{"valor":{"type":"number","description":"Valor do redutor","example":0.6},"inicioVigencia":{"type":"string","format":"date","description":"Data de início da vigência","example":"2026-01-01"},"fimVigencia":{"type":"string","format":"date","description":"Data de fim da vigência","example":"2026-12-31"}}},"NcmDadosAbertosOutput":{"type":"object","properties":{"tributadoPeloImpostoSeletivo":{"type":"boolean","description":"Tributado pelo Imposto Seletivo"},"aliquotaAdValorem":{"type":"number","description":"Alíquota ad valorem do Imposto Seletivo"},"aliquotaAdRem":{"type":"number","description":"Alíquota ad rem do Imposto Seletivo"},"capitulo":{"type":"string","description":"Capítulo da NCM"},"posicao":{"type":"string","description":"Posição da NCM"},"subposicao":{"type":"string","description":"Subposição da NCM"},"item":{"type":"string","description":"Item da NCM"},"subitem":{"type":"string","description":"Subitem da NCM"},"unidade":{"type":"string","description":"Unidade da NCM"}}},"NbsDadosAbertosOutput":{"type":"object","properties":{"tributadoPeloImpostoSeletivo":{"type":"boolean","description":"Tributado pelo Imposto Seletivo"},"aliquotaAdValorem":{"type":"number","description":"Alíquota ad valorem do Imposto Seletivo"},"capitulo":{"type":"string","description":"Capítulo da NBS"},"posicao":{"type":"string","description":"Posição da NBS"},"subposicao1":{"type":"string","description":"Subposição 1 da NBS"},"subposicao2":{"type":"string","description":"Subposição 2 da NBS"},"item":{"type":"string","description":"Item da NBS"}}},"NbsListaDadosAbertosOutput":{"type":"object","properties":{"codigo":{"type":"string","description":"Código NBS","example":10101},"descricao":{"type":"string","description":"Descrição da NBS","example":"Serviços de construção de edificações"}}},"FundamentacaoClassificacaoDadosAbertosOutput":{"type":"object","properties":{"codigoClassificacaoTributaria":{"type":"string","description":"Código da classificação tributária vinculada à fundamentacao legal","example":"000001"},"descricaoClassificacaoTributaria":{"type":"string","description":"Descrição da classificação tributária vinculada à fundamentacao legal","example":"000001"},"codigoSituacaoTributaria":{"type":"string","description":"Código da situação tributária vinculada à fundamentacao legal","example":"000001"},"descricaoSituacaoTributaria":{"type":"string","description":"Descrição da situação tributária vinculada à fundamentacao legal","example":"000001"},"conjuntoTributo":{"type":"string","description":"Tributo(s) vinculado(s) à fundamentacao legal","example":"CBS e IBS"},"texto":{"type":"string","description":"Texto da fundamentação legal"},"textoCurto":{"type":"string","description":"Texto curto da fundamentação legal"},"referenciaNormativa":{"type":"string","description":"Referência normativa da fundamentação legal"}}},"ClassificacaoTributariaDadosAbertosOutput":{"type":"object","properties":{"codigo":{"type":"string","description":"Código da classificação tributária","example":"000001"},"descricao":{"type":"string","description":"Descrição da classificação tributária"},"tipoAliquota":{"type":"string","description":"Tipo de alíquota da classificação tributária"},"nomenclatura":{"type":"string","description":"Nomenclatura da classificação tributária"},"descricaoTratamentoTributario":{"type":"string","description":"Descrição do tratamento tributário da classificação tributária"},"incompativelComSuspensao":{"type":"boolean"},"exigeGrupoDesoneracao":{"type":"boolean"},"possuiPercentualReducao":{"type":"boolean"},"indicaApropriacaoCreditoAdquirenteCbs":{"type":"boolean"},"indicaApropriacaoCreditoAdquirenteIbs":{"type":"boolean"},"indicaCreditoPresumidoFornecedor":{"type":"boolean"},"indicaCreditoPresumidoAdquirente":{"type":"boolean"},"creditoOperacaoAntecedente":{"type":"string"},"percentualReducaoCbs":{"type":"number"},"percentualReducaoIbsUf":{"type":"number"},"percentualReducaoIbsMun":{"type":"number"},"tiposDfeClassificacao":{"type":"array","items":{"$ref":"#/components/schemas/TipoDfeClassificacaoDadosAbertosOutput"}},"dataAtualizacao":{"type":"string","format":"date","description":"Data de atualização da classificação tributária (YYYY-MM-DD)","example":"2025-12-15"}}},"TipoDfeClassificacaoDadosAbertosOutput":{"type":"object","properties":{"tipo":{"type":"integer","format":"int32","description":"Tipo de DFE","example":55},"sigla":{"type":"string","description":"Sigla do DFE","example":"NF-e"},"descricao":{"type":"string","description":"Descrição do DFE","example":"Documento Fiscal Eletrônico"}}},"ValidadeDfeClassificacaoTributariaDadosAbertosOutput":{"type":"object","properties":{"siglaDfeInformado":{"type":"string","description":"Sigla do DFE informado","example":"NFSe"},"validoParaSiglaDfeInformado":{"type":"boolean","description":"Indica se a classificação tributária é válida para a sigla do DFE informado","example":true},"nomenclatura":{"type":"string","description":"Nomenclatura da classificação tributária informada","example":"NBS ou NCM"},"exigeGrupoTributacaoRegular":{"type":"boolean","description":"Indica se a classificação tributária exige grupo de tributação regular","example":false},"permiteDiferimento":{"type":"boolean","description":"Indica se a classificação tributária permite diferimento","example":false},"possibilidadeCreditoPresumido":{"type":"boolean","description":"Indica se há possibilidade de crédito presumido na operação","example":false}}},"AliquotaDadosAbertosOutput":{"type":"object","properties":{"aliquotaReferencia":{"type":"number","description":"Alíquota de referência","example":0},"aliquotaPropria":{"type":"number","description":"Alíquota própria","example":0},"formaAplicacao":{"type":"string","description":"Forma de aplicação da alíquota própria em relação à alíquota de referência","enum":["SUBSTITUICAO","ACRESCIMO","DECRESCIMO"],"example":"ACRESCIMO"}}}}}} \ No newline at end of file +{"openapi":"3.1.0","info":{"title":"OpenAPI definition","version":"v0"},"servers":[{"url":"https://consumo.tributos.gov.br:18985/servico/calcular-tributos-consumo/api","description":"Generated server url"}],"tags":[{"name":"Base de Cálculo - VERSÃO BETA","description":"Serviço para Base de Cálculo"},{"name":"Calculadora - VERSÃO BETA","description":"Calculadora de Tributos"},{"name":"NFS-e - VERSÃO BETA","description":"Serviço para cálculo de Base de Cálculo de NFS-e"},{"name":"Dados Abertos - VERSÃO BETA","description":"Consultas para os Dados Abertos"},{"name":"Observabilidade - Calculadora","description":"Endpoint de observabilidade da Calculadora de Tributos"},{"name":"Pedágio - VERSÃO BETA","description":"IVA - Calculadora de Tributos para o Pedágio"}],"paths":{"/calculadora/xml/validate":{"get":{"tags":["Calculadora - VERSÃO BETA"],"summary":"Tipos de DFe","description":"Tipos de DFe para validação de XML","operationId":"getDocumentosValidacao","responses":{"200":{"description":"Consulta realizada com sucesso","content":{"application/json":{"schema":{"$ref":"#/components/schemas/TipoDocumentoDTO"},"examples":{"Tipos de DFe Example":{"description":"Tipos de DFe Example","value":[{"nome":"NFe","mnemonico":"nfe","versaoNotaTecnica":"v1.30"},{"nome":"NFCe","mnemonico":"nfce","versaoNotaTecnica":"v1.30"},{"nome":"NFSe","mnemonico":"nfse","versaoNotaTecnica":"ND"},{"nome":"CTe","mnemonico":"cte","versaoNotaTecnica":"v1.10"},{"nome":"CTe Simplificado","mnemonico":"cte-simplificado","versaoNotaTecnica":"v1.10"},{"nome":"BPe","mnemonico":"bpe","versaoNotaTecnica":"v1.10"},{"nome":"NF3E","mnemonico":"nf3e","versaoNotaTecnica":"v1.10"}]}}}}},"500":{"description":"Erro interno na API","content":{"application/problem+json":{"schema":{"$ref":"#/components/schemas/ProblemDetail"},"examples":{"Internal Server Error Example":{"description":"Internal Server Error Example","value":{"type":"http://url-ambiente/errors/erro-interno","title":"Erro interno na API","status":500,"detail":"Falha ao processar a requisição.","instance":"/api/calculadora/xml/validate"}}}}}}}},"post":{"tags":["Calculadora - VERSÃO BETA"],"summary":"Validação de XML","description":"Valida os dados no formato XML","operationId":"validate","parameters":[{"name":"tipo","in":"query","description":"Tipo do XML","required":true,"schema":{"type":"string","enum":["nfe","nfce","nfse","cte","cte-simplificado","bpe","bpe-tm","nf3e"]}},{"name":"subtipo","in":"query","description":"Subtipo do XML","required":true,"schema":{"type":"string","enum":["grupo","nota"]}}],"requestBody":{"description":"XML a ser validado","content":{"application/xml":{"schema":{"type":"string"}}},"required":true},"responses":{"200":{"description":"Validação realizada com sucesso","content":{"application/json":{"schema":{"type":"boolean"}}}},"400":{"description":"Estrutura e/ou dados informados em formato não reconhecido","content":{"application/problem+json":{"schema":{"$ref":"#/components/schemas/ProblemDetail"}}}},"404":{"description":"Erro na URL da requisição","content":{"application/problem+json":{"schema":{"$ref":"#/components/schemas/ProblemDetail"}}}},"422":{"description":"Erro de validação","content":{"application/problem+json":{"schema":{"$ref":"#/components/schemas/ProblemDetail"}}}},"500":{"description":"Erro interno na API","content":{"application/problem+json":{"schema":{"$ref":"#/components/schemas/ProblemDetail"}}}}}}},"/calculadora/xml/generate":{"get":{"tags":["Calculadora - VERSÃO BETA"],"summary":"Tipos de DFe","description":"Tipos de DFe para geração de XML","operationId":"getDocumentosGeracao","responses":{"200":{"description":"Consulta realizada com sucesso","content":{"application/json":{"schema":{"$ref":"#/components/schemas/TipoDocumentoDTO"},"examples":{"Tipos de DFe Example":{"description":"Tipos de DFe Example","value":[{"nome":"NFe","mnemonico":"nfe","versaoNotaTecnica":"v1.30"},{"nome":"NFCe","mnemonico":"nfce","versaoNotaTecnica":"v1.30"},{"nome":"CTe","mnemonico":"cte","versaoNotaTecnica":"v1.10"},{"nome":"CTe Simplificado","mnemonico":"cte-simplificado","versaoNotaTecnica":"v1.10"},{"nome":"BPe","mnemonico":"bpe","versaoNotaTecnica":"v1.10"},{"nome":"NF3E","mnemonico":"nf3e","versaoNotaTecnica":"v1.10"}]}}}}},"500":{"description":"Erro interno na API","content":{"application/problem+json":{"schema":{"$ref":"#/components/schemas/ProblemDetail"},"examples":{"Internal Server Error Example":{"description":"Internal Server Error Example","value":{"type":"http://url-ambiente/errors/erro-interno","title":"Erro interno na API","status":500,"detail":"Falha ao processar a requisição.","instance":"/api/calculadora/xml/generate"}}}}}}}},"post":{"tags":["Calculadora - VERSÃO BETA"],"summary":"Geração de XML","description":"Converte os dados para o formato XML","operationId":"generate","parameters":[{"name":"tipo","in":"query","description":"Tipo do documento","required":true,"schema":{"type":"string","enum":["nfe","nfce","nfse","cte","cte-simplificado","bpe","bpe-tm","nf3e"]}}],"requestBody":{"description":"Dados do CBS/IBS/IS","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ROCDomain"}}},"required":true},"responses":{"200":{"description":"Conversão realizada com sucesso","content":{"application/xml":{"schema":{"type":"string"}}}},"400":{"description":"Estrutura e/ou dados informados em formato não reconhecido","content":{"application/problem+json":{"schema":{"$ref":"#/components/schemas/ProblemDetail"}}}},"404":{"description":"Erro na URL da requisição","content":{"application/problem+json":{"schema":{"$ref":"#/components/schemas/ProblemDetail"}}}},"422":{"description":"Erro de validação","content":{"application/problem+json":{"schema":{"$ref":"#/components/schemas/ProblemDetail"}}}},"500":{"description":"Erro interno na API","content":{"application/problem+json":{"schema":{"$ref":"#/components/schemas/ProblemDetail"}}}}}}},"/calculadora/regime-geral":{"post":{"tags":["Calculadora - VERSÃO BETA"],"summary":"Cálculo do tributo","description":"Calcula os tributos a partir dos dados de uma operação de consumo","operationId":"calcularTributos","requestBody":{"description":"Dados de uma operação de consumo","content":{"application/json":{"schema":{"$ref":"#/components/schemas/OperacaoInput"}}},"required":true},"responses":{"200":{"description":"Cálculo realizado com sucesso","headers":{"x-warning-dados-simulados":{"description":"Indica que os dados são simulados. Valores possíveis: 1 (alíquotas da CBS e do IBS ainda não definidas em lei), 2 (alíquotas da CBS e do IBS, e redutor em Compras Governamentais ainda não definidos em lei), 3 (alíquotas da CBS e do IBS, alíquotas e Classificações Tributárias do IS ainda não definidos em lei), 4 (alíquotas da CBS e do IBS, redutor em Compras Governamentais fictícios, alíquotas e Classificações Tributárias do IS ainda não definidos em lei), 5 (para o cClassTrib informado a alíquota ainda não foi definida em lei). ","style":"simple","schema":{"type":"integer","example":1}}},"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ROCDomain"}}}},"400":{"description":"Estrutura e/ou dados informados em formato não reconhecido","content":{"application/problem+json":{"schema":{"$ref":"#/components/schemas/ProblemDetail"}}}},"404":{"description":"Erro na URL da requisição","content":{"application/problem+json":{"schema":{"$ref":"#/components/schemas/ProblemDetail"}}}},"422":{"description":"Erro de validação","content":{"application/problem+json":{"schema":{"$ref":"#/components/schemas/ProblemDetail"}}}},"500":{"description":"Erro interno na API","content":{"application/problem+json":{"schema":{"$ref":"#/components/schemas/ProblemDetail"}}}}}}},"/calculadora/pedagio":{"post":{"tags":["Pedágio - VERSÃO BETA"],"summary":"Cálculo do tributo","description":"Calculo do pedágio","operationId":"calcularTributo","requestBody":{"description":"Dados para cálculo do pedágio","content":{"application/json":{"schema":{"$ref":"#/components/schemas/PedagioInput"}}},"required":true},"responses":{"200":{"description":"Cálculo realizado com sucesso","headers":{"x-warning-dados-simulados":{"description":"Indica que os dados são simulados. Valores possíveis: 1 (alíquotas da CBS e do IBS ainda não definidas em lei).","style":"simple","schema":{"type":"integer","example":1}}},"content":{"application/json":{"schema":{"$ref":"#/components/schemas/PedagioOutput"}}}},"400":{"description":"Estrutura e/ou dados informados em formato não reconhecido","content":{"application/problem+json":{"schema":{"$ref":"#/components/schemas/ProblemDetail"}}}},"404":{"description":"Erro na URL da requisição","content":{"application/problem+json":{"schema":{"$ref":"#/components/schemas/ProblemDetail"}}}},"422":{"description":"Erro de validação","content":{"application/problem+json":{"schema":{"$ref":"#/components/schemas/ProblemDetail"}}}},"500":{"description":"Erro interno na API","content":{"application/problem+json":{"schema":{"$ref":"#/components/schemas/ProblemDetail"}}}}}}},"/calculadora/observabilidade/regime-geral":{"post":{"tags":["Observabilidade - Calculadora"],"summary":"Cálculo com observabilidade","description":"Processa todos os itens acumulando erros individuais. Retorna resultado parcial com estado de cada item.","operationId":"calcularTributosObservabilidade","requestBody":{"description":"Dados de uma operação de consumo","content":{"application/json":{"schema":{"$ref":"#/components/schemas/OperacaoInput"}}},"required":true},"responses":{"200":{"description":"Processamento realizado (itens podem ter erros individuais)","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ObservabilidadeROCDomain"}}}},"400":{"description":"Estrutura e/ou dados informados em formato não reconhecido","content":{"application/problem+json":{"schema":{"$ref":"#/components/schemas/ProblemDetail"}}}},"422":{"description":"Erro de validação global (UF, Município, data do fato gerador)","content":{"application/problem+json":{"schema":{"$ref":"#/components/schemas/ProblemDetail"}}}},"500":{"description":"Erro interno na API","content":{"application/problem+json":{"schema":{"$ref":"#/components/schemas/ProblemDetail"}}}}}}},"/calculadora/nfse/indicador-operacao/validate":{"post":{"tags":["NFS-e - VERSÃO BETA"],"summary":"Validação de Indicador de Operação","description":"Valida se o cIndOp é compatível com cClassTrib, NBS e cTribNac (opcional)","operationId":"validarIndicadorOperacao","requestBody":{"description":"Dados para validação: cIndOp, cClassTrib, NBS e cTribNac (opcional)","content":{"application/json":{"schema":{"$ref":"#/components/schemas/NfseValidacaoIndicadorOperacaoInput"}}},"required":true},"responses":{"200":{"description":"Validação realizada com sucesso","content":{"application/json":{"schema":{"$ref":"#/components/schemas/NfseValidacaoIndicadorOperacaoOutput"}}}},"400":{"description":"Requisição com problema","content":{"application/problem+json":{"schema":{"$ref":"#/components/schemas/ProblemDetail"}}}},"404":{"description":"Erro na URL da requisição","content":{"application/problem+json":{"schema":{"$ref":"#/components/schemas/ProblemDetail"}}}},"500":{"description":"Erro interno na API","content":{"application/problem+json":{"schema":{"$ref":"#/components/schemas/ProblemDetail"}}}}}}},"/calculadora/nfse/base-calculo":{"post":{"tags":["NFS-e - VERSÃO BETA"],"summary":"Base de Cálculo NFS-e","description":"Afere a Base de Cálculo de uma NFS-e no período de transição. ATENÇÃO: Os campos PIS e COFINS não podem ser informados a partir de 2027. O campo ISS não pode ser informado a partir de 2033.","operationId":"calcularBaseCalculo","requestBody":{"description":"Dados da base de cálculo da NFS-e","content":{"application/json":{"schema":{"$ref":"#/components/schemas/NfseBaseCalculoInput"}}},"required":true},"responses":{"200":{"description":"Cálculo realizado com sucesso","content":{"application/json":{"schema":{"$ref":"#/components/schemas/NfseBaseCalculoOutput"}}}},"400":{"description":"Estrutura e/ou dados informados em formato não reconhecido ou campos incompatíveis com o ano do fato gerador informado (PIS e COFINS a partir de 2027; ISS a partir de 2033)","content":{"application/problem+json":{"schema":{"$ref":"#/components/schemas/ProblemDetail"}}}},"404":{"description":"Erro na URL da requisição","content":{"application/problem+json":{"schema":{"$ref":"#/components/schemas/ProblemDetail"}}}},"422":{"description":"Erro de validação","content":{"application/problem+json":{"schema":{"$ref":"#/components/schemas/ProblemDetail"}}}},"500":{"description":"Erro interno na API","content":{"application/problem+json":{"schema":{"$ref":"#/components/schemas/ProblemDetail"}}}}}}},"/calculadora/base-calculo/is-mercadorias":{"post":{"tags":["Base de Cálculo - VERSÃO BETA"],"summary":"Imposto Seletivo","description":"Afere a Base de Cálculo do Imposto Seletivo de uma operação de consumo. ATENÇÃO: Os campos ICMS e ISS não podem ser informados a partir de 2033.","operationId":"calcularISMercadorias","requestBody":{"description":"Dados da base de cálculo do Imposto Seletivo","content":{"application/json":{"schema":{"$ref":"#/components/schemas/BaseCalculoISMercadoriasInput"}}},"required":true},"responses":{"200":{"description":"Cálculo realizado com sucesso","content":{"application/json":{"schema":{"$ref":"#/components/schemas/BaseCalculoISMercadoriasModel"}}}},"400":{"description":"Estrutura e/ou dados informados em formato não reconhecido ou campos incompatíveis com o ano do fato gerador informado (ICMS e ISS a partir de 2033)","content":{"application/problem+json":{"schema":{"$ref":"#/components/schemas/ProblemDetail"}}}},"404":{"description":"Erro na URL da requisição","content":{"application/problem+json":{"schema":{"$ref":"#/components/schemas/ProblemDetail"}}}},"422":{"description":"Erro de validação","content":{"application/problem+json":{"schema":{"$ref":"#/components/schemas/ProblemDetail"}}}},"500":{"description":"Erro interno na API","content":{"application/problem+json":{"schema":{"$ref":"#/components/schemas/ProblemDetail"}}}}}}},"/calculadora/base-calculo/cbs-ibs-mercadorias":{"post":{"tags":["Base de Cálculo - VERSÃO BETA"],"summary":"CIBS","description":"Afere a Base de Cálculo da CBS/IBS de uma operação de consumo. ATENÇÃO: Os campos PIS, COFINS, PIS Importação e COFINS Importação não podem ser informados a partir de 2027. Os campos ICMS e ISS não podem ser informados a partir de 2033.","operationId":"calcularCibs","requestBody":{"description":"Dados da base de cálculo do CIBS","content":{"application/json":{"schema":{"$ref":"#/components/schemas/BaseCalculoCibsInput"}}},"required":true},"responses":{"200":{"description":"Cálculo realizado com sucesso","content":{"application/json":{"schema":{"$ref":"#/components/schemas/BaseCalculoISMercadoriasModel"}}}},"400":{"description":"Estrutura e/ou dados informados em formato não reconhecido ou campos incompatíveis com o ano do fato gerador informado (PIS, COFINS, PIS Importação e COFINS a partir de 2027; ICMS e ISS a partir de 2033)","content":{"application/problem+json":{"schema":{"$ref":"#/components/schemas/ProblemDetail"}}}},"404":{"description":"Erro na URL da requisição","content":{"application/problem+json":{"schema":{"$ref":"#/components/schemas/ProblemDetail"}}}},"422":{"description":"Erro de validação","content":{"application/problem+json":{"schema":{"$ref":"#/components/schemas/ProblemDetail"}}}},"500":{"description":"Erro interno na API","content":{"application/problem+json":{"schema":{"$ref":"#/components/schemas/ProblemDetail"}}}}}}},"/calculadora/observabilidade/erros":{"get":{"tags":["Observabilidade - Calculadora"],"summary":"Consultar descrição de erro","description":"Retorna título e descrição em PT-BR para o código de erro informado (REG, CAL ou VAL).","operationId":"buscarErro","parameters":[{"name":"codigo","in":"query","description":"Código do erro (ex: REG-020, CAL-001, VAL-001)","required":true,"schema":{"type":"string"}}],"responses":{"200":{"description":"Descrição do erro encontrada","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErroDescricao"}}}},"404":{"description":"Código de erro não encontrado","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErroDescricao"}}}}}}},"/calculadora/nfse/situacoes-classificacoes-tributarias":{"get":{"tags":["NFS-e - VERSÃO BETA"],"summary":"Consultar Classificações e Situações Tributárias por NBS","description":"Retorna todas as combinações de Classificações Tributárias e Situações Tributárias associadas a um código NBS em uma data específica","operationId":"consultarSituacoesClassificacoesPorNbs","parameters":[{"name":"nbs","in":"query","description":"Código NBS sem formatação","required":true,"schema":{"type":"string","pattern":"^\\d{9}$"},"example":101011100},{"name":"data","in":"query","description":"Data no padrão ISO 8601 (yyyy-MM-dd)","required":true,"schema":{"type":"string","format":"date"},"example":"2026-06-01"}],"responses":{"200":{"description":"Consulta realizada com sucesso","content":{"application/json":{"schema":{"$ref":"#/components/schemas/NfseSituacaoClassificacaoOutput"},"examples":{"Classificações e Situações Example":{"description":"Classificações e Situações Example","value":[{"codigoClassificacaoTributaria":"200045","descricaoClassificacaoTributaria":"Operações relacionadas a projetos de reabilitação urbana de zonas históricas e de áreas críticas de recuperação e reconversão urbanística","codigoSituacaoTributaria":"200","descricaoSituacaoTributaria":"Alíquota reduzida"},{"codigoClassificacaoTributaria":"200046","descricaoClassificacaoTributaria":"Operações com bens imóveis","codigoSituacaoTributaria":"200","descricaoSituacaoTributaria":"Alíquota reduzida"}]}}}}},"400":{"description":"Parâmetros inválidos","content":{"application/problem+json":{"schema":{"$ref":"#/components/schemas/ProblemDetail"},"examples":{"Bad Request Example":{"description":"Bad Request Example","value":{"type":"about:blank","title":"Bad Request","status":400,"detail":"NBS deve conter exatamente 9 dígitos numéricos","instance":"/api/calculadora/nfse/classificacoes-situacoes-tributarias"}}}}}},"500":{"description":"Erro interno na API","content":{"application/problem+json":{"schema":{"$ref":"#/components/schemas/ProblemDetail"}}}}}}},"/calculadora/nfse/local-operacao":{"get":{"tags":["NFS-e - VERSÃO BETA"],"summary":"Local da Operação","description":"Consulta o local da operação baseado no código do Indicador de Operação (cIndOp) e data de ocorrência do fato gerador","operationId":"consultarLocalOperacao","parameters":[{"name":"cIndOp","in":"query","description":"Código do Indicador de Operação (6 dígitos)","required":true,"schema":{"type":"string","minLength":1,"pattern":"^\\d{6}$"},"example":100301},{"name":"dataOcorrenciaFatoGerador","in":"query","description":"Data de ocorrência do fato gerador no padrão ISO 8601 (yyyy-MM-dd)","required":true,"schema":{"type":"string","format":"date"},"example":"2026-01-01"}],"responses":{"200":{"description":"Consulta realizada com sucesso","content":{"application/json":{"schema":{"$ref":"#/components/schemas/NfseLocalOperacaoOutput"},"examples":{"Local Operação Example":{"description":"Local Operação Example","value":{"cIndOp":"100301","dataOcorrenciaFatoGerador":"2026-01-01","codigoLocalFornecimento":11,"localFornecimento":"Local do domicílio principal do adquirente residente ou domiciliado no País. Nas aquisições indicadas no art. 11, §4º, II, considera-se domicílio principal do adquirente o estabelecimentro matriz","codigoLocalIncidencia":2,"localIncidencia":"Endereço do Tomador/Adquirente"}}}}}},"400":{"description":"Requisição com problema","content":{"application/problem+json":{"schema":{"$ref":"#/components/schemas/ProblemDetail"},"examples":{"Bad Request Example":{"description":"Bad Request Example","value":{"type":"about:blank","title":"Bad Request","status":400,"detail":"Required parameter 'cIndOp' is not present.","instance":"/api/calculadora/nfse/local-operacao"}}}}}},"404":{"description":"Erro na URL da requisição","content":{"application/problem+json":{"schema":{"$ref":"#/components/schemas/ProblemDetail"},"examples":{"Not Found Example":{"description":"Not Found Example","value":{"type":"about:blank","title":"Not Found","status":404,"detail":"No static resource calculadora/nfse/local-operacao.","instance":"/api/calculadora/nfse/local-operacao-invalido"}}}}}},"500":{"description":"Erro interno na API","content":{"application/problem+json":{"schema":{"$ref":"#/components/schemas/ProblemDetail"},"examples":{"Internal Server Error Example":{"description":"Internal Server Error Example","value":{"type":"http://url-ambiente/errors/erro-interno","title":"Erro interno na API","status":500,"detail":"Falha ao processar a requisição.","instance":"/api/calculadora/nfse/local-operacao"}}}}}}}}},"/calculadora/nfse/locais-incidencia":{"get":{"tags":["NFS-e - VERSÃO BETA"],"summary":"Locais de Incidência","description":"Retorna a lista de códigos e descrições dos locais de incidência. Se o parâmetro codigo for informado, retorna apenas o valor correspondente.","operationId":"consultarLocaisIncidencia","parameters":[{"name":"codigo","in":"query","description":"Código do local de incidência (opcional)","required":false,"schema":{"type":"integer","format":"int32"},"example":3}],"responses":{"200":{"description":"Consulta realizada com sucesso","content":{"application/json":{"schema":{"$ref":"#/components/schemas/NfseCodigoDescricaoOutput"}}}},"400":{"description":"Código inválido","content":{"application/problem+json":{"schema":{"$ref":"#/components/schemas/ProblemDetail"}}}},"500":{"description":"Erro interno na API","content":{"application/problem+json":{"schema":{"$ref":"#/components/schemas/ProblemDetail"}}}}}}},"/calculadora/nfse/locais-fornecimento":{"get":{"tags":["NFS-e - VERSÃO BETA"],"summary":"Locais de Fornecimento","description":"Retorna a lista de códigos e descrições dos locais de fornecimento. Se o parâmetro codigo for informado, retorna apenas o valor correspondente.","operationId":"consultarLocaisFornecimento","parameters":[{"name":"codigo","in":"query","description":"Código do local de fornecimento (opcional)","required":false,"schema":{"type":"integer","format":"int32"},"example":5}],"responses":{"200":{"description":"Consulta realizada com sucesso","content":{"application/json":{"schema":{"$ref":"#/components/schemas/NfseCodigoDescricaoOutput"}}}},"400":{"description":"Código inválido","content":{"application/problem+json":{"schema":{"$ref":"#/components/schemas/ProblemDetail"}}}},"500":{"description":"Erro interno na API","content":{"application/problem+json":{"schema":{"$ref":"#/components/schemas/ProblemDetail"}}}}}}},"/calculadora/nfse/indicador-operacao":{"get":{"tags":["NFS-e - VERSÃO BETA"],"summary":"Indicador de Operação","description":"Consulta os indicadores de operação baseado na data de ocorrência do fato gerador","operationId":"consultarIndicadoresOperacao","parameters":[{"name":"dataOcorrenciaFatoGerador","in":"query","description":"Data de ocorrência do fato gerador no padrão ISO 8601 (yyyy-MM-dd)","required":true,"schema":{"type":"string","format":"date"},"example":"2026-01-01"},{"name":"nbs","in":"query","description":"Código NBS (9 dígitos numéricos) - quando informado, retorna campos adicionais prestacaoServicoOnerosa e adquirenteExterior","required":false,"schema":{"type":"string","pattern":"^\\d{9}$"},"example":123456789}],"responses":{"200":{"description":"Consulta realizada com sucesso","content":{"application/json":{"schema":{"$ref":"#/components/schemas/NfseIndicadorOperacaoOutput"},"examples":{"Indicador Operação Example":{"description":"Indicador Operação Example","value":[{"cIndOp":"020101","tipoOperacao":"Operação com bem imóvel, bem imaterial, inclusive direito, relacionada a bem imóvel","codigoLocalFornecimento":14,"localFornecimento":"Localidade do imóvel","codigoLocalIncidencia":6,"localIncidencia":"Localidade do Imóvel"},{"cIndOp":"020201","tipoOperacao":"Serviço prestado fisicamente sobre bem imóvel","codigoLocalFornecimento":14,"localFornecimento":"Localidade do imóvel","codigoLocalIncidencia":6,"localIncidencia":"Localidade do Imóvel"},{"cIndOp":"020301","tipoOperacao":"Serviço de administração e intermediação de bem imóvel","codigoLocalFornecimento":14,"localFornecimento":"Localidade do imóvel","codigoLocalIncidencia":6,"localIncidencia":"Localidade do Imóvel"}]},"Indicador Operação com NBS Example":{"description":"Indicador Operação com NBS Example","value":[{"cIndOp":"100301","tipoOperacao":"Demais serviços, em operações onerosas","codigoLocalFornecimento":11,"localFornecimento":"Local do domicílio principal do adquirente residente ou domiciliado no País. Nas aquisições indicadas no art. 11, §4º, II, considera-se domicílio principal do adquirente o estabelecimentro matriz","codigoLocalIncidencia":2,"localIncidencia":"Endereço do Tomador/Adquirente","prestacaoServicoOnerosa":true,"adquirenteExterior":false}]}}}}},"400":{"description":"Requisição com problema","content":{"application/problem+json":{"schema":{"$ref":"#/components/schemas/ProblemDetail"},"examples":{"Bad Request Example":{"description":"Bad Request Example","value":{"type":"about:blank","title":"Bad Request","status":400,"detail":"Required parameter 'dataOcorrenciaFatoGerador' is not present.","instance":"/api/calculadora/nfse/indicador-operacao"}}}}}},"500":{"description":"Erro interno na API","content":{"application/problem+json":{"schema":{"$ref":"#/components/schemas/ProblemDetail"},"examples":{"Internal Server Error Example":{"description":"Internal Server Error Example","value":{"type":"http://url-ambiente/errors/erro-interno","title":"Erro interno na API","status":500,"detail":"Falha ao processar a requisição.","instance":"/api/calculadora/nfse/indicador-operacao"}}}}}}}}},"/calculadora/dados-abertos/versao":{"get":{"tags":["Dados Abertos - VERSÃO BETA"],"summary":"Versão do Aplicativo e do Banco de Dados","description":"Obtém a versão do aplicativo e do banco de dados","operationId":"consultarVersao","responses":{"200":{"description":"Consulta realizada com sucesso","content":{"application/json":{"schema":{"$ref":"#/components/schemas/VersaoOutput"},"examples":{"Versão Example":{"description":"Versão Example","value":{"versaoApp":"0.0.0-SNAPSHOT","versaoDb":"v0011","descricaoVersaoDb":"Nova carga de classificação tributária e novos campos em CLASSIFICACAO_TRIBUTARIA e SITUACAO_TRIBUTARIA.","dataVersaoDb":"2025-10-16","ambiente":"online"}}}}}},"500":{"description":"Erro interno na API","content":{"application/problem+json":{"schema":{"$ref":"#/components/schemas/ProblemDetail"},"examples":{"Internal Server Error Example":{"description":"Internal Server Error Example","value":{"type":"http://url-ambiente/errors/erro-interno","title":"Erro interno na API","status":500,"detail":"Falha ao processar a requisição.","instance":"/api/calculadora/dados-abertos/versao"}}}}}}}}},"/calculadora/dados-abertos/ufs":{"get":{"tags":["Dados Abertos - VERSÃO BETA"],"summary":"Unidade Federativa","description":"Obtém a lista das unidades federativas cadastradas","operationId":"consultarUfs","responses":{"200":{"description":"Consulta realizada com sucesso","content":{"application/json":{"schema":{"$ref":"#/components/schemas/UfDadosAbertosOutput"},"examples":{"UFs Example":{"description":"UFs Example","value":[{"sigla":"RO","nome":"RONDÔNIA","codigo":11},{"sigla":"AC","nome":"ACRE","codigo":12}]}}}}},"400":{"description":"Requisição com problema","content":{"application/problem+json":{"schema":{"$ref":"#/components/schemas/ProblemDetail"},"examples":{"Bad Request Example":{"description":"Bad Request Example","value":{"type":"about:blank","title":"Bad Request","status":400,"detail":"Parâmetro inválido ou ausente.","instance":"/api/calculadora/dados-abertos/ufs"}}}}}},"404":{"description":"Erro na URL da requisição","content":{"application/problem+json":{"schema":{"$ref":"#/components/schemas/ProblemDetail"},"examples":{"Not Found Example":{"description":"Not Found Example","value":{"type":"about:blank","title":"Not Found","status":404,"detail":"No static resource calculadora/dados-abertos/ufs/1.","instance":"/api/calculadora/dados-abertos/ufs/1"}}}}}},"500":{"description":"Erro interno na API","content":{"application/problem+json":{"schema":{"$ref":"#/components/schemas/ProblemDetail"},"examples":{"Internal Server Error Example":{"description":"Internal Server Error Example","value":{"type":"http://url-ambiente/errors/erro-interno","title":"Erro interno na API","status":500,"detail":"Falha ao processar a requisição.","instance":"/api/calculadora/dados-abertos/ufs"}}}}}}}}},"/calculadora/dados-abertos/ufs/municipios":{"get":{"tags":["Dados Abertos - VERSÃO BETA"],"summary":"Município","description":"Obtém a lista dos municípios cadastrados com base na sigla de uma unidade federativa","operationId":"consultarMunicipiosPorSiglaUf","parameters":[{"name":"siglaUf","in":"query","description":"Sigla da unidade federativa","required":true,"schema":{"type":"string"},"example":"RS"}],"responses":{"200":{"description":"Consulta realizada com sucesso","content":{"application/json":{"schema":{"$ref":"#/components/schemas/MunicipioDadosAbertosOutput"},"examples":{"Municípios Example":{"description":"Municípios Example","value":[{"codigo":4314902,"nome":"Porto Alegre"},{"codigo":4305108,"nome":"Caxias do Sul"}]}}}}},"500":{"description":"Erro interno na API","content":{"application/problem+json":{"schema":{"$ref":"#/components/schemas/ProblemDetail"},"examples":{"Internal Server Error Example":{"description":"Internal Server Error Example","value":{"type":"http://url-ambiente/errors/erro-interno","title":"Erro interno na API","status":500,"detail":"Falha ao processar a requisição.","instance":"/api/calculadora/dados-abertos/municipios/RS"}}}}}}}}},"/calculadora/dados-abertos/transferencias-ibs":{"get":{"tags":["Dados Abertos - VERSÃO BETA"],"summary":"Transferência IBS para Entes Governamentais","description":"Obtém a lista de todos os percentuais de transferência IBS cadastrados","operationId":"consultarTransferenciasIBS","responses":{"200":{"description":"Consulta realizada com sucesso","content":{"application/json":{"schema":{"$ref":"#/components/schemas/TransferenciaIBSDadosAbertosOutput"},"examples":{"Transferências IBS Example":{"description":"Transferências IBS Example","value":[{"valor":0,"inicioVigencia":"2026-01-01","fimVigencia":"2026-12-31"},{"valor":100,"inicioVigencia":"2027-01-01"}]}}}}},"500":{"description":"Erro interno na API","content":{"application/problem+json":{"schema":{"$ref":"#/components/schemas/ProblemDetail"},"examples":{"Internal Server Error Example":{"description":"Internal Server Error Example","value":{"type":"http://url-ambiente/errors/erro-interno","title":"Erro interno na API","status":500,"detail":"Falha ao processar a requisição.","instance":"/api/calculadora/dados-abertos/transferencias-ibs"}}}}}}}}},"/calculadora/dados-abertos/transferencias-cbs":{"get":{"tags":["Dados Abertos - VERSÃO BETA"],"summary":"Transferência CBS para Entes Governamentais","description":"Obtém a lista de todos os percentuais de transferência CBS cadastrados","operationId":"consultarTransferenciasCBS","responses":{"200":{"description":"Consulta realizada com sucesso","content":{"application/json":{"schema":{"$ref":"#/components/schemas/TransferenciaCBSDadosAbertosOutput"},"examples":{"Transferências CBS Example":{"description":"Transferências CBS Example","value":"[\n {\n \"valor\": 0.15,\n \"inicioVigencia\": \"2026-01-01\",\n },\n {\n \"valor\": 0.10,\n \"inicioVigencia\": \"2025-01-01\",\n \"fimVigencia\": \"2025-12-31\"\n }\n]\n"}}}}},"500":{"description":"Erro interno na API","content":{"application/problem+json":{"schema":{"$ref":"#/components/schemas/ProblemDetail"},"examples":{"Internal Server Error Example":{"description":"Internal Server Error Example","value":{"type":"http://url-ambiente/errors/erro-interno","title":"Erro interno na API","status":500,"detail":"Falha ao processar a requisição.","instance":"/api/calculadora/dados-abertos/transferencias-cbs"}}}}}}}}},"/calculadora/dados-abertos/situacoes-tributarias/imposto-seletivo":{"get":{"tags":["Dados Abertos - VERSÃO BETA"],"summary":"Situação Tributária (CST)","description":"Obtém a lista das situações tributárias cadastradas para Imposto Seletivo","operationId":"consultarSituacoesTributariasImpostoSeletivo","parameters":[{"name":"data","in":"query","description":"Data no padrão ISO 8601 (yyyy-MM-dd)","required":true,"schema":{"type":"string","format":"date"},"example":"2027-01-01"}],"responses":{"200":{"description":"Consulta realizada com sucesso","content":{"application/json":{"schema":{"$ref":"#/components/schemas/SituacaoTributariaDadosAbertosOutput"},"examples":{"Situações Tributárias Example":{"description":"Situações Tributárias Example","value":[{"id":19,"codigo":"000","descricao":"Tributado com Imposto Seletivo"},{"id":20,"codigo":"100","descricao":"Imunidade"}]}}}}},"400":{"description":"Requisição com problema","content":{"application/problem+json":{"schema":{"$ref":"#/components/schemas/ProblemDetail"},"examples":{"Bad Request Example":{"description":"Bad Request Example","value":{"type":"about:blank","title":"Bad Request","status":400,"detail":"Required parameter 'data' is not present.","instance":"/api/calculadora/dados-abertos/situacoes-tributarias/imposto-seletivo"}}}}}},"500":{"description":"Erro interno na API","content":{"application/problem+json":{"schema":{"$ref":"#/components/schemas/ProblemDetail"},"examples":{"Internal Server Error Example":{"description":"Internal Server Error Example","value":{"type":"http://url-ambiente/errors/erro-interno","title":"Erro interno na API","status":500,"detail":"Falha ao processar a requisição.","instance":"/api/calculadora/dados-abertos/situacoes-tributarias/imposto-seletivo"}}}}}}}}},"/calculadora/dados-abertos/situacoes-tributarias/cbs-ibs":{"get":{"tags":["Dados Abertos - VERSÃO BETA"],"summary":"Situação Tributária (CST)","description":"Obtém a lista das situações tributárias cadastradas vigentes em uma determinada data para CBS/IBS","operationId":"consultarSituacoesTributariasCbsIbs","parameters":[{"name":"data","in":"query","description":"Data no padrão ISO 8601 (yyyy-MM-dd)","required":true,"schema":{"type":"string","format":"date"},"example":"2026-01-01"}],"responses":{"200":{"description":"Consulta realizada com sucesso","content":{"application/json":{"schema":{"$ref":"#/components/schemas/SituacaoTributariaDadosAbertosOutput"},"examples":{"Situações Tributárias Example":{"description":"Situações Tributárias Example","value":[{"id":1,"codigo":"000","descricao":"Tributação integral"},{"id":2,"codigo":"010","descricao":"Tributação com alíquotas uniformes"},{"id":3,"codigo":"011","descricao":"Tributação com alíquotas uniformes reduzidas"},{"id":4,"codigo":"200","descricao":"Alíquota reduzida"}]}}}}},"400":{"description":"Requisição com problema","content":{"application/problem+json":{"schema":{"$ref":"#/components/schemas/ProblemDetail"},"examples":{"Bad Request Example":{"description":"Bad Request Example","value":{"type":"about:blank","title":"Bad Request","status":400,"detail":"Required parameter 'data' is not present.","instance":"/api/calculadora/dados-abertos/classificacoes-tributarias/cbs-ibs"}}}}}},"500":{"description":"Erro interno na API","content":{"application/problem+json":{"schema":{"$ref":"#/components/schemas/ProblemDetail"},"examples":{"Internal Server Error Example":{"description":"Internal Server Error Example","value":{"type":"http://url-ambiente/errors/erro-interno","title":"Erro interno na API","status":500,"detail":"Falha ao processar a requisição.","instance":"/api/calculadora/dados-abertos/situacoes-tributarias/cbs-ibs"}}}}}}}}},"/calculadora/dados-abertos/redutores-compra-governamental":{"get":{"tags":["Dados Abertos - VERSÃO BETA"],"summary":"Redutor de Compra Governamental","description":"Obtém a lista de todos os redutores de compra governamental cadastrados","operationId":"consultarRedutoresCompraGovernamental","responses":{"200":{"description":"Consulta realizada com sucesso","content":{"application/json":{"schema":{"$ref":"#/components/schemas/RedutorCompraGovernamentalDadosAbertosOutput"},"examples":{"Redutores Example":{"description":"Redutores Example","value":[{"valor":0,"inicioVigencia":"2026-01-01","fimVigencia":"2026-12-31"},{"valor":50,"inicioVigencia":"2027-01-01"}]}}}}},"500":{"description":"Erro interno na API","content":{"application/problem+json":{"schema":{"$ref":"#/components/schemas/ProblemDetail"},"examples":{"Internal Server Error Example":{"description":"Internal Server Error Example","value":{"type":"http://url-ambiente/errors/erro-interno","title":"Erro interno na API","status":500,"detail":"Falha ao processar a requisição.","instance":"/api/calculadora/dados-abertos/redutores-compra-governamental"}}}}}}}}},"/calculadora/dados-abertos/ncm":{"get":{"tags":["Dados Abertos - VERSÃO BETA"],"summary":"Nomenclatura Comum do Mercosul (NCM)","description":"Obtém informações sobre a NCM em relação ao Imposto Seletivo","operationId":"consultarNcm","parameters":[{"name":"ncm","in":"query","description":"Código NCM sem formatação","required":true,"schema":{"type":"string"},"example":24021000},{"name":"data","in":"query","description":"Data no padrão ISO 8601 (yyyy-MM-dd)","required":true,"schema":{"type":"string","format":"date"},"example":"2027-01-01"}],"responses":{"200":{"description":"Consulta realizada com sucesso","content":{"application/json":{"schema":{"$ref":"#/components/schemas/NcmDadosAbertosOutput"},"examples":{"NCM Example":{"description":"NCM Example","value":{"tributadoPeloImpostoSeletivo":true,"aliquotaAdValorem":13,"aliquotaAdRem":21.3,"capitulo":"Tabaco e seus sucedâneos manufaturados; produtos, mesmo com nicotina, destinados à inalação sem combustão; outros produtos que contenham nicotina destinados à absorção da nicotina pelo corpo humano.","posicao":"Charutos, cigarrilhas e cigarros, de tabaco ou dos seus sucedâneos.","subitem":"Charutos e cigarrilhas, que contenham tabaco","unidade":"VN"}}}}}},"400":{"description":"Requisição com problema","content":{"application/problem+json":{"schema":{"$ref":"#/components/schemas/ProblemDetail"},"examples":{"Bad Request Example":{"description":"Bad Request Example","value":{"type":"about:blank","title":"Bad Request","status":400,"detail":"Required parameter 'data' is not present.","instance":"/api/calculadora/dados-abertos/ncm/24021000"}}}}}},"500":{"description":"Erro interno na API","content":{"application/problem+json":{"schema":{"$ref":"#/components/schemas/ProblemDetail"},"examples":{"Internal Server Error Example":{"description":"Internal Server Error Example","value":{"type":"http://url-ambiente/errors/erro-interno","title":"Erro interno na API","status":500,"detail":"Falha ao processar a requisição.","instance":"/api/calculadora/dados-abertos/ncm/24021000"}}}}}}}}},"/calculadora/dados-abertos/nbs":{"get":{"tags":["Dados Abertos - VERSÃO BETA"],"summary":"Nomenclatura Brasileira de Serviços (NBS)","description":"Obtém informações sobre a NBS em relação ao Imposto Seletivo","operationId":"consultarNbs","parameters":[{"name":"nbs","in":"query","description":"Código NBS sem formatação","required":true,"schema":{"type":"string"},"example":114052200},{"name":"data","in":"query","description":"Data no padrão ISO 8601 (yyyy-MM-dd)","required":true,"schema":{"type":"string","format":"date"},"example":"2027-01-01"}],"responses":{"200":{"description":"Consulta realizada com sucesso","content":{"application/json":{"schema":{"$ref":"#/components/schemas/NbsDadosAbertosOutput"},"examples":{"NBS Example":{"description":"NBS Example","value":{"tributadoPeloImpostoSeletivo":false,"capitulo":"Serviços veterinários","posicao":"Serviços veterinários para animais de corte","item":"Serviços de atendimento, assistência ou tratamento para animais de corte"}}}}}},"400":{"description":"Requisição com problema","content":{"application/problem+json":{"schema":{"$ref":"#/components/schemas/ProblemDetail"},"examples":{"Bad Request Example":{"description":"Bad Request Example","value":{"type":"about:blank","title":"Bad Request","status":400,"detail":"Required parameter 'data' is not present.","instance":"/api/calculadora/dados-abertos/nbs/114052200"}}}}}},"500":{"description":"Erro interno na API","content":{"application/problem+json":{"schema":{"$ref":"#/components/schemas/ProblemDetail"},"examples":{"Internal Server Error Example":{"description":"Internal Server Error Example","value":{"type":"http://url-ambiente/errors/erro-interno","title":"Erro interno na API","status":500,"detail":"Falha ao processar a requisição.","instance":"/api/calculadora/dados-abertos/nbs/114052200"}}}}}}}}},"/calculadora/dados-abertos/nbs/lista":{"get":{"tags":["Dados Abertos - VERSÃO BETA"],"summary":"Lista de Nomenclatura Brasileira de Serviços (NBS)","description":"Obtém a lista de todas as NBS válidas em uma data, incluindo todos os níveis hierárquicos (capítulo, posição, subposições e itens)","operationId":"listarNbs","parameters":[{"name":"data","in":"query","description":"Data no padrão ISO 8601 (yyyy-MM-dd)","required":true,"schema":{"type":"string","format":"date"},"example":"2027-01-01"}],"responses":{"200":{"description":"Consulta realizada com sucesso","content":{"application/json":{"schema":{"$ref":"#/components/schemas/NbsListaDadosAbertosOutput"},"examples":{"Lista NBS Example":{"description":"Lista NBS Example","value":[{"codigo":"101","descricao":"Serviços de construção"},{"codigo":"10101","descricao":"Serviços de construção de edificações"},{"codigo":"101011","descricao":"Serviços de construção de edificações residenciais"},{"codigo":"101011100","descricao":"Serviços de construção de edificações residenciais de um e dois pavimentos"},{"codigo":"101011200","descricao":"Serviços de construção de edificações residenciais com mais de dois pavimentos"},{"codigo":"101012","descricao":"Serviços de construção de edificações não residenciais"},{"codigo":"101012100","descricao":"Serviços de construção de edificações industriais"},{"codigo":"101012200","descricao":"Serviços de construção de edificações comerciais"},{"codigo":"101012900","descricao":"Serviços de construção de edificações não residenciais não classificados em subposições anteriores"}]}}}}},"400":{"description":"Requisição com problema","content":{"application/problem+json":{"schema":{"$ref":"#/components/schemas/ProblemDetail"},"examples":{"Bad Request Example":{"description":"Bad Request Example","value":{"type":"about:blank","title":"Bad Request","status":400,"detail":"Required parameter 'data' is not present.","instance":"/api/calculadora/dados-abertos/nbs"}}}}}},"500":{"description":"Erro interno na API","content":{"application/problem+json":{"schema":{"$ref":"#/components/schemas/ProblemDetail"},"examples":{"Internal Server Error Example":{"description":"Internal Server Error Example","value":{"type":"http://url-ambiente/errors/erro-interno","title":"Erro interno na API","status":500,"detail":"Falha ao processar a requisição.","instance":"/api/calculadora/dados-abertos/nbs"}}}}}}}}},"/calculadora/dados-abertos/nbs-aplicaveis":{"get":{"tags":["Dados Abertos - VERSÃO BETA"],"summary":"Lista de NBS aplicáveis por Classificação Tributária","description":"Obtém a lista de NBS aplicáveis a um cClassTrib em uma determinada data. Se não houver NBS associados e a nomenclatura for aplicável a serviços (NBS ou 'NBS ou NCM'), retorna todos os NBS vigentes. Se não for aplicável a serviços (apenas NCM), retorna lista vazia.","operationId":"listarNbsAplicaveisPorClassificacao","parameters":[{"name":"cClassTrib","in":"query","description":"Código da Classificação Tributária (cClassTrib)","required":true,"schema":{"type":"string","pattern":"^\\d{6}$"},"example":"000001"},{"name":"data","in":"query","description":"Data no padrão ISO 8601 (yyyy-MM-dd)","required":true,"schema":{"type":"string","format":"date"},"example":"2027-01-01"}],"responses":{"200":{"description":"Consulta realizada com sucesso","content":{"application/json":{"schema":{"$ref":"#/components/schemas/NbsListaDadosAbertosOutput"},"examples":{"Lista NBS Aplicáveis Example":{"description":"Lista NBS Aplicáveis Example","value":[{"codigo":"114052200","descricao":"Serviços de atendimento, assistência ou tratamento para animais de corte"},{"codigo":"114052300","descricao":"Serviços de atendimento, assistência ou tratamento para animais de produção"}]},"Lista NBS Aplicáveis Vazia Example":{"description":"Lista NBS Aplicáveis Vazia Example","value":[]}}}}},"400":{"description":"Requisição com problema","content":{"application/problem+json":{"schema":{"$ref":"#/components/schemas/ProblemDetail"},"examples":{"Bad Request Example":{"description":"Bad Request Example","value":{"type":"about:blank","title":"Bad Request","status":400,"detail":"Required parameter 'data' is not present.","instance":"/api/calculadora/dados-abertos/nbs/aplicaveis-por-classificacao"}}}}}},"404":{"description":"Classificação tributária não encontrada","content":{"application/problem+json":{"schema":{"$ref":"#/components/schemas/ProblemDetail"},"examples":{"Not Found Example":{"description":"Not Found Example","value":{"type":"about:blank","title":"Not Found","status":404,"detail":"Classificação tributária não encontrada para código 999999 e data 2026-01-01 (CBS/IBS)","instance":"/api/calculadora/dados-abertos/nbs/aplicaveis-por-classificacao"}}}}}},"500":{"description":"Erro interno na API","content":{"application/problem+json":{"schema":{"$ref":"#/components/schemas/ProblemDetail"},"examples":{"Internal Server Error Example":{"description":"Internal Server Error Example","value":{"type":"http://url-ambiente/errors/erro-interno","title":"Erro interno na API","status":500,"detail":"Falha ao processar a requisição.","instance":"/api/calculadora/dados-abertos/nbs/aplicaveis-por-classificacao"}}}}}}}}},"/calculadora/dados-abertos/fundamentacoes-legais":{"get":{"tags":["Dados Abertos - VERSÃO BETA"],"summary":"Fundamentação Legal","description":"Obtém informações sobre as fundamentações legais","operationId":"consultarFundamentacoesLegais","parameters":[{"name":"data","in":"query","description":"Data no padrão ISO 8601 (yyyy-MM-dd)","required":true,"schema":{"type":"string","format":"date"},"example":"2027-01-01"}],"responses":{"200":{"description":"Consulta realizada com sucesso","content":{"application/json":{"schema":{"$ref":"#/components/schemas/FundamentacaoClassificacaoDadosAbertosOutput"},"examples":{"Fundamentações Legais Example":{"description":"Fundamentações Legais Example","value":[{"codigoClassificacaoTributaria":"000001","descricaoClassificacaoTributaria":"Situações tributadas integralmente pelo IBS e CBS.","codigoSituacaoTributaria":"000","descricaoSituacaoTributaria":"Tributação integral","conjuntoTributo":"CBS e IBS","texto":"","textoCurto":"","referenciaNormativa":"LIVRO I \n\nDO IMPOSTO SOBRE BENS E SERVIÇOS (IBS) E DA CONTRIBUIÇÃO SOCIAL SOBRE BENS E SERVIÇOS (CBS) \n\nTÍTULO I \n\nDAS NORMAS GERAIS DO IBS E DA CBS \n\nCAPÍTULO I \n\nDISPOSIÇÕES PRELIMINARES"},{"codigoClassificacaoTributaria":"000002","descricaoClassificacaoTributaria":"Exploração de via","codigoSituacaoTributaria":"000","descricaoSituacaoTributaria":"Tributação integral","conjuntoTributo":"CBS e IBS","texto":"Art. 11. Considera-se local da operação com:\nVIII - serviço de exploração de via, mediante cobrança de valor a qualquer título, incluindo tarifas, pedágios e quaisquer outras formas de cobrança, o território de cada Município e Estado, ou do Distrito Federal, proporcionalmente à correspondente extensão da via explorada;","textoCurto":"Art. 11, VIII","referenciaNormativa":"LIVRO I \n\nDO IMPOSTO SOBRE BENS E SERVIÇOS (IBS) E DA CONTRIBUIÇÃO SOCIAL SOBRE BENS E SERVIÇOS (CBS) \n\nTÍTULO I \n\nDAS NORMAS GERAIS DO IBS E DA CBS \n\nCAPÍTULO II\n\nDO IBS E DA CBS SOBRE OPERAÇÕES COM BENS E SERVIÇOS\n\nSeção IV\n\nDo Local da Operação"}]}}}}},"400":{"description":"Requisição com problema","content":{"application/problem+json":{"schema":{"$ref":"#/components/schemas/ProblemDetail"},"examples":{"Bad Request Example":{"description":"Bad Request Example","value":{"type":"about:blank","title":"Bad Request","status":400,"detail":"Required parameter 'data' is not present.","instance":"/api/calculadora/dados-abertos/fundamentacoes-legais"}}}}}},"500":{"description":"Erro interno na API","content":{"application/problem+json":{"schema":{"$ref":"#/components/schemas/ProblemDetail"},"examples":{"Internal Server Error Example":{"description":"Internal Server Error Example","value":{"type":"http://url-ambiente/errors/erro-interno","title":"Erro interno na API","status":500,"detail":"Falha ao processar a requisição.","instance":"/api/calculadora/dados-abertos/fundamentacoes-legais"}}}}}}}}},"/calculadora/dados-abertos/classificacoes-tributarias/{idSituacaoTributaria}":{"get":{"tags":["Dados Abertos - VERSÃO BETA"],"summary":"Classificação Tributária (cClassTrib) - DEPRECATED","description":"Obtém a lista das classificações tributárias (cClassTrib) cadastradas com base no ID da situação tributária. DEPRECATED: Use os novos endpoints /classificacoes-tributarias/imposto-seletivo/{cst} ou /classificacoes-tributarias/cbs-ibs/{cst} que trabalham com CST ao invés de IDs.","operationId":"consultarClassificacoesTributariasPorIdSituacaoTributaria","parameters":[{"name":"idSituacaoTributaria","in":"path","description":"Id da Situação Tributária (CST)","required":true,"schema":{"type":"integer","format":"int64"},"example":1},{"name":"data","in":"query","description":"Data no padrão ISO 8601 (yyyy-MM-dd)","required":true,"schema":{"type":"string","format":"date"},"example":"2026-01-01"}],"responses":{"200":{"description":"Consulta realizada com sucesso","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ClassificacaoTributariaDadosAbertosOutput"},"examples":{"Classificações Tributárias Example":{"description":"Classificações Tributárias Example","value":[{"codigo":"000003","descricao":"Regime automotivo - projetos incentivados (art. 311)","tipoAliquota":"Padrão","nomenclatura":"NCM","descricaoTratamentoTributario":"Tributação integral","incompativelComSuspensao":false,"exigeGrupoDesoneracao":false,"possuiPercentualReducao":true,"indicaApropriacaoCreditoAdquirenteCbs":false,"indicaApropriacaoCreditoAdquirenteIbs":false,"indicaCreditoPresumidoFornecedor":false,"indicaCreditoPresumidoAdquirente":false,"tiposDfeClassificacao":[{"tipo":55,"sigla":"NFe","descricao":"Nota Fiscal Eletrônica"}],"dataAtualizacao":"2025-12-15"},{"codigo":"000004","descricao":"Regime automotivo - projetos incentivados (art. 312)","tipoAliquota":"Padrão","nomenclatura":"NCM","descricaoTratamentoTributario":"Tributação integral","incompativelComSuspensao":false,"exigeGrupoDesoneracao":false,"possuiPercentualReducao":true,"indicaApropriacaoCreditoAdquirenteCbs":false,"indicaApropriacaoCreditoAdquirenteIbs":false,"indicaCreditoPresumidoFornecedor":false,"indicaCreditoPresumidoAdquirente":false,"tiposDfeClassificacao":[{"tipo":55,"sigla":"NFe","descricao":"Nota Fiscal Eletrônica"}],"dataAtualizacao":"2025-12-15"}]}}}}},"400":{"description":"Requisição com problema","content":{"application/problem+json":{"schema":{"$ref":"#/components/schemas/ProblemDetail"},"examples":{"Bad Request Example":{"description":"Bad Request Example","value":{"type":"about:blank","title":"Bad Request","status":400,"detail":"Required parameter 'data' is not present.","instance":"/api/calculadora/dados-abertos/classificacoes-tributarias/3244253"}}}}}},"500":{"description":"Erro interno na API","content":{"application/problem+json":{"schema":{"$ref":"#/components/schemas/ProblemDetail"},"examples":{"Internal Server Error Example":{"description":"Internal Server Error Example","value":{"type":"http://url-ambiente/errors/erro-interno","title":"Erro interno na API","status":500,"detail":"Falha ao processar a requisição.","instance":"/api/calculadora/dados-abertos/classificacoes-tributarias/1"}}}}}}},"deprecated":true}},"/calculadora/dados-abertos/classificacoes-tributarias/ncm-aplicavel":{"get":{"tags":["Dados Abertos - VERSÃO BETA"],"summary":"Validar NCM Aplicável","description":"Valida se um NCM é aplicável para uma classificação tributária relacionada ao CBS e IBS em determinada data.","operationId":"validarNcmAplicavel","parameters":[{"name":"cClassTrib","in":"query","description":"Código da classificação tributária CBS/IBS","required":true,"schema":{"type":"string"},"example":"000001"},{"name":"ncm","in":"query","description":"NCM","required":true,"schema":{"type":"string"},"example":"09024000"},{"name":"dataOcorrenciaFatoGerador","in":"query","description":"Data de ocorrência do fato gerador","required":true,"schema":{"type":"string","format":"date"},"example":"2026-01-01"}],"responses":{"200":{"description":"Validação realizada com sucesso","content":{"application/json":{"schema":{"$ref":"#/components/schemas/NcmAplicavelOutput"},"examples":{"NCM Aplicável Example":{"description":"NCM Aplicável Example","value":{"cClassTrib":"000001","ncm":"09024000","dataOcorrenciaFatoGerador":"2026-01-01","valido":true}}}}}},"400":{"description":"Parâmetro inválido","content":{"application/problem+json":{"schema":{"$ref":"#/components/schemas/ProblemDetail"},"examples":{"Bad Request Example":{"description":"Bad Request Example","value":{"type":"http://url-ambiente/errors/parametro-invalido","title":"Parâmetro inválido","status":400,"detail":"NCM ou cClassTrib inválido.","instance":"/api/calculadora/dados-abertos/classificacoes-tributarias/ncm-aplicavel"}}}}}},"500":{"description":"Erro interno na API","content":{"application/problem+json":{"schema":{"$ref":"#/components/schemas/ProblemDetail"},"examples":{"Internal Server Error Example":{"description":"Internal Server Error Example","value":{"type":"http://url-ambiente/errors/erro-interno","title":"Erro interno na API","status":500,"detail":"Falha ao processar a requisição.","instance":"/api/calculadora/dados-abertos/classificacoes-tributarias/ncm-aplicavel"}}}}}}}}},"/calculadora/dados-abertos/classificacoes-tributarias/nbs":{"get":{"tags":["Dados Abertos - VERSÃO BETA"],"summary":"Classificações Tributárias aplicáveis por NBS","description":"Obtém a lista dos códigos cClassTrib aplicáveis a um NBS em uma determinada data, considerando vínculos e regras de exceção. Também inclui classificações de serviço vigentes não vinculadas a nenhum NBS.","operationId":"listarClassificacoesTributariasPorNbs","parameters":[{"name":"nbs","in":"query","description":"Código NBS sem formatação","required":true,"schema":{"type":"string","pattern":"^\\d{9}$"},"example":114052200},{"name":"data","in":"query","description":"Data no padrão ISO 8601 (yyyy-MM-dd)","required":true,"schema":{"type":"string","format":"date"},"example":"2026-01-01"}],"responses":{"200":{"description":"Consulta realizada com sucesso","content":{"application/json":{"schema":{"type":"string"},"examples":{"cClassTrib por NBS Example":{"description":"cClassTrib por NBS Example","value":["000001","000002","000003"]}}}}},"400":{"description":"Requisição com problema","content":{"application/problem+json":{"schema":{"$ref":"#/components/schemas/ProblemDetail"},"examples":{"Bad Request Example":{"description":"Bad Request Example","value":{"type":"about:blank","title":"Bad Request","status":400,"detail":"Parâmetro inválido ou ausente.","instance":"/api/calculadora/dados-abertos/classificacoes-tributarias/nbs"}}}}}},"404":{"description":"NBS não encontrado na data especificada","content":{"application/problem+json":{"schema":{"$ref":"#/components/schemas/ProblemDetail"},"examples":{"Not Found Example":{"description":"Not Found Example","value":{"type":"about:blank","title":"Not Found","status":404,"detail":"Nenhum resultado foi encontrado para a NBS: 114052200 na data: 2026-01-01","instance":"/api/calculadora/dados-abertos/classificacoes-tributarias/nbs"}}}}}},"500":{"description":"Erro interno na API","content":{"application/problem+json":{"schema":{"$ref":"#/components/schemas/ProblemDetail"},"examples":{"Internal Server Error Example":{"description":"Internal Server Error Example","value":{"type":"http://url-ambiente/errors/erro-interno","title":"Erro interno na API","status":500,"detail":"Falha ao processar a requisição.","instance":"/api/calculadora/dados-abertos/classificacoes-tributarias/nbs"}}}}}}}}},"/calculadora/dados-abertos/classificacoes-tributarias/nbs-aplicavel":{"get":{"tags":["Dados Abertos - VERSÃO BETA"],"summary":"Validar NBS Aplicável","description":"Valida se um NBS é aplicável para uma classificação tributária relacionada ao CBS e IBS em determinada data.","operationId":"validarNbsAplicavel","parameters":[{"name":"cClassTrib","in":"query","description":"Código da classificação tributária","required":true,"schema":{"type":"string"},"example":"000001"},{"name":"nbs","in":"query","description":"NBS","required":true,"schema":{"type":"string"},"example":114052200},{"name":"dataOcorrenciaFatoGerador","in":"query","description":"Data de ocorrência do fato gerador","required":true,"schema":{"type":"string","format":"date"},"example":"2026-01-01"}],"responses":{"200":{"description":"Validação realizada com sucesso","content":{"application/json":{"schema":{"$ref":"#/components/schemas/NbsAplicavelOutput"},"examples":{"NBS Aplicável Example":{"description":"NBS Aplicável Example","value":{"cClassTrib":"000001","nbs":"114052200","dataOcorrenciaFatoGerador":"2026-01-01","valido":true}}}}}},"400":{"description":"Parâmetro inválido","content":{"application/problem+json":{"schema":{"$ref":"#/components/schemas/ProblemDetail"},"examples":{"Bad Request Example":{"description":"Bad Request Example","value":{"type":"http://url-ambiente/errors/parametro-invalido","title":"Parâmetro inválido","status":400,"detail":"NBS ou cClassTrib inválido.","instance":"/api/calculadora/dados-abertos/classificacoes-tributarias/nbs-aplicavel"}}}}}},"500":{"description":"Erro interno na API","content":{"application/problem+json":{"schema":{"$ref":"#/components/schemas/ProblemDetail"},"examples":{"Internal Server Error Example":{"description":"Internal Server Error Example","value":{"type":"http://url-ambiente/errors/erro-interno","title":"Erro interno na API","status":500,"detail":"Falha ao processar a requisição.","instance":"/api/calculadora/dados-abertos/classificacoes-tributarias/nbs-aplicavel"}}}}}}}}},"/calculadora/dados-abertos/classificacoes-tributarias/imposto-seletivo":{"get":{"tags":["Dados Abertos - VERSÃO BETA"],"summary":"Classificação Tributária (cClassTrib) para Imposto Seletivo","description":"Obtém a lista das classificações tributárias (cClassTrib) para Imposto Seletivo","operationId":"consultarClassificacoesTributariasImpostoSeletivo","parameters":[{"name":"data","in":"query","description":"Data no padrão ISO 8601 (yyyy-MM-dd)","required":true,"schema":{"type":"string","format":"date"},"example":"2027-01-01"}],"responses":{"200":{"description":"Consulta realizada com sucesso","headers":{"x-warning-dados-simulados":{"description":"Indica que os dados são simulados. Valores possíveis: 1 (alíquotas da CBS e do IBS ainda não definidas em lei).","style":"simple","schema":{"type":"integer","example":1}}},"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ClassificacaoTributariaDadosAbertosOutput"},"examples":{"Classificações Tributárias Imposto Seletivo Example":{"description":"Classificações Tributárias Imposto Seletivo Example","value":[{"codigo":"000001","descricao":"Primeiro fornecimento a qualquer título de bem","tipoAliquota":"Alíquotas Combinadas (Ad Valorem e Ad Rem)","nomenclatura":"NBS ou NCM","descricaoTratamentoTributario":"Tributação pelo Imposto Seletivo - Com Cálculo","incompativelComSuspensao":false,"exigeGrupoDesoneracao":false,"possuiPercentualReducao":true,"indicaApropriacaoCreditoAdquirenteCbs":false,"indicaApropriacaoCreditoAdquirenteIbs":false,"indicaCreditoPresumidoFornecedor":false,"indicaCreditoPresumidoAdquirente":false},{"codigo":"000002","descricao":"Arrematação em leilão público","tipoAliquota":"Alíquotas Combinadas (Ad Valorem e Ad Rem)","nomenclatura":"NBS ou NCM","descricaoTratamentoTributario":"Tributação pelo Imposto Seletivo - Com Cálculo","incompativelComSuspensao":false,"exigeGrupoDesoneracao":false,"possuiPercentualReducao":true,"indicaApropriacaoCreditoAdquirenteCbs":false,"indicaApropriacaoCreditoAdquirenteIbs":false,"indicaCreditoPresumidoFornecedor":false,"indicaCreditoPresumidoAdquirente":false}]},"Classificações Tributárias Imposto Seletivo Vazia Example":{"description":"Classificações Tributárias Imposto Seletivo Vazia Example","value":[]}}}}},"400":{"description":"Requisição com problema","content":{"application/problem+json":{"schema":{"$ref":"#/components/schemas/ProblemDetail"},"examples":{"Bad Request Example":{"description":"Bad Request Example","value":{"type":"about:blank","title":"Bad Request","status":400,"detail":"Required parameter 'data' is not present.","instance":"/api/calculadora/dados-abertos/classificacoes-tributarias/imposto-seletivo"}}}}}},"500":{"description":"Erro interno na API","content":{"application/problem+json":{"schema":{"$ref":"#/components/schemas/ProblemDetail"},"examples":{"Internal Server Error Example":{"description":"Internal Server Error Example","value":{"type":"http://url-ambiente/errors/erro-interno","title":"Erro interno na API","status":500,"detail":"Falha ao processar a requisição.","instance":"/api/calculadora/dados-abertos/classificacoes-tributarias/imposto-seletivo"}}}}}}}}},"/calculadora/dados-abertos/classificacoes-tributarias/imposto-seletivo/{cst}":{"get":{"tags":["Dados Abertos - VERSÃO BETA"],"summary":"Classificações Tributárias por CST - Imposto Seletivo","description":"Obtém a lista das classificações tributárias por CST para Imposto Seletivo","operationId":"listarPorCstImpostoSeletivo","parameters":[{"name":"cst","in":"path","description":"Código da Situação Tributária (CST)","required":true,"schema":{"type":"string"},"example":"000"},{"name":"data","in":"query","description":"Data no padrão ISO 8601 (yyyy-MM-dd)","required":true,"schema":{"type":"string","format":"date"},"example":"2027-01-01"}],"responses":{"200":{"description":"Consulta realizada com sucesso","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ClassificacaoTributariaDadosAbertosOutput"},"examples":{"Classificações IS Example":{"description":"Classificações IS Example","value":[{"codigo":"000001","descricao":"Primeiro fornecimento a qualquer título de bem","tipoAliquota":"Alíquotas Combinadas (Ad Valorem e Ad Rem)","nomenclatura":"NBS ou NCM","descricaoTratamentoTributario":"Tributação pelo Imposto Seletivo - Com Cálculo","incompativelComSuspensao":false,"exigeGrupoDesoneracao":false,"possuiPercentualReducao":true,"indicaApropriacaoCreditoAdquirenteCbs":false,"indicaApropriacaoCreditoAdquirenteIbs":false,"indicaCreditoPresumidoFornecedor":false,"indicaCreditoPresumidoAdquirente":false,"tiposDfeClassificacao":[]}]}}}}},"400":{"description":"Requisição com problema","content":{"application/problem+json":{"schema":{"$ref":"#/components/schemas/ProblemDetail"}}}},"500":{"description":"Erro interno na API","content":{"application/problem+json":{"schema":{"$ref":"#/components/schemas/ProblemDetail"}}}}}}},"/calculadora/dados-abertos/classificacoes-tributarias/cbs-ibs":{"get":{"tags":["Dados Abertos - VERSÃO BETA"],"summary":"Classificação Tributária (cClassTrib)","description":"Obtém a lista das classificações tributárias (cClassTrib) para CBS e IBS","operationId":"consultarClassificacoesTributariasCbsIbs","parameters":[{"name":"data","in":"query","description":"Data no padrão ISO 8601 (yyyy-MM-dd)","required":true,"schema":{"type":"string","format":"date"},"example":"2026-01-01"}],"responses":{"200":{"description":"Consulta realizada com sucesso","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ClassificacaoTributariaDadosAbertosOutput"},"examples":{"Classificações Tributárias Example":{"description":"Classificações Tributárias Example","value":[{"codigo":"000004","descricao":"Regime automotivo - projetos incentivados (art. 312)","tipoAliquota":"Padrão","nomenclatura":"NCM","descricaoTratamentoTributario":"Tributação integral","incompativelComSuspensao":false,"exigeGrupoDesoneracao":false,"possuiPercentualReducao":true,"indicaApropriacaoCreditoAdquirenteCbs":true,"indicaApropriacaoCreditoAdquirenteIbs":true,"indicaCreditoPresumidoFornecedor":true,"indicaCreditoPresumidoAdquirente":false,"creditoOperacaoAntecedente":"Manutenção","percentualReducaoCbs":0,"percentualReducaoIbsUf":0,"percentualReducaoIbsMun":0,"tiposDfeClassificacao":[{"tipo":55,"sigla":"NFe","descricao":"Nota Fiscal Eletrônica"}]},{"codigo":"010001","descricao":"Operações do FGTS não realizadas pela Caixa Econômica Federal","tipoAliquota":"Uniforme setorial","nomenclatura":"NBS","descricaoTratamentoTributario":"Tributação com alíquotas uniformes - operações do FGTS","incompativelComSuspensao":false,"exigeGrupoDesoneracao":false,"possuiPercentualReducao":true,"indicaApropriacaoCreditoAdquirenteCbs":true,"indicaApropriacaoCreditoAdquirenteIbs":true,"indicaCreditoPresumidoFornecedor":false,"indicaCreditoPresumidoAdquirente":false,"creditoOperacaoAntecedente":"Manutenção","percentualReducaoCbs":0,"percentualReducaoIbsUf":0,"percentualReducaoIbsMun":0,"tiposDfeClassificacao":[{"tipo":91,"sigla":"NFSe","descricao":"Nota Fiscal de Serviços Eletrônica"},{"tipo":94,"sigla":"DERE","descricao":"Declaração Eletrônica de Regimes Específicos"}]}]}}}}},"400":{"description":"Requisição com problema","content":{"application/problem+json":{"schema":{"$ref":"#/components/schemas/ProblemDetail"},"examples":{"Bad Request Example":{"description":"Bad Request Example","value":{"type":"about:blank","title":"Bad Request","status":400,"detail":"Required parameter 'data' is not present.","instance":"/api/calculadora/dados-abertos/classificacoes-tributarias/cbs-ibs"}}}}}},"500":{"description":"Erro interno na API","content":{"application/problem+json":{"schema":{"$ref":"#/components/schemas/ProblemDetail"},"examples":{"Internal Server Error Example":{"description":"Internal Server Error Example","value":{"type":"http://url-ambiente/errors/erro-interno","title":"Erro interno na API","status":500,"detail":"Falha ao processar a requisição.","instance":"/api/calculadora/dados-abertos/classificacoes-tributarias/cbs-ibs"}}}}}}}}},"/calculadora/dados-abertos/classificacoes-tributarias/cbs-ibs/{siglaDfe}/{cClassTrib}":{"get":{"tags":["Dados Abertos - VERSÃO BETA"],"summary":"Classificação Tributária CBS/IBS por DFe e cClassTrib","description":"Obtém a classificação tributária CBS/IBS com base na sigla do DFe e código da classificação","operationId":"consultarValidadeDfeClassificacaoTributaria","parameters":[{"name":"siglaDfe","in":"path","description":"Sigla do tipo de Documento Fiscal Eletrônico","required":true,"schema":{"type":"string"},"example":"NFSE"},{"name":"cClassTrib","in":"path","description":"Código da classificação tributária","required":true,"schema":{"type":"string"},"example":"000001"},{"name":"data","in":"query","description":"Data do fato gerador (yyyy-MM-dd)","required":true,"schema":{"type":"string","format":"date"},"example":"2026-01-01"}],"responses":{"200":{"description":"Consulta realizada com sucesso","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ValidadeDfeClassificacaoTributariaDadosAbertosOutput"}}}},"400":{"description":"Requisição com problema","content":{"application/problem+json":{"schema":{"$ref":"#/components/schemas/ProblemDetail"},"examples":{"Bad Request Example":{"description":"Bad Request Example","value":{"type":"about:blank","title":"Bad Request","status":400,"detail":"Required parameter 'data' is not present.","instance":"/api/calculadora/dados-abertos/classificacoes-tributarias/cbs-ibs/NFE/000001"}}}}}},"404":{"description":"Classificação tributária não encontrada","content":{"application/problem+json":{"schema":{"$ref":"#/components/schemas/ProblemDetail"},"examples":{"Not Found Example":{"description":"Not Found Example","value":{"type":"https://url-ambiente/errors/classificacao-tributaria-nao-encontrada","title":"Classificação Tributária Não Encontrada","status":404,"detail":"Classificação tributária não encontrada para DFe 'NFSE' e código '000001' na data '2026-01-01'","instance":"/api/calculadora/dados-abertos/classificacoes-tributarias/cbs-ibs/NFSE/000001","timestamp":1.7607241111784844E9}}}}}},"422":{"description":"Erro de validação nos parâmetros","content":{"application/problem+json":{"schema":{"$ref":"#/components/schemas/ProblemDetail"},"examples":{"Validation Error Example":{"description":"Validation Error Example","value":{"type":"http://url-ambiente/errors/sigla-dfe-nao-reconhecida","title":"Sigla DFe não reconhecida","status":422,"detail":"Sigla DFe inválida: NFEJ","instance":"/api/calculadora/dados-abertos/classificacoes-tributarias/cbs-ibs/NFEe/620002","timestamp":1.7607290741335235E9}}}}}},"500":{"description":"Erro interno na API","content":{"application/problem+json":{"schema":{"$ref":"#/components/schemas/ProblemDetail"},"examples":{"Internal Server Error Example":{"description":"Internal Server Error Example","value":{"type":"http://url-ambiente/errors/erro-de-sistema-nao-previsto","title":"Erro de sistema não previsto","status":500,"detail":"Falha ao acessar o banco de dados","instance":"/api/calculadora/dados-abertos/classificacoes-tributarias/cbs-ibs/NFE/620001","timestamp":1.7607302862395124E9}}}}}}}}},"/calculadora/dados-abertos/classificacoes-tributarias/cbs-ibs/{cst}":{"get":{"tags":["Dados Abertos - VERSÃO BETA"],"summary":"Classificações Tributárias por CST - CBS/IBS","description":"Obtém a lista das classificações tributárias por CST para CBS/IBS","operationId":"listarPorCstCbsIbs","parameters":[{"name":"cst","in":"path","description":"Código da Situação Tributária (CST)","required":true,"schema":{"type":"string"},"example":"000"},{"name":"data","in":"query","description":"Data no padrão ISO 8601 (yyyy-MM-dd)","required":true,"schema":{"type":"string","format":"date"},"example":"2025-01-01"}],"responses":{"200":{"description":"Consulta realizada com sucesso","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ClassificacaoTributariaDadosAbertosOutput"},"examples":{"Classificações CBS/IBS Example":{"description":"Classificações CBS/IBS Example","value":[{"codigo":"000001","descricao":"Situações tributadas integralmente pelo IBS e CBS.","tipoAliquota":"Padrão","nomenclatura":"NBS ou NCM","descricaoTratamentoTributario":"Tributação integral","dataAtualizacao":"2025-12-15","incompativelComSuspensao":false,"exigeGrupoDesoneracao":false,"possuiPercentualReducao":true,"indicaApropriacaoCreditoAdquirenteCbs":true,"indicaApropriacaoCreditoAdquirenteIbs":true,"indicaCreditoPresumidoFornecedor":false,"indicaCreditoPresumidoAdquirente":false,"tiposDfeClassificacao":[]}]}}}}},"400":{"description":"Requisição com problema","content":{"application/problem+json":{"schema":{"$ref":"#/components/schemas/ProblemDetail"}}}},"500":{"description":"Erro interno na API","content":{"application/problem+json":{"schema":{"$ref":"#/components/schemas/ProblemDetail"}}}}}}},"/calculadora/dados-abertos/aliquota-uniao":{"get":{"tags":["Dados Abertos - VERSÃO BETA"],"summary":"Alíquota Padrão ou de Referência","description":"Obtém a alíquota padrão ou de referência para CBS","operationId":"consultarAliquotaUniao","parameters":[{"name":"data","in":"query","description":"Data no padrão ISO 8601 (yyyy-MM-dd)","required":true,"schema":{"type":"string","format":"date"},"example":"2026-01-01"}],"responses":{"200":{"description":"Consulta realizada com sucesso","headers":{"x-warning-dados-simulados":{"description":"Indica que os dados são simulados. Valores possíveis: 1 (Classificações Tributárias para o Imposto Seletivo ainda não foram estabelecidas em lei).","style":"simple","schema":{"type":"integer","example":1}}},"content":{"application/json":{"schema":{"$ref":"#/components/schemas/AliquotaDadosAbertosOutput"},"examples":{"Alíquota União Example":{"description":"Alíquota União Example","value":{"aliquotaReferencia":0.9,"aliquotaPropria":0.9}}}}}},"400":{"description":"Requisição com problema","content":{"application/problem+json":{"schema":{"$ref":"#/components/schemas/ProblemDetail"},"examples":{"Bad Request Example":{"description":"Bad Request Example","value":{"type":"about:blank","title":"Bad Request","status":400,"detail":"Required parameter 'data' is not present.","instance":"/api/calculadora/dados-abertos/aliquota-uniao"}}}}}},"500":{"description":"Erro interno na API","content":{"application/problem+json":{"schema":{"$ref":"#/components/schemas/ProblemDetail"},"examples":{"Internal Server Error Example":{"description":"Internal Server Error Example","value":{"type":"http://url-ambiente/errors/erro-interno","title":"Erro interno na API","status":500,"detail":"Falha ao processar a requisição.","instance":"/api/calculadora/dados-abertos/aliquota-uniao"}}}}}}}}},"/calculadora/dados-abertos/aliquota-uf":{"get":{"tags":["Dados Abertos - VERSÃO BETA"],"summary":"Alíquota Padrão ou de Referência para IBS Estadual","description":"Obtém a alíquota padrão ou de referência para IBS Estadual","operationId":"consultarAliquotaUf","parameters":[{"name":"codigoUf","in":"query","description":"Código da UF","required":true,"schema":{"type":"integer","format":"int64"},"example":43},{"name":"data","in":"query","description":"Data no padrão ISO 8601 (yyyy-MM-dd)","required":true,"schema":{"type":"string","format":"date"},"example":"2026-01-01"}],"responses":{"200":{"description":"Consulta realizada com sucesso","headers":{"x-warning-dados-simulados":{"description":"Indica que os dados são simulados. Valores possíveis: 1 (alíquotas da CBS ainda não definidas em lei).","style":"simple","schema":{"type":"integer","example":1}}},"content":{"application/json":{"schema":{"$ref":"#/components/schemas/AliquotaDadosAbertosOutput"},"examples":{"Alíquota UF Example":{"description":"Alíquota UF Example","value":{"aliquotaReferencia":0.9,"aliquotaPropria":0.9}}}}}},"400":{"description":"Requisição com problema","content":{"application/problem+json":{"schema":{"$ref":"#/components/schemas/ProblemDetail"},"examples":{"Bad Request Example":{"description":"Bad Request Example","value":{"type":"about:blank","title":"Bad Request","status":400,"detail":"Required parameter 'data' is not present.","instance":"/api/calculadora/dados-abertos/aliquota-uf"}}}}}},"500":{"description":"Erro interno na API","content":{"application/problem+json":{"schema":{"$ref":"#/components/schemas/ProblemDetail"},"examples":{"Internal Server Error Example":{"description":"Internal Server Error Example","value":{"type":"http://url-ambiente/errors/erro-interno","title":"Erro interno na API","status":500,"detail":"Falha ao processar a requisição.","instance":"/api/calculadora/dados-abertos/aliquota-uf"}}}}}}}}},"/calculadora/dados-abertos/aliquota-municipio":{"get":{"tags":["Dados Abertos - VERSÃO BETA"],"summary":"Alíquota Padrão ou de Referência para IBS Municipal","description":"Obtém a alíquota padrão ou de referência para IBS Municipal","operationId":"consultarAliquotaMunicipio","parameters":[{"name":"codigoMunicipio","in":"query","description":"Código do Município (Tabela IBGE)","required":true,"schema":{"type":"integer","format":"int64"},"example":4314902},{"name":"data","in":"query","description":"Data no padrão ISO 8601 (yyyy-MM-dd)","required":true,"schema":{"type":"string","format":"date"},"example":"2026-01-01"}],"responses":{"200":{"description":"Consulta realizada com sucesso","headers":{"x-warning-dados-simulados":{"description":"Indica que os dados são simulados. Valores possíveis: 1 (alíquotas da CBS e do IBS ainda não definidas em lei).","style":"simple","schema":{"type":"integer","example":1}}},"content":{"application/json":{"schema":{"$ref":"#/components/schemas/AliquotaDadosAbertosOutput"},"examples":{"Alíquota Município Example":{"description":"Alíquota Município Example","value":{"aliquotaReferencia":0.9,"aliquotaPropria":0.9}}}}}},"400":{"description":"Requisição com problema","content":{"application/problem+json":{"schema":{"$ref":"#/components/schemas/ProblemDetail"},"examples":{"Bad Request Example":{"description":"Bad Request Example","value":{"type":"about:blank","title":"Bad Request","status":400,"detail":"Required parameter 'data' is not present.","instance":"/api/calculadora/dados-abertos/aliquota-municipio"}}}}}},"500":{"description":"Erro interno na API","content":{"application/problem+json":{"schema":{"$ref":"#/components/schemas/ProblemDetail"},"examples":{"Internal Server Error Example":{"description":"Internal Server Error Example","value":{"type":"http://url-ambiente/errors/erro-interno","title":"Erro interno na API","status":500,"detail":"Falha ao processar a requisição.","instance":"/api/calculadora/dados-abertos/aliquota-municipio"}}}}}}}}}},"components":{"schemas":{"ProblemDetail":{"type":"object","properties":{"type":{"type":"string","format":"uri"},"title":{"type":"string"},"status":{"type":"integer","format":"int32"},"detail":{"type":"string"},"instance":{"type":"string","format":"uri"},"properties":{"type":"object","additionalProperties":{}}}},"AjusteCompetenciaDomain":{"type":"object","properties":{"competApur":{"type":"string","description":"Ano e mês referência do período de apuração (AAAA-MM)"},"vIBS":{"type":"number","description":"Valor do IBS"},"vCBS":{"type":"number","description":"Valor da CBS"}}},"CBSDomain":{"type":"object","properties":{"pCBS":{"type":"number","description":"Alíquota da CBS"},"gDif":{"$ref":"#/components/schemas/DiferimentoDomain","description":"Grupo de Informações do Diferimento"},"gDevTrib":{"$ref":"#/components/schemas/DevolucaoTributosDomain","description":"Grupo de Informações da devolução de tributos"},"gRed":{"$ref":"#/components/schemas/ReducaoAliquotaDomain","description":"Grupo de Informações da redução da alíquota"},"vCBS":{"type":"number","description":"Valor da CBS"},"memoriaCalculo":{"type":"string","description":"Memória de Cálculo"}}},"CBSTotalDomain":{"type":"object","properties":{"vDif":{"type":"number","description":"Valor total do diferimento"},"vDevTrib":{"type":"number","description":"Valor total de devolução de tributos"},"vCBS":{"type":"number","description":"Valor total da CBS"},"vCredPres":{"type":"number","description":"Valor total do crédito presumido"},"vCredPresCondSus":{"type":"number","description":"Valor total do crédito presumido em condição suspensiva"}}},"CompraGovernamentalDomain":{"type":"object","properties":{"tpEnteGov":{"type":"integer","format":"int32","description":"Tipo de ente governamental.

\nValores:

\n

    \n
  • 1 = União\n
  • 2 = Estado\n
  • 3 = Distrito Federal\n
  • 4 = Município\n
  • 5 = Consórcio Público\n
  • 6 = Comitê Gestor do IBS\n
\n"},"pRedutor":{"type":"number","description":"Percentual de redução de alíquota em compra governamental"},"tpOperGov":{"type":"integer","format":"int32","description":"Tipo de operação com o ente governamental.

\nValores:

\n

    \n
  • 1 = Fornecimento com pagamento posterior\n
  • 2 = Recebimento do pagamento com fornecimento já realizado\n
  • 3 = Fornecimento com pagamento já realizado\n
  • 4 = Recebimento do pagamento com fornecimento posterior\n
  • 5 = Fornecimento e recebimento do pagamento concomitantes\n
\n"}}},"CreditoPresumidoIBSZFMDomain":{"type":"object","properties":{"competApur":{"type":"string","description":"Ano e mês referência do período de apuração (AAAA-MM)"},"tpCredPresIBSZFM":{"type":"integer","format":"int32","description":"Tipo de classificação de acordo com o art. 450, § 1º, da LC 214/25 para o cálculo do crédito presumido na ZFM"},"vCredPresIBSZFM":{"type":"number","description":"Valor do crédito presumido calculado sobre o saldo devedor apurado"}}},"CreditoPresumidoOperacaoDomain":{"type":"object","properties":{"vBCCredPres":{"type":"number","description":"Valor da Base de Cálculo do Crédito Presumido da Operação"},"cCredPres":{"type":"integer","format":"int32","description":"Código de Classificação do Crédito Presumido"},"gIBSCredPres":{"$ref":"#/components/schemas/IBSCBSCreditoPresumidoDomain","description":"Grupo de Informações do Crédito Presumido referente ao IBS"},"gCBSCredPres":{"$ref":"#/components/schemas/IBSCBSCreditoPresumidoDomain","description":"Grupo de Informações do Crédito Presumido referente a CBS"}}},"DevolucaoTributosDomain":{"type":"object","properties":{"vDevTrib":{"type":"number","description":"Valor do tributo devolvido"}}},"DiferimentoDomain":{"type":"object","properties":{"pDif":{"type":"number","description":"Percentual do Diferimento"},"vDif":{"type":"number","description":"Valor do Diferimento"}}},"EstornoCreditoDomain":{"type":"object","properties":{"vIBSEstCred":{"type":"number","description":"Valor do IBS a ser estornado"},"vCBSEstCred":{"type":"number","description":"Valor da CBS a ser estornada"}}},"GrupoIBSCBSDomain":{"type":"object","properties":{"vBC":{"type":"number","description":"Base de cálculo do IBS e CBS"},"gIBSUF":{"$ref":"#/components/schemas/IBSUFDomain","description":"Grupo de Informações do IBS para a UF"},"gIBSMun":{"$ref":"#/components/schemas/IBSMunDomain","description":"Grupo de Informações do IBS para o município"},"vIBS":{"type":"number","description":"Valor do IBS"},"gCBS":{"$ref":"#/components/schemas/CBSDomain","description":"Grupo de Informações da CBS"},"gTribRegular":{"$ref":"#/components/schemas/TributacaoRegularDomain","description":"Grupo de Informações da Tributação Regular"},"gTribCompraGov":{"$ref":"#/components/schemas/TributacaoCompraGovernamentalDomain","description":"Grupo de informações da composição do valor do IBS e da CBS em compras governamentais"}}},"IBSCBSCreditoPresumidoDomain":{"type":"object","properties":{"pCredPres":{"type":"number","description":"Percentual do Crédito Presumido"},"vCredPres":{"type":"number","description":"Valor do Crédito Presumido"},"vCredPresCondSus":{"type":"number","description":"Valor do Crédito Presumido em condição suspensiva"}}},"IBSCBSDomain":{"type":"object","properties":{"CST":{"type":"string","description":"Código de Situação Tributária do IBS e CBS"},"cClassTrib":{"type":"string","description":"Código de Classificação Tributária do IBS e CBS"},"indDoacao":{"type":"integer","format":"int32","description":"Indica a natureza da operação de doação, orientando a apuração e a geração de débitos ou estornos conforme o cenário"},"gIBSCBS":{"$ref":"#/components/schemas/GrupoIBSCBSDomain","description":"Grupo de Informações do IBS e da CBS"},"gIBSCBSMono":{"$ref":"#/components/schemas/MonofasiaDomain","description":"Grupo de Informações do IBS e CBS em operações com imposto monofásico"},"gTransfCred":{"$ref":"#/components/schemas/TransferenciaCreditoDomain","description":"Transferências de Crédito"},"gAjusteCompet":{"$ref":"#/components/schemas/AjusteCompetenciaDomain","description":"Ajuste de competência"},"gEstornoCred":{"$ref":"#/components/schemas/EstornoCreditoDomain","description":"Estorno de crédito"},"gCredPresOper":{"$ref":"#/components/schemas/CreditoPresumidoOperacaoDomain","description":"Crédito presumido da Operação"},"gCredPresIBSZFM":{"$ref":"#/components/schemas/CreditoPresumidoIBSZFMDomain","description":"Informações do crédito presumido de IBS para fornecimentos a partir da ZFM"}}},"IBSCBSTotalDomain":{"type":"object","properties":{"vBCIBSCBS":{"type":"number","description":"Valor total da BC do IBS e da CBS"},"gIBS":{"$ref":"#/components/schemas/IBSTotalDomain","description":"Grupo total do IBS"},"gCBS":{"$ref":"#/components/schemas/CBSTotalDomain","description":"Grupo total da CBS"},"gMono":{"$ref":"#/components/schemas/MonofasiaTotalDomain","description":"Grupo total da Monofasia"},"gEstornoCred":{"$ref":"#/components/schemas/EstornoCreditoDomain","description":"Grupo total do Estorno de Crédito"}}},"IBSMunDomain":{"type":"object","properties":{"pIBSMun":{"type":"number","description":"Alíquota do IBS de competência do Município"},"gDif":{"$ref":"#/components/schemas/DiferimentoDomain","description":"Grupo de Informações do Diferimento"},"gDevTrib":{"$ref":"#/components/schemas/DevolucaoTributosDomain","description":"Grupo de Informações da devolução de tributos"},"gRed":{"$ref":"#/components/schemas/ReducaoAliquotaDomain","description":"Grupo de Informações da redução da alíquota"},"vIBSMun":{"type":"number","description":"Valor do IBS de competência do Município"},"memoriaCalculo":{"type":"string","description":"Memória de Cálculo"}}},"IBSMunTotalDomain":{"type":"object","properties":{"vDif":{"type":"number","description":"Valor total do diferimento"},"vDevTrib":{"type":"number","description":"Valor total de devolução de tributos"},"vIBSMun":{"type":"number","description":"Valor total do IBS do Município"}}},"IBSTotalDomain":{"type":"object","properties":{"gIBSUF":{"$ref":"#/components/schemas/IBSUFTotalDomain","description":"Grupo total do IBS da UF"},"gIBSMun":{"$ref":"#/components/schemas/IBSMunTotalDomain","description":"Grupo total do IBS do Município"},"vIBS":{"type":"number","description":"Valor total do IBS"},"vCredPres":{"type":"number","description":"Valor total do crédito presumido"},"vCredPresCondSus":{"type":"number","description":"Valor total do crédito presumido em condição suspensiva"}}},"IBSUFDomain":{"type":"object","properties":{"pIBSUF":{"type":"number","description":"Alíquota do IBS de competência das UF"},"gDif":{"$ref":"#/components/schemas/DiferimentoDomain","description":"Grupo de Informações do Diferimento"},"gDevTrib":{"$ref":"#/components/schemas/DevolucaoTributosDomain","description":"Grupo de Informações da devolução de tributos"},"gRed":{"$ref":"#/components/schemas/ReducaoAliquotaDomain","description":"Grupo de Informações da redução da alíquota"},"vIBSUF":{"type":"number","description":"Valor do IBS de competência da UF"},"memoriaCalculo":{"type":"string","description":"Memória de Cálculo"}}},"IBSUFTotalDomain":{"type":"object","properties":{"vDif":{"type":"number","description":"Valor total do diferimento"},"vDevTrib":{"type":"number","description":"Valor total de devolução de tributos"},"vIBSUF":{"type":"number","description":"Valor total do IBS da UF"}}},"ImpostoSeletivoDomain":{"type":"object","properties":{"CSTIS":{"type":"string","description":"Código de Situação Tributária do Imposto Seletivo"},"cClassTribIS":{"type":"string","description":"Código de Classificação Tributária do Imposto Seletivo"},"vBCIS":{"type":"number","description":"Valor da Base de Cálculo do Imposto Seletivo"},"pIS":{"type":"number","description":"Alíquota do Imposto Seletivo"},"pISEspec":{"type":"number","description":"Alíquota específica por unidade de medida apropriada"},"uTrib":{"type":"string","description":"Unidade de Medida Tributável"},"qTrib":{"type":"number","description":"Quantidade Tributável"},"vIS":{"type":"number","description":"Valor do Imposto Seletivo"},"memoriaCalculo":{"type":"string","description":"Memória de Cálculo"}}},"ImpostoSeletivoTotalDomain":{"type":"object","properties":{"vIS":{"type":"number","description":"Total do imposto seletivo"}}},"MonofasiaDiferimentoDomain":{"type":"object","properties":{"pDifIBS":{"type":"number","description":"Percentual do diferimento do imposto monofásico do IBS"},"vIBSMonoDif":{"type":"number","description":"Valor do IBS monofásico diferido"},"pDifCBS":{"type":"number","description":"Percentual do diferimento do imposto monofásico da CBS"},"vCBSMonoDif":{"type":"number","description":"Valor da CBS monofásica diferida"}}},"MonofasiaDomain":{"type":"object","properties":{"gMonoPadrao":{"$ref":"#/components/schemas/MonofasiaPadraoDomain","description":"Grupo de informações da Tributação Monofásica Padrão"},"gMonoReten":{"$ref":"#/components/schemas/MonofasiaRetencaoDomain","description":"Grupo de informações da Tributação Monofásica Sujeita à Retenção"},"gMonoRet":{"$ref":"#/components/schemas/MonofasiaRetidoAnteriormenteDomain","description":"Grupo de informações da Tributação Monofásica Retida Anteriormente"},"gMonoDif":{"$ref":"#/components/schemas/MonofasiaDiferimentoDomain","description":"Grupo de informações do Diferimento da Tributação Monofásica"},"vTotIBSMonoItem":{"type":"number","description":"Total de IBS monofásico"},"vTotCBSMonoItem":{"type":"number","description":"Total de CBS monofásica"}}},"MonofasiaPadraoDomain":{"type":"object","properties":{"qBCMono":{"type":"number","description":"Quantidade tributada na monofasia"},"adRemIBS":{"type":"number","description":"Alíquota ad rem do IBS"},"adRemCBS":{"type":"number","description":"Alíquota ad rem da CBS"},"vIBSMono":{"type":"number","description":"Valor do IBS monofásico"},"vCBSMono":{"type":"number","description":"Valor da CBS monofásica"}}},"MonofasiaRetencaoDomain":{"type":"object","properties":{"qBCMonoReten":{"type":"number","description":"Quantidade tributada sujeita à retenção na monofasia"},"adRemIBSReten":{"type":"number","description":"Alíquota ad rem do IBS sujeito a retenção"},"vIBSMonoReten":{"type":"number","description":"Valor do IBS monofásico sujeito a retenção"},"adRemCBSReten":{"type":"number","description":"Alíquota ad rem da CBS sujeita a retenção"},"vCBSMonoReten":{"type":"number","description":"Valor da CBS monofásica sujeita a retenção"}}},"MonofasiaRetidoAnteriormenteDomain":{"type":"object","properties":{"qBCMonoRet":{"type":"number","description":"Quantidade tributada retida anteriormente"},"adRemIBSRet":{"type":"number","description":"Alíquota ad rem do IBS retido anteriormente"},"vIBSMonoRet":{"type":"number","description":"Valor do IBS retido anteriormente"},"adRemCBSRet":{"type":"number","description":"Alíquota ad rem da CBS retida anteriormente"},"vCBSMonoRet":{"type":"number","description":"Valor da CBS retida anteriormente"}}},"MonofasiaTotalDomain":{"type":"object","properties":{"vIBSMono":{"type":"number","description":"Total do IBS monofásico"},"vCBSMono":{"type":"number","description":"Total da CBS monofásica"},"vIBSMonoReten":{"type":"number","description":"Total do IBS monofásico sujeito a retenção"},"vCBSMonoReten":{"type":"number","description":"Total da CBS monofásica sujeita a retenção"},"vIBSMonoRet":{"type":"number","description":"Total do IBS monofásico retido anteriormente"},"vCBSMonoRet":{"type":"number","description":"Total da CBS monofásica retida anteriormente"}}},"ObjetoDomain":{"type":"object","properties":{"nObj":{"type":"integer","format":"int32"},"tribCalc":{"$ref":"#/components/schemas/TributosDomain"}}},"OperacaoConsumoDomain":{"type":"object","properties":{"gCompraGov":{"$ref":"#/components/schemas/CompraGovernamentalDomain"}}},"ROCDomain":{"type":"object","properties":{"oper":{"$ref":"#/components/schemas/OperacaoConsumoDomain"},"objetos":{"type":"array","items":{"$ref":"#/components/schemas/ObjetoDomain"}},"total":{"$ref":"#/components/schemas/ValoresTotaisDomain"}}},"ReducaoAliquotaDomain":{"type":"object","properties":{"pRedAliq":{"type":"number","description":"Percentual da redução de alíquota do cClassTrib"},"pAliqEfet":{"type":"number","description":"Alíquota Efetiva que será aplicada a Base de Cálculo"}}},"TransferenciaCreditoDomain":{"type":"object","properties":{"vIBS":{"type":"number","description":"Valor do IBS a ser transferido"},"vCBS":{"type":"number","description":"Valor da CBS a ser transferida"}}},"TributacaoCompraGovernamentalDomain":{"type":"object","properties":{"pAliqIBSUF":{"type":"number","description":"Alíquota do IBS de competência do Estado"},"vTribIBSUF":{"type":"number","description":"Valor do Tributo do IBS da UF calculado"},"pAliqIBSMun":{"type":"number","description":"Alíquota do IBS de competência do Município"},"vTribIBSMun":{"type":"number","description":"Valor do Tributo do IBS do Município calculado"},"pAliqCBS":{"type":"number","description":"Alíquota da CBS"},"vTribCBS":{"type":"number","description":"Valor do Tributo da CBS calculado"}}},"TributacaoRegularDomain":{"type":"object","properties":{"CSTReg":{"type":"string","description":"Código de Situação Tributária do IBS e CBS"},"cClassTribReg":{"type":"string","description":"Código de Classificação Tributária do IBS e CBS"},"pAliqEfetRegIBSUF":{"type":"number","description":"Valor da alíquota do IBS da UF"},"vTribRegIBSUF":{"type":"number","description":"Valor do Tributo do IBS da UF"},"pAliqEfetRegIBSMun":{"type":"number","description":"Valor da alíquota do IBS do Município"},"vTribRegIBSMun":{"type":"number","description":"Valor do Tributo do IBS do Município"},"pAliqEfetRegCBS":{"type":"number","description":"Valor da alíquota da CBS"},"vTribRegCBS":{"type":"number","description":"Valor do Tributo da CBS"}}},"TributosDomain":{"type":"object","properties":{"IS":{"$ref":"#/components/schemas/ImpostoSeletivoDomain","description":"Informações do Imposto Seletivo"},"IBSCBS":{"$ref":"#/components/schemas/IBSCBSDomain","description":"Informações do Imposto de Bens e Serviços - IBS e da Contribuição de Bens e Serviços - CBS"}}},"TributosTotaisDomain":{"type":"object","properties":{"ISTot":{"$ref":"#/components/schemas/ImpostoSeletivoTotalDomain","description":"Grupo total do imposto seletivo"},"IBSCBSTot":{"$ref":"#/components/schemas/IBSCBSTotalDomain","description":"Totais com IBS e CBS"}}},"ValoresTotaisDomain":{"type":"object","properties":{"tribCalc":{"$ref":"#/components/schemas/TributosTotaisDomain"}}},"CompraGovernamentalInput":{"type":"object","properties":{"tpEnteGov":{"type":"integer","format":"int32","description":"Tipo de ente governamental.

\nValores:

\n

    \n
  • 1 = União\n
  • 2 = Estado\n
  • 3 = Distrito Federal\n
  • 4 = Município\n
  • 5 = Consórcio Público\n
  • 6 = Comitê Gestor do IBS\n
\n"},"tpOperGov":{"type":"integer","format":"int32","description":"Tipo de operação com o ente governamental.

\nValores:

\n

    \n
  • 1 = Fornecimento com pagamento posterior\n
  • 2 = Recebimento do pagamento com fornecimento já realizado\n
  • 3 = Fornecimento com pagamento já realizado\n
  • 4 = Recebimento do pagamento com fornecimento posterior\n
  • 5 = Fornecimento e recebimento do pagamento concomitantes\n
\n"}},"required":["tpEnteGov","tpOperGov"]},"ImpostoSeletivoInput":{"type":"object","properties":{"cst":{"type":"string","description":"Código da situação tributária","example":"000","maxLength":3,"minLength":3,"pattern":"\\d+"},"cClassTrib":{"type":"string","description":"Código da classificação tributária","example":"000000","maxLength":6,"minLength":6,"pattern":"\\d+"},"baseCalculo":{"type":"number","description":"Base de cálculo do imposto","example":200.0},"quantidade":{"type":"number","description":"Quantidade","example":1},"unidade":{"type":"string","description":"Unidade de medida","example":"LT"},"impostoInformado":{"type":"number","description":"Imposto Seletivo informado pelo contribuinte","example":12.0}},"required":["baseCalculo","cClassTrib","cst","impostoInformado"]},"ItemOperacaoInput":{"type":"object","properties":{"numero":{"type":"integer","format":"int32","description":"Número do Item","example":1,"maximum":9999999,"minimum":1},"ncm":{"type":"string","description":"Código NCM","example":24021000},"nbs":{"type":"string","description":"Código NBS","example":109052100},"cst":{"type":"string","description":"Código de situação tributária","example":"000","maxLength":3,"minLength":3,"pattern":"\\d+"},"cClassTrib":{"type":"string","description":"Código de classificação tributária","example":"000001","maxLength":6,"minLength":6,"pattern":"\\d+"},"baseCalculo":{"type":"number","description":"Base de cálculo do imposto","example":200.0},"quantidade":{"type":"number","description":"Quantidade","example":1},"unidade":{"type":"string","description":"Unidade de medida","example":"LT"},"impostoSeletivo":{"$ref":"#/components/schemas/ImpostoSeletivoInput","description":"Informações do Imposto Seletivo"},"tributacaoRegular":{"$ref":"#/components/schemas/TributacaoRegularInput","description":"Informações sobre tributação regular"}},"required":["cClassTrib","cst","numero"]},"OperacaoInput":{"type":"object","properties":{"id":{"type":"string","description":"Identificador do ROC","example":"6194602ea71cbf9431c236de4409d920"},"versao":{"type":"string","description":"Versão do ROC","example":"0.0.1"},"dhFatoGerador":{"type":"string","format":"date-time","description":"Data e hora do fato gerador no formato UTC","example":"2026-01-01T09:50:05-03:00"},"dataHoraEmissao":{"type":"string","format":"date-time","deprecated":true,"description":"<<<ATENÇÃO>>>

ESTE CAMPO SERÁ REMOVIDO EM FUTURO PRÓXIMO

Informar dhFatoGerador

Data e hora de emissão do documento no formato UTC

","example":"2026-01-01T09:50:05-03:00"},"municipio":{"type":"integer","format":"int64","description":"Código do Município (tabela IBGE)","example":4314902,"maximum":9999999,"minimum":0},"uf":{"type":"string","description":"Sigla da UF","example":"RS","maxLength":2,"minLength":2},"gCompraGov":{"$ref":"#/components/schemas/CompraGovernamentalInput","description":"Grupo de Compra Governamental"},"itens":{"type":"array","description":"Itens da Operação","items":{"$ref":"#/components/schemas/ItemOperacaoInput"},"minItems":1}},"required":["id","itens","municipio","versao"]},"TributacaoRegularInput":{"type":"object","properties":{"cst":{"type":"string","description":"Código da situação tributária","example":"000","maxLength":3,"minLength":3,"pattern":"\\d+"},"cClassTrib":{"type":"string","description":"Código da classificação tributária","example":"000000","maxLength":6,"minLength":6,"pattern":"\\d+"}},"required":["cClassTrib","cst"]},"PedagioInput":{"type":"object","properties":{"dataHoraEmissao":{"type":"string","format":"date-time","description":"Data e hora de emissão do documento no formato UTC","example":"2027-01-01T09:50:05-03:00"},"codigoMunicipioOrigem":{"type":"integer","format":"int64","description":"Código do Município (tabela IBGE)","example":4314902,"maximum":9999999,"minimum":0},"ufMunicipioOrigem":{"type":"string","description":"Sigla da UF","example":"RS","maxLength":2,"minLength":2},"cst":{"type":"string","description":"Código de situação tributária","example":"000","maxLength":3,"minLength":3},"cClassTrib":{"type":"string","description":"Código de classificação tributária","example":"000002","maxLength":6,"minLength":6},"baseCalculo":{"type":"number","description":"Base de cálculo do imposto","example":200.0},"trechos":{"type":"array","description":"Trechos do pedágio","items":{"$ref":"#/components/schemas/TrechoPedagioInput"},"minItems":1}},"required":["baseCalculo","cClassTrib","codigoMunicipioOrigem","cst","dataHoraEmissao","trechos","ufMunicipioOrigem"]},"TrechoPedagioInput":{"type":"object","properties":{"numero":{"type":"integer","format":"int32","description":"Número do Trecho","example":1,"minimum":1},"municipio":{"type":"integer","format":"int64","description":"Código do Município (tabela IBGE)","example":4314902,"maximum":9999999,"minimum":0},"uf":{"type":"string","description":"Sigla da UF","example":"RS","maxLength":2,"minLength":2},"extensao":{"type":"number","description":"Extensão do trecho","example":10}},"required":["extensao","municipio","numero","uf"]},"PedagioOutput":{"type":"object","properties":{"dataHoraEmissao":{"type":"string","format":"date-time","description":"Data e hora de emissão do documento no formato UTC","example":"2027-01-01T09:50:05-03:00"},"municipioOrigem":{"type":"integer","format":"int64","description":"Código do Município (tabela IBGE)","example":4314902},"ufMunicipioOrigem":{"type":"string","description":"Sigla da UF","example":"RS"},"cst":{"type":"string","description":"Código de situação tributária","example":"000","maxLength":3,"minLength":3},"cClassTrib":{"type":"string","description":"Código de classificação tributária","example":"000001","maxLength":6,"minLength":6},"baseCalculo":{"type":"number","description":"Base de cálculo","example":200.0},"extensaoTotal":{"type":"number","description":"Extensão total (km)","example":200.0},"trechos":{"type":"array","description":"Trechos do pedágio","items":{"$ref":"#/components/schemas/TrechoPedagioOutput"}},"total":{"$ref":"#/components/schemas/TotalPedagioOutput","description":"Total de tributo calculado"}}},"TotalPedagioOutput":{"type":"object","properties":{"cbsTotal":{"$ref":"#/components/schemas/TributoTotalPedagioOutput","description":"Total de CBS apurado"},"ibsEstadualTotal":{"$ref":"#/components/schemas/TributoTotalPedagioOutput","description":"Total de IBS Estadual apurado"},"ibsMunicipalTotal":{"$ref":"#/components/schemas/TributoTotalPedagioOutput","description":"Total de IBS Municipal apurado"}}},"TrechoPedagioOutput":{"type":"object","properties":{"numero":{"type":"integer","format":"int32","description":"Número do Item","example":1},"municipio":{"type":"integer","format":"int64","description":"Código do Município (tabela IBGE)","example":4314902},"uf":{"type":"string","description":"Sigla da UF","example":"RS"},"baseCalculo":{"type":"number","description":"Base de cálculo do imposto","example":200.0},"extensaoTrecho":{"type":"number","description":"Extensao do trecho","example":20},"extensaoTotal":{"type":"number","description":"Extensao total","example":50},"cbs":{"$ref":"#/components/schemas/TributoPedagioOutput","description":"Informações do CBS"},"ibsEstadual":{"$ref":"#/components/schemas/TributoPedagioOutput","description":"Informações do IBS Estadual"},"ibsMunicipal":{"$ref":"#/components/schemas/TributoPedagioOutput","description":"Informações do IBS Municipal"}}},"TributoPedagioOutput":{"type":"object","properties":{"aliquota":{"type":"number","description":"Alíquota","example":0.5},"aliquotaEfetiva":{"type":"number","description":"Alíquota efetiva","example":0.5},"tributoCalculado":{"type":"number","description":"Tributo calculado","example":0.75},"memoriaCalculo":{"type":"string","description":"Descrição do processo de cálculo","example":"Texto descritivo"}}},"TributoTotalPedagioOutput":{"type":"object","properties":{"baseCalculo":{"type":"number","description":"Base de cálculo do imposto","example":200.0},"valorApurado":{"type":"number","description":"Valor de imposto apurado","example":0.75},"valorDevido":{"type":"number","description":"Valor de imposto devido","example":0.75},"valorTributo":{"type":"number","description":"Valor do tributo","example":0.75},"totalMontanteDesonerado":{"type":"number","description":"Total do montante desonerado","example":10.22}}},"ErroDetalhe":{"type":"object","properties":{"type":{"type":"string"},"title":{"type":"string"},"code":{"type":"string"},"pointer":{"type":"string"},"detail":{"type":"string"}}},"ObservabilidadeItemDomain":{"type":"object","properties":{"nObj":{"type":"integer","format":"int32"},"estadoItem":{"type":"string","enum":["CALCULADO","NAO_IMPLEMENTADO","INCONSISTENCIA_ENTRADA","FALHA_TECNICA"]},"tribCalc":{"$ref":"#/components/schemas/TributosDomain"},"erros":{"type":"array","items":{"$ref":"#/components/schemas/ErroDetalhe"}}}},"ObservabilidadeROCDomain":{"type":"object","properties":{"oper":{"$ref":"#/components/schemas/OperacaoConsumoDomain"},"objetos":{"type":"array","items":{"$ref":"#/components/schemas/ObservabilidadeItemDomain"}},"total":{"$ref":"#/components/schemas/ValoresTotaisDomain"}}},"NfseValidacaoIndicadorOperacaoInput":{"type":"object","properties":{"cTribNac":{"type":"string","description":"Código de Tributação Nacional - opcional (4 ou 6 dígitos)","example":"0101","pattern":"^\\d{4}$|^\\d{6}$"},"cIndOp":{"type":"string","description":"Código do Indicador de Operação (6 dígitos)","example":100301,"minLength":1,"pattern":"^\\d{6}$"},"cClassTrib":{"type":"string","description":"Código de Classificação Tributária (6 dígitos)","example":620001,"minLength":1,"pattern":"^\\d{6}$"},"nbs":{"type":"string","description":"Código NBS - Nomenclatura Brasileira de Serviços (9 dígitos)","example":115021000,"minLength":1,"pattern":"^\\d{9}$"},"dataOcorrenciaFatoGerador":{"type":"string","format":"date","description":"Data de ocorrência do fato gerador da operação (formato: YYYY-MM-DD)","example":"2026-01-15"}},"required":["cClassTrib","cIndOp","dataOcorrenciaFatoGerador","nbs"]},"NfseValidacaoIndicadorOperacaoOutput":{"type":"object","description":"Resultado da validação do indicador de operação","properties":{"cTribNac":{"type":"string","description":"Código de Tributação Nacional informado (opcional)","example":"010101"},"cIndOp":{"type":"string","description":"Código do Indicador de Operação informado","example":100301},"cClassTrib":{"type":"string","description":"Código de Classificação Tributária informado","example":"000001"},"nbs":{"type":"string","description":"Código NBS informado","example":115021000},"dataOcorrenciaFatoGerador":{"type":"string","format":"date","description":"Data de ocorrência do fato gerador informada","example":"2025-01-01"},"valido":{"type":"boolean","description":"Indica se a combinação informada é válida","example":true}}},"NfseBaseCalculoInput":{"type":"object","properties":{"anoFatoGerador":{"type":"integer","format":"int32","description":"Ano do Fato Gerador","example":2026},"valorServico":{"type":"number","description":"Valor do Serviço","example":105.0},"descontoIncondicional":{"type":"number","default":"0.00","description":"Desconto Incondicional","example":5.0},"vCalcReeRepRes":{"type":"number","default":"0.00","description":"Valor monetário (R$) total relativo ao fornecimento próprio de bens materiais ou relacionados a operações de terceiros, objeto de reembolso, repasse ou ressarcimento pelo recebedor, já tributados e aqui referenciados e que não integram da base de cálculo (BC) do ISSQN, do IBS e da CBS.","example":5.0},"vCalcDedRedIBSCBS":{"type":"number","default":"0.00","description":"Valor monetário (R$) total relativo aos valores de dedução e redução da Base de Cálculo do IBS e da CBS referentes às operações de locação, cessão onerosa ou arrendamento de bens imóveis, e serviços médicos.","example":5.0},"iss":{"type":"number","default":"0.00","description":"Imposto sobre Serviços de Qualquer Natureza","example":5.0},"pis":{"type":"number","default":"0.00","description":"Programa de Integração Social","example":5.0},"cofins":{"type":"number","default":"0.00","description":"Contribuição para o Financiamento da Seguridade Social","example":5.0}},"required":["anoFatoGerador","valorServico"]},"NfseBaseCalculoOutput":{"type":"object","properties":{"baseCalculo":{"type":"number","description":"Base de cálculo da operação","example":100.55}}},"BaseCalculoISMercadoriasInput":{"type":"object","properties":{"anoFatoGerador":{"type":"integer","format":"int32","description":"Ano do Fato Gerador","example":2027},"valorBem":{"type":"number","default":"0.00","description":"Valor do bem (antes dos descontos/ajustes)","example":105.0},"ajusteAcrescimos":{"type":"number","default":"0.00","description":"Ajuste decorrentes de acréscimos","example":5.0},"juros":{"type":"number","default":"0.00","description":"Juros","example":5.0},"multas":{"type":"number","default":"0.00","description":"Multas","example":5.0},"encargos":{"type":"number","default":"0.00","description":"Encargos","example":5.0},"freteCobrado":{"type":"number","default":"0.00","description":"Frete cobrado como parte do valor da operação","example":5.0},"outrosTributos":{"type":"number","default":"0.00","description":"Tributos (exceto CBS, IBS e o próprio IS) e preços públicos, inclusive tarifas","example":5.0},"demaisImportancias":{"type":"number","default":"0.00","description":"Demais importâncias cobradas ou recebidas como parte do valor da operação, inclusive seguros e taxas","example":5.0},"icms":{"type":"number","default":"0.00","description":"ICMS","example":5.0},"iss":{"type":"number","default":"0.00","description":"ISS","example":5.0},"cosip":{"type":"number","default":"0.00","description":"COSIP","example":5.0},"ipi":{"type":"number","default":"0.00","description":"IPI","example":5.0},"descontoIncondicional":{"type":"number","default":"0.00","description":"Desconto Incondicional","example":5.0},"bonificacao":{"type":"number","default":"0.00","description":"Bonificações que constem do respectivo documento fiscal e não dependam de evento posterior, nos termos § 2º do Art. 417","example":5.0},"devolucaoVendas":{"type":"number","default":"0.00","description":"Devoluções de bens vendidos nos termos do Art. 418","example":5.0}},"required":["anoFatoGerador"]},"BaseCalculoISMercadoriasModel":{"type":"object","properties":{"baseCalculo":{"type":"number","description":"Base de cálculo da operação","example":100.55}}},"BaseCalculoCibsInput":{"type":"object","properties":{"anoFatoGerador":{"type":"integer","format":"int32","description":"Ano do Fato Gerador","example":2026},"valorBem":{"type":"number","default":"0.00","description":"Valor do Bem (antes dos descontos/ajustes)","example":105.0},"ajusteAcrescimos":{"type":"number","default":"0.00","description":"Ajuste decorrentes de acréscimos","example":5.0},"juros":{"type":"number","default":"0.00","description":"Juros","example":5.0},"multas":{"type":"number","default":"0.00","description":"Multas","example":5.0},"encargos":{"type":"number","default":"0.00","description":"Encargos","example":5.0},"frete":{"type":"number","default":"0.00","description":"Frete cobrado como parte do valor da operação","example":5.0},"impostoSeletivo":{"type":"number","default":"0.00","description":"Imposto Seletivo","example":5.0},"outrosTributos":{"type":"number","default":"0.00","description":"Outros tributos (exceto CBS e IBS) e preços públicos, inclusive tarifas","example":5.0},"demaisImportancias":{"type":"number","default":"0.00","description":"Demais importâncias cobradas ou recebidas como parte do valor da operação, inclusive seguros e taxas","example":5.0},"icms":{"type":"number","default":"0.00","description":"ICMS","example":5.0},"iss":{"type":"number","default":"0.00","description":"ISS","example":5.0},"pis":{"type":"number","default":"0.00","description":"PIS","example":5.0},"pisImportacao":{"type":"number","default":"0.00","description":"PIS Importação","example":5.0},"cofins":{"type":"number","default":"0.00","description":"COFINS","example":5.0},"cofinsImportacao":{"type":"number","default":"0.00","description":"COFINS Importação","example":5.0},"cosip":{"type":"number","default":"0.00","description":"COSIP","example":5.0},"ipi":{"type":"number","default":"0.00","description":"IPI","example":5.0},"descontoIncondicional":{"type":"number","default":"0.00","description":"Desconto Incondicional","example":5.0}},"required":["anoFatoGerador"]},"TipoDocumentoDTO":{"type":"object","properties":{"nome":{"type":"string"},"mnemonico":{"type":"string"},"versaoNotaTecnica":{"type":"string"}}},"ErroDescricao":{"type":"object","properties":{"codigo":{"type":"string"},"titulo":{"type":"string"},"descricao":{"type":"string"}}},"NfseSituacaoClassificacaoOutput":{"type":"object","properties":{"codigoSituacaoTributaria":{"type":"string"},"descricaoSituacaoTributaria":{"type":"string"},"codigoClassificacaoTributaria":{"type":"string"},"descricaoClassificacaoTributaria":{"type":"string"}}},"NfseLocalOperacaoOutput":{"type":"object","description":"Informações sobre o local da operação baseado no indicador de operação","properties":{"cIndOp":{"type":"string","description":"Código do Indicador de Operação informado","example":100301},"dataOcorrenciaFatoGerador":{"type":"string","format":"date","description":"Data de ocorrência do fato gerador informada","example":"2026-01-01"},"codigoLocalFornecimento":{"type":"string","description":"Código do local de fornecimento","enum":["1","2","3","4","5","6","7","8","9","10","11","12","13","14","15","16","17","18","19","20","21","22","23","24","25","26","27","28"],"example":5},"localFornecimento":{"type":"string","description":"Local de fornecimento","example":"Estabelecimento do Fornecedor"},"codigoLocalIncidencia":{"type":"string","description":"Código do local de incidência","enum":["1","2","3","4","5","6","7"],"example":3},"localIncidencia":{"type":"string","description":"Local de incidência","example":"Estabelecimento do Prestador/Fornecedor"}}},"NfseCodigoDescricaoOutput":{"type":"object","description":"Código e descrição de um valor de enumeração","properties":{"codigo":{"type":"integer","format":"int32","description":"Código do valor","example":1},"descricao":{"type":"string","description":"Descrição do valor","example":"Endereço do Destinatário"}}},"NfseIndicadorOperacaoOutput":{"type":"object","description":"Informações sobre o indicador de operação","properties":{"cIndOp":{"type":"string","description":"Código do Indicador de Operação","example":"020301"},"tipoOperacao":{"type":"string","description":"Tipo de operação","example":"Serviço de administração e intermediação de bem imóvel"},"codigoLocalFornecimento":{"type":"string","description":"Código do local de fornecimento","enum":["1","2","3","4","5","6","7","8","9","10","11","12","13","14","15","16","17","18","19","20","21","22","23","24","25","26","27","28"],"example":14},"localFornecimento":{"type":"string","description":"Local de fornecimento","example":"Estabelecimento do Fornecedor"},"codigoLocalIncidencia":{"type":"string","description":"Código do local de incidência","enum":["1","2","3","4","5","6","7"],"example":3},"localIncidencia":{"type":"string","description":"Local de incidência","example":"Estabelecimento do Prestador/Fornecedor"},"prestacaoServicoOnerosa":{"type":"boolean","description":"Indicador se é prestação de serviço onerosa (apenas quando NBS é informado)","example":true},"adquirenteExterior":{"type":"boolean","description":"Indicador se o adquirente é do exterior (apenas quando NBS é informado)","example":false}}},"VersaoOutput":{"type":"object","properties":{"versaoApp":{"type":"string","description":"Versão do aplicativo","example":"0.0.0-SNAPSHOT"},"versaoDb":{"type":"string","description":"Versão do banco de dados","example":"1.0.0"},"descricaoVersaoDb":{"type":"string","description":"Descrição da versão do banco de dados","example":"Versão de homologação"},"dataVersaoDb":{"type":"string","description":"Data da versão do banco de dados","example":"2026-01-01"},"ambiente":{"type":"string","description":"Ambiente da aplicação","example":"Online"}}},"UfDadosAbertosOutput":{"type":"object","properties":{"sigla":{"type":"string","description":"Sigla da UF","example":"RS"},"nome":{"type":"string","description":"Nome da UF","example":"Rio Grande do Sul"},"codigo":{"type":"integer","format":"int64","description":"Código IBGE da UF","example":43}}},"MunicipioDadosAbertosOutput":{"type":"object","properties":{"codigo":{"type":"integer","format":"int64","description":"Código IBGE do Município","example":4314902},"nome":{"type":"string","description":"Nome do município","example":"Porto Alegre"}}},"TransferenciaIBSDadosAbertosOutput":{"type":"object","properties":{"valor":{"type":"number","description":"Percentual de transferência IBS","example":0.15},"inicioVigencia":{"type":"string","format":"date","description":"Data de início da vigência","example":"2026-01-01"},"fimVigencia":{"type":"string","format":"date","description":"Data de fim da vigência","example":"2026-12-31"}}},"TransferenciaCBSDadosAbertosOutput":{"type":"object","properties":{"valor":{"type":"number","description":"Percentual de transferência CBS","example":0.15},"inicioVigencia":{"type":"string","format":"date","description":"Data de início da vigência","example":"2026-01-01"},"fimVigencia":{"type":"string","format":"date","description":"Data de fim da vigência","example":"2026-12-31"}}},"SituacaoTributariaDadosAbertosOutput":{"type":"object","properties":{"id":{"type":"integer","format":"int64","description":"Identificador único da situacao tributária","example":0},"codigo":{"type":"string","description":"Código da situacao tributária","example":"000"},"descricao":{"type":"string","description":"Descricao da situacao tributária","example":"Tributação Integral"}}},"RedutorCompraGovernamentalDadosAbertosOutput":{"type":"object","properties":{"valor":{"type":"number","description":"Valor do redutor","example":0.6},"inicioVigencia":{"type":"string","format":"date","description":"Data de início da vigência","example":"2026-01-01"},"fimVigencia":{"type":"string","format":"date","description":"Data de fim da vigência","example":"2026-12-31"}}},"NcmDadosAbertosOutput":{"type":"object","properties":{"tributadoPeloImpostoSeletivo":{"type":"boolean","description":"Tributado pelo Imposto Seletivo"},"aliquotaAdValorem":{"type":"number","description":"Alíquota ad valorem do Imposto Seletivo"},"aliquotaAdRem":{"type":"number","description":"Alíquota ad rem do Imposto Seletivo"},"capitulo":{"type":"string","description":"Capítulo da NCM"},"posicao":{"type":"string","description":"Posição da NCM"},"subposicao":{"type":"string","description":"Subposição da NCM"},"item":{"type":"string","description":"Item da NCM"},"subitem":{"type":"string","description":"Subitem da NCM"},"unidade":{"type":"string","description":"Unidade da NCM"}}},"NbsDadosAbertosOutput":{"type":"object","properties":{"tributadoPeloImpostoSeletivo":{"type":"boolean","description":"Tributado pelo Imposto Seletivo"},"aliquotaAdValorem":{"type":"number","description":"Alíquota ad valorem do Imposto Seletivo"},"capitulo":{"type":"string","description":"Capítulo da NBS"},"posicao":{"type":"string","description":"Posição da NBS"},"subposicao1":{"type":"string","description":"Subposição 1 da NBS"},"subposicao2":{"type":"string","description":"Subposição 2 da NBS"},"item":{"type":"string","description":"Item da NBS"}}},"NbsListaDadosAbertosOutput":{"type":"object","properties":{"codigo":{"type":"string","description":"Código NBS","example":10101},"descricao":{"type":"string","description":"Descrição da NBS","example":"Serviços de construção de edificações"}}},"FundamentacaoClassificacaoDadosAbertosOutput":{"type":"object","properties":{"codigoClassificacaoTributaria":{"type":"string","description":"Código da classificação tributária vinculada à fundamentacao legal","example":"000001"},"descricaoClassificacaoTributaria":{"type":"string","description":"Descrição da classificação tributária vinculada à fundamentacao legal","example":"000001"},"codigoSituacaoTributaria":{"type":"string","description":"Código da situação tributária vinculada à fundamentacao legal","example":"000001"},"descricaoSituacaoTributaria":{"type":"string","description":"Descrição da situação tributária vinculada à fundamentacao legal","example":"000001"},"conjuntoTributo":{"type":"string","description":"Tributo(s) vinculado(s) à fundamentacao legal","example":"CBS e IBS"},"texto":{"type":"string","description":"Texto da fundamentação legal"},"textoCurto":{"type":"string","description":"Texto curto da fundamentação legal"},"referenciaNormativa":{"type":"string","description":"Referência normativa da fundamentação legal"}}},"ClassificacaoTributariaDadosAbertosOutput":{"type":"object","properties":{"codigo":{"type":"string","description":"Código da classificação tributária","example":"000001"},"descricao":{"type":"string","description":"Descrição da classificação tributária"},"tipoAliquota":{"type":"string","description":"Tipo de alíquota da classificação tributária"},"nomenclatura":{"type":"string","description":"Nomenclatura da classificação tributária"},"descricaoTratamentoTributario":{"type":"string","description":"Descrição do tratamento tributário da classificação tributária"},"incompativelComSuspensao":{"type":"boolean"},"exigeGrupoDesoneracao":{"type":"boolean"},"possuiPercentualReducao":{"type":"boolean"},"indicaApropriacaoCreditoAdquirenteCbs":{"type":"boolean"},"indicaApropriacaoCreditoAdquirenteIbs":{"type":"boolean"},"indicaCreditoPresumidoFornecedor":{"type":"boolean"},"indicaCreditoPresumidoAdquirente":{"type":"boolean"},"creditoOperacaoAntecedente":{"type":"string"},"percentualReducaoCbs":{"type":"number"},"percentualReducaoIbsUf":{"type":"number"},"percentualReducaoIbsMun":{"type":"number"},"tiposDfeClassificacao":{"type":"array","items":{"$ref":"#/components/schemas/TipoDfeClassificacaoDadosAbertosOutput"}},"dataAtualizacao":{"type":"string","format":"date","description":"Data de atualização da classificação tributária (YYYY-MM-DD)","example":"2025-12-15"}}},"TipoDfeClassificacaoDadosAbertosOutput":{"type":"object","properties":{"tipo":{"type":"integer","format":"int32","description":"Tipo de DFE","example":55},"sigla":{"type":"string","description":"Sigla do DFE","example":"NF-e"},"descricao":{"type":"string","description":"Descrição do DFE","example":"Documento Fiscal Eletrônico"}}},"NcmAplicavelOutput":{"type":"object","properties":{"cClassTrib":{"type":"string","description":"Código da Classificação Tributária","example":"000001"},"ncm":{"type":"string","description":"Código NCM (Nomenclatura Comum do Mercosul)","example":24021000},"dataOcorrenciaFatoGerador":{"type":"string","description":"Data de ocorrência do fato gerador","example":"2026-01-01"},"valido":{"type":"boolean","description":"Indicador se o NCM é válido para a classificação tributária informada"}}},"NbsAplicavelOutput":{"type":"object","properties":{"cClassTrib":{"type":"string","description":"Código da Classificação Tributária","example":"000001"},"nbs":{"type":"string","description":"Código NBS (Nomenclatura Brasileira de Serviços)","example":114052200},"dataOcorrenciaFatoGerador":{"type":"string","description":"Data de ocorrência do fato gerador","example":"2026-01-01"},"valido":{"type":"boolean","description":"Indicador se a NBS é válida para a classificação tributária informada"}}},"ValidadeDfeClassificacaoTributariaDadosAbertosOutput":{"type":"object","properties":{"siglaDfeInformado":{"type":"string","description":"Sigla do DFE informado","example":"NFSe"},"validoParaSiglaDfeInformado":{"type":"boolean","description":"Indica se a classificação tributária é válida para a sigla do DFE informado","example":true},"nomenclatura":{"type":"string","description":"Nomenclatura da classificação tributária informada","example":"NBS ou NCM"},"exigeGrupoTributacaoRegular":{"type":"boolean","description":"Indica se a classificação tributária exige grupo de tributação regular","example":false},"permiteDiferimento":{"type":"boolean","description":"Indica se a classificação tributária permite diferimento","example":false},"possibilidadeCreditoPresumido":{"type":"boolean","description":"Indica se há possibilidade de crédito presumido na operação","example":false}}},"AliquotaDadosAbertosOutput":{"type":"object","properties":{"aliquotaReferencia":{"type":"number","description":"Alíquota de referência","example":0},"aliquotaPropria":{"type":"number","description":"Alíquota própria","example":0},"formaAplicacao":{"type":"string","description":"Forma de aplicação da alíquota própria em relação à alíquota de referência","enum":["SUBSTITUICAO","ACRESCIMO","DECRESCIMO"],"example":"ACRESCIMO"}}}}}} \ No newline at end of file diff --git a/vendor/swagger/openapi-v1_1_0.json b/vendor/swagger/openapi-v1_1_0.json new file mode 100644 index 0000000..7d7b259 --- /dev/null +++ b/vendor/swagger/openapi-v1_1_0.json @@ -0,0 +1,10303 @@ +{ + "openapi": "3.1.0", + "info": { + "title": "Plataforma Pública de Split Payment API", + "description": "API REST para a Plataforma Pública de Split Payment - RTC\n\n## Documentação de Objetos e Preenchimento\n\n> ⚠️ **Observação importante:** documentação em construção.\n\n### Estrutura base das requisições\n- `InfoRequest`: objeto base para requests com `infRequisicao` e `transacoes`.\n- `InfoRequestSemCnpj`: objeto base para requests com `infRequisicao` (sem cnpjRaizPspRecDir) e `transacoes`.\n- `InfoSegRequest`: objeto base para operações de segregação sem lista de transações.\n- `InfoSegFinalRequest`: objeto de finalização com `infRequisicao` e `dadosFinalSeg`.\n\n### Objeto `infRequisicao`\n- `cnpjRaizPspRecDir`: raiz CNPJ do PSP direto (8 dígitos).\n- `dtHrMsg`: data/hora da mensagem no formato ISO 8601 com fuso `-03:00`.\n\n### Regras de preenchimento\n- Campos marcados como obrigatórios no schema devem ser sempre enviados.\n- Para endpoints com transações, o array `transacoes` deve conter objetos válidos para o arranjo do endpoint.\n- Para segregação em `/finalizacao`, enviar `infRequisicao` e `dadosFinalSeg` conforme `InfoSegFinalRequest`.\n\n## Validações aplicadas no OpenAPI\n\n### Tabela de tipos e validações\n| Tipo lógico | Tipo OpenAPI | Formato | Validações mais comuns |\n| --- | --- | --- | --- |\n| Texto/alfanumérico | `string` | - | `minLength`, `maxLength`, `pattern` |\n| Inteiro | `integer` | - | `minimum` |\n| Decimal | `number` | - | `multipleOf` (ex.: `0.01`) |\n| Data | `string` | `date` | `pattern: ^\\d{4}-\\d{2}-\\d{2}$` |\n| Data e hora | `string` | `date-time` | `pattern: ^\\d{4}-\\d{2}-\\d{2}T\\d{2}:\\d{2}:\\d{2}-03:00$` |\n| Lista fechada de valores | `string` | - | `enum` |\n\n## Segurança (mTLS)\n\n### Modelo de autenticação\n- A API utiliza autenticação mútua TLS (`mutualTLS`) em nível de transporte.\n- Não é utilizado token Bearer nem API Key para autorização de chamadas.\n\n### Certificados e fluxo JWKS\n- O certificado do cliente é obtido/gerenciado conforme fluxo de segurança baseado em JWKS, de acordo com o manual de segurança da plataforma.\n- A cadeia de confiança e o material criptográfico devem estar válidos no handshake TLS antes do envio da requisição HTTP.\n- A validação do certificado ocorre no canal TLS (camada de transporte).\n\n### Restrições de conteúdo\n- `enum` para valores fechados (ex.: `arrj`: `PXA`, `PXD`, `PXE`, `BOL`, `TED`, `TEF`).\n- `minLength` e `maxLength` para tamanhos fixos/limites.\n- `pattern` para formatos estruturados (ex.: CNPJ, CPF/CNPJ, timestamps, código de barras).\n- `minimum` para inteiros com limite inferior (ex.: `numPgto >= 1`).\n- `multipleOf` para valores decimais com 2 casas (`0.01`).\n\n### Respostas de erro\n- Componentes padronizados para `400`, `403`, `422`, `500`.\n\n\n## Cabeçalhos\n\n- `X-JWS-Signature`: assinatura JWS Compact Detached (RFC 7515), com `alg=RS256`, `typ=JWS`, `kid`, `b64=false`, `jti`, `iat` e `crit=[\"b64\"]` (RFC 7797), usando payload canonicalizado em JCS (RFC 8785). `jti`: identificador único da requisição no formato UUID v4, `iat`: instante de emissão da assinatura no formato NumericDate, conforme manual de segurança.\n\n- `proximoToken`: token que indica a posição final de leitura do Retorno Super Inteligente, usado como parâmetro para a próxima requisição.\n- `streamId`: identificador do stream retornado pela API. Pode ser usado na Consulta Retroativa do Super Inteligente para indicar o stream que precisa ser consultado.\n", + "contact": { + "name": "SERPRO", + "url": "https://www.serpro.gov.br" + }, + "version": "1.1.0" + }, + "servers": [ + { + "url": "http://localhost:8080", + "description": "Generated server url" + } + ], + "tags": [ + { + "name": "Informe de Transação Iniciada", + "description": "Operações relacionadas a Informe de Transação Iniciada" + }, + { + "name": "Informe de Transação Atualizada", + "description": "Operações relacionadas a Informe de Transação Atualizada" + }, + { + "name": "Informe Preliminar de Pagamento", + "description": "Operações relacionadas a Informe Preliminar de Pagamento" + }, + { + "name": "Informe de Baixa (Exceto por Pagamento)", + "description": "Operações relacionadas a Informe de Baixa (Exceto por Pagamento)" + }, + { + "name": "Retorno Super Inteligente", + "description": "Operações relacionadas a Retorno Super Inteligente" + }, + { + "name": "Consulta Retroativa Super Inteligente", + "description": "Operações relacionadas a Consulta Retroativa Super Inteligente" + }, + { + "name": "Informe de Segregação", + "description": "Operações relacionadas a Informe de Segregação" + }, + { + "name": "Mecanismo de Ocorrências (MOC)", + "description": "Operações relacionadas ao Mecanismo de Ocorrências (MOC)" + } + ], + "paths": { + "/api/v1/boleto": { + "post": { + "summary": "POST - Informe de Transação Iniciada", + "description": "Processa Informe de Transação Iniciada para arranjo(s): Boleto", + "tags": [ + "Informe de Transação Iniciada" + ], + "operationId": "postapiv1boleto", + "parameters": [ + { + "$ref": "#/components/parameters/XJwsSignatureHeaderParam" + } + ], + "responses": { + "201": { + "$ref": "#/components/responses/PPResponseOk" + }, + "400": { + "$ref": "#/components/responses/PPResponseBadRequest" + }, + "403": { + "$ref": "#/components/responses/PPResponseForbidden" + }, + "500": { + "$ref": "#/components/responses/PPResponseError" + } + }, + "requestBody": { + "required": true, + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/InformeDeTransacaoIniciadaBoletoRequest" + } + } + } + } + }, + "patch": { + "summary": "PATCH - Informe de Transação Atualizada", + "description": "Processa Informe de Transação Atualizada para arranjo(s): Boleto", + "tags": [ + "Informe de Transação Atualizada" + ], + "operationId": "patchapiv1boleto", + "parameters": [ + { + "$ref": "#/components/parameters/XJwsSignatureHeaderParam" + } + ], + "responses": { + "201": { + "$ref": "#/components/responses/PPResponseOk" + }, + "400": { + "$ref": "#/components/responses/PPResponseBadRequest" + }, + "403": { + "$ref": "#/components/responses/PPResponseForbidden" + }, + "500": { + "$ref": "#/components/responses/PPResponseError" + } + }, + "requestBody": { + "required": true, + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/InformeDeTransacaoAtualizadaBoletoRequest" + } + } + } + } + } + }, + "/api/v1/pix-automatico": { + "post": { + "summary": "POST - Informe de Transação Iniciada", + "description": "Processa Informe de Transação Iniciada para arranjo(s): Pix Automático", + "tags": [ + "Informe de Transação Iniciada" + ], + "operationId": "postapiv1pix_automatico", + "parameters": [ + { + "$ref": "#/components/parameters/XJwsSignatureHeaderParam" + } + ], + "responses": { + "201": { + "$ref": "#/components/responses/PPResponseOk" + }, + "400": { + "$ref": "#/components/responses/PPResponseBadRequest" + }, + "403": { + "$ref": "#/components/responses/PPResponseForbidden" + }, + "500": { + "$ref": "#/components/responses/PPResponseError" + } + }, + "requestBody": { + "required": true, + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/InformeDeTransacaoIniciadaPixAutomaticoRequest" + } + } + } + } + } + }, + "/api/v1/pix-dinamico": { + "post": { + "summary": "POST - Informe de Transação Iniciada", + "description": "Processa Informe de Transação Iniciada para arranjo(s): Pix Dinâmico", + "tags": [ + "Informe de Transação Iniciada" + ], + "operationId": "postapiv1pix_dinamico", + "parameters": [ + { + "$ref": "#/components/parameters/XJwsSignatureHeaderParam" + } + ], + "responses": { + "201": { + "$ref": "#/components/responses/PPResponseOk" + }, + "400": { + "$ref": "#/components/responses/PPResponseBadRequest" + }, + "403": { + "$ref": "#/components/responses/PPResponseForbidden" + }, + "500": { + "$ref": "#/components/responses/PPResponseError" + } + }, + "requestBody": { + "required": true, + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/InformeDeTransacaoIniciadaPixDinamicoRequest" + } + } + } + } + }, + "patch": { + "summary": "PATCH - Informe de Transação Atualizada", + "description": "Processa Informe de Transação Atualizada para arranjo(s): Pix Dinâmico", + "tags": [ + "Informe de Transação Atualizada" + ], + "operationId": "patchapiv1pix_dinamico", + "parameters": [ + { + "$ref": "#/components/parameters/XJwsSignatureHeaderParam" + } + ], + "responses": { + "201": { + "$ref": "#/components/responses/PPResponseOk" + }, + "400": { + "$ref": "#/components/responses/PPResponseBadRequest" + }, + "403": { + "$ref": "#/components/responses/PPResponseForbidden" + }, + "500": { + "$ref": "#/components/responses/PPResponseError" + } + }, + "requestBody": { + "required": true, + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/InformeDeTransacaoAtualizadaPixDinamicoRequest" + } + } + } + } + } + }, + "/api/v1/boleto/informe-preliminar-pagamento": { + "post": { + "summary": "POST - Informe Preliminar de Pagamento", + "description": "Processa Informe Preliminar de Pagamento para arranjo(s): Boleto", + "tags": [ + "Informe Preliminar de Pagamento" + ], + "operationId": "postapiv1boletoinforme_preliminar_pagamento", + "parameters": [ + { + "$ref": "#/components/parameters/XJwsSignatureHeaderParam" + } + ], + "responses": { + "201": { + "$ref": "#/components/responses/PPResponseOk" + }, + "400": { + "$ref": "#/components/responses/PPResponseBadRequest" + }, + "403": { + "$ref": "#/components/responses/PPResponseForbidden" + }, + "500": { + "$ref": "#/components/responses/PPResponseError" + } + }, + "requestBody": { + "required": true, + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/InformePreliminarDePagamentoBoletoRequest" + } + } + } + } + } + }, + "/api/v1/pix-automatico/informe-preliminar-pagamento": { + "post": { + "summary": "POST - Informe Preliminar de Pagamento", + "description": "Processa Informe Preliminar de Pagamento para arranjo(s): Pix Automático", + "tags": [ + "Informe Preliminar de Pagamento" + ], + "operationId": "postapiv1pix_automaticoinforme_preliminar_pagamento", + "parameters": [ + { + "$ref": "#/components/parameters/XJwsSignatureHeaderParam" + } + ], + "responses": { + "201": { + "$ref": "#/components/responses/PPResponseOk" + }, + "400": { + "$ref": "#/components/responses/PPResponseBadRequest" + }, + "403": { + "$ref": "#/components/responses/PPResponseForbidden" + }, + "500": { + "$ref": "#/components/responses/PPResponseError" + } + }, + "requestBody": { + "required": true, + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/InformePreliminarDePagamentoPixAutomaticoRequest" + } + } + } + } + } + }, + "/api/v1/pix-dinamico/informe-preliminar-pagamento": { + "post": { + "summary": "POST - Informe Preliminar de Pagamento", + "description": "Processa Informe Preliminar de Pagamento para arranjo(s): Pix Dinâmico", + "tags": [ + "Informe Preliminar de Pagamento" + ], + "operationId": "postapiv1pix_dinamicoinforme_preliminar_pagamento", + "parameters": [ + { + "$ref": "#/components/parameters/XJwsSignatureHeaderParam" + } + ], + "responses": { + "201": { + "$ref": "#/components/responses/PPResponseOk" + }, + "400": { + "$ref": "#/components/responses/PPResponseBadRequest" + }, + "403": { + "$ref": "#/components/responses/PPResponseForbidden" + }, + "500": { + "$ref": "#/components/responses/PPResponseError" + } + }, + "requestBody": { + "required": true, + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/InformePreliminarDePagamentoPixDinamicoRequest" + } + } + } + } + } + }, + "/api/v1/pix-estatico/informe-preliminar-pagamento": { + "post": { + "summary": "POST - Informe Preliminar de Pagamento", + "description": "Processa Informe Preliminar de Pagamento para arranjo(s): Pix estático", + "tags": [ + "Informe Preliminar de Pagamento" + ], + "operationId": "postapiv1pix_estaticoinforme_preliminar_pagamento", + "parameters": [ + { + "$ref": "#/components/parameters/XJwsSignatureHeaderParam" + } + ], + "responses": { + "201": { + "$ref": "#/components/responses/PPResponseOk" + }, + "400": { + "$ref": "#/components/responses/PPResponseBadRequest" + }, + "403": { + "$ref": "#/components/responses/PPResponseForbidden" + }, + "500": { + "$ref": "#/components/responses/PPResponseError" + } + }, + "requestBody": { + "required": true, + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/InformePreliminarDePagamentoPixEstaticoRequest" + } + } + } + } + } + }, + "/api/v1/ted/informe-preliminar-pagamento": { + "post": { + "summary": "POST - Informe Preliminar de Pagamento", + "description": "Processa Informe Preliminar de Pagamento para arranjo(s): TED", + "tags": [ + "Informe Preliminar de Pagamento" + ], + "operationId": "postapiv1tedinforme_preliminar_pagamento", + "parameters": [ + { + "$ref": "#/components/parameters/XJwsSignatureHeaderParam" + } + ], + "responses": { + "201": { + "$ref": "#/components/responses/PPResponseOk" + }, + "400": { + "$ref": "#/components/responses/PPResponseBadRequest" + }, + "403": { + "$ref": "#/components/responses/PPResponseForbidden" + }, + "500": { + "$ref": "#/components/responses/PPResponseError" + } + }, + "requestBody": { + "required": true, + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/InformePreliminarDePagamentoTedRequest" + } + } + } + } + } + }, + "/api/v1/tef/informe-preliminar-pagamento": { + "post": { + "summary": "POST - Informe Preliminar de Pagamento", + "description": "Processa Informe Preliminar de Pagamento para arranjo(s): TEF", + "tags": [ + "Informe Preliminar de Pagamento" + ], + "operationId": "postapiv1tefinforme_preliminar_pagamento", + "parameters": [ + { + "$ref": "#/components/parameters/XJwsSignatureHeaderParam" + } + ], + "responses": { + "201": { + "$ref": "#/components/responses/PPResponseOk" + }, + "400": { + "$ref": "#/components/responses/PPResponseBadRequest" + }, + "403": { + "$ref": "#/components/responses/PPResponseForbidden" + }, + "500": { + "$ref": "#/components/responses/PPResponseError" + } + }, + "requestBody": { + "required": true, + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/InformePreliminarDePagamentoTefRequest" + } + } + } + } + } + }, + "/api/v1/boleto/baixa-exceto-pagamento": { + "post": { + "summary": "POST - Informe de Baixa (Exceto por Pagamento)", + "description": "Processa Informe de Baixa (Exceto por Pagamento) para arranjo(s): Boleto", + "tags": [ + "Informe de Baixa (Exceto por Pagamento)" + ], + "operationId": "postapiv1boletobaixa_exceto_pagamento", + "parameters": [ + { + "$ref": "#/components/parameters/XJwsSignatureHeaderParam" + } + ], + "responses": { + "201": { + "$ref": "#/components/responses/PPResponseOk" + }, + "400": { + "$ref": "#/components/responses/PPResponseBadRequest" + }, + "403": { + "$ref": "#/components/responses/PPResponseForbidden" + }, + "500": { + "$ref": "#/components/responses/PPResponseError" + } + }, + "requestBody": { + "required": true, + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/InformeDeBaixaExcetoPorPagamentoBoletoRequest" + } + } + } + } + } + }, + "/api/v1/pix-automatico/baixa-exceto-pagamento": { + "post": { + "summary": "POST - Informe de Baixa (Exceto por Pagamento)", + "description": "Processa Informe de Baixa (Exceto por Pagamento) para arranjo(s): Pix Automático", + "tags": [ + "Informe de Baixa (Exceto por Pagamento)" + ], + "operationId": "postapiv1pix_automaticobaixa_exceto_pagamento", + "parameters": [ + { + "$ref": "#/components/parameters/XJwsSignatureHeaderParam" + } + ], + "responses": { + "201": { + "$ref": "#/components/responses/PPResponseOk" + }, + "400": { + "$ref": "#/components/responses/PPResponseBadRequest" + }, + "403": { + "$ref": "#/components/responses/PPResponseForbidden" + }, + "500": { + "$ref": "#/components/responses/PPResponseError" + } + }, + "requestBody": { + "required": true, + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/InformeDeBaixaExcetoPorPagamentoPixAutomaticoRequest" + } + } + } + } + } + }, + "/api/v1/pix-dinamico/baixa-exceto-pagamento": { + "post": { + "summary": "POST - Informe de Baixa (Exceto por Pagamento)", + "description": "Processa Informe de Baixa (Exceto por Pagamento) para arranjo(s): Pix Dinâmico", + "tags": [ + "Informe de Baixa (Exceto por Pagamento)" + ], + "operationId": "postapiv1pix_dinamicobaixa_exceto_pagamento", + "parameters": [ + { + "$ref": "#/components/parameters/XJwsSignatureHeaderParam" + } + ], + "responses": { + "201": { + "$ref": "#/components/responses/PPResponseOk" + }, + "400": { + "$ref": "#/components/responses/PPResponseBadRequest" + }, + "403": { + "$ref": "#/components/responses/PPResponseForbidden" + }, + "500": { + "$ref": "#/components/responses/PPResponseError" + } + }, + "requestBody": { + "required": true, + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/InformeDeBaixaExcetoPorPagamentoPixDinamicoRequest" + } + } + } + } + } + }, + "/api/v1/out/boleto/{cnpjRaizPspRecDir}/transacoes/stream/start": { + "get": { + "summary": "GET - Retorno Super Inteligente", + "description": "Inicia o long polling para consumo do Retorno Super Inteligente. A chamada permanece aberta por até 6 segundos aguardando novas mensagens (este tempo pode ser ajustado pela Plataforma). Não havendo mensagens dentro da janela, a PP responde 204 e devolve o token de continuação no cabeçalho 'proximoToken'; o consumidor deve prosseguir com o proximoToken retornado.", + "tags": [ + "Retorno Super Inteligente" + ], + "operationId": "getapiv1outboleto{cnpjRaizPspRecDir}transacoesstreamstart", + "parameters": [ + { + "name": "cnpjRaizPspRecDir", + "in": "path", + "required": true, + "description": "Raiz do CNPJ do PSP Recebedor Direto: 8 caracteres alfanuméricos.", + "schema": { + "type": "string", + "minLength": 8, + "maxLength": 8, + "pattern": "^[A-Za-z0-9]{8}$", + "examples": [ + "12345678" + ] + } + }, + { + "$ref": "#/components/parameters/XJwsSignatureHeaderParam" + } + ], + "responses": { + "200": { + "description": "Stream iniciado com sucesso. Mensagens disponíveis dentro da janela de espera do long polling.", + "headers": { + "streamId": { + "$ref": "#/components/headers/StreamIdHeader" + }, + "proximoToken": { + "$ref": "#/components/headers/ProximoTokenHeader" + }, + "X-JWS-Signature": { + "$ref": "#/components/headers/XJwsSignatureResponseHeader" + } + }, + "content": { + "application/json": { + "schema": { + "type": "object", + "properties": { + "transacoes": { + "type": "array", + "minItems": 1, + "maxItems": 1000, + "items": { + "$ref": "#/components/schemas/RetornoSuperInteligenteBoletoTransacao" + } + } + }, + "required": [ + "transacoes" + ] + } + } + } + }, + "204": { + "$ref": "#/components/responses/PPResponseNoContentStreamStart" + }, + "400": { + "$ref": "#/components/responses/PPResponseBadRequestConsultaStream" + }, + "403": { + "$ref": "#/components/responses/PPResponseForbidden" + }, + "422": { + "$ref": "#/components/responses/PPResponseUnprocessableEntityConsultaStream" + }, + "500": { + "$ref": "#/components/responses/PPResponseError" + } + } + } + }, + "/api/v1/out/boleto/{cnpjRaizPspRecDir}/transacoes/stream/{token}": { + "get": { + "summary": "GET - Retorno Super Inteligente", + "description": "Continua o long polling para consumo do Retorno Super Inteligente. A chamada permanece aberta por até 6 segundos aguardando novas mensagens (este tempo pode ser ajustado pela Plataforma). Não havendo mensagens dentro da janela, a PP responde 204 e devolve o token de continuação no cabeçalho 'proximoToken'; o consumidor deve prosseguir com o proximoToken retornado.", + "tags": [ + "Retorno Super Inteligente" + ], + "operationId": "getapiv1outboleto{cnpjRaizPspRecDir}transacoesstream{token}", + "parameters": [ + { + "name": "cnpjRaizPspRecDir", + "in": "path", + "required": true, + "description": "Raiz do CNPJ do PSP Recebedor Direto: 8 caracteres alfanuméricos.", + "schema": { + "type": "string", + "minLength": 8, + "maxLength": 8, + "pattern": "^[A-Za-z0-9]{8}$", + "examples": [ + "12345678" + ] + } + }, + { + "name": "token", + "in": "path", + "required": true, + "description": "Token recebido na requisição anterior.", + "schema": { + "type": "string" + } + }, + { + "$ref": "#/components/parameters/XJwsSignatureHeaderParam" + } + ], + "responses": { + "200": { + "description": "Mensagens disponíveis dentro da janela de espera do long polling.", + "headers": { + "proximoToken": { + "$ref": "#/components/headers/ProximoTokenHeader" + }, + "X-JWS-Signature": { + "$ref": "#/components/headers/XJwsSignatureResponseHeader" + } + }, + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/RetornoSuperInteligenteBoletoRequest" + } + } + } + }, + "204": { + "$ref": "#/components/responses/PPResponseNoContentStreamToken" + }, + "400": { + "$ref": "#/components/responses/PPResponseBadRequestConsultaStream" + }, + "403": { + "$ref": "#/components/responses/PPResponseForbidden" + }, + "410": { + "$ref": "#/components/responses/PPResponseGoneStream" + }, + "422": { + "$ref": "#/components/responses/PPResponseUnprocessableEntityConsultaStream" + }, + "500": { + "$ref": "#/components/responses/PPResponseError" + } + } + }, + "delete": { + "summary": "DELETE - Retorno Super Inteligente", + "description": "Finaliza o stream do Retorno Super Inteligente.", + "tags": [ + "Retorno Super Inteligente" + ], + "operationId": "deleteapiv1outboleto{cnpjRaizPspRecDir}transacoesstream{token}", + "parameters": [ + { + "name": "cnpjRaizPspRecDir", + "in": "path", + "required": true, + "description": "Raiz do CNPJ do PSP Recebedor Direto: 8 caracteres alfanuméricos.", + "schema": { + "type": "string", + "minLength": 8, + "maxLength": 8, + "pattern": "^[A-Za-z0-9]{8}$", + "examples": [ + "12345678" + ] + } + }, + { + "name": "token", + "in": "path", + "required": true, + "description": "Token recebido na requisição anterior.", + "schema": { + "type": "string" + } + }, + { + "$ref": "#/components/parameters/XJwsSignatureHeaderParam" + } + ], + "responses": { + "204": { + "description": "Stream finalizado com sucesso" + }, + "400": { + "$ref": "#/components/responses/PPResponseBadRequestConsultaStream" + }, + "403": { + "$ref": "#/components/responses/PPResponseForbidden" + }, + "422": { + "$ref": "#/components/responses/PPResponseUnprocessableEntityConsultaStream" + }, + "500": { + "$ref": "#/components/responses/PPResponseError" + } + } + } + }, + "/api/v1/out/pix-automatico/{cnpjRaizPspRecDir}/transacoes/stream/start": { + "get": { + "summary": "GET - Retorno Super Inteligente", + "description": "Inicia o long polling para consumo do Retorno Super Inteligente. A chamada permanece aberta por até 6 segundos aguardando novas mensagens (este tempo pode ser ajustado pela Plataforma). Não havendo mensagens dentro da janela, a PP responde 204 e devolve o token de continuação no cabeçalho 'proximoToken'; o consumidor deve prosseguir com o proximoToken retornado.", + "tags": [ + "Retorno Super Inteligente" + ], + "operationId": "getapiv1outpix_automatico{cnpjRaizPspRecDir}transacoesstreamstart", + "parameters": [ + { + "name": "cnpjRaizPspRecDir", + "in": "path", + "required": true, + "description": "Raiz do CNPJ do PSP Recebedor Direto: 8 caracteres alfanuméricos.", + "schema": { + "type": "string", + "minLength": 8, + "maxLength": 8, + "pattern": "^[A-Za-z0-9]{8}$", + "examples": [ + "12345678" + ] + } + }, + { + "$ref": "#/components/parameters/XJwsSignatureHeaderParam" + } + ], + "responses": { + "200": { + "description": "Stream iniciado com sucesso. Mensagens disponíveis dentro da janela de espera do long polling.", + "headers": { + "streamId": { + "$ref": "#/components/headers/StreamIdHeader" + }, + "proximoToken": { + "$ref": "#/components/headers/ProximoTokenHeader" + }, + "X-JWS-Signature": { + "$ref": "#/components/headers/XJwsSignatureResponseHeader" + } + }, + "content": { + "application/json": { + "schema": { + "type": "object", + "properties": { + "transacoes": { + "type": "array", + "minItems": 1, + "maxItems": 1000, + "items": { + "$ref": "#/components/schemas/RetornoSuperInteligentePixAutomaticoTransacao" + } + } + }, + "required": [ + "transacoes" + ] + } + } + } + }, + "204": { + "$ref": "#/components/responses/PPResponseNoContentStreamStart" + }, + "400": { + "$ref": "#/components/responses/PPResponseBadRequestConsultaStream" + }, + "403": { + "$ref": "#/components/responses/PPResponseForbidden" + }, + "422": { + "$ref": "#/components/responses/PPResponseUnprocessableEntityConsultaStream" + }, + "500": { + "$ref": "#/components/responses/PPResponseError" + } + } + } + }, + "/api/v1/out/pix-automatico/{cnpjRaizPspRecDir}/transacoes/stream/{token}": { + "get": { + "summary": "GET - Retorno Super Inteligente", + "description": "Continua o long polling para consumo do Retorno Super Inteligente. A chamada permanece aberta por até 6 segundos aguardando novas mensagens (este tempo pode ser ajustado pela Plataforma). Não havendo mensagens dentro da janela, a PP responde 204 e devolve o token de continuação no cabeçalho 'proximoToken'; o consumidor deve prosseguir com o proximoToken retornado.", + "tags": [ + "Retorno Super Inteligente" + ], + "operationId": "getapiv1outpix_automatico{cnpjRaizPspRecDir}transacoesstream{token}", + "parameters": [ + { + "name": "cnpjRaizPspRecDir", + "in": "path", + "required": true, + "description": "Raiz do CNPJ do PSP Recebedor Direto: 8 caracteres alfanuméricos.", + "schema": { + "type": "string", + "minLength": 8, + "maxLength": 8, + "pattern": "^[A-Za-z0-9]{8}$", + "examples": [ + "12345678" + ] + } + }, + { + "name": "token", + "in": "path", + "required": true, + "description": "Token recebido na requisição anterior.", + "schema": { + "type": "string" + } + }, + { + "$ref": "#/components/parameters/XJwsSignatureHeaderParam" + } + ], + "responses": { + "200": { + "description": "Mensagens disponíveis dentro da janela de espera do long polling.", + "headers": { + "proximoToken": { + "$ref": "#/components/headers/ProximoTokenHeader" + }, + "X-JWS-Signature": { + "$ref": "#/components/headers/XJwsSignatureResponseHeader" + } + }, + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/RetornoSuperInteligentePixAutomaticoRequest" + } + } + } + }, + "204": { + "$ref": "#/components/responses/PPResponseNoContentStreamToken" + }, + "400": { + "$ref": "#/components/responses/PPResponseBadRequestConsultaStream" + }, + "403": { + "$ref": "#/components/responses/PPResponseForbidden" + }, + "410": { + "$ref": "#/components/responses/PPResponseGoneStream" + }, + "422": { + "$ref": "#/components/responses/PPResponseUnprocessableEntityConsultaStream" + }, + "500": { + "$ref": "#/components/responses/PPResponseError" + } + } + }, + "delete": { + "summary": "DELETE - Retorno Super Inteligente", + "description": "Finaliza o stream do Retorno Super Inteligente.", + "tags": [ + "Retorno Super Inteligente" + ], + "operationId": "deleteapiv1outpix_automatico{cnpjRaizPspRecDir}transacoesstream{token}", + "parameters": [ + { + "name": "cnpjRaizPspRecDir", + "in": "path", + "required": true, + "description": "Raiz do CNPJ do PSP Recebedor Direto: 8 caracteres alfanuméricos.", + "schema": { + "type": "string", + "minLength": 8, + "maxLength": 8, + "pattern": "^[A-Za-z0-9]{8}$", + "examples": [ + "12345678" + ] + } + }, + { + "name": "token", + "in": "path", + "required": true, + "description": "Token recebido na requisição anterior.", + "schema": { + "type": "string" + } + }, + { + "$ref": "#/components/parameters/XJwsSignatureHeaderParam" + } + ], + "responses": { + "204": { + "description": "Stream finalizado com sucesso" + }, + "400": { + "$ref": "#/components/responses/PPResponseBadRequestConsultaStream" + }, + "403": { + "$ref": "#/components/responses/PPResponseForbidden" + }, + "422": { + "$ref": "#/components/responses/PPResponseUnprocessableEntityConsultaStream" + }, + "500": { + "$ref": "#/components/responses/PPResponseError" + } + } + } + }, + "/api/v1/out/pix-dinamico/{cnpjRaizPspRecDir}/transacoes/stream/start": { + "get": { + "summary": "GET - Retorno Super Inteligente", + "description": "Inicia o long polling para consumo do Retorno Super Inteligente. A chamada permanece aberta por até (este tempo pode ser ajustado pela Plataforma). Não havendo mensagens dentro da janela, a PP responde 204 e devolve o token de continuação no cabeçalho 'proximoToken'; o consumidor deve prosseguir com o proximoToken retornado.", + "tags": [ + "Retorno Super Inteligente" + ], + "operationId": "getapiv1outpix_dinamico{cnpjRaizPspRecDir}transacoesstreamstart", + "parameters": [ + { + "name": "cnpjRaizPspRecDir", + "in": "path", + "required": true, + "description": "Raiz do CNPJ do PSP Recebedor Direto: 8 caracteres alfanuméricos.", + "schema": { + "type": "string", + "minLength": 8, + "maxLength": 8, + "pattern": "^[A-Za-z0-9]{8}$", + "examples": [ + "12345678" + ] + } + }, + { + "$ref": "#/components/parameters/XJwsSignatureHeaderParam" + } + ], + "responses": { + "200": { + "description": "Stream iniciado com sucesso. Mensagens disponíveis dentro da janela de espera do long polling.", + "headers": { + "streamId": { + "$ref": "#/components/headers/StreamIdHeader" + }, + "proximoToken": { + "$ref": "#/components/headers/ProximoTokenHeader" + }, + "X-JWS-Signature": { + "$ref": "#/components/headers/XJwsSignatureResponseHeader" + } + }, + "content": { + "application/json": { + "schema": { + "type": "object", + "properties": { + "transacoes": { + "type": "array", + "minItems": 1, + "maxItems": 1000, + "items": { + "$ref": "#/components/schemas/RetornoSuperInteligentePixDinamicoTransacao" + } + } + }, + "required": [ + "transacoes" + ] + } + } + } + }, + "204": { + "$ref": "#/components/responses/PPResponseNoContentStreamStart" + }, + "400": { + "$ref": "#/components/responses/PPResponseBadRequestConsultaStream" + }, + "403": { + "$ref": "#/components/responses/PPResponseForbidden" + }, + "422": { + "$ref": "#/components/responses/PPResponseUnprocessableEntityConsultaStream" + }, + "500": { + "$ref": "#/components/responses/PPResponseError" + } + } + } + }, + "/api/v1/out/pix-dinamico/{cnpjRaizPspRecDir}/transacoes/stream/{token}": { + "get": { + "summary": "GET - Retorno Super Inteligente", + "description": "Continua o long polling para consumo do Retorno Super Inteligente. A chamada permanece aberta por até 6 segundos aguardando novas mensagens (este tempo pode ser ajustado pela Plataforma). Não havendo mensagens dentro da janela, a PP responde 204 e devolve o token de continuação no cabeçalho 'proximoToken'; o consumidor deve prosseguir com o proximoToken retornado.", + "tags": [ + "Retorno Super Inteligente" + ], + "operationId": "getapiv1outpix_dinamico{cnpjRaizPspRecDir}transacoesstream{token}", + "parameters": [ + { + "name": "cnpjRaizPspRecDir", + "in": "path", + "required": true, + "description": "Raiz do CNPJ do PSP Recebedor Direto: 8 caracteres alfanuméricos.", + "schema": { + "type": "string", + "minLength": 8, + "maxLength": 8, + "pattern": "^[A-Za-z0-9]{8}$", + "examples": [ + "12345678" + ] + } + }, + { + "name": "token", + "in": "path", + "required": true, + "description": "Token recebido na requisição anterior.", + "schema": { + "type": "string" + } + }, + { + "$ref": "#/components/parameters/XJwsSignatureHeaderParam" + } + ], + "responses": { + "200": { + "description": "Mensagens disponíveis dentro da janela de espera do long polling.", + "headers": { + "proximoToken": { + "$ref": "#/components/headers/ProximoTokenHeader" + }, + "X-JWS-Signature": { + "$ref": "#/components/headers/XJwsSignatureResponseHeader" + } + }, + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/RetornoSuperInteligentePixDinamicoRequest" + } + } + } + }, + "204": { + "$ref": "#/components/responses/PPResponseNoContentStreamToken" + }, + "400": { + "$ref": "#/components/responses/PPResponseBadRequestConsultaStream" + }, + "403": { + "$ref": "#/components/responses/PPResponseForbidden" + }, + "410": { + "$ref": "#/components/responses/PPResponseGoneStream" + }, + "422": { + "$ref": "#/components/responses/PPResponseUnprocessableEntityConsultaStream" + }, + "500": { + "$ref": "#/components/responses/PPResponseError" + } + } + }, + "delete": { + "summary": "DELETE - Retorno Super Inteligente", + "description": "Finaliza o stream do Retorno Super Inteligente.", + "tags": [ + "Retorno Super Inteligente" + ], + "operationId": "deleteapiv1outpix_dinamico{cnpjRaizPspRecDir}transacoesstream{token}", + "parameters": [ + { + "name": "cnpjRaizPspRecDir", + "in": "path", + "required": true, + "description": "Raiz do CNPJ do PSP Recebedor Direto: 8 caracteres alfanuméricos.", + "schema": { + "type": "string", + "minLength": 8, + "maxLength": 8, + "pattern": "^[A-Za-z0-9]{8}$", + "examples": [ + "12345678" + ] + } + }, + { + "name": "token", + "in": "path", + "required": true, + "description": "Token recebido na requisição anterior.", + "schema": { + "type": "string" + } + }, + { + "$ref": "#/components/parameters/XJwsSignatureHeaderParam" + } + ], + "responses": { + "204": { + "description": "Stream finalizado com sucesso" + }, + "400": { + "$ref": "#/components/responses/PPResponseBadRequestConsultaStream" + }, + "403": { + "$ref": "#/components/responses/PPResponseForbidden" + }, + "422": { + "$ref": "#/components/responses/PPResponseUnprocessableEntityConsultaStream" + }, + "500": { + "$ref": "#/components/responses/PPResponseError" + } + } + } + }, + "/api/v1/retroativo/boleto/{cnpjRaizPspRecDir}/transacoes/stream/start": { + "get": { + "summary": "GET - Consulta Retroativa Super Inteligente", + "description": "Processa Consulta Retroativa Super Inteligente para arranjo(s): Boleto", + "tags": [ + "Consulta Retroativa Super Inteligente" + ], + "operationId": "getapiv1outboleto{cnpjRaizPspRecDir}transacoesretroativostreamstart", + "parameters": [ + { + "name": "cnpjRaizPspRecDir", + "in": "path", + "required": true, + "description": "Raiz do CNPJ do PSP Recebedor Direto: 8 caracteres alfanuméricos.", + "schema": { + "type": "string", + "minLength": 8, + "maxLength": 8, + "pattern": "^[A-Za-z0-9]{8}$", + "examples": [ + "12345678" + ] + } + }, + { + "name": "nsuInicial", + "in": "query", + "required": true, + "description": "Número Sequencial Único da mensagem que se deseja iniciar a consulta retroativa de Super Inteligente.", + "schema": { + "type": "string", + "pattern": "^\\d{1,19}$" + } + }, + { + "name": "streamId", + "in": "query", + "required": false, + "description": "Identificador do stream que se deseja consultar.", + "schema": { + "type": "string" + } + }, + { + "name": "nsuFinal", + "in": "query", + "required": false, + "description": "Número Sequencial Único da mensagem que se deseja finalizar a consulta retroativa de Super Inteligente.", + "schema": { + "type": "string", + "pattern": "^\\d{1,19}$" + } + }, + { + "$ref": "#/components/parameters/XJwsSignatureHeaderParam" + } + ], + "responses": { + "200": { + "description": "Stream iniciado com sucesso", + "headers": { + "proximoToken": { + "$ref": "#/components/headers/ProximoTokenHeader" + }, + "X-JWS-Signature": { + "$ref": "#/components/headers/XJwsSignatureResponseHeader" + } + }, + "content": { + "application/json": { + "schema": { + "type": "object", + "properties": { + "transacoes": { + "type": "array", + "minItems": 1, + "maxItems": 1000, + "items": { + "$ref": "#/components/schemas/RetornoSuperInteligenteBoletoTransacao" + } + } + }, + "required": [ + "transacoes" + ] + } + } + } + }, + "204": { + "$ref": "#/components/responses/PPResponseNoContentRetroativoStart" + }, + "400": { + "$ref": "#/components/responses/PPResponseBadRequestConsultaStream" + }, + "403": { + "$ref": "#/components/responses/PPResponseForbidden" + }, + "422": { + "$ref": "#/components/responses/PPResponseUnprocessableEntityConsultaStream" + }, + "500": { + "$ref": "#/components/responses/PPResponseError" + } + } + } + }, + "/api/v1/retroativo/boleto/{cnpjRaizPspRecDir}/transacoes/stream/{token}": { + "get": { + "summary": "GET - Consulta Retroativa Super Inteligente", + "description": "Continua a Consulta Retroativa Super Inteligente para arranjo(s): Boleto", + "tags": [ + "Consulta Retroativa Super Inteligente" + ], + "operationId": "getapiv1outboleto{cnpjRaizPspRecDir}transacoesretroativostream{token}", + "parameters": [ + { + "name": "cnpjRaizPspRecDir", + "in": "path", + "required": true, + "description": "Raiz do CNPJ do PSP Recebedor Direto: 8 caracteres alfanuméricos.", + "schema": { + "type": "string", + "minLength": 8, + "maxLength": 8, + "pattern": "^[A-Za-z0-9]{8}$", + "examples": [ + "12345678" + ] + } + }, + { + "name": "token", + "in": "path", + "required": true, + "description": "Token recebido na requisição anterior.", + "schema": { + "type": "string" + } + }, + { + "$ref": "#/components/parameters/XJwsSignatureHeaderParam" + } + ], + "responses": { + "200": { + "description": "Dados da consulta", + "headers": { + "proximoToken": { + "$ref": "#/components/headers/ProximoTokenHeader" + }, + "X-JWS-Signature": { + "$ref": "#/components/headers/XJwsSignatureResponseHeader" + } + }, + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/RetornoSuperInteligenteBoletoRequest" + } + } + } + }, + "204": { + "$ref": "#/components/responses/PPResponseNoContentRetroativoToken" + }, + "400": { + "$ref": "#/components/responses/PPResponseBadRequestConsultaStream" + }, + "403": { + "$ref": "#/components/responses/PPResponseForbidden" + }, + "410": { + "$ref": "#/components/responses/PPResponseGoneRetroativoStream" + }, + "422": { + "$ref": "#/components/responses/PPResponseUnprocessableEntityConsultaStream" + }, + "500": { + "$ref": "#/components/responses/PPResponseError" + } + } + }, + "delete": { + "summary": "DELETE - Consulta Retroativa Super Inteligente", + "description": "Finaliza a Consulta Retroativa Super Inteligente para arranjo(s): Boleto", + "tags": [ + "Consulta Retroativa Super Inteligente" + ], + "operationId": "deleteapiv1outboleto{cnpjRaizPspRecDir}transacoesretroativostream{token}", + "parameters": [ + { + "name": "cnpjRaizPspRecDir", + "in": "path", + "required": true, + "description": "Raiz do CNPJ do PSP Recebedor Direto: 8 caracteres alfanuméricos.", + "schema": { + "type": "string", + "minLength": 8, + "maxLength": 8, + "pattern": "^[A-Za-z0-9]{8}$", + "examples": [ + "12345678" + ] + } + }, + { + "name": "token", + "in": "path", + "required": true, + "description": "Token recebido na requisição anterior.", + "schema": { + "type": "string" + } + }, + { + "$ref": "#/components/parameters/XJwsSignatureHeaderParam" + } + ], + "responses": { + "204": { + "description": "Stream finalizado com sucesso" + }, + "400": { + "$ref": "#/components/responses/PPResponseBadRequestConsultaStream" + }, + "403": { + "$ref": "#/components/responses/PPResponseForbidden" + }, + "422": { + "$ref": "#/components/responses/PPResponseUnprocessableEntityConsultaStream" + }, + "500": { + "$ref": "#/components/responses/PPResponseError" + } + } + } + }, + "/api/v1/retroativo/pix-automatico/{cnpjRaizPspRecDir}/transacoes/stream/start": { + "get": { + "summary": "GET - Consulta Retroativa Super Inteligente", + "description": "Processa Consulta Retroativa Super Inteligente para arranjo(s): Pix Automático", + "tags": [ + "Consulta Retroativa Super Inteligente" + ], + "operationId": "getapiv1outpix_automatico{cnpjRaizPspRecDir}transacoesretroativostreamstart", + "parameters": [ + { + "name": "cnpjRaizPspRecDir", + "in": "path", + "required": true, + "description": "Raiz do CNPJ do PSP Recebedor Direto: 8 caracteres alfanuméricos.", + "schema": { + "type": "string", + "minLength": 8, + "maxLength": 8, + "pattern": "^[A-Za-z0-9]{8}$", + "examples": [ + "12345678" + ] + } + }, + { + "name": "nsuInicial", + "in": "query", + "required": true, + "description": "Número Sequencial Único da mensagem que se deseja iniciar a consulta retroativa de Super Inteligente.", + "schema": { + "type": "string", + "pattern": "^\\d{1,19}$" + } + }, + { + "name": "streamId", + "in": "query", + "required": false, + "description": "Identificador do stream que se deseja consultar.", + "schema": { + "type": "string" + } + }, + { + "name": "nsuFinal", + "in": "query", + "required": false, + "description": "Número Sequencial Único da mensagem que se deseja finalizar a consulta retroativa de Super Inteligente.", + "schema": { + "type": "string", + "pattern": "^\\d{1,19}$" + } + }, + { + "$ref": "#/components/parameters/XJwsSignatureHeaderParam" + } + ], + "responses": { + "200": { + "description": "Stream iniciado com sucesso", + "headers": { + "proximoToken": { + "$ref": "#/components/headers/ProximoTokenHeader" + }, + "X-JWS-Signature": { + "$ref": "#/components/headers/XJwsSignatureResponseHeader" + } + }, + "content": { + "application/json": { + "schema": { + "type": "object", + "properties": { + "transacoes": { + "type": "array", + "minItems": 1, + "maxItems": 1000, + "items": { + "$ref": "#/components/schemas/RetornoSuperInteligentePixAutomaticoTransacao" + } + } + }, + "required": [ + "transacoes" + ] + } + } + } + }, + "204": { + "$ref": "#/components/responses/PPResponseNoContentRetroativoStart" + }, + "400": { + "$ref": "#/components/responses/PPResponseBadRequestConsultaStream" + }, + "403": { + "$ref": "#/components/responses/PPResponseForbidden" + }, + "422": { + "$ref": "#/components/responses/PPResponseUnprocessableEntityConsultaStream" + }, + "500": { + "$ref": "#/components/responses/PPResponseError" + } + } + } + }, + "/api/v1/retroativo/pix-automatico/{cnpjRaizPspRecDir}/transacoes/stream/{token}": { + "get": { + "summary": "GET - Consulta Retroativa Super Inteligente", + "description": "Continua a Consulta Retroativa Super Inteligente para arranjo(s): Pix Automático", + "tags": [ + "Consulta Retroativa Super Inteligente" + ], + "operationId": "getapiv1outpix_automatico{cnpjRaizPspRecDir}transacoesretroativostream{token}", + "parameters": [ + { + "name": "cnpjRaizPspRecDir", + "in": "path", + "required": true, + "description": "Raiz do CNPJ do PSP Recebedor Direto: 8 caracteres alfanuméricos.", + "schema": { + "type": "string", + "minLength": 8, + "maxLength": 8, + "pattern": "^[A-Za-z0-9]{8}$", + "examples": [ + "12345678" + ] + } + }, + { + "name": "token", + "in": "path", + "required": true, + "description": "Token recebido na requisição anterior.", + "schema": { + "type": "string" + } + }, + { + "$ref": "#/components/parameters/XJwsSignatureHeaderParam" + } + ], + "responses": { + "200": { + "description": "Dados da consulta", + "headers": { + "proximoToken": { + "$ref": "#/components/headers/ProximoTokenHeader" + }, + "X-JWS-Signature": { + "$ref": "#/components/headers/XJwsSignatureResponseHeader" + } + }, + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/RetornoSuperInteligentePixAutomaticoRequest" + } + } + } + }, + "204": { + "$ref": "#/components/responses/PPResponseNoContentRetroativoToken" + }, + "400": { + "$ref": "#/components/responses/PPResponseBadRequestConsultaStream" + }, + "403": { + "$ref": "#/components/responses/PPResponseForbidden" + }, + "410": { + "$ref": "#/components/responses/PPResponseGoneRetroativoStream" + }, + "422": { + "$ref": "#/components/responses/PPResponseUnprocessableEntityConsultaStream" + }, + "500": { + "$ref": "#/components/responses/PPResponseError" + } + } + }, + "delete": { + "summary": "DELETE - Consulta Retroativa Super Inteligente", + "description": "Finaliza a Consulta Retroativa Super Inteligente para arranjo(s): Pix Automático", + "tags": [ + "Consulta Retroativa Super Inteligente" + ], + "operationId": "deleteapiv1outpix_automatico{cnpjRaizPspRecDir}transacoesretroativostream{token}", + "parameters": [ + { + "name": "cnpjRaizPspRecDir", + "in": "path", + "required": true, + "description": "Raiz do CNPJ do PSP Recebedor Direto: 8 caracteres alfanuméricos.", + "schema": { + "type": "string", + "minLength": 8, + "maxLength": 8, + "pattern": "^[A-Za-z0-9]{8}$", + "examples": [ + "12345678" + ] + } + }, + { + "name": "token", + "in": "path", + "required": true, + "description": "Token recebido na requisição anterior.", + "schema": { + "type": "string" + } + }, + { + "$ref": "#/components/parameters/XJwsSignatureHeaderParam" + } + ], + "responses": { + "204": { + "description": "Stream finalizado com sucesso" + }, + "400": { + "$ref": "#/components/responses/PPResponseBadRequestConsultaStream" + }, + "403": { + "$ref": "#/components/responses/PPResponseForbidden" + }, + "422": { + "$ref": "#/components/responses/PPResponseUnprocessableEntityConsultaStream" + }, + "500": { + "$ref": "#/components/responses/PPResponseError" + } + } + } + }, + "/api/v1/retroativo/pix-dinamico/{cnpjRaizPspRecDir}/transacoes/stream/start": { + "get": { + "summary": "GET - Consulta Retroativa Super Inteligente", + "description": "Processa Consulta Retroativa Super Inteligente para arranjo(s): Pix Dinâmico", + "tags": [ + "Consulta Retroativa Super Inteligente" + ], + "operationId": "getapiv1outpix_dinamico{cnpjRaizPspRecDir}transacoesretroativostreamstart", + "parameters": [ + { + "name": "cnpjRaizPspRecDir", + "in": "path", + "required": true, + "description": "Raiz do CNPJ do PSP Recebedor Direto: 8 caracteres alfanuméricos.", + "schema": { + "type": "string", + "minLength": 8, + "maxLength": 8, + "pattern": "^[A-Za-z0-9]{8}$", + "examples": [ + "12345678" + ] + } + }, + { + "name": "nsuInicial", + "in": "query", + "required": true, + "description": "Número Sequencial Único da mensagem que se deseja iniciar a consulta retroativa de Super Inteligente.", + "schema": { + "type": "string", + "pattern": "^\\d{1,19}$" + } + }, + { + "name": "streamId", + "in": "query", + "required": false, + "description": "Identificador do stream que se deseja consultar.", + "schema": { + "type": "string" + } + }, + { + "name": "nsuFinal", + "in": "query", + "required": false, + "description": "Número Sequencial Único da mensagem que se deseja finalizar a consulta retroativa de Super Inteligente.", + "schema": { + "type": "string", + "pattern": "^\\d{1,19}$" + } + }, + { + "$ref": "#/components/parameters/XJwsSignatureHeaderParam" + } + ], + "responses": { + "200": { + "description": "Stream iniciado com sucesso", + "headers": { + "proximoToken": { + "$ref": "#/components/headers/ProximoTokenHeader" + }, + "X-JWS-Signature": { + "$ref": "#/components/headers/XJwsSignatureResponseHeader" + } + }, + "content": { + "application/json": { + "schema": { + "type": "object", + "properties": { + "transacoes": { + "type": "array", + "minItems": 1, + "maxItems": 1000, + "items": { + "$ref": "#/components/schemas/RetornoSuperInteligentePixDinamicoTransacao" + } + } + }, + "required": [ + "transacoes" + ] + } + } + } + }, + "204": { + "$ref": "#/components/responses/PPResponseNoContentRetroativoStart" + }, + "400": { + "$ref": "#/components/responses/PPResponseBadRequestConsultaStream" + }, + "403": { + "$ref": "#/components/responses/PPResponseForbidden" + }, + "422": { + "$ref": "#/components/responses/PPResponseUnprocessableEntityConsultaStream" + }, + "500": { + "$ref": "#/components/responses/PPResponseError" + } + } + } + }, + "/api/v1/retroativo/pix-dinamico/{cnpjRaizPspRecDir}/transacoes/stream/{token}": { + "get": { + "summary": "GET - Consulta Retroativa Super Inteligente", + "description": "Continua a Consulta Retroativa Super Inteligente para arranjo(s): Pix Dinâmico", + "tags": [ + "Consulta Retroativa Super Inteligente" + ], + "operationId": "getapiv1outpix_dinamico{cnpjRaizPspRecDir}transacoesretroativostream{token}", + "parameters": [ + { + "name": "cnpjRaizPspRecDir", + "in": "path", + "required": true, + "description": "Raiz do CNPJ do PSP Recebedor Direto: 8 caracteres alfanuméricos.", + "schema": { + "type": "string", + "minLength": 8, + "maxLength": 8, + "pattern": "^[A-Za-z0-9]{8}$", + "examples": [ + "12345678" + ] + } + }, + { + "name": "token", + "in": "path", + "required": true, + "description": "Token recebido na requisição anterior.", + "schema": { + "type": "string" + } + }, + { + "$ref": "#/components/parameters/XJwsSignatureHeaderParam" + } + ], + "responses": { + "200": { + "description": "Dados da consulta", + "headers": { + "proximoToken": { + "$ref": "#/components/headers/ProximoTokenHeader" + }, + "X-JWS-Signature": { + "$ref": "#/components/headers/XJwsSignatureResponseHeader" + } + }, + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/RetornoSuperInteligentePixDinamicoRequest" + } + } + } + }, + "204": { + "$ref": "#/components/responses/PPResponseNoContentRetroativoToken" + }, + "400": { + "$ref": "#/components/responses/PPResponseBadRequestConsultaStream" + }, + "403": { + "$ref": "#/components/responses/PPResponseForbidden" + }, + "410": { + "$ref": "#/components/responses/PPResponseGoneRetroativoStream" + }, + "422": { + "$ref": "#/components/responses/PPResponseUnprocessableEntityConsultaStream" + }, + "500": { + "$ref": "#/components/responses/PPResponseError" + } + } + }, + "delete": { + "summary": "DELETE - Consulta Retroativa Super Inteligente", + "description": "Finaliza a Consulta Retroativa Super Inteligente para arranjo(s): Pix Dinâmico", + "tags": [ + "Consulta Retroativa Super Inteligente" + ], + "operationId": "deleteapiv1outpix_dinamico{cnpjRaizPspRecDir}transacoesretroativostream{token}", + "parameters": [ + { + "name": "cnpjRaizPspRecDir", + "in": "path", + "required": true, + "description": "Raiz do CNPJ do PSP Recebedor Direto: 8 caracteres alfanuméricos.", + "schema": { + "type": "string", + "minLength": 8, + "maxLength": 8, + "pattern": "^[A-Za-z0-9]{8}$", + "examples": [ + "12345678" + ] + } + }, + { + "name": "token", + "in": "path", + "required": true, + "description": "Token recebido na requisição anterior.", + "schema": { + "type": "string" + } + }, + { + "$ref": "#/components/parameters/XJwsSignatureHeaderParam" + } + ], + "responses": { + "204": { + "description": "Stream finalizado com sucesso" + }, + "400": { + "$ref": "#/components/responses/PPResponseBadRequestConsultaStream" + }, + "403": { + "$ref": "#/components/responses/PPResponseForbidden" + }, + "422": { + "$ref": "#/components/responses/PPResponseUnprocessableEntityConsultaStream" + }, + "500": { + "$ref": "#/components/responses/PPResponseError" + } + } + } + }, + "/api/v1/segregacao": { + "post": { + "summary": "POST - Informe de Segregação", + "description": "Processa Informe de Segregação para arranjo(s): Boleto, Pix Dinâmico, Pix Automático, Pix estático, TED, TEF", + "tags": [ + "Informe de Segregação" + ], + "operationId": "postapiv1segregacao", + "parameters": [ + { + "$ref": "#/components/parameters/XJwsSignatureHeaderParam" + } + ], + "responses": { + "201": { + "$ref": "#/components/responses/PPResponseCreatedSegregacao" + }, + "400": { + "$ref": "#/components/responses/PPResponseBadRequestSegregacao" + }, + "403": { + "$ref": "#/components/responses/PPResponseForbidden" + }, + "422": { + "$ref": "#/components/responses/PPResponseUnprocessableEntitySegregacaoIniciada" + }, + "500": { + "$ref": "#/components/responses/PPResponseError" + } + }, + "requestBody": { + "required": true, + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/InfoSegregacaoRequest" + } + } + } + } + } + }, + "/api/v1/segregacao/finalizacao": { + "post": { + "summary": "POST - Informe de Segregação", + "description": "Processa Informe de Segregação para arranjo(s): Boleto, Pix Dinâmico, Pix Automático, Pix estático, TED, TEF", + "tags": [ + "Informe de Segregação" + ], + "operationId": "postapiv1segregacaofinalizacao", + "parameters": [ + { + "$ref": "#/components/parameters/XJwsSignatureHeaderParam" + } + ], + "responses": { + "201": { + "$ref": "#/components/responses/PPResponseCreatedSegregacao" + }, + "400": { + "$ref": "#/components/responses/PPResponseBadRequestSegregacao" + }, + "403": { + "$ref": "#/components/responses/PPResponseForbidden" + }, + "422": { + "$ref": "#/components/responses/PPResponseUnprocessableEntitySegregacaoFinalizacao" + }, + "500": { + "$ref": "#/components/responses/PPResponseError" + } + }, + "requestBody": { + "required": true, + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/InfoSegFinalRequest" + } + } + } + } + } + }, + "/api/v1/boleto/segregacao/{idInfSegr}/lotes": { + "post": { + "summary": "POST - Informe de Segregação", + "description": "Processa Informe de Segregação para arranjo(s): Boleto", + "tags": [ + "Informe de Segregação" + ], + "operationId": "postapiv1boletosegregacao{idInfSegr}lotes", + "parameters": [ + { + "name": "idInfSegr", + "in": "path", + "required": true, + "description": "Identificador do informe de segregação. Formato: ISPB da instituição devedora (8) + ISPB da instituição da comunicação efetiva (8) + arranjo (PXA, PXD, PXE, BOL, TED, TEF) + data de envio do informe (AAAAMMDD) + hora de corte (HHMM) + 3 caracteres para o sequencial. Gerado pelo responsável pela comunicação.", + "schema": { + "type": "string", + "minLength": 34, + "maxLength": 34, + "pattern": "^[A-Za-z0-9]{16}(PXA|PXD|PXE|BOL|TED|TEF)\\d{15}$", + "examples": [ + "ABC123DEF456GHI7PXD202604231930001" + ] + } + }, + { + "$ref": "#/components/parameters/XJwsSignatureHeaderParam" + } + ], + "responses": { + "201": { + "$ref": "#/components/responses/PPResponseCreatedLote" + }, + "200": { + "$ref": "#/components/responses/PPResponseOkLoteAtualizado" + }, + "400": { + "$ref": "#/components/responses/PPResponseBadRequest" + }, + "403": { + "$ref": "#/components/responses/PPResponseForbidden" + }, + "422": { + "$ref": "#/components/responses/PPResponseUnprocessableEntitySegregacaoLote" + }, + "500": { + "$ref": "#/components/responses/PPResponseError" + } + }, + "requestBody": { + "required": true, + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/InformeDeSegregacaoBoletoRequest" + } + } + } + } + } + }, + "/api/v1/pix-automatico/segregacao/{idInfSegr}/lotes": { + "post": { + "summary": "POST - Informe de Segregação", + "description": "Processa Informe de Segregação para arranjo(s): Pix Automático", + "tags": [ + "Informe de Segregação" + ], + "operationId": "postapiv1pix_automaticosegregacao{idInfSegr}lotes", + "parameters": [ + { + "name": "idInfSegr", + "in": "path", + "required": true, + "description": "Identificador do informe de segregação. Formato: ISPB da instituição devedora (8) + ISPB da instituição da comunicação efetiva (8) + arranjo (PXA, PXD, PXE, BOL, TED, TEF) + data de envio do informe (AAAAMMDD) + hora de corte (HHMM) + 3 caracteres para o sequencial. Gerado pelo responsável pela comunicação.", + "schema": { + "type": "string", + "minLength": 34, + "maxLength": 34, + "pattern": "^[A-Za-z0-9]{16}(PXA|PXD|PXE|BOL|TED|TEF)\\d{15}$", + "examples": [ + "ABC123DEF456GHI7PXD202604231930001" + ] + } + }, + { + "$ref": "#/components/parameters/XJwsSignatureHeaderParam" + } + ], + "responses": { + "201": { + "$ref": "#/components/responses/PPResponseCreatedLote" + }, + "200": { + "$ref": "#/components/responses/PPResponseOkLoteAtualizado" + }, + "400": { + "$ref": "#/components/responses/PPResponseBadRequest" + }, + "403": { + "$ref": "#/components/responses/PPResponseForbidden" + }, + "422": { + "$ref": "#/components/responses/PPResponseUnprocessableEntitySegregacaoLote" + }, + "500": { + "$ref": "#/components/responses/PPResponseError" + } + }, + "requestBody": { + "required": true, + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/InformeDeSegregacaoPixAutomaticoRequest" + } + } + } + } + } + }, + "/api/v1/pix-dinamico/segregacao/{idInfSegr}/lotes": { + "post": { + "summary": "POST - Informe de Segregação", + "description": "Processa Informe de Segregação para arranjo(s): Pix Dinâmico", + "tags": [ + "Informe de Segregação" + ], + "operationId": "postapiv1pix_dinamicosegregacao{idInfSegr}lotes", + "parameters": [ + { + "name": "idInfSegr", + "in": "path", + "required": true, + "description": "Identificador do informe de segregação. Formato: ISPB da instituição devedora (8) + ISPB da instituição da comunicação efetiva (8) + arranjo (PXA, PXD, PXE, BOL, TED, TEF) + data de envio do informe (AAAAMMDD) + hora de corte (HHMM) + 3 caracteres para o sequencial. Gerado pelo responsável pela comunicação.", + "schema": { + "type": "string", + "minLength": 34, + "maxLength": 34, + "pattern": "^[A-Za-z0-9]{16}(PXA|PXD|PXE|BOL|TED|TEF)\\d{15}$", + "examples": [ + "ABC123DEF456GHI7PXD202604231930001" + ] + } + }, + { + "$ref": "#/components/parameters/XJwsSignatureHeaderParam" + } + ], + "responses": { + "201": { + "$ref": "#/components/responses/PPResponseCreatedLote" + }, + "200": { + "$ref": "#/components/responses/PPResponseOkLoteAtualizado" + }, + "400": { + "$ref": "#/components/responses/PPResponseBadRequest" + }, + "403": { + "$ref": "#/components/responses/PPResponseForbidden" + }, + "422": { + "$ref": "#/components/responses/PPResponseUnprocessableEntitySegregacaoLote" + }, + "500": { + "$ref": "#/components/responses/PPResponseError" + } + }, + "requestBody": { + "required": true, + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/InformeDeSegregacaoPixDinamicoRequest" + } + } + } + } + } + }, + "/api/v1/pix-estatico/segregacao/{idInfSegr}/lotes": { + "post": { + "summary": "POST - Informe de Segregação", + "description": "Processa Informe de Segregação para arranjo(s): Pix estático", + "tags": [ + "Informe de Segregação" + ], + "operationId": "postapiv1pix_estaticosegregacao{idInfSegr}lotes", + "parameters": [ + { + "name": "idInfSegr", + "in": "path", + "required": true, + "description": "Identificador do informe de segregação. Formato: ISPB da instituição devedora (8) + ISPB da instituição da comunicação efetiva (8) + arranjo (PXA, PXD, PXE, BOL, TED, TEF) + data de envio do informe (AAAAMMDD) + hora de corte (HHMM) + 3 caracteres para o sequencial. Gerado pelo responsável pela comunicação.", + "schema": { + "type": "string", + "minLength": 34, + "maxLength": 34, + "pattern": "^[A-Za-z0-9]{16}(PXA|PXD|PXE|BOL|TED|TEF)\\d{15}$", + "examples": [ + "ABC123DEF456GHI7PXD202604231930001" + ] + } + }, + { + "$ref": "#/components/parameters/XJwsSignatureHeaderParam" + } + ], + "responses": { + "201": { + "$ref": "#/components/responses/PPResponseCreatedLote" + }, + "200": { + "$ref": "#/components/responses/PPResponseOkLoteAtualizado" + }, + "400": { + "$ref": "#/components/responses/PPResponseBadRequest" + }, + "403": { + "$ref": "#/components/responses/PPResponseForbidden" + }, + "422": { + "$ref": "#/components/responses/PPResponseUnprocessableEntitySegregacaoLote" + }, + "500": { + "$ref": "#/components/responses/PPResponseError" + } + }, + "requestBody": { + "required": true, + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/InformeDeSegregacaoPixEstaticoRequest" + } + } + } + } + } + }, + "/api/v1/ted/segregacao/{idInfSegr}/lotes": { + "post": { + "summary": "POST - Informe de Segregação", + "description": "Processa Informe de Segregação para arranjo(s): TED", + "tags": [ + "Informe de Segregação" + ], + "operationId": "postapiv1tedsegregacao{idInfSegr}lotes", + "parameters": [ + { + "name": "idInfSegr", + "in": "path", + "required": true, + "description": "Identificador do informe de segregação. Formato: ISPB da instituição devedora (8) + ISPB da instituição da comunicação efetiva (8) + arranjo (PXA, PXD, PXE, BOL, TED, TEF) + data de envio do informe (AAAAMMDD) + hora de corte (HHMM) + 3 caracteres para o sequencial. Gerado pelo responsável pela comunicação.", + "schema": { + "type": "string", + "minLength": 34, + "maxLength": 34, + "pattern": "^[A-Za-z0-9]{16}(PXA|PXD|PXE|BOL|TED|TEF)\\d{15}$", + "examples": [ + "ABC123DEF456GHI7PXD202604231930001" + ] + } + }, + { + "$ref": "#/components/parameters/XJwsSignatureHeaderParam" + } + ], + "responses": { + "201": { + "$ref": "#/components/responses/PPResponseCreatedLote" + }, + "200": { + "$ref": "#/components/responses/PPResponseOkLoteAtualizado" + }, + "400": { + "$ref": "#/components/responses/PPResponseBadRequest" + }, + "403": { + "$ref": "#/components/responses/PPResponseForbidden" + }, + "422": { + "$ref": "#/components/responses/PPResponseUnprocessableEntitySegregacaoLote" + }, + "500": { + "$ref": "#/components/responses/PPResponseError" + } + }, + "requestBody": { + "required": true, + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/InformeDeSegregacaoTedRequest" + } + } + } + } + } + }, + "/api/v1/tef/segregacao/{idInfSegr}/lotes": { + "post": { + "summary": "POST - Informe de Segregação", + "description": "Processa Informe de Segregação para arranjo(s): TEF", + "tags": [ + "Informe de Segregação" + ], + "operationId": "postapiv1tefsegregacao{idInfSegr}lotes", + "parameters": [ + { + "name": "idInfSegr", + "in": "path", + "required": true, + "description": "Identificador do informe de segregação. Formato: ISPB da instituição devedora (8) + ISPB da instituição da comunicação efetiva (8) + arranjo (PXA, PXD, PXE, BOL, TED, TEF) + data de envio do informe (AAAAMMDD) + hora de corte (HHMM) + 3 caracteres para o sequencial. Gerado pelo responsável pela comunicação.", + "schema": { + "type": "string", + "minLength": 34, + "maxLength": 34, + "pattern": "^[A-Za-z0-9]{16}(PXA|PXD|PXE|BOL|TED|TEF)\\d{15}$", + "examples": [ + "ABC123DEF456GHI7PXD202604231930001" + ] + } + }, + { + "$ref": "#/components/parameters/XJwsSignatureHeaderParam" + } + ], + "responses": { + "201": { + "$ref": "#/components/responses/PPResponseCreatedLote" + }, + "200": { + "$ref": "#/components/responses/PPResponseOkLoteAtualizado" + }, + "400": { + "$ref": "#/components/responses/PPResponseBadRequest" + }, + "403": { + "$ref": "#/components/responses/PPResponseForbidden" + }, + "422": { + "$ref": "#/components/responses/PPResponseUnprocessableEntitySegregacaoLote" + }, + "500": { + "$ref": "#/components/responses/PPResponseError" + } + }, + "requestBody": { + "required": true, + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/InformeDeSegregacaoTefRequest" + } + } + } + } + } + }, + "/api/v1/moc/solicitacao": { + "post": { + "summary": "POST - Requisição de MOC (Solicitação)", + "description": "Abre Solicitação de Estorno para um máximo de 1.000 ocorrências por requisição.", + "tags": [ + "Mecanismo de Ocorrências (MOC)" + ], + "operationId": "postapiv1mocsolicitacao", + "parameters": [ + { + "$ref": "#/components/parameters/XJwsSignatureHeaderParam" + } + ], + "responses": { + "201": { + "$ref": "#/components/responses/PPResponseOk" + }, + "400": { + "$ref": "#/components/responses/PPResponseBadRequest" + }, + "403": { + "$ref": "#/components/responses/PPResponseForbidden" + }, + "500": { + "$ref": "#/components/responses/PPResponseError" + } + }, + "requestBody": { + "required": true, + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/MecanismoDeOcorrenciasSolRequest" + }, + "examples": { + "boleto-sol": { + "summary": "Boleto", + "value": { + "infRequisicao": { + "dtHrMsg": "2026-03-22T12:00:00-03:00" + }, + "ocorrencias": [ + { + "index": 1, + "idOcor": "SOL12345678BOL202606230000001", + "arrj": "BOL", + "vlPago": 10.02, + "vlCbsSegr": 5.01, + "vlIbsSegr": 5.01, + "dtHrPgto": "2026-03-22T11:30:00-03:00", + "dtHrLiq": "2026-03-22T11:31:00-03:00", + "cnpjCpfPagEfet": "11444777000142", + "cnpjRaizPspPag": "12345678", + "cnpjRaizPspRecDir": "87654321", + "cnpjRec": "11444777000142", + "cnpjCpfDest": "11444777000142", + "idDda": "123A512312312312FAS1", + "codMotOcor": "02", + "vlCbsEst": 5.01, + "vlIbsEst": 5.01, + "descOcor": "Solicitação de estorno para boleto", + "cnpjPagOrig": "11444777000142" + } + ] + } + }, + "pix-estatico-sol": { + "summary": "Pix Estático", + "value": { + "infRequisicao": { + "dtHrMsg": "2026-03-22T12:00:00-03:00" + }, + "ocorrencias": [ + { + "index": 1, + "idOcor": "SOL12345678PXE202606230000008", + "arrj": "PXE", + "vlPago": 15.75, + "vlCbsSegr": 7.88, + "vlIbsSegr": 7.87, + "dtHrPgto": "2026-03-22T11:30:00-03:00", + "dtHrLiq": "2026-03-22T11:31:00-03:00", + "cnpjCpfPagEfet": "11444777000142", + "cnpjRaizPspPag": "12345678", + "cnpjRaizPspRecDir": "87654321", + "cnpjRec": "11444777000142", + "cnpjCpfDest": "11444777000142", + "e2eId": "E1234567820260320123456789012345", + "codMotOcor": "02", + "vlCbsEst": 7.88, + "vlIbsEst": 7.87, + "descOcor": "Solicitação para pix estático", + "cnpjPagOrig": "11444777000142" + } + ] + } + }, + "pix-dinamico-sol": { + "summary": "Pix Dinâmico", + "value": { + "infRequisicao": { + "dtHrMsg": "2026-03-22T12:00:00-03:00" + }, + "ocorrencias": [ + { + "index": 1, + "idOcor": "SOL12345678PXD202606230000003", + "arrj": "PXD", + "vlPago": 22.5, + "vlCbsSegr": 11.25, + "vlIbsSegr": 11.25, + "dtHrPgto": "2026-03-22T11:30:00-03:00", + "dtHrLiq": "2026-03-22T11:31:00-03:00", + "cnpjCpfPagEfet": "11444777000142", + "cnpjRaizPspPag": "12345678", + "cnpjRaizPspRecDir": "87654321", + "cnpjRec": "11444777000142", + "cnpjCpfDest": "11444777000142", + "txId": "1234ABDOASD11231234ABDOASD112312345", + "e2eId": "E1234567820260320123456789012345", + "codMotOcor": "01", + "vlCbsEst": 11.25, + "vlIbsEst": 11.25, + "descOcor": "Solicitação com identificacao por txId", + "cnpjPagOrig": "11444777000142" + } + ] + } + }, + "pix-automatico-sol": { + "summary": "Pix Automático", + "value": { + "infRequisicao": { + "dtHrMsg": "2026-03-22T12:00:00-03:00" + }, + "ocorrencias": [ + { + "index": 1, + "idOcor": "SOL12345678PXA202606230000010", + "arrj": "PXA", + "vlPago": 30, + "vlCbsSegr": 15, + "vlIbsSegr": 15, + "dtHrPgto": "2026-03-22T11:30:00-03:00", + "dtHrLiq": "2026-03-22T11:31:00-03:00", + "cnpjCpfPagEfet": "11444777000142", + "cnpjRaizPspPag": "12345678", + "cnpjRaizPspRecDir": "87654321", + "cnpjRec": "11444777000142", + "cnpjCpfDest": "11444777000142", + "txId": "1234ABDOASD11231234ABDOASD112312345", + "e2eId": "E1234567820260320123456789012345", + "codMotOcor": "01", + "vlCbsEst": 15, + "vlIbsEst": 15, + "descOcor": "Solicitação para pix automatico", + "cnpjPagOrig": "11444777000142" + } + ] + } + }, + "ted-sol": { + "summary": "TED", + "value": { + "infRequisicao": { + "dtHrMsg": "2026-03-22T12:00:00-03:00" + }, + "ocorrencias": [ + { + "index": 1, + "idOcor": "SOL12345678TED202606230000005", + "arrj": "TED", + "vlPago": 100, + "vlCbsSegr": 50, + "vlIbsSegr": 50, + "dtHrPgto": "2026-03-22T11:30:00-03:00", + "dtHrLiq": "2026-03-22T11:31:00-03:00", + "cnpjCpfPagEfet": "11444777000142", + "cnpjRaizPspPag": "12345678", + "cnpjRaizPspRecDir": "87654321", + "cnpjRec": "11444777000142", + "cnpjCpfDest": "11444777000142", + "numCtrlTED": "STR123456789", + "codMotOcor": "02", + "vlCbsEst": 50, + "vlIbsEst": 50, + "descOcor": "Solicitação de TED com numero de controle", + "cnpjPagOrig": "11444777000142" + } + ] + } + }, + "tef-sol": { + "summary": "TEF", + "value": { + "infRequisicao": { + "dtHrMsg": "2026-03-22T12:00:00-03:00" + }, + "ocorrencias": [ + { + "index": 1, + "idOcor": "SOL12345678TEF202606230000012", + "arrj": "TEF", + "vlPago": 75, + "vlCbsSegr": 37.5, + "vlIbsSegr": 37.5, + "dtHrPgto": "2026-03-22T11:30:00-03:00", + "dtHrLiq": "2026-03-22T11:31:00-03:00", + "cnpjCpfPagEfet": "11444777000142", + "cnpjRaizPspPag": "12345678", + "cnpjRaizPspRecDir": "87654321", + "cnpjRec": "11444777000142", + "cnpjCpfDest": "11444777000142", + "numCtrlTEF": "TEF123456789", + "codMotOcor": "02", + "vlCbsEst": 37.5, + "vlIbsEst": 37.5, + "descOcor": "Solicitação para TEF", + "cnpjPagOrig": "11444777000142" + } + ] + } + } + } + } + } + } + } + }, + "/api/v1/moc/notificacao": { + "post": { + "summary": "POST - Requisição de MOC (Notificação)", + "description": "Envia Notificação de transações em Análise no máximo de 1.000 ocorrências por requisicao.", + "tags": [ + "Mecanismo de Ocorrências (MOC)" + ], + "operationId": "postapiv1mocnotificacao", + "parameters": [ + { + "$ref": "#/components/parameters/XJwsSignatureHeaderParam" + } + ], + "responses": { + "201": { + "$ref": "#/components/responses/PPResponseOk" + }, + "400": { + "$ref": "#/components/responses/PPResponseBadRequest" + }, + "403": { + "$ref": "#/components/responses/PPResponseForbidden" + }, + "500": { + "$ref": "#/components/responses/PPResponseError" + } + }, + "requestBody": { + "required": true, + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/MecanismoDeOcorrenciasNotRequest" + }, + "examples": { + "boleto-not": { + "summary": "Boleto", + "value": { + "infRequisicao": { + "dtHrMsg": "2026-03-22T12:00:00-03:00" + }, + "ocorrencias": [ + { + "index": 1, + "idOcor": "NOT12345678BOL202606230000007", + "arrj": "BOL", + "vlPago": 10.02, + "vlCbsSegr": 5.01, + "vlIbsSegr": 5.01, + "dtHrPgto": "2026-03-22T11:30:00-03:00", + "dtHrLiq": "2026-03-22T11:31:00-03:00", + "cnpjCpfPagEfet": "11444777000142", + "cnpjRaizPspPag": "12345678", + "cnpjRaizPspRecDir": "87654321", + "cnpjRec": "11444777000142", + "cnpjCpfDest": "11444777000142", + "idDda": "123A512312312312FAS1", + "descOcor": "Notificação para boleto", + "cnpjPagOrig": "11444777000142" + } + ] + } + }, + "pix-estatico-not": { + "summary": "Pix Estático", + "value": { + "infRequisicao": { + "dtHrMsg": "2026-03-22T12:00:00-03:00" + }, + "ocorrencias": [ + { + "index": 1, + "idOcor": "NOT12345678PXE202606230000002", + "arrj": "PXE", + "vlPago": 15.75, + "vlCbsSegr": 7.88, + "vlIbsSegr": 7.87, + "dtHrPgto": "2026-03-22T11:30:00-03:00", + "dtHrLiq": "2026-03-22T11:31:00-03:00", + "cnpjCpfPagEfet": "11444777000142", + "cnpjRaizPspPag": "12345678", + "cnpjRaizPspRecDir": "87654321", + "cnpjRec": "11444777000142", + "cnpjCpfDest": "11444777000142", + "e2eId": "E1234567820260320123456789012345", + "descOcor": "Notificação Pix estático", + "cnpjPagOrig": "11444777000142" + } + ] + } + }, + "pix-dinamico-not": { + "summary": "Pix Dinâmico", + "value": { + "infRequisicao": { + "dtHrMsg": "2026-03-22T12:00:00-03:00" + }, + "ocorrencias": [ + { + "index": 1, + "idOcor": "NOT12345678PXD202606230000009", + "arrj": "PXD", + "vlPago": 22.5, + "vlCbsSegr": 11.25, + "vlIbsSegr": 11.25, + "dtHrPgto": "2026-03-22T11:30:00-03:00", + "dtHrLiq": "2026-03-22T11:31:00-03:00", + "cnpjCpfPagEfet": "11444777000142", + "cnpjRaizPspPag": "12345678", + "cnpjRaizPspRecDir": "87654321", + "cnpjRec": "11444777000142", + "cnpjCpfDest": "11444777000142", + "txId": "1234ABDOASD11231234ABDOASD112312345", + "e2eId": "E1234567820260320123456789012345", + "descOcor": "Notificação para pix dinâmico", + "cnpjPagOrig": "11444777000142" + } + ] + } + }, + "pix-automatico-not": { + "summary": "Pix Automático", + "value": { + "infRequisicao": { + "dtHrMsg": "2026-03-22T12:00:00-03:00" + }, + "ocorrencias": [ + { + "index": 1, + "idOcor": "NOT12345678PXA202606230000004", + "arrj": "PXA", + "vlPago": 30, + "vlCbsSegr": 15, + "vlIbsSegr": 15, + "dtHrPgto": "2026-03-22T11:30:00-03:00", + "dtHrLiq": "2026-03-22T11:31:00-03:00", + "cnpjCpfPagEfet": "11444777000142", + "cnpjRaizPspPag": "12345678", + "cnpjRaizPspRecDir": "87654321", + "cnpjRec": "11444777000142", + "cnpjCpfDest": "11444777000142", + "txId": "1234ABDOASD11231234ABDOASD112312345", + "e2eId": "E1234567820260320123456789012345", + "orgRespProcAdm": "RFB", + "numProcAdm": "PROC2026000123", + "descOcor": "Notificação para pix automático", + "cnpjPagOrig": "11444777000142" + } + ] + } + }, + "ted-not": { + "summary": "TED", + "value": { + "infRequisicao": { + "dtHrMsg": "2026-03-22T12:00:00-03:00" + }, + "ocorrencias": [ + { + "index": 1, + "idOcor": "NOT12345678TED202606230000011", + "arrj": "TED", + "vlPago": 100, + "vlCbsSegr": 50, + "vlIbsSegr": 50, + "dtHrPgto": "2026-03-22T11:30:00-03:00", + "dtHrLiq": "2026-03-22T11:31:00-03:00", + "cnpjCpfPagEfet": "11444777000142", + "cnpjRaizPspPag": "12345678", + "cnpjRaizPspRecDir": "87654321", + "cnpjRec": "11444777000142", + "cnpjCpfDest": "11444777000142", + "numCtrlTED": "STR123456789", + "descOcor": "Notificação para TED", + "cnpjPagOrig": "11444777000142" + } + ] + } + }, + "tef-not": { + "summary": "TEF", + "value": { + "infRequisicao": { + "dtHrMsg": "2026-03-22T12:00:00-03:00" + }, + "ocorrencias": [ + { + "index": 1, + "idOcor": "NOT12345678TEF202606230000006", + "arrj": "TEF", + "vlPago": 75, + "vlCbsSegr": 37.5, + "vlIbsSegr": 37.5, + "dtHrPgto": "2026-03-22T11:30:00-03:00", + "dtHrLiq": "2026-03-22T11:31:00-03:00", + "cnpjCpfPagEfet": "11444777000142", + "cnpjRaizPspPag": "12345678", + "cnpjRaizPspRecDir": "87654321", + "cnpjRec": "11444777000142", + "cnpjCpfDest": "11444777000142", + "numCtrlTEF": "TEF123456789", + "orgRespProcAdm": "CGIBS", + "numProcAdm": "PROC2026000456", + "descOcor": "Notificação para TEF", + "cnpjPagOrig": "11444777000142" + } + ] + } + } + } + } + } + } + } + }, + "/api/v1/moc/{cnpjRaizPspRecDir}/ocorrencias": { + "get": { + "summary": "GET - Consulta de MOC", + "description": "Consulta paginada (polling) das ocorrências do MOC com resposta para o PSP. A Plataforma responde imediatamente com as ocorrências disponíveis no momento (até 1.000 por página). O parâmetro 'nsuInicial' deve ser utilizado para continuar a paginação a partir do último NSU já recebido, a primeira consulta deve usar o valor inicial: 1. O parâmetro opcional 'limite' permite definir a quantidade máxima de ocorrências retornadas por página, respeitado o limite de 1.000 itens. O retorno HTTP 204 indica que não há mais ocorrências disponíveis no momento — seja porque todas as ocorrências já foram retornadas, seja porque não há ocorrências. Nesse caso o PSP deve aguardar 30 minutos antes de realizar uma nova consulta. A Plataforma não mantém a conexão aberta aguardando ocorrências (estratégia de polling).", + "tags": [ + "Mecanismo de Ocorrências (MOC)" + ], + "operationId": "getapiv1moc{cnpjRaizPspRecDir}ocorrencias", + "parameters": [ + { + "$ref": "#/components/parameters/XJwsSignatureHeaderParam" + }, + { + "name": "cnpjRaizPspRecDir", + "in": "path", + "required": true, + "description": "Raiz do CNPJ do PSP Recebedor Direto: 8 caracteres alfanuméricos.", + "schema": { + "type": "string", + "minLength": 8, + "maxLength": 8, + "pattern": "^[A-Za-z0-9]{8}$", + "examples": [ + "12345678" + ] + } + }, + { + "name": "nsuInicial", + "in": "query", + "required": true, + "description": "NSU inicial utilizado para a paginação dos resultados de ocorrências do MOC.", + "schema": { + "type": "string", + "pattern": "^\\d{1,19}$", + "examples": [ + "1234567890123456789" + ] + } + }, + { + "name": "limite", + "in": "query", + "required": false, + "description": "Quantidade máxima de ocorrências retornadas por página. Padrão e máximo: 1.000.", + "schema": { + "type": "integer", + "minimum": 1, + "maximum": 1000, + "examples": [ + 1000 + ] + } + } + ], + "responses": { + "200": { + "description": "Consulta realizada com sucesso. Ocorrências disponíveis no momento da consulta.", + "headers": { + "X-JWS-Signature": { + "$ref": "#/components/headers/XJwsSignatureResponseHeader" + } + }, + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/MocOcorrenciasConsultaResponse" + } + } + } + }, + "204": { + "$ref": "#/components/responses/PPResponseNoContentMocConsultaStart" + }, + "400": { + "$ref": "#/components/responses/PPResponseBadRequestMocConsulta" + }, + "403": { + "$ref": "#/components/responses/PPResponseForbidden" + }, + "422": { + "$ref": "#/components/responses/PPResponseUnprocessableEntityMocConsulta" + }, + "500": { + "$ref": "#/components/responses/PPResponseError" + } + } + } + } + }, + "components": { + "schemas": { + "InfoRequest": { + "type": "object", + "properties": { + "infRequisicao": { + "type": "object", + "properties": { + "cnpjRaizPspRecDir": { + "type": "string", + "minLength": 8, + "maxLength": 8, + "pattern": "^[A-Za-z0-9]{8}$", + "examples": [ + "12345678" + ], + "description": "Raiz do CNPJ do PSP Recebedor Direto." + }, + "dtHrMsg": { + "type": "string", + "format": "date-time", + "pattern": "^\\d{4}-\\d{2}-\\d{2}T\\d{2}:\\d{2}:\\d{2}-03:00$", + "examples": [ + "2026-03-22T12:00:00-03:00" + ], + "description": "Data e hora da mensagem que está sendo transmitida entre PSP/Núclea e a Plataforma Pública." + } + }, + "required": [ + "cnpjRaizPspRecDir", + "dtHrMsg" + ] + }, + "transacoes": { + "type": "array", + "minItems": 1, + "maxItems": 1000, + "items": { + "type": "object", + "properties": {}, + "required": [] + } + } + }, + "required": [ + "infRequisicao", + "transacoes" + ] + }, + "InfoRequestSemCnpj": { + "type": "object", + "properties": { + "infRequisicao": { + "type": "object", + "properties": { + "dtHrMsg": { + "type": "string", + "format": "date-time", + "pattern": "^\\d{4}-\\d{2}-\\d{2}T\\d{2}:\\d{2}:\\d{2}-03:00$", + "examples": [ + "2026-03-22T12:00:00-03:00" + ], + "description": "Data e hora da mensagem que está sendo transmitida entre PSP/Núclea e a Plataforma Pública." + } + }, + "required": [ + "dtHrMsg" + ] + }, + "transacoes": { + "type": "array", + "minItems": 1, + "maxItems": 1000, + "items": { + "type": "object", + "properties": {}, + "required": [] + } + } + }, + "required": [ + "infRequisicao", + "transacoes" + ] + }, + "InfoSegRequest": { + "type": "object", + "properties": { + "infRequisicao": { + "type": "object", + "properties": { + "cnpjRaizPspRecDir": { + "type": "string", + "minLength": 8, + "maxLength": 8, + "pattern": "^[A-Za-z0-9]{8}$", + "examples": [ + "12345678" + ], + "description": "Raiz do CNPJ do PSP Recebedor Direto." + }, + "dtHrMsg": { + "type": "string", + "format": "date-time", + "pattern": "^\\d{4}-\\d{2}-\\d{2}T\\d{2}:\\d{2}:\\d{2}-03:00$", + "examples": [ + "2026-03-22T12:00:00-03:00" + ], + "description": "Data e hora da mensagem que está sendo transmitida entre PSP/Núclea e a Plataforma Pública." + } + }, + "required": [ + "cnpjRaizPspRecDir", + "dtHrMsg" + ] + } + }, + "required": [ + "infRequisicao" + ] + }, + "InfoSegFinalRequest": { + "allOf": [ + { + "$ref": "#/components/schemas/InfoSegRequest" + }, + { + "properties": { + "dadosFinalSeg": { + "$ref": "#/components/schemas/DadosFinalSegRequest" + } + }, + "required": [ + "dadosFinalSeg" + ] + } + ] + }, + "DadosInfoSegRequest": { + "type": "object", + "properties": { + "idRepasse": { + "type": "string", + "minLength": 30, + "maxLength": 30, + "pattern": "^[A-Za-z0-9]{16}(PXA|PXD|PXE|BOL|TED|TEF)\\d{11}$", + "examples": [ + "ABC123DEF456GHI7PXD20260423001" + ], + "description": "Identificador do Repasse Financeiro associado à transação. Formato: ISPB do PSP Recebedor Direto (8) + ISPB da instituição do repasse efetivo (8) + arranjo (PXA, PXD, PXE, BOL, TED, TEF) + data definida para realização do Repasse Financeiro (AAAAMMDD) + 3 caracteres para o sequencial. Gerado pelo PSP Recebedor Direto. Um mesmo idRepasse é utilizado para os dois tributos do Repasse Financeiro: CBS (via TES) e IBS (via STR), sendo comum a ambos." + }, + "arrj": { + "type": "string", + "enum": [ + "PXA", + "PXD", + "PXE", + "BOL", + "TED", + "TEF" + ], + "examples": [ + "PXD" + ], + "description": "Arranjo financeiro ao qual a mensagem está associada (Pix Automático, Pix Dinâmico, Pix Estático, Boleto, TED, TEF). O campo prevê os seguintes valores: PXA, PXD, PXE, BOL, TED ou TEF." + }, + "idInfSegr": { + "type": "string", + "minLength": 34, + "maxLength": 34, + "pattern": "^[A-Za-z0-9]{16}(PXA|PXD|PXE|BOL|TED|TEF)\\d{15}$", + "examples": [ + "ABC123DEF456GHI7PXD202604231930001" + ], + "description": "Identificador do informe de segregação, gerado pelo responsável pela comunicação. Formato: ISPB do PSP Recebedor Direto (8) + ISPB da instituição da comunicação efetiva (8) + arranjo (PXA/PXD/PXE/BOL/TED/TEF) + data de envio (AAAAMMDD) + hora de corte HHMM (horário de corte do arranjo, conforme o Manual de Tempos) + sequencial (3)." + } + }, + "required": [ + "idRepasse", + "arrj", + "idInfSegr" + ] + }, + "DadosLoteSegRequest": { + "type": "object", + "properties": { + "idLote": { + "type": "string", + "minLength": 40, + "maxLength": 40, + "pattern": "^[A-Za-z0-9]{34}\\d{6}$", + "examples": [ + "ZZ99YY88XX77WW66VV55UU44TT33SS22RR000001", + "ZZ99YY88XX77WW66VV55UU44TT33SS22RR000002" + ], + "description": "Identificador do lote enviado no informe de segregação. Formato: IdInfSegr + sequencial" + } + }, + "required": [ + "idLote" + ] + }, + "DadosFinalSegRequest": { + "type": "object", + "properties": { + "idInfSegr": { + "type": "string", + "minLength": 34, + "maxLength": 34, + "pattern": "^[A-Za-z0-9]{16}(PXA|PXD|PXE|BOL|TED|TEF)\\d{15}$", + "examples": [ + "ABC123DEF456GHI7PXD202604231930001" + ], + "description": "Identificador do informe de segregação, gerado pelo responsável pela comunicação. Formato: ISPB do PSP Recebedor Direto (8) + ISPB da instituição da comunicação efetiva (8) + arranjo (PXA/PXD/PXE/BOL/TED/TEF) + data de envio (AAAAMMDD) + hora de corte HHMM (horário de corte do arranjo, conforme o Manual de Tempos) + sequencial (3)." + }, + "totalTrans": { + "type": "integer", + "format": "int64", + "minimum": 0, + "maximum": 99999999999999999, + "examples": [ + 100, + 99, + 0 + ], + "description": "Número total de transações enviadas no Informe de Segregação" + }, + "vlTotalCbs": { + "type": "number", + "multipleOf": 0.01, + "minimum": 0, + "maximum": 999999999999999999.99, + "examples": [ + 1500.5 + ], + "description": "Valor total de CBS enviado no Informe de Segregação" + }, + "vlTotalIbs": { + "type": "number", + "multipleOf": 0.01, + "minimum": 0, + "maximum": 999999999999999999.99, + "examples": [ + 750.25 + ], + "description": "Valor total de IBS enviado no Informe de Segregação" + } + }, + "required": [ + "idInfSegr", + "totalTrans", + "vlTotalCbs", + "vlTotalIbs" + ] + }, + "InformeDeTransacaoIniciadaBoletoTransacao": { + "type": "object", + "properties": { + "index": { + "type": "integer", + "examples": [ + 1 + ], + "minimum": 1, + "maximum": 1000, + "description": "Número sequencial do item na lista enviada, iniciando em 1." + }, + "idDda": { + "type": "string", + "minLength": 1, + "maxLength": 20, + "examples": [ + "123A512312312312FAS1" + ], + "description": "Identificador único do documento de cobrança no sistema DDA." + }, + "numCtrlOrig": { + "type": "string", + "minLength": 1, + "maxLength": 20, + "examples": [ + "123A512312312312FAS1" + ], + "description": "Identificador utilizado pela Núclea para controle interno da transação." + }, + "numCodBarras": { + "type": "string", + "minLength": 44, + "maxLength": 44, + "pattern": "^\\d{44}$", + "examples": [ + "12345678901234567891123456789012345678911234" + ], + "description": "Número correspondente ao código de barras do boleto." + }, + "vlInf": { + "type": "number", + "multipleOf": 0.01, + "minimum": 0, + "maximum": 999999999999999999.99, + "examples": [ + 10.02 + ], + "description": "Valor da transação informado pelo originador ao preencher (emitir) a transação." + }, + "vlCbsInf": { + "type": "number", + "multipleOf": 0.01, + "minimum": 0, + "maximum": 999999999999999999.99, + "examples": [ + 10.02 + ], + "description": "Valor de CBS informado pelo originador no preenchimento da transação." + }, + "vlIbsInf": { + "type": "number", + "multipleOf": 0.01, + "minimum": 0, + "maximum": 999999999999999999.99, + "examples": [ + 10.02 + ], + "description": "Valor de IBS informado pelo originador no preenchimento da transação." + }, + "docFiscal": { + "type": "string", + "minLength": 1, + "maxLength": 50, + "examples": [ + "1234567890123456789B123A5678901234567891123412345" + ], + "description": "Identificador do Documento Fiscal vinculado à transação." + }, + "cnpjRaizPspRecInd": { + "type": "string", + "minLength": 8, + "maxLength": 8, + "pattern": "^[A-Za-z0-9]{8}$", + "examples": [ + "87654321" + ], + "description": "Raiz do CNPJ do PSP Recebedor Indireto onde o Recebedor mantém a conta." + }, + "cnpjRaizPspRecDir": { + "type": "string", + "minLength": 8, + "maxLength": 8, + "pattern": "^[A-Za-z0-9]{8}$", + "examples": [ + "12345678" + ], + "description": "Raiz do CNPJ do PSP Recebedor Direto." + }, + "cnpjRec": { + "type": "string", + "minLength": 14, + "maxLength": 14, + "pattern": "^[A-Za-z0-9]{14}$", + "examples": [ + "11444777000142" + ], + "description": "Identificação do Recebedor (que recebe o valor líquido da transação). Em caso de cessão de recebíveis, preencher com o Recebedor original (e não com o novo detentor de direitos)." + }, + "cnpjPagOrig": { + "type": "string", + "minLength": 14, + "maxLength": 14, + "pattern": "^[A-Za-z0-9]{14}$", + "examples": [ + "11444777000142" + ], + "description": "Identificador do Pagador informado na emissão da transação. CNPJ: 14 caracteres alfanuméricos." + }, + "dtHrIni": { + "type": "string", + "format": "date-time", + "pattern": "^\\d{4}-\\d{2}-\\d{2}T\\d{2}:\\d{2}:\\d{2}-03:00$", + "examples": [ + "2026-03-20T10:33:46-03:00" + ], + "description": "Data e hora de emissão da transação após processamento pelo PSP/Núclea." + }, + "dtVenc": { + "type": "string", + "format": "date", + "pattern": "^\\d{4}-\\d{2}-\\d{2}$", + "examples": [ + "2026-03-20" + ], + "description": "Data de vencimento da transação." + }, + "dtHrLimPgto": { + "type": "string", + "format": "date-time", + "pattern": "^\\d{4}-\\d{2}-\\d{2}T\\d{2}:\\d{2}:\\d{2}-03:00$", + "examples": [ + "2026-03-20T10:33:46-03:00" + ], + "description": "Data e hora limite para realização do pagamento da transação." + } + }, + "required": [ + "index", + "idDda", + "numCtrlOrig", + "numCodBarras", + "vlInf", + "vlCbsInf", + "vlIbsInf", + "cnpjRaizPspRecDir", + "cnpjRec", + "cnpjPagOrig", + "dtHrIni", + "dtVenc", + "dtHrLimPgto" + ] + }, + "InformeDeTransacaoIniciadaBoletoRequest": { + "allOf": [ + { + "$ref": "#/components/schemas/InfoRequestSemCnpj" + }, + { + "properties": { + "transacoes": { + "type": "array", + "minItems": 1, + "maxItems": 1000, + "items": { + "$ref": "#/components/schemas/InformeDeTransacaoIniciadaBoletoTransacao" + } + } + } + } + ] + }, + "InformeDeTransacaoIniciadaPixAutomaticoTransacao": { + "type": "object", + "properties": { + "index": { + "type": "integer", + "examples": [ + 1 + ], + "minimum": 1, + "maximum": 1000, + "description": "Número sequencial do item na lista enviada, iniciando em 1." + }, + "txId": { + "type": "string", + "minLength": 1, + "maxLength": 35, + "examples": [ + "1234ABDOASD11231234ABDOASD112312345" + ], + "description": "Identificador único da transação Pix (TxID)." + }, + "vlInf": { + "type": "number", + "multipleOf": 0.01, + "minimum": 0, + "maximum": 999999999999999999.99, + "examples": [ + 10.02 + ], + "description": "Valor da transação informado pelo originador ao preencher (emitir) a transação." + }, + "vlCbsInf": { + "type": "number", + "multipleOf": 0.01, + "minimum": 0, + "maximum": 999999999999999999.99, + "examples": [ + 10.02 + ], + "description": "Valor de CBS informado pelo originador no preenchimento da transação." + }, + "vlIbsInf": { + "type": "number", + "multipleOf": 0.01, + "minimum": 0, + "maximum": 999999999999999999.99, + "examples": [ + 10.02 + ], + "description": "Valor de IBS informado pelo originador no preenchimento da transação." + }, + "docFiscal": { + "type": "string", + "minLength": 1, + "maxLength": 50, + "examples": [ + "1234567890123456789B123A5678901234567891123412345" + ], + "description": "Identificador do Documento Fiscal vinculado à transação." + }, + "cnpjRaizPspRecInd": { + "type": "string", + "minLength": 8, + "maxLength": 8, + "pattern": "^[A-Za-z0-9]{8}$", + "examples": [ + "87654321" + ], + "description": "Raiz do CNPJ do PSP Recebedor Indireto onde o Recebedor mantém a conta." + }, + "cnpjRaizPspRecDir": { + "type": "string", + "minLength": 8, + "maxLength": 8, + "pattern": "^[A-Za-z0-9]{8}$", + "examples": [ + "12345678" + ], + "description": "Raiz do CNPJ do PSP Recebedor Direto." + }, + "cnpjRec": { + "type": "string", + "minLength": 14, + "maxLength": 14, + "pattern": "^[A-Za-z0-9]{14}$", + "examples": [ + "11444777000142" + ], + "description": "Identificação do Recebedor (que recebe o valor líquido da transação). Em caso de cessão de recebíveis, preencher com o Recebedor original (e não com o novo detentor de direitos)." + }, + "cnpjPagOrig": { + "type": "string", + "minLength": 14, + "maxLength": 14, + "pattern": "^[A-Za-z0-9]{14}$", + "examples": [ + "11444777000142" + ], + "description": "Identificador do Pagador informado na emissão da transação. CNPJ: 14 caracteres alfanuméricos." + }, + "dtHrIni": { + "type": "string", + "format": "date-time", + "pattern": "^\\d{4}-\\d{2}-\\d{2}T\\d{2}:\\d{2}:\\d{2}-03:00$", + "examples": [ + "2026-03-20T10:33:46-03:00" + ], + "description": "Data e hora de emissão da transação após processamento pelo PSP/Núclea." + }, + "dtVenc": { + "type": "string", + "format": "date", + "pattern": "^\\d{4}-\\d{2}-\\d{2}$", + "examples": [ + "2026-03-20" + ], + "description": "Data de vencimento da transação." + }, + "dtHrLimPgto": { + "type": "string", + "format": "date-time", + "pattern": "^\\d{4}-\\d{2}-\\d{2}T\\d{2}:\\d{2}:\\d{2}-03:00$", + "examples": [ + "2026-03-20T10:33:46-03:00" + ], + "description": "Data e hora limite para realização do pagamento da transação." + } + }, + "required": [ + "index", + "txId", + "vlInf", + "vlCbsInf", + "vlIbsInf", + "cnpjRaizPspRecDir", + "cnpjRec", + "dtHrIni", + "dtHrLimPgto" + ] + }, + "InformeDeTransacaoIniciadaPixAutomaticoRequest": { + "allOf": [ + { + "$ref": "#/components/schemas/InfoRequestSemCnpj" + }, + { + "properties": { + "transacoes": { + "type": "array", + "minItems": 1, + "maxItems": 1000, + "items": { + "$ref": "#/components/schemas/InformeDeTransacaoIniciadaPixAutomaticoTransacao" + } + } + } + } + ] + }, + "InformeDeTransacaoIniciadaPixDinamicoTransacao": { + "type": "object", + "properties": { + "index": { + "type": "integer", + "examples": [ + 1 + ], + "minimum": 1, + "maximum": 1000, + "description": "Número sequencial do item na lista enviada, iniciando em 1." + }, + "txId": { + "type": "string", + "minLength": 1, + "maxLength": 35, + "examples": [ + "1234ABDOASD11231234ABDOASD112312345" + ], + "description": "Identificador único da transação Pix (TxID)." + }, + "vlInf": { + "type": "number", + "multipleOf": 0.01, + "minimum": 0, + "maximum": 999999999999999999.99, + "examples": [ + 10.02 + ], + "description": "Valor da transação informado pelo originador ao preencher (emitir) a transação." + }, + "vlCbsInf": { + "type": "number", + "multipleOf": 0.01, + "minimum": 0, + "maximum": 999999999999999999.99, + "examples": [ + 10.02 + ], + "description": "Valor de CBS informado pelo originador no preenchimento da transação." + }, + "vlIbsInf": { + "type": "number", + "multipleOf": 0.01, + "minimum": 0, + "maximum": 999999999999999999.99, + "examples": [ + 10.02 + ], + "description": "Valor de IBS informado pelo originador no preenchimento da transação." + }, + "docFiscal": { + "type": "string", + "minLength": 1, + "maxLength": 50, + "examples": [ + "1234567890123456789B123A5678901234567891123412345" + ], + "description": "Identificador do Documento Fiscal vinculado à transação." + }, + "cnpjRaizPspRecInd": { + "type": "string", + "minLength": 8, + "maxLength": 8, + "pattern": "^[A-Za-z0-9]{8}$", + "examples": [ + "87654321" + ], + "description": "Raiz do CNPJ do PSP Recebedor Indireto onde o Recebedor mantém a conta." + }, + "cnpjRaizPspRecDir": { + "type": "string", + "minLength": 8, + "maxLength": 8, + "pattern": "^[A-Za-z0-9]{8}$", + "examples": [ + "12345678" + ], + "description": "Raiz do CNPJ do PSP Recebedor Direto." + }, + "cnpjRec": { + "type": "string", + "minLength": 14, + "maxLength": 14, + "pattern": "^[A-Za-z0-9]{14}$", + "examples": [ + "11444777000142" + ], + "description": "Identificação do Recebedor (que recebe o valor líquido da transação). Em caso de cessão de recebíveis, preencher com o Recebedor original (e não com o novo detentor de direitos)." + }, + "cnpjPagOrig": { + "type": "string", + "minLength": 14, + "maxLength": 14, + "pattern": "^[A-Za-z0-9]{14}$", + "examples": [ + "11444777000142" + ], + "description": "Identificador do Pagador informado na emissão da transação. CNPJ: 14 caracteres alfanuméricos." + }, + "dtHrIni": { + "type": "string", + "format": "date-time", + "pattern": "^\\d{4}-\\d{2}-\\d{2}T\\d{2}:\\d{2}:\\d{2}-03:00$", + "examples": [ + "2026-03-20T10:33:46-03:00" + ], + "description": "Data e hora de emissão da transação após processamento pelo PSP/Núclea." + }, + "dtVenc": { + "type": "string", + "format": "date", + "pattern": "^\\d{4}-\\d{2}-\\d{2}$", + "examples": [ + "2026-03-20" + ], + "description": "Data de vencimento da transação." + }, + "dtHrLimPgto": { + "type": "string", + "format": "date-time", + "pattern": "^\\d{4}-\\d{2}-\\d{2}T\\d{2}:\\d{2}:\\d{2}-03:00$", + "examples": [ + "2026-03-20T10:33:46-03:00" + ], + "description": "Data e hora limite para realização do pagamento da transação." + } + }, + "required": [ + "index", + "txId", + "vlInf", + "vlCbsInf", + "vlIbsInf", + "cnpjRaizPspRecDir", + "cnpjRec", + "dtHrIni", + "dtHrLimPgto" + ] + }, + "InformeDeTransacaoIniciadaPixDinamicoRequest": { + "allOf": [ + { + "$ref": "#/components/schemas/InfoRequestSemCnpj" + }, + { + "properties": { + "transacoes": { + "type": "array", + "minItems": 1, + "maxItems": 1000, + "items": { + "$ref": "#/components/schemas/InformeDeTransacaoIniciadaPixDinamicoTransacao" + } + } + } + } + ] + }, + "InformeDeTransacaoAtualizadaBoletoTransacao": { + "type": "object", + "properties": { + "index": { + "type": "integer", + "examples": [ + 1 + ], + "minimum": 1, + "maximum": 1000, + "description": "Número sequencial do item na lista enviada, iniciando em 1." + }, + "idDda": { + "type": "string", + "minLength": 1, + "maxLength": 20, + "examples": [ + "123A512312312312FAS1" + ], + "description": "Identificador único do documento de cobrança no sistema DDA." + }, + "numCtrlOrig": { + "type": "string", + "minLength": 1, + "maxLength": 20, + "examples": [ + "123A512312312312FAS1" + ], + "description": "Identificador utilizado pela Núclea para controle interno da transação." + }, + "vlInf": { + "type": "number", + "multipleOf": 0.01, + "minimum": 0, + "maximum": 999999999999999999.99, + "examples": [ + 10.02 + ], + "description": "Valor da transação informado pelo originador ao preencher (emitir) a transação." + }, + "vlCbsInf": { + "type": "number", + "multipleOf": 0.01, + "minimum": 0, + "maximum": 999999999999999999.99, + "examples": [ + 10.02 + ], + "description": "Valor de CBS informado pelo originador no preenchimento da transação." + }, + "vlIbsInf": { + "type": "number", + "multipleOf": 0.01, + "minimum": 0, + "maximum": 999999999999999999.99, + "examples": [ + 10.02 + ], + "description": "Valor de IBS informado pelo originador no preenchimento da transação." + }, + "docFiscal": { + "type": "string", + "minLength": 1, + "maxLength": 50, + "examples": [ + "1234567890123456789B123A5678901234567891123412345" + ], + "description": "Identificador do Documento Fiscal vinculado à transação." + }, + "cnpjRaizPspRecInd": { + "type": "string", + "minLength": 8, + "maxLength": 8, + "pattern": "^[A-Za-z0-9]{8}$", + "examples": [ + "87654321" + ], + "description": "Raiz do CNPJ do PSP Recebedor Indireto onde o Recebedor mantém a conta." + }, + "cnpjRaizPspRecDir": { + "type": "string", + "minLength": 8, + "maxLength": 8, + "pattern": "^[A-Za-z0-9]{8}$", + "examples": [ + "12345678" + ], + "description": "Raiz do CNPJ do PSP Recebedor Direto." + }, + "dtHrAtu": { + "type": "string", + "format": "date-time", + "pattern": "^\\d{4}-\\d{2}-\\d{2}T\\d{2}:\\d{2}:\\d{2}-03:00$", + "examples": [ + "2026-03-20T10:33:46-03:00" + ], + "description": "Data e hora da atualização da transação." + }, + "dtVenc": { + "type": "string", + "format": "date", + "pattern": "^\\d{4}-\\d{2}-\\d{2}$", + "examples": [ + "2026-03-20" + ], + "description": "Data de vencimento da transação." + }, + "dtHrLimPgto": { + "type": "string", + "format": "date-time", + "pattern": "^\\d{4}-\\d{2}-\\d{2}T\\d{2}:\\d{2}:\\d{2}-03:00$", + "examples": [ + "2026-03-20T10:33:46-03:00" + ], + "description": "Data e hora limite para realização do pagamento da transação." + } + }, + "required": [ + "index", + "idDda", + "numCtrlOrig", + "vlInf", + "vlCbsInf", + "vlIbsInf", + "cnpjRaizPspRecDir", + "dtHrAtu", + "dtVenc", + "dtHrLimPgto" + ] + }, + "InformeDeTransacaoAtualizadaBoletoRequest": { + "allOf": [ + { + "$ref": "#/components/schemas/InfoRequestSemCnpj" + }, + { + "properties": { + "transacoes": { + "type": "array", + "minItems": 1, + "maxItems": 1000, + "items": { + "$ref": "#/components/schemas/InformeDeTransacaoAtualizadaBoletoTransacao" + } + } + } + } + ] + }, + "InformeDeTransacaoAtualizadaPixDinamicoTransacao": { + "type": "object", + "properties": { + "index": { + "type": "integer", + "examples": [ + 1 + ], + "minimum": 1, + "maximum": 1000, + "description": "Número sequencial do item na lista enviada, iniciando em 1." + }, + "txId": { + "type": "string", + "minLength": 1, + "maxLength": 35, + "examples": [ + "1234ABDOASD11231234ABDOASD112312345" + ], + "description": "Identificador único da transação Pix (TxID)." + }, + "vlInf": { + "type": "number", + "multipleOf": 0.01, + "minimum": 0, + "maximum": 999999999999999999.99, + "examples": [ + 10.02 + ], + "description": "Valor da transação informado pelo originador ao preencher (emitir) a transação." + }, + "vlCbsInf": { + "type": "number", + "multipleOf": 0.01, + "minimum": 0, + "maximum": 999999999999999999.99, + "examples": [ + 10.02 + ], + "description": "Valor de CBS informado pelo originador no preenchimento da transação." + }, + "vlIbsInf": { + "type": "number", + "multipleOf": 0.01, + "minimum": 0, + "maximum": 999999999999999999.99, + "examples": [ + 10.02 + ], + "description": "Valor de IBS informado pelo originador no preenchimento da transação." + }, + "docFiscal": { + "type": "string", + "minLength": 1, + "maxLength": 50, + "examples": [ + "1234567890123456789B123A5678901234567891123412345" + ], + "description": "Identificador do Documento Fiscal vinculado à transação." + }, + "cnpjRaizPspRecInd": { + "type": "string", + "minLength": 8, + "maxLength": 8, + "pattern": "^[A-Za-z0-9]{8}$", + "examples": [ + "87654321" + ], + "description": "Raiz do CNPJ do PSP Recebedor Indireto onde o Recebedor mantém a conta." + }, + "cnpjRaizPspRecDir": { + "type": "string", + "minLength": 8, + "maxLength": 8, + "pattern": "^[A-Za-z0-9]{8}$", + "examples": [ + "12345678" + ], + "description": "Raiz do CNPJ do PSP Recebedor Direto." + }, + "cnpjRec": { + "type": "string", + "minLength": 14, + "maxLength": 14, + "pattern": "^[A-Za-z0-9]{14}$", + "examples": [ + "11444777000142" + ], + "description": "Identificação do Recebedor (que recebe o valor líquido da transação). Em caso de cessão de recebíveis, preencher com o Recebedor original (e não com o novo detentor de direitos)." + }, + "cnpjPagOrig": { + "type": "string", + "minLength": 14, + "maxLength": 14, + "pattern": "^[A-Za-z0-9]{14}$", + "examples": [ + "11444777000142" + ], + "description": "Identificador do Pagador informado na emissão da transação. CNPJ: 14 caracteres alfanuméricos." + }, + "dtHrAtu": { + "type": "string", + "format": "date-time", + "pattern": "^\\d{4}-\\d{2}-\\d{2}T\\d{2}:\\d{2}:\\d{2}-03:00$", + "examples": [ + "2026-03-20T10:33:46-03:00" + ], + "description": "Data e hora da atualização da transação." + }, + "dtVenc": { + "type": "string", + "format": "date", + "pattern": "^\\d{4}-\\d{2}-\\d{2}$", + "examples": [ + "2026-03-20" + ], + "description": "Data de vencimento da transação." + }, + "dtHrLimPgto": { + "type": "string", + "format": "date-time", + "pattern": "^\\d{4}-\\d{2}-\\d{2}T\\d{2}:\\d{2}:\\d{2}-03:00$", + "examples": [ + "2026-03-20T10:33:46-03:00" + ], + "description": "Data e hora limite para realização do pagamento da transação." + } + }, + "required": [ + "index", + "txId", + "vlInf", + "vlCbsInf", + "vlIbsInf", + "cnpjRaizPspRecDir", + "cnpjRec", + "dtHrAtu", + "dtHrLimPgto" + ] + }, + "InformeDeTransacaoAtualizadaPixDinamicoRequest": { + "allOf": [ + { + "$ref": "#/components/schemas/InfoRequestSemCnpj" + }, + { + "properties": { + "transacoes": { + "type": "array", + "minItems": 1, + "maxItems": 1000, + "items": { + "$ref": "#/components/schemas/InformeDeTransacaoAtualizadaPixDinamicoTransacao" + } + } + } + } + ] + }, + "InformePreliminarDePagamentoBoletoTransacao": { + "type": "object", + "properties": { + "index": { + "type": "integer", + "examples": [ + 1 + ], + "minimum": 1, + "maximum": 1000, + "description": "Número sequencial do item na lista enviada, iniciando em 1." + }, + "idDda": { + "type": "string", + "minLength": 1, + "maxLength": 20, + "examples": [ + "123A512312312312FAS1" + ], + "description": "Identificador único do documento de cobrança no sistema DDA." + }, + "numCtrlOrig": { + "type": "string", + "minLength": 1, + "maxLength": 20, + "examples": [ + "123A512312312312FAS1" + ], + "description": "Identificador utilizado pela Núclea para controle interno da transação." + }, + "numPgto": { + "type": "integer", + "minimum": 1, + "examples": [ + 1 + ], + "maximum": 999999999, + "description": "Indica a sequência do pagamento no arranjo (ex.: quantidade de pagamentos do boleto)." + }, + "numIdentcBaixa": { + "type": "string", + "pattern": "^\\d{1,19}$", + "examples": [ + "1234567890123456789", + "9999999999999999999" + ], + "description": "Identificador específico do evento de baixa da transação." + }, + "vlPago": { + "type": "number", + "multipleOf": 0.01, + "minimum": 0, + "maximum": 999999999999999999.99, + "examples": [ + 10.02 + ], + "description": "Valor efetivamente pago na transação." + }, + "vlCbsSegr": { + "type": "number", + "multipleOf": 0.01, + "minimum": 0, + "maximum": 999999999999999999.99, + "examples": [ + 10.02 + ], + "description": "Valor de CBS efetivamente segregado pelo PSP Recebedor Direto na transação." + }, + "vlIbsSegr": { + "type": "number", + "multipleOf": 0.01, + "minimum": 0, + "maximum": 999999999999999999.99, + "examples": [ + 10.02 + ], + "description": "Valor de IBS efetivamente segregado pelo PSP Recebedor Direto na transação." + }, + "docFiscal": { + "type": "string", + "minLength": 1, + "maxLength": 50, + "examples": [ + "1234567890123456789B123A5678901234567891123412345" + ], + "description": "Identificador do Documento Fiscal vinculado à transação." + }, + "cnpjRaizPspRecInd": { + "type": "string", + "minLength": 8, + "maxLength": 8, + "pattern": "^[A-Za-z0-9]{8}$", + "examples": [ + "87654321" + ], + "description": "Raiz do CNPJ do PSP Recebedor Indireto onde o Recebedor mantém a conta." + }, + "cnpjRaizPspRecDir": { + "type": "string", + "minLength": 8, + "maxLength": 8, + "pattern": "^[A-Za-z0-9]{8}$", + "examples": [ + "12345678" + ], + "description": "Raiz do CNPJ do PSP Recebedor Direto." + }, + "indPgtoIntegral": { + "type": "string", + "enum": [ + "0", + "1" + ], + "examples": [ + "1" + ], + "description": "Indica se a transação foi integralmente paga, considerando todos os pagamentos até o momento. 1 = pagamento integral; 0 = não integral." + }, + "cnpjRaizPspPag": { + "type": "string", + "minLength": 8, + "maxLength": 8, + "pattern": "^[A-Za-z0-9]{8}$", + "examples": [ + "87654321" + ], + "description": "Raiz do CNPJ do PSP Pagador." + }, + "cnpjRec": { + "type": "string", + "minLength": 14, + "maxLength": 14, + "pattern": "^[A-Za-z0-9]{14}$", + "examples": [ + "11444777000142" + ], + "description": "Identificação do Recebedor (que recebe o valor líquido da transação). Em caso de cessão de recebíveis, preencher com o Recebedor original (e não com o novo detentor de direitos)." + }, + "cnpjCpfPagEfet": { + "type": "string", + "minLength": 11, + "maxLength": 14, + "pattern": "^(\\d{11}|[A-Za-z0-9]{14})$", + "examples": [ + "11444777000142" + ], + "description": "Identificador do Pagador que efetivamente realizou o pagamento. CPF: 11 dígitos. CNPJ: 14 caracteres alfanuméricos." + }, + "dtHrPgto": { + "type": "string", + "format": "date-time", + "pattern": "^\\d{4}-\\d{2}-\\d{2}T\\d{2}:\\d{2}:\\d{2}-03:00$", + "examples": [ + "2026-03-20T10:33:46-03:00" + ], + "description": "Data e hora em que o pagamento foi realizado pelo Pagador." + } + }, + "required": [ + "index", + "idDda", + "numCtrlOrig", + "numPgto", + "numIdentcBaixa", + "vlPago", + "vlCbsSegr", + "vlIbsSegr", + "cnpjRaizPspRecDir", + "indPgtoIntegral", + "cnpjRaizPspPag", + "cnpjRec", + "dtHrPgto" + ] + }, + "InformePreliminarDePagamentoBoletoRequest": { + "allOf": [ + { + "$ref": "#/components/schemas/InfoRequestSemCnpj" + }, + { + "properties": { + "transacoes": { + "type": "array", + "minItems": 1, + "maxItems": 1000, + "items": { + "$ref": "#/components/schemas/InformePreliminarDePagamentoBoletoTransacao" + } + } + } + } + ] + }, + "InformePreliminarDePagamentoPixAutomaticoTransacao": { + "type": "object", + "properties": { + "index": { + "type": "integer", + "examples": [ + 1 + ], + "minimum": 1, + "maximum": 1000, + "description": "Número sequencial do item na lista enviada, iniciando em 1." + }, + "txId": { + "type": "string", + "minLength": 1, + "maxLength": 35, + "examples": [ + "1234ABDOASD11231234ABDOASD112312345" + ], + "description": "Identificador único da transação Pix (TxID)." + }, + "e2eId": { + "type": "string", + "minLength": 1, + "maxLength": 35, + "examples": [ + "1234ABDOASD11231234ABDOASD112312345" + ], + "description": "Identificador único da transação no arranjo de pagamentos Pix (E2EID)." + }, + "vlPago": { + "type": "number", + "multipleOf": 0.01, + "minimum": 0, + "maximum": 999999999999999999.99, + "examples": [ + 10.02 + ], + "description": "Valor efetivamente pago na transação." + }, + "vlCbsSegr": { + "type": "number", + "multipleOf": 0.01, + "minimum": 0, + "maximum": 999999999999999999.99, + "examples": [ + 10.02 + ], + "description": "Valor de CBS efetivamente segregado pelo PSP Recebedor Direto na transação." + }, + "vlIbsSegr": { + "type": "number", + "multipleOf": 0.01, + "minimum": 0, + "maximum": 999999999999999999.99, + "examples": [ + 10.02 + ], + "description": "Valor de IBS efetivamente segregado pelo PSP Recebedor Direto na transação." + }, + "docFiscal": { + "type": "string", + "minLength": 1, + "maxLength": 50, + "examples": [ + "1234567890123456789B123A5678901234567891123412345" + ], + "description": "Identificador do Documento Fiscal vinculado à transação." + }, + "indPgtoIntegral": { + "type": "string", + "enum": [ + "0", + "1" + ], + "examples": [ + "1" + ], + "description": "Indica se a transação foi integralmente paga, considerando todos os pagamentos até o momento. 1 = pagamento integral; 0 = não integral." + }, + "cnpjRaizPspRecInd": { + "type": "string", + "minLength": 8, + "maxLength": 8, + "pattern": "^[A-Za-z0-9]{8}$", + "examples": [ + "87654321" + ], + "description": "Raiz do CNPJ do PSP Recebedor Indireto onde o Recebedor mantém a conta." + }, + "cnpjRaizPspRecDir": { + "type": "string", + "minLength": 8, + "maxLength": 8, + "pattern": "^[A-Za-z0-9]{8}$", + "examples": [ + "12345678" + ], + "description": "Raiz do CNPJ do PSP Recebedor Direto." + }, + "cnpjRaizPspPag": { + "type": "string", + "minLength": 8, + "maxLength": 8, + "pattern": "^[A-Za-z0-9]{8}$", + "examples": [ + "87654321" + ], + "description": "Raiz do CNPJ do PSP Pagador." + }, + "cnpjRec": { + "type": "string", + "minLength": 14, + "maxLength": 14, + "pattern": "^[A-Za-z0-9]{14}$", + "examples": [ + "11444777000142" + ], + "description": "Identificação do Recebedor (que recebe o valor líquido da transação). Em caso de cessão de recebíveis, preencher com o Recebedor original (e não com o novo detentor de direitos)." + }, + "cnpjCpfPagEfet": { + "type": "string", + "minLength": 11, + "maxLength": 14, + "pattern": "^(\\d{11}|[A-Za-z0-9]{14})$", + "examples": [ + "11444777000142" + ], + "description": "Identificador do Pagador que efetivamente realizou o pagamento. CPF: 11 dígitos. CNPJ: 14 caracteres alfanuméricos." + }, + "dtHrPgto": { + "type": "string", + "format": "date-time", + "pattern": "^\\d{4}-\\d{2}-\\d{2}T\\d{2}:\\d{2}:\\d{2}-03:00$", + "examples": [ + "2026-03-20T10:33:46-03:00" + ], + "description": "Data e hora em que o pagamento foi realizado pelo Pagador." + }, + "dtHrLiq": { + "type": "string", + "format": "date-time", + "pattern": "^\\d{4}-\\d{2}-\\d{2}T\\d{2}:\\d{2}:\\d{2}-03:00$", + "examples": [ + "2026-03-20T10:33:46-03:00" + ], + "description": "Data e hora em que ocorreu a efetiva Liquidação Interbancária ou Intrabancária no arranjo." + } + }, + "required": [ + "index", + "txId", + "e2eId", + "vlPago", + "vlCbsSegr", + "vlIbsSegr", + "indPgtoIntegral", + "cnpjRaizPspRecDir", + "cnpjRaizPspPag", + "cnpjRec", + "cnpjCpfPagEfet", + "dtHrPgto", + "dtHrLiq" + ] + }, + "InformePreliminarDePagamentoPixAutomaticoRequest": { + "allOf": [ + { + "$ref": "#/components/schemas/InfoRequestSemCnpj" + }, + { + "properties": { + "transacoes": { + "type": "array", + "minItems": 1, + "maxItems": 1000, + "items": { + "$ref": "#/components/schemas/InformePreliminarDePagamentoPixAutomaticoTransacao" + } + } + } + } + ] + }, + "InformePreliminarDePagamentoPixDinamicoTransacao": { + "type": "object", + "properties": { + "index": { + "type": "integer", + "examples": [ + 1 + ], + "minimum": 1, + "maximum": 1000, + "description": "Número sequencial do item na lista enviada, iniciando em 1." + }, + "txId": { + "type": "string", + "minLength": 1, + "maxLength": 35, + "examples": [ + "1234ABDOASD11231234ABDOASD112312345" + ], + "description": "Identificador único da transação Pix (TxID)." + }, + "e2eId": { + "type": "string", + "minLength": 1, + "maxLength": 35, + "examples": [ + "1234ABDOASD11231234ABDOASD112312345" + ], + "description": "Identificador único da transação no arranjo de pagamentos Pix (E2EID)." + }, + "vlPago": { + "type": "number", + "multipleOf": 0.01, + "minimum": 0, + "maximum": 999999999999999999.99, + "examples": [ + 10.02 + ], + "description": "Valor efetivamente pago na transação." + }, + "vlCbsSegr": { + "type": "number", + "multipleOf": 0.01, + "minimum": 0, + "maximum": 999999999999999999.99, + "examples": [ + 10.02 + ], + "description": "Valor de CBS efetivamente segregado pelo PSP Recebedor Direto na transação." + }, + "vlIbsSegr": { + "type": "number", + "multipleOf": 0.01, + "minimum": 0, + "maximum": 999999999999999999.99, + "examples": [ + 10.02 + ], + "description": "Valor de IBS efetivamente segregado pelo PSP Recebedor Direto na transação." + }, + "docFiscal": { + "type": "string", + "minLength": 1, + "maxLength": 50, + "examples": [ + "1234567890123456789B123A5678901234567891123412345" + ], + "description": "Identificador do Documento Fiscal vinculado à transação." + }, + "indPgtoIntegral": { + "type": "string", + "enum": [ + "0", + "1" + ], + "examples": [ + "1" + ], + "description": "Indica se a transação foi integralmente paga, considerando todos os pagamentos até o momento. 1 = pagamento integral; 0 = não integral." + }, + "cnpjRaizPspRecInd": { + "type": "string", + "minLength": 8, + "maxLength": 8, + "pattern": "^[A-Za-z0-9]{8}$", + "examples": [ + "87654321" + ], + "description": "Raiz do CNPJ do PSP Recebedor Indireto onde o Recebedor mantém a conta." + }, + "cnpjRaizPspRecDir": { + "type": "string", + "minLength": 8, + "maxLength": 8, + "pattern": "^[A-Za-z0-9]{8}$", + "examples": [ + "12345678" + ], + "description": "Raiz do CNPJ do PSP Recebedor Direto." + }, + "cnpjRaizPspPag": { + "type": "string", + "minLength": 8, + "maxLength": 8, + "pattern": "^[A-Za-z0-9]{8}$", + "examples": [ + "87654321" + ], + "description": "Raiz do CNPJ do PSP Pagador." + }, + "cnpjRec": { + "type": "string", + "minLength": 14, + "maxLength": 14, + "pattern": "^[A-Za-z0-9]{14}$", + "examples": [ + "11444777000142" + ], + "description": "Identificação do Recebedor (que recebe o valor líquido da transação). Em caso de cessão de recebíveis, preencher com o Recebedor original (e não com o novo detentor de direitos)." + }, + "cnpjCpfPagEfet": { + "type": "string", + "minLength": 11, + "maxLength": 14, + "pattern": "^(\\d{11}|[A-Za-z0-9]{14})$", + "examples": [ + "11444777000142" + ], + "description": "Identificador do Pagador que efetivamente realizou o pagamento. CPF: 11 dígitos. CNPJ: 14 caracteres alfanuméricos." + }, + "dtHrPgto": { + "type": "string", + "format": "date-time", + "pattern": "^\\d{4}-\\d{2}-\\d{2}T\\d{2}:\\d{2}:\\d{2}-03:00$", + "examples": [ + "2026-03-20T10:33:46-03:00" + ], + "description": "Data e hora em que o pagamento foi realizado pelo Pagador." + }, + "dtHrLiq": { + "type": "string", + "format": "date-time", + "pattern": "^\\d{4}-\\d{2}-\\d{2}T\\d{2}:\\d{2}:\\d{2}-03:00$", + "examples": [ + "2026-03-20T10:33:46-03:00" + ], + "description": "Data e hora em que ocorreu a efetiva Liquidação Interbancária ou Intrabancária no arranjo." + } + }, + "required": [ + "index", + "txId", + "e2eId", + "vlPago", + "vlCbsSegr", + "vlIbsSegr", + "indPgtoIntegral", + "cnpjRaizPspRecDir", + "cnpjRaizPspPag", + "cnpjRec", + "cnpjCpfPagEfet", + "dtHrPgto", + "dtHrLiq" + ] + }, + "InformePreliminarDePagamentoPixDinamicoRequest": { + "allOf": [ + { + "$ref": "#/components/schemas/InfoRequestSemCnpj" + }, + { + "properties": { + "transacoes": { + "type": "array", + "minItems": 1, + "maxItems": 1000, + "items": { + "$ref": "#/components/schemas/InformePreliminarDePagamentoPixDinamicoTransacao" + } + } + } + } + ] + }, + "InformePreliminarDePagamentoPixEstaticoTransacao": { + "type": "object", + "properties": { + "index": { + "type": "integer", + "examples": [ + 1 + ], + "minimum": 1, + "maximum": 1000, + "description": "Número sequencial do item na lista enviada, iniciando em 1." + }, + "e2eId": { + "type": "string", + "minLength": 1, + "maxLength": 35, + "examples": [ + "1234ABDOASD11231234ABDOASD112312345" + ], + "description": "Identificador único da transação no arranjo de pagamentos Pix (E2EID)." + }, + "vlPago": { + "type": "number", + "multipleOf": 0.01, + "minimum": 0, + "maximum": 999999999999999999.99, + "examples": [ + 10.02 + ], + "description": "Valor efetivamente pago na transação." + }, + "vlCbsSegr": { + "type": "number", + "multipleOf": 0.01, + "minimum": 0, + "maximum": 999999999999999999.99, + "examples": [ + 10.02 + ], + "description": "Valor de CBS efetivamente segregado pelo PSP Recebedor Direto na transação." + }, + "vlIbsSegr": { + "type": "number", + "multipleOf": 0.01, + "minimum": 0, + "maximum": 999999999999999999.99, + "examples": [ + 10.02 + ], + "description": "Valor de IBS efetivamente segregado pelo PSP Recebedor Direto na transação." + }, + "docFiscal": { + "type": "string", + "minLength": 1, + "maxLength": 50, + "examples": [ + "1234567890123456789B123A5678901234567891123412345" + ], + "description": "Identificador do Documento Fiscal vinculado à transação." + }, + "cnpjRaizPspRecInd": { + "type": "string", + "minLength": 8, + "maxLength": 8, + "pattern": "^[A-Za-z0-9]{8}$", + "examples": [ + "87654321" + ], + "description": "Raiz do CNPJ do PSP Recebedor Indireto onde o Recebedor mantém a conta." + }, + "cnpjRaizPspRecDir": { + "type": "string", + "minLength": 8, + "maxLength": 8, + "pattern": "^[A-Za-z0-9]{8}$", + "examples": [ + "12345678" + ], + "description": "Raiz do CNPJ do PSP Recebedor Direto." + }, + "cnpjRaizPspPag": { + "type": "string", + "minLength": 8, + "maxLength": 8, + "pattern": "^[A-Za-z0-9]{8}$", + "examples": [ + "87654321" + ], + "description": "Raiz do CNPJ do PSP Pagador." + }, + "cnpjRec": { + "type": "string", + "minLength": 14, + "maxLength": 14, + "pattern": "^[A-Za-z0-9]{14}$", + "examples": [ + "11444777000142" + ], + "description": "Identificação do Recebedor (que recebe o valor líquido da transação). Em caso de cessão de recebíveis, preencher com o Recebedor original (e não com o novo detentor de direitos)." + }, + "cnpjCpfPagEfet": { + "type": "string", + "minLength": 11, + "maxLength": 14, + "pattern": "^(\\d{11}|[A-Za-z0-9]{14})$", + "examples": [ + "11444777000142" + ], + "description": "Identificador do Pagador que efetivamente realizou o pagamento. CPF: 11 dígitos. CNPJ: 14 caracteres alfanuméricos." + }, + "dtHrPgto": { + "type": "string", + "format": "date-time", + "pattern": "^\\d{4}-\\d{2}-\\d{2}T\\d{2}:\\d{2}:\\d{2}-03:00$", + "examples": [ + "2026-03-20T10:33:46-03:00" + ], + "description": "Data e hora em que o pagamento foi realizado pelo Pagador." + }, + "dtHrLiq": { + "type": "string", + "format": "date-time", + "pattern": "^\\d{4}-\\d{2}-\\d{2}T\\d{2}:\\d{2}:\\d{2}-03:00$", + "examples": [ + "2026-03-20T10:33:46-03:00" + ], + "description": "Data e hora em que ocorreu a efetiva Liquidação Interbancária ou Intrabancária no arranjo." + } + }, + "required": [ + "index", + "e2eId", + "vlPago", + "vlCbsSegr", + "vlIbsSegr", + "docFiscal", + "cnpjRaizPspRecDir", + "cnpjRaizPspPag", + "cnpjRec", + "cnpjCpfPagEfet", + "dtHrPgto", + "dtHrLiq" + ] + }, + "InformePreliminarDePagamentoPixEstaticoRequest": { + "allOf": [ + { + "$ref": "#/components/schemas/InfoRequestSemCnpj" + }, + { + "properties": { + "transacoes": { + "type": "array", + "minItems": 1, + "maxItems": 1000, + "items": { + "$ref": "#/components/schemas/InformePreliminarDePagamentoPixEstaticoTransacao" + } + } + } + } + ] + }, + "InformePreliminarDePagamentoTedTransacao": { + "type": "object", + "properties": { + "index": { + "type": "integer", + "examples": [ + 1 + ], + "minimum": 1, + "maximum": 1000, + "description": "Número sequencial do item na lista enviada, iniciando em 1." + }, + "numCtrlTED": { + "type": "string", + "minLength": 1, + "maxLength": 35, + "examples": [ + "1234ABDOASD11231234ABDOASD112312345" + ], + "description": "Identificador único da transação TED gerado na liquidação (NumCtrlSTR ou NumCtrlPAG)." + }, + "vlPago": { + "type": "number", + "multipleOf": 0.01, + "minimum": 0, + "maximum": 999999999999999999.99, + "examples": [ + 10.02 + ], + "description": "Valor efetivamente pago na transação." + }, + "vlCbsSegr": { + "type": "number", + "multipleOf": 0.01, + "minimum": 0, + "maximum": 999999999999999999.99, + "examples": [ + 10.02 + ], + "description": "Valor de CBS efetivamente segregado pelo PSP Recebedor Direto na transação." + }, + "vlIbsSegr": { + "type": "number", + "multipleOf": 0.01, + "minimum": 0, + "maximum": 999999999999999999.99, + "examples": [ + 10.02 + ], + "description": "Valor de IBS efetivamente segregado pelo PSP Recebedor Direto na transação." + }, + "docFiscal": { + "type": "string", + "minLength": 1, + "maxLength": 50, + "examples": [ + "1234567890123456789B123A5678901234567891123412345" + ], + "description": "Identificador do Documento Fiscal vinculado à transação." + }, + "cnpjRaizPspRecDir": { + "type": "string", + "minLength": 8, + "maxLength": 8, + "pattern": "^[A-Za-z0-9]{8}$", + "examples": [ + "12345678" + ], + "description": "Raiz do CNPJ do PSP Recebedor Direto." + }, + "cnpjRaizPspPag": { + "type": "string", + "minLength": 8, + "maxLength": 8, + "pattern": "^[A-Za-z0-9]{8}$", + "examples": [ + "87654321" + ], + "description": "Raiz do CNPJ do PSP Pagador." + }, + "cnpjRec": { + "type": "string", + "minLength": 14, + "maxLength": 14, + "pattern": "^[A-Za-z0-9]{14}$", + "examples": [ + "11444777000142" + ], + "description": "Identificação do Recebedor (que recebe o valor líquido da transação). Em caso de cessão de recebíveis, preencher com o Recebedor original (e não com o novo detentor de direitos)." + }, + "cnpjCpfPagEfet": { + "type": "string", + "minLength": 11, + "maxLength": 14, + "pattern": "^(\\d{11}|[A-Za-z0-9]{14})$", + "examples": [ + "11444777000142" + ], + "description": "Identificador do Pagador que efetivamente realizou o pagamento. CPF: 11 dígitos. CNPJ: 14 caracteres alfanuméricos." + }, + "dtHrLiq": { + "type": "string", + "format": "date-time", + "pattern": "^\\d{4}-\\d{2}-\\d{2}T\\d{2}:\\d{2}:\\d{2}-03:00$", + "examples": [ + "2026-03-20T10:33:46-03:00" + ], + "description": "Data e hora em que ocorreu a efetiva Liquidação Interbancária ou Intrabancária no arranjo." + } + }, + "required": [ + "index", + "numCtrlTED", + "vlPago", + "vlCbsSegr", + "vlIbsSegr", + "docFiscal", + "cnpjRaizPspRecDir", + "cnpjRaizPspPag", + "cnpjRec", + "cnpjCpfPagEfet", + "dtHrLiq" + ] + }, + "InformePreliminarDePagamentoTedRequest": { + "allOf": [ + { + "$ref": "#/components/schemas/InfoRequestSemCnpj" + }, + { + "properties": { + "transacoes": { + "type": "array", + "minItems": 1, + "maxItems": 1000, + "items": { + "$ref": "#/components/schemas/InformePreliminarDePagamentoTedTransacao" + } + } + } + } + ] + }, + "InformePreliminarDePagamentoTefTransacao": { + "type": "object", + "properties": { + "index": { + "type": "integer", + "examples": [ + 1 + ], + "minimum": 1, + "maximum": 1000, + "description": "Número sequencial do item na lista enviada, iniciando em 1." + }, + "numCtrlTEF": { + "type": "string", + "minLength": 1, + "maxLength": 35, + "examples": [ + "1234ABDOASD11231234ABDOASD112312345" + ], + "description": "Identificador da transação TEF gerado pelo PSP." + }, + "vlPago": { + "type": "number", + "multipleOf": 0.01, + "minimum": 0, + "maximum": 999999999999999999.99, + "examples": [ + 10.02 + ], + "description": "Valor efetivamente pago na transação." + }, + "vlCbsSegr": { + "type": "number", + "multipleOf": 0.01, + "minimum": 0, + "maximum": 999999999999999999.99, + "examples": [ + 10.02 + ], + "description": "Valor de CBS efetivamente segregado pelo PSP Recebedor Direto na transação." + }, + "vlIbsSegr": { + "type": "number", + "multipleOf": 0.01, + "minimum": 0, + "maximum": 999999999999999999.99, + "examples": [ + 10.02 + ], + "description": "Valor de IBS efetivamente segregado pelo PSP Recebedor Direto na transação." + }, + "docFiscal": { + "type": "string", + "minLength": 1, + "maxLength": 50, + "examples": [ + "1234567890123456789B123A5678901234567891123412345" + ], + "description": "Identificador do Documento Fiscal vinculado à transação." + }, + "cnpjRaizPspRecDir": { + "type": "string", + "minLength": 8, + "maxLength": 8, + "pattern": "^[A-Za-z0-9]{8}$", + "examples": [ + "12345678" + ], + "description": "Raiz do CNPJ do PSP Recebedor Direto." + }, + "cnpjRec": { + "type": "string", + "minLength": 14, + "maxLength": 14, + "pattern": "^[A-Za-z0-9]{14}$", + "examples": [ + "11444777000142" + ], + "description": "Identificação do Recebedor (que recebe o valor líquido da transação). Em caso de cessão de recebíveis, preencher com o Recebedor original (e não com o novo detentor de direitos)." + }, + "cnpjCpfPagEfet": { + "type": "string", + "minLength": 11, + "maxLength": 14, + "pattern": "^(\\d{11}|[A-Za-z0-9]{14})$", + "examples": [ + "11444777000142" + ], + "description": "Identificador do Pagador que efetivamente realizou o pagamento. CPF: 11 dígitos. CNPJ: 14 caracteres alfanuméricos." + }, + "dtHrPgto": { + "type": "string", + "format": "date-time", + "pattern": "^\\d{4}-\\d{2}-\\d{2}T\\d{2}:\\d{2}:\\d{2}-03:00$", + "examples": [ + "2026-03-20T10:33:46-03:00" + ], + "description": "Data e hora em que o pagamento foi realizado pelo Pagador." + }, + "dtHrLiq": { + "type": "string", + "format": "date-time", + "pattern": "^\\d{4}-\\d{2}-\\d{2}T\\d{2}:\\d{2}:\\d{2}-03:00$", + "examples": [ + "2026-03-20T10:33:46-03:00" + ], + "description": "Data e hora em que ocorreu a efetiva Liquidação Interbancária ou Intrabancária no arranjo." + } + }, + "required": [ + "index", + "numCtrlTEF", + "vlPago", + "vlCbsSegr", + "vlIbsSegr", + "docFiscal", + "cnpjRaizPspRecDir", + "cnpjRec", + "cnpjCpfPagEfet", + "dtHrPgto", + "dtHrLiq" + ] + }, + "InformePreliminarDePagamentoTefRequest": { + "allOf": [ + { + "$ref": "#/components/schemas/InfoRequestSemCnpj" + }, + { + "properties": { + "transacoes": { + "type": "array", + "minItems": 1, + "maxItems": 1000, + "items": { + "$ref": "#/components/schemas/InformePreliminarDePagamentoTefTransacao" + } + } + } + } + ] + }, + "InformeDeBaixaExcetoPorPagamentoBoletoTransacao": { + "type": "object", + "properties": { + "index": { + "type": "integer", + "examples": [ + 1 + ], + "minimum": 1, + "maximum": 1000, + "description": "Número sequencial do item na lista enviada, iniciando em 1." + }, + "idDda": { + "type": "string", + "minLength": 1, + "maxLength": 20, + "examples": [ + "123A512312312312FAS1" + ], + "description": "Identificador único do documento de cobrança no sistema DDA." + }, + "numCtrlOrig": { + "type": "string", + "minLength": 1, + "maxLength": 20, + "examples": [ + "123A512312312312FAS1" + ], + "description": "Identificador utilizado pela Núclea para controle interno da transação." + }, + "cnpjRaizPspRecInd": { + "type": "string", + "minLength": 8, + "maxLength": 8, + "pattern": "^[A-Za-z0-9]{8}$", + "examples": [ + "87654321" + ], + "description": "Raiz do CNPJ do PSP Recebedor Indireto onde o Recebedor mantém a conta." + }, + "cnpjRaizPspRecDir": { + "type": "string", + "minLength": 8, + "maxLength": 8, + "pattern": "^[A-Za-z0-9]{8}$", + "examples": [ + "12345678" + ], + "description": "Raiz do CNPJ do PSP Recebedor Direto." + }, + "dtHrBaixa": { + "type": "string", + "format": "date-time", + "pattern": "^\\d{4}-\\d{2}-\\d{2}T\\d{2}:\\d{2}:\\d{2}-03:00$", + "examples": [ + "2026-03-20T10:33:46-03:00" + ], + "description": "Data e hora da baixa da transação sem ocorrência de pagamento." + } + }, + "required": [ + "index", + "idDda", + "numCtrlOrig", + "cnpjRaizPspRecDir", + "dtHrBaixa" + ] + }, + "InformeDeBaixaExcetoPorPagamentoBoletoRequest": { + "allOf": [ + { + "$ref": "#/components/schemas/InfoRequestSemCnpj" + }, + { + "properties": { + "transacoes": { + "type": "array", + "minItems": 1, + "maxItems": 1000, + "items": { + "$ref": "#/components/schemas/InformeDeBaixaExcetoPorPagamentoBoletoTransacao" + } + } + } + } + ] + }, + "InformeDeBaixaExcetoPorPagamentoPixAutomaticoTransacao": { + "type": "object", + "properties": { + "index": { + "type": "integer", + "examples": [ + 1 + ], + "minimum": 1, + "maximum": 1000, + "description": "Número sequencial do item na lista enviada, iniciando em 1." + }, + "txId": { + "type": "string", + "minLength": 1, + "maxLength": 35, + "examples": [ + "1234ABDOASD11231234ABDOASD112312345" + ], + "description": "Identificador único da transação Pix (TxID)." + }, + "cnpjRaizPspRecInd": { + "type": "string", + "minLength": 8, + "maxLength": 8, + "pattern": "^[A-Za-z0-9]{8}$", + "examples": [ + "87654321" + ], + "description": "Raiz do CNPJ do PSP Recebedor Indireto onde o Recebedor mantém a conta." + }, + "cnpjRaizPspRecDir": { + "type": "string", + "minLength": 8, + "maxLength": 8, + "pattern": "^[A-Za-z0-9]{8}$", + "examples": [ + "12345678" + ], + "description": "Raiz do CNPJ do PSP Recebedor Direto." + }, + "dtHrBaixa": { + "type": "string", + "format": "date-time", + "pattern": "^\\d{4}-\\d{2}-\\d{2}T\\d{2}:\\d{2}:\\d{2}-03:00$", + "examples": [ + "2026-03-20T10:33:46-03:00" + ], + "description": "Data e hora da baixa da transação sem ocorrência de pagamento." + } + }, + "required": [ + "index", + "txId", + "cnpjRaizPspRecDir", + "dtHrBaixa" + ] + }, + "InformeDeBaixaExcetoPorPagamentoPixAutomaticoRequest": { + "allOf": [ + { + "$ref": "#/components/schemas/InfoRequestSemCnpj" + }, + { + "properties": { + "transacoes": { + "type": "array", + "minItems": 1, + "maxItems": 1000, + "items": { + "$ref": "#/components/schemas/InformeDeBaixaExcetoPorPagamentoPixAutomaticoTransacao" + } + } + } + } + ] + }, + "InformeDeBaixaExcetoPorPagamentoPixDinamicoTransacao": { + "type": "object", + "properties": { + "index": { + "type": "integer", + "examples": [ + 1 + ], + "minimum": 1, + "maximum": 1000, + "description": "Número sequencial do item na lista enviada, iniciando em 1." + }, + "txId": { + "type": "string", + "minLength": 1, + "maxLength": 35, + "examples": [ + "1234ABDOASD11231234ABDOASD112312345" + ], + "description": "Identificador único da transação Pix (TxID)." + }, + "cnpjRaizPspRecInd": { + "type": "string", + "minLength": 8, + "maxLength": 8, + "pattern": "^[A-Za-z0-9]{8}$", + "examples": [ + "87654321" + ], + "description": "Raiz do CNPJ do PSP Recebedor Indireto onde o Recebedor mantém a conta." + }, + "cnpjRaizPspRecDir": { + "type": "string", + "minLength": 8, + "maxLength": 8, + "pattern": "^[A-Za-z0-9]{8}$", + "examples": [ + "12345678" + ], + "description": "Raiz do CNPJ do PSP Recebedor Direto." + }, + "dtHrBaixa": { + "type": "string", + "format": "date-time", + "pattern": "^\\d{4}-\\d{2}-\\d{2}T\\d{2}:\\d{2}:\\d{2}-03:00$", + "examples": [ + "2026-03-20T10:33:46-03:00" + ], + "description": "Data e hora da baixa da transação sem ocorrência de pagamento." + } + }, + "required": [ + "index", + "txId", + "cnpjRaizPspRecDir", + "dtHrBaixa" + ] + }, + "InformeDeBaixaExcetoPorPagamentoPixDinamicoRequest": { + "allOf": [ + { + "$ref": "#/components/schemas/InfoRequestSemCnpj" + }, + { + "properties": { + "transacoes": { + "type": "array", + "minItems": 1, + "maxItems": 1000, + "items": { + "$ref": "#/components/schemas/InformeDeBaixaExcetoPorPagamentoPixDinamicoTransacao" + } + } + } + } + ] + }, + "CodMsgEnum": { + "type": "string", + "enum": [ + "RSUP101", + "RSUP102", + "RSUP103", + "RSUP104", + "RSUP201", + "RSUP202", + "RSUP203", + "RSUP204", + "RSUP601", + "RSUP602", + "RSUP603", + "RSUP604" + ], + "examples": [ + "RSUP101", + "RSUP203" + ], + "description": "Código identificador da mensagem, conforme o arranjo aplicável (ex.: RSUP101, RSUP102)." + }, + "RetornoSuperInteligenteBoletoTransacao": { + "type": "object", + "properties": { + "codMsg": { + "$ref": "#/components/schemas/CodMsgEnum" + }, + "nsuId": { + "type": "string", + "pattern": "^\\d{1,19}$", + "description": "Número Sequencial Único da mensagem (Super Inteligente)", + "examples": [ + "1234567890123456789" + ] + }, + "dtHrDisp": { + "type": "string", + "format": "date-time", + "pattern": "^\\d{4}-\\d{2}-\\d{2}T\\d{2}:\\d{2}:\\d{2}-03:00$", + "examples": [ + "2026-03-20T10:33:46-03:00" + ], + "description": "Data e hora em que a Plataforma Pública disponibilizou a mensagem do Retorno Super Inteligente para consumo." + }, + "idDda": { + "type": "string", + "minLength": 1, + "maxLength": 20, + "examples": [ + "123A512312312312FAS1" + ], + "description": "Identificador único do documento de cobrança no sistema DDA." + }, + "numCtrlOrig": { + "type": "string", + "minLength": 1, + "maxLength": 20, + "examples": [ + "123A512312312312FAS1" + ], + "description": "Identificador utilizado pela Núclea para controle interno da transação." + }, + "vlInf": { + "type": "number", + "multipleOf": 0.01, + "minimum": 0, + "maximum": 999999999999999999.99, + "examples": [ + 10.02 + ], + "description": "Valor da transação informado pelo originador ao preencher (emitir) a transação." + }, + "vlCbsCorr": { + "type": "number", + "multipleOf": 0.01, + "minimum": 0, + "maximum": 999999999999999999.99, + "examples": [ + 10.02 + ], + "description": "Valor de CBS corrigido pela RFB, quando divergente do Documento Fiscal vinculado." + }, + "vlIbsCorr": { + "type": "number", + "multipleOf": 0.01, + "minimum": 0, + "maximum": 999999999999999999.99, + "examples": [ + 10.02 + ], + "description": "Valor de IBS corrigido pelo Comitê Gestor do IBS, quando divergente do Documento Fiscal vinculado." + }, + "vlCbsAberto": { + "type": "number", + "multipleOf": 0.01, + "minimum": 0, + "maximum": 999999999999999999.99, + "examples": [ + 10.02 + ], + "description": "Valor de CBS não extinto do Documento Fiscal vinculado à transação, conforme retorno da RFB." + }, + "vlIbsAberto": { + "type": "number", + "multipleOf": 0.01, + "minimum": 0, + "maximum": 999999999999999999.99, + "examples": [ + 10.02 + ], + "description": "Valor de IBS não extinto do Documento Fiscal vinculado à transação, conforme retorno do Comitê Gestor do IBS." + }, + "docFiscal": { + "type": "string", + "minLength": 1, + "maxLength": 50, + "examples": [ + "1234567890123456789B123A5678901234567891123412345" + ], + "description": "Identificador do Documento Fiscal vinculado à transação." + }, + "cnpjRaizPspRecInd": { + "type": "string", + "minLength": 8, + "maxLength": 8, + "pattern": "^[A-Za-z0-9]{8}$", + "examples": [ + "87654321" + ], + "description": "Raiz do CNPJ do PSP Recebedor Indireto onde o Recebedor mantém a conta." + }, + "cnpjRaizPspRecDir": { + "type": "string", + "minLength": 8, + "maxLength": 8, + "pattern": "^[A-Za-z0-9]{8}$", + "examples": [ + "12345678" + ], + "description": "Raiz do CNPJ do PSP Recebedor Direto." + } + }, + "required": [ + "codMsg", + "nsuId", + "idDda", + "numCtrlOrig", + "vlInf", + "cnpjRaizPspRecDir", + "dtHrDisp" + ] + }, + "RetornoSuperInteligenteBoletoRequest": { + "type": "object", + "properties": { + "transacoes": { + "type": "array", + "minItems": 1, + "maxItems": 1000, + "items": { + "$ref": "#/components/schemas/RetornoSuperInteligenteBoletoTransacao" + } + } + }, + "required": [ + "transacoes" + ] + }, + "RetornoSuperInteligentePixAutomaticoTransacao": { + "type": "object", + "properties": { + "codMsg": { + "$ref": "#/components/schemas/CodMsgEnum" + }, + "nsuId": { + "type": "string", + "pattern": "^\\d{1,19}$", + "description": "Número Sequencial Único da mensagem (Super Inteligente)", + "examples": [ + "1234567890123456789" + ] + }, + "dtHrDisp": { + "type": "string", + "format": "date-time", + "pattern": "^\\d{4}-\\d{2}-\\d{2}T\\d{2}:\\d{2}:\\d{2}-03:00$", + "examples": [ + "2026-03-20T10:33:46-03:00" + ], + "description": "Data e hora em que a Plataforma Pública disponibilizou a mensagem do Retorno Super Inteligente para consumo." + }, + "txId": { + "type": "string", + "minLength": 1, + "maxLength": 35, + "examples": [ + "1234ABDOASD11231234ABDOASD112312345" + ], + "description": "Identificador único da transação Pix (TxID)." + }, + "vlInf": { + "type": "number", + "multipleOf": 0.01, + "minimum": 0, + "maximum": 999999999999999999.99, + "examples": [ + 10.02 + ], + "description": "Valor da transação informado pelo originador ao preencher (emitir) a transação." + }, + "vlCbsCorr": { + "type": "number", + "multipleOf": 0.01, + "minimum": 0, + "maximum": 999999999999999999.99, + "examples": [ + 10.02 + ], + "description": "Valor de CBS corrigido pela RFB, quando divergente do Documento Fiscal vinculado." + }, + "vlIbsCorr": { + "type": "number", + "multipleOf": 0.01, + "minimum": 0, + "maximum": 999999999999999999.99, + "examples": [ + 10.02 + ], + "description": "Valor de IBS corrigido pelo Comitê Gestor do IBS, quando divergente do Documento Fiscal vinculado." + }, + "vlCbsAberto": { + "type": "number", + "multipleOf": 0.01, + "minimum": 0, + "maximum": 999999999999999999.99, + "examples": [ + 10.02 + ], + "description": "Valor de CBS não extinto do Documento Fiscal vinculado à transação, conforme retorno da RFB." + }, + "vlIbsAberto": { + "type": "number", + "multipleOf": 0.01, + "minimum": 0, + "maximum": 999999999999999999.99, + "examples": [ + 10.02 + ], + "description": "Valor de IBS não extinto do Documento Fiscal vinculado à transação, conforme retorno do Comitê Gestor do IBS." + }, + "docFiscal": { + "type": "string", + "minLength": 1, + "maxLength": 50, + "examples": [ + "1234567890123456789B123A5678901234567891123412345" + ], + "description": "Identificador do Documento Fiscal vinculado à transação." + }, + "cnpjRaizPspRecInd": { + "type": "string", + "minLength": 8, + "maxLength": 8, + "pattern": "^[A-Za-z0-9]{8}$", + "examples": [ + "87654321" + ], + "description": "Raiz do CNPJ do PSP Recebedor Indireto onde o Recebedor mantém a conta." + }, + "cnpjRaizPspRecDir": { + "type": "string", + "minLength": 8, + "maxLength": 8, + "pattern": "^[A-Za-z0-9]{8}$", + "examples": [ + "12345678" + ], + "description": "Raiz do CNPJ do PSP Recebedor Direto." + }, + "cnpjRec": { + "type": "string", + "minLength": 14, + "maxLength": 14, + "pattern": "^[A-Za-z0-9]{14}$", + "examples": [ + "11444777000142" + ], + "description": "Identificação do Recebedor (que recebe o valor líquido da transação). Em caso de cessão de recebíveis, preencher com o Recebedor original (e não com o novo detentor de direitos)." + } + }, + "required": [ + "codMsg", + "nsuId", + "txId", + "vlInf", + "cnpjRaizPspRecDir", + "cnpjRec", + "dtHrDisp" + ] + }, + "RetornoSuperInteligentePixAutomaticoRequest": { + "type": "object", + "properties": { + "transacoes": { + "type": "array", + "minItems": 1, + "maxItems": 1000, + "items": { + "$ref": "#/components/schemas/RetornoSuperInteligentePixAutomaticoTransacao" + } + } + }, + "required": [ + "transacoes" + ] + }, + "RetornoSuperInteligentePixDinamicoTransacao": { + "type": "object", + "properties": { + "codMsg": { + "$ref": "#/components/schemas/CodMsgEnum" + }, + "nsuId": { + "type": "string", + "pattern": "^\\d{1,19}$", + "description": "Número Sequencial Único da mensagem (Super Inteligente)", + "examples": [ + "1234567890123456789" + ] + }, + "dtHrDisp": { + "type": "string", + "format": "date-time", + "pattern": "^\\d{4}-\\d{2}-\\d{2}T\\d{2}:\\d{2}:\\d{2}-03:00$", + "examples": [ + "2026-03-20T10:33:46-03:00" + ], + "description": "Data e hora em que a Plataforma Pública disponibilizou a mensagem do Retorno Super Inteligente para consumo." + }, + "txId": { + "type": "string", + "minLength": 1, + "maxLength": 35, + "examples": [ + "1234ABDOASD11231234ABDOASD112312345" + ], + "description": "Identificador único da transação Pix (TxID)." + }, + "vlInf": { + "type": "number", + "multipleOf": 0.01, + "minimum": 0, + "maximum": 999999999999999999.99, + "examples": [ + 10.02 + ], + "description": "Valor da transação informado pelo originador ao preencher (emitir) a transação." + }, + "vlCbsCorr": { + "type": "number", + "multipleOf": 0.01, + "minimum": 0, + "maximum": 999999999999999999.99, + "examples": [ + 10.02 + ], + "description": "Valor de CBS corrigido pela RFB, quando divergente do Documento Fiscal vinculado." + }, + "vlIbsCorr": { + "type": "number", + "multipleOf": 0.01, + "minimum": 0, + "maximum": 999999999999999999.99, + "examples": [ + 10.02 + ], + "description": "Valor de IBS corrigido pelo Comitê Gestor do IBS, quando divergente do Documento Fiscal vinculado." + }, + "vlCbsAberto": { + "type": "number", + "multipleOf": 0.01, + "minimum": 0, + "maximum": 999999999999999999.99, + "examples": [ + 10.02 + ], + "description": "Valor de CBS não extinto do Documento Fiscal vinculado à transação, conforme retorno da RFB." + }, + "vlIbsAberto": { + "type": "number", + "multipleOf": 0.01, + "minimum": 0, + "maximum": 999999999999999999.99, + "examples": [ + 10.02 + ], + "description": "Valor de IBS não extinto do Documento Fiscal vinculado à transação, conforme retorno do Comitê Gestor do IBS." + }, + "docFiscal": { + "type": "string", + "minLength": 1, + "maxLength": 50, + "examples": [ + "1234567890123456789B123A5678901234567891123412345" + ], + "description": "Identificador do Documento Fiscal vinculado à transação." + }, + "cnpjRaizPspRecInd": { + "type": "string", + "minLength": 8, + "maxLength": 8, + "pattern": "^[A-Za-z0-9]{8}$", + "examples": [ + "87654321" + ], + "description": "Raiz do CNPJ do PSP Recebedor Indireto onde o Recebedor mantém a conta." + }, + "cnpjRaizPspRecDir": { + "type": "string", + "minLength": 8, + "maxLength": 8, + "pattern": "^[A-Za-z0-9]{8}$", + "examples": [ + "12345678" + ], + "description": "Raiz do CNPJ do PSP Recebedor Direto." + }, + "cnpjRec": { + "type": "string", + "minLength": 14, + "maxLength": 14, + "pattern": "^[A-Za-z0-9]{14}$", + "examples": [ + "11444777000142" + ], + "description": "Identificação do Recebedor (que recebe o valor líquido da transação). Em caso de cessão de recebíveis, preencher com o Recebedor original (e não com o novo detentor de direitos)." + } + }, + "required": [ + "codMsg", + "nsuId", + "txId", + "vlInf", + "cnpjRaizPspRecDir", + "cnpjRec", + "dtHrDisp" + ] + }, + "RetornoSuperInteligentePixDinamicoRequest": { + "type": "object", + "properties": { + "transacoes": { + "type": "array", + "minItems": 1, + "maxItems": 1000, + "items": { + "$ref": "#/components/schemas/RetornoSuperInteligentePixDinamicoTransacao" + } + } + }, + "required": [ + "transacoes" + ] + }, + "InfoSegregacaoRequest": { + "allOf": [ + { + "$ref": "#/components/schemas/InfoSegRequest" + }, + { + "properties": { + "dadosInfoSeg": { + "$ref": "#/components/schemas/DadosInfoSegRequest" + } + }, + "required": [ + "dadosInfoSeg" + ] + } + ] + }, + "InformeDeSegregacaoBoletoTransacao": { + "type": "object", + "properties": { + "index": { + "type": "integer", + "examples": [ + 1 + ], + "minimum": 1, + "maximum": 1000, + "description": "Número sequencial do item na lista enviada, iniciando em 1." + }, + "idDda": { + "type": "string", + "minLength": 1, + "maxLength": 20, + "examples": [ + "123A512312312312FAS1" + ], + "description": "Identificador único do documento de cobrança no sistema DDA." + }, + "numCtrlOrig": { + "type": "string", + "minLength": 1, + "maxLength": 20, + "examples": [ + "123A512312312312FAS1" + ], + "description": "Identificador utilizado pela Núclea para controle interno da transação." + }, + "numPgto": { + "type": "integer", + "minimum": 1, + "examples": [ + 1 + ], + "maximum": 999999999, + "description": "Indica a sequência do pagamento no arranjo (ex.: quantidade de pagamentos do boleto)." + }, + "numIdentcBaixa": { + "type": "string", + "pattern": "^\\d{1,19}$", + "examples": [ + "1234567890123456789", + "9999999999999999999" + ], + "description": "Identificador específico do evento de baixa da transação." + }, + "vlPago": { + "type": "number", + "multipleOf": 0.01, + "minimum": 0, + "maximum": 999999999999999999.99, + "examples": [ + 10.02 + ], + "description": "Valor efetivamente pago na transação." + }, + "vlCbsSegr": { + "type": "number", + "multipleOf": 0.01, + "minimum": 0, + "maximum": 999999999999999999.99, + "examples": [ + 10.02 + ], + "description": "Valor de CBS efetivamente segregado pelo PSP Recebedor Direto na transação." + }, + "vlIbsSegr": { + "type": "number", + "multipleOf": 0.01, + "minimum": 0, + "maximum": 999999999999999999.99, + "examples": [ + 10.02 + ], + "description": "Valor de IBS efetivamente segregado pelo PSP Recebedor Direto na transação." + }, + "docFiscal": { + "type": "string", + "minLength": 1, + "maxLength": 50, + "examples": [ + "1234567890123456789B123A5678901234567891123412345" + ], + "description": "Identificador do Documento Fiscal vinculado à transação." + }, + "indPgtoIntegral": { + "type": "string", + "enum": [ + "0", + "1" + ], + "examples": [ + "1" + ], + "description": "Indica se a transação foi integralmente paga, considerando todos os pagamentos até o momento. 1 = pagamento integral; 0 = não integral." + }, + "cnpjRaizPspRecInd": { + "type": "string", + "minLength": 8, + "maxLength": 8, + "pattern": "^[A-Za-z0-9]{8}$", + "examples": [ + "87654321" + ], + "description": "Raiz do CNPJ do PSP Recebedor Indireto onde o Recebedor mantém a conta." + }, + "cnpjRaizPspPag": { + "type": "string", + "minLength": 8, + "maxLength": 8, + "pattern": "^[A-Za-z0-9]{8}$", + "examples": [ + "87654321" + ], + "description": "Raiz do CNPJ do PSP Pagador." + }, + "cnpjRec": { + "type": "string", + "minLength": 14, + "maxLength": 14, + "pattern": "^[A-Za-z0-9]{14}$", + "examples": [ + "11444777000142" + ], + "description": "Identificação do Recebedor (que recebe o valor líquido da transação). Em caso de cessão de recebíveis, preencher com o Recebedor original (e não com o novo detentor de direitos)." + }, + "cnpjCpfPagEfet": { + "type": "string", + "minLength": 11, + "maxLength": 14, + "pattern": "^(\\d{11}|[A-Za-z0-9]{14})$", + "examples": [ + "11444777000142" + ], + "description": "Identificador do Pagador que efetivamente realizou o pagamento. CPF: 11 dígitos. CNPJ: 14 caracteres alfanuméricos." + }, + "dtHrPgto": { + "type": "string", + "format": "date-time", + "pattern": "^\\d{4}-\\d{2}-\\d{2}T\\d{2}:\\d{2}:\\d{2}-03:00$", + "examples": [ + "2026-03-20T10:33:46-03:00" + ], + "description": "Data e hora em que o pagamento foi realizado pelo Pagador." + }, + "dtHrLiq": { + "type": "string", + "format": "date-time", + "pattern": "^\\d{4}-\\d{2}-\\d{2}T\\d{2}:\\d{2}:\\d{2}-03:00$", + "examples": [ + "2026-03-20T10:33:46-03:00" + ], + "description": "Data e hora em que ocorreu a efetiva Liquidação Interbancária ou Intrabancária no arranjo." + }, + "dtHrRepasse": { + "type": "string", + "format": "date-time", + "pattern": "^\\d{4}-\\d{2}-\\d{2}T\\d{2}:\\d{2}:\\d{2}-03:00$", + "examples": [ + "2026-03-20T10:33:46-03:00" + ], + "description": "Data e hora-limite para o envio do Repasse Financeiro de CBS à RFB e de IBS ao Comitê Gestor. Corresponde a 12:00 (meio-dia) de D+N, conforme o Manual de Tempos (seção 6.2)." + } + }, + "required": [ + "index", + "idDda", + "numCtrlOrig", + "numPgto", + "numIdentcBaixa", + "vlPago", + "vlCbsSegr", + "vlIbsSegr", + "indPgtoIntegral", + "cnpjRaizPspPag", + "cnpjRec", + "dtHrPgto", + "dtHrLiq", + "dtHrRepasse" + ] + }, + "InformeDeSegregacaoBoletoRequest": { + "allOf": [ + { + "$ref": "#/components/schemas/InfoRequest" + }, + { + "properties": { + "dadosLoteSeg": { + "$ref": "#/components/schemas/DadosLoteSegRequest" + }, + "transacoes": { + "type": "array", + "minItems": 1, + "maxItems": 1000, + "items": { + "$ref": "#/components/schemas/InformeDeSegregacaoBoletoTransacao" + } + } + }, + "required": [ + "dadosLoteSeg", + "transacoes" + ] + } + ] + }, + "InformeDeSegregacaoPixAutomaticoTransacao": { + "type": "object", + "properties": { + "index": { + "type": "integer", + "examples": [ + 1 + ], + "minimum": 1, + "maximum": 1000, + "description": "Número sequencial do item na lista enviada, iniciando em 1." + }, + "txId": { + "type": "string", + "minLength": 1, + "maxLength": 35, + "examples": [ + "1234ABDOASD11231234ABDOASD112312345" + ], + "description": "Identificador único da transação Pix (TxID)." + }, + "e2eId": { + "type": "string", + "minLength": 1, + "maxLength": 35, + "examples": [ + "1234ABDOASD11231234ABDOASD112312345" + ], + "description": "Identificador único da transação no arranjo de pagamentos Pix (E2EID)." + }, + "vlPago": { + "type": "number", + "multipleOf": 0.01, + "minimum": 0, + "maximum": 999999999999999999.99, + "examples": [ + 10.02 + ], + "description": "Valor efetivamente pago na transação." + }, + "vlCbsSegr": { + "type": "number", + "multipleOf": 0.01, + "minimum": 0, + "maximum": 999999999999999999.99, + "examples": [ + 10.02 + ], + "description": "Valor de CBS efetivamente segregado pelo PSP Recebedor Direto na transação." + }, + "vlIbsSegr": { + "type": "number", + "multipleOf": 0.01, + "minimum": 0, + "maximum": 999999999999999999.99, + "examples": [ + 10.02 + ], + "description": "Valor de IBS efetivamente segregado pelo PSP Recebedor Direto na transação." + }, + "docFiscal": { + "type": "string", + "minLength": 1, + "maxLength": 50, + "examples": [ + "1234567890123456789B123A5678901234567891123412345" + ], + "description": "Identificador do Documento Fiscal vinculado à transação." + }, + "indPgtoIntegral": { + "type": "string", + "enum": [ + "0", + "1" + ], + "examples": [ + "1" + ], + "description": "Indica se a transação foi integralmente paga, considerando todos os pagamentos até o momento. 1 = pagamento integral; 0 = não integral." + }, + "cnpjRaizPspRecInd": { + "type": "string", + "minLength": 8, + "maxLength": 8, + "pattern": "^[A-Za-z0-9]{8}$", + "examples": [ + "87654321" + ], + "description": "Raiz do CNPJ do PSP Recebedor Indireto onde o Recebedor mantém a conta." + }, + "cnpjRaizPspPag": { + "type": "string", + "minLength": 8, + "maxLength": 8, + "pattern": "^[A-Za-z0-9]{8}$", + "examples": [ + "87654321" + ], + "description": "Raiz do CNPJ do PSP Pagador." + }, + "cnpjRec": { + "type": "string", + "minLength": 14, + "maxLength": 14, + "pattern": "^[A-Za-z0-9]{14}$", + "examples": [ + "11444777000142" + ], + "description": "Identificação do Recebedor (que recebe o valor líquido da transação). Em caso de cessão de recebíveis, preencher com o Recebedor original (e não com o novo detentor de direitos)." + }, + "cnpjCpfPagEfet": { + "type": "string", + "minLength": 11, + "maxLength": 14, + "pattern": "^(\\d{11}|[A-Za-z0-9]{14})$", + "examples": [ + "11444777000142" + ], + "description": "Identificador do Pagador que efetivamente realizou o pagamento. CPF: 11 dígitos. CNPJ: 14 caracteres alfanuméricos." + }, + "dtHrPgto": { + "type": "string", + "format": "date-time", + "pattern": "^\\d{4}-\\d{2}-\\d{2}T\\d{2}:\\d{2}:\\d{2}-03:00$", + "examples": [ + "2026-03-20T10:33:46-03:00" + ], + "description": "Data e hora em que o pagamento foi realizado pelo Pagador." + }, + "dtHrLiq": { + "type": "string", + "format": "date-time", + "pattern": "^\\d{4}-\\d{2}-\\d{2}T\\d{2}:\\d{2}:\\d{2}-03:00$", + "examples": [ + "2026-03-20T10:33:46-03:00" + ], + "description": "Data e hora em que ocorreu a efetiva Liquidação Interbancária ou Intrabancária no arranjo." + }, + "dtHrRepasse": { + "type": "string", + "format": "date-time", + "pattern": "^\\d{4}-\\d{2}-\\d{2}T\\d{2}:\\d{2}:\\d{2}-03:00$", + "examples": [ + "2026-03-20T10:33:46-03:00" + ], + "description": "Data e hora-limite para o envio do Repasse Financeiro de CBS à RFB e de IBS ao Comitê Gestor. Corresponde a 12:00 (meio-dia) de D+N, conforme o Manual de Tempos (seção 6.2)." + } + }, + "required": [ + "index", + "txId", + "e2eId", + "vlPago", + "vlCbsSegr", + "vlIbsSegr", + "indPgtoIntegral", + "cnpjRaizPspPag", + "cnpjRec", + "cnpjCpfPagEfet", + "dtHrPgto", + "dtHrLiq", + "dtHrRepasse" + ] + }, + "InformeDeSegregacaoPixAutomaticoRequest": { + "allOf": [ + { + "$ref": "#/components/schemas/InfoRequest" + }, + { + "properties": { + "dadosLoteSeg": { + "$ref": "#/components/schemas/DadosLoteSegRequest" + }, + "transacoes": { + "type": "array", + "minItems": 1, + "maxItems": 1000, + "items": { + "$ref": "#/components/schemas/InformeDeSegregacaoPixAutomaticoTransacao" + } + } + }, + "required": [ + "dadosLoteSeg", + "transacoes" + ] + } + ] + }, + "InformeDeSegregacaoPixDinamicoTransacao": { + "type": "object", + "properties": { + "index": { + "type": "integer", + "examples": [ + 1 + ], + "minimum": 1, + "maximum": 1000, + "description": "Número sequencial do item na lista enviada, iniciando em 1." + }, + "txId": { + "type": "string", + "minLength": 1, + "maxLength": 35, + "examples": [ + "1234ABDOASD11231234ABDOASD112312345" + ], + "description": "Identificador único da transação Pix (TxID)." + }, + "e2eId": { + "type": "string", + "minLength": 1, + "maxLength": 35, + "examples": [ + "1234ABDOASD11231234ABDOASD112312345" + ], + "description": "Identificador único da transação no arranjo de pagamentos Pix (E2EID)." + }, + "vlPago": { + "type": "number", + "multipleOf": 0.01, + "minimum": 0, + "maximum": 999999999999999999.99, + "examples": [ + 10.02 + ], + "description": "Valor efetivamente pago na transação." + }, + "vlCbsSegr": { + "type": "number", + "multipleOf": 0.01, + "minimum": 0, + "maximum": 999999999999999999.99, + "examples": [ + 10.02 + ], + "description": "Valor de CBS efetivamente segregado pelo PSP Recebedor Direto na transação." + }, + "vlIbsSegr": { + "type": "number", + "multipleOf": 0.01, + "minimum": 0, + "maximum": 999999999999999999.99, + "examples": [ + 10.02 + ], + "description": "Valor de IBS efetivamente segregado pelo PSP Recebedor Direto na transação." + }, + "docFiscal": { + "type": "string", + "minLength": 1, + "maxLength": 50, + "examples": [ + "1234567890123456789B123A5678901234567891123412345" + ], + "description": "Identificador do Documento Fiscal vinculado à transação." + }, + "indPgtoIntegral": { + "type": "string", + "enum": [ + "0", + "1" + ], + "examples": [ + "1" + ], + "description": "Indica se a transação foi integralmente paga, considerando todos os pagamentos até o momento. 1 = pagamento integral; 0 = não integral." + }, + "cnpjRaizPspRecInd": { + "type": "string", + "minLength": 8, + "maxLength": 8, + "pattern": "^[A-Za-z0-9]{8}$", + "examples": [ + "87654321" + ], + "description": "Raiz do CNPJ do PSP Recebedor Indireto onde o Recebedor mantém a conta." + }, + "cnpjRaizPspPag": { + "type": "string", + "minLength": 8, + "maxLength": 8, + "pattern": "^[A-Za-z0-9]{8}$", + "examples": [ + "87654321" + ], + "description": "Raiz do CNPJ do PSP Pagador." + }, + "cnpjRec": { + "type": "string", + "minLength": 14, + "maxLength": 14, + "pattern": "^[A-Za-z0-9]{14}$", + "examples": [ + "11444777000142" + ], + "description": "Identificação do Recebedor (que recebe o valor líquido da transação). Em caso de cessão de recebíveis, preencher com o Recebedor original (e não com o novo detentor de direitos)." + }, + "cnpjCpfPagEfet": { + "type": "string", + "minLength": 11, + "maxLength": 14, + "pattern": "^(\\d{11}|[A-Za-z0-9]{14})$", + "examples": [ + "11444777000142" + ], + "description": "Identificador do Pagador que efetivamente realizou o pagamento. CPF: 11 dígitos. CNPJ: 14 caracteres alfanuméricos." + }, + "dtHrPgto": { + "type": "string", + "format": "date-time", + "pattern": "^\\d{4}-\\d{2}-\\d{2}T\\d{2}:\\d{2}:\\d{2}-03:00$", + "examples": [ + "2026-03-20T10:33:46-03:00" + ], + "description": "Data e hora em que o pagamento foi realizado pelo Pagador." + }, + "dtHrLiq": { + "type": "string", + "format": "date-time", + "pattern": "^\\d{4}-\\d{2}-\\d{2}T\\d{2}:\\d{2}:\\d{2}-03:00$", + "examples": [ + "2026-03-20T10:33:46-03:00" + ], + "description": "Data e hora em que ocorreu a efetiva Liquidação Interbancária ou Intrabancária no arranjo." + }, + "dtHrRepasse": { + "type": "string", + "format": "date-time", + "pattern": "^\\d{4}-\\d{2}-\\d{2}T\\d{2}:\\d{2}:\\d{2}-03:00$", + "examples": [ + "2026-03-20T10:33:46-03:00" + ], + "description": "Data e hora-limite para o envio do Repasse Financeiro de CBS à RFB e de IBS ao Comitê Gestor. Corresponde a 12:00 (meio-dia) de D+N, conforme o Manual de Tempos (seção 6.2)." + } + }, + "required": [ + "index", + "txId", + "e2eId", + "vlPago", + "vlCbsSegr", + "vlIbsSegr", + "indPgtoIntegral", + "cnpjRaizPspPag", + "cnpjRec", + "cnpjCpfPagEfet", + "dtHrPgto", + "dtHrLiq", + "dtHrRepasse" + ] + }, + "InformeDeSegregacaoPixDinamicoRequest": { + "allOf": [ + { + "$ref": "#/components/schemas/InfoRequest" + }, + { + "properties": { + "dadosLoteSeg": { + "$ref": "#/components/schemas/DadosLoteSegRequest" + }, + "transacoes": { + "type": "array", + "minItems": 1, + "maxItems": 1000, + "items": { + "$ref": "#/components/schemas/InformeDeSegregacaoPixDinamicoTransacao" + } + } + }, + "required": [ + "dadosLoteSeg", + "transacoes" + ] + } + ] + }, + "InformeDeSegregacaoPixEstaticoTransacao": { + "type": "object", + "properties": { + "index": { + "type": "integer", + "examples": [ + 1 + ], + "minimum": 1, + "maximum": 1000, + "description": "Número sequencial do item na lista enviada, iniciando em 1." + }, + "e2eId": { + "type": "string", + "minLength": 1, + "maxLength": 35, + "examples": [ + "1234ABDOASD11231234ABDOASD112312345" + ], + "description": "Identificador único da transação no arranjo de pagamentos Pix (E2EID)." + }, + "vlPago": { + "type": "number", + "multipleOf": 0.01, + "minimum": 0, + "maximum": 999999999999999999.99, + "examples": [ + 10.02 + ], + "description": "Valor efetivamente pago na transação." + }, + "vlCbsSegr": { + "type": "number", + "multipleOf": 0.01, + "minimum": 0, + "maximum": 999999999999999999.99, + "examples": [ + 10.02 + ], + "description": "Valor de CBS efetivamente segregado pelo PSP Recebedor Direto na transação." + }, + "vlIbsSegr": { + "type": "number", + "multipleOf": 0.01, + "minimum": 0, + "maximum": 999999999999999999.99, + "examples": [ + 10.02 + ], + "description": "Valor de IBS efetivamente segregado pelo PSP Recebedor Direto na transação." + }, + "docFiscal": { + "type": "string", + "minLength": 1, + "maxLength": 50, + "examples": [ + "1234567890123456789B123A5678901234567891123412345" + ], + "description": "Identificador do Documento Fiscal vinculado à transação." + }, + "cnpjRaizPspRecInd": { + "type": "string", + "minLength": 8, + "maxLength": 8, + "pattern": "^[A-Za-z0-9]{8}$", + "examples": [ + "87654321" + ], + "description": "Raiz do CNPJ do PSP Recebedor Indireto onde o Recebedor mantém a conta." + }, + "cnpjRaizPspPag": { + "type": "string", + "minLength": 8, + "maxLength": 8, + "pattern": "^[A-Za-z0-9]{8}$", + "examples": [ + "87654321" + ], + "description": "Raiz do CNPJ do PSP Pagador." + }, + "cnpjRec": { + "type": "string", + "minLength": 14, + "maxLength": 14, + "pattern": "^[A-Za-z0-9]{14}$", + "examples": [ + "11444777000142" + ], + "description": "Identificação do Recebedor (que recebe o valor líquido da transação). Em caso de cessão de recebíveis, preencher com o Recebedor original (e não com o novo detentor de direitos)." + }, + "cnpjCpfPagEfet": { + "type": "string", + "minLength": 11, + "maxLength": 14, + "pattern": "^(\\d{11}|[A-Za-z0-9]{14})$", + "examples": [ + "11444777000142" + ], + "description": "Identificador do Pagador que efetivamente realizou o pagamento. CPF: 11 dígitos. CNPJ: 14 caracteres alfanuméricos." + }, + "dtHrPgto": { + "type": "string", + "format": "date-time", + "pattern": "^\\d{4}-\\d{2}-\\d{2}T\\d{2}:\\d{2}:\\d{2}-03:00$", + "examples": [ + "2026-03-20T10:33:46-03:00" + ], + "description": "Data e hora em que o pagamento foi realizado pelo Pagador." + }, + "dtHrLiq": { + "type": "string", + "format": "date-time", + "pattern": "^\\d{4}-\\d{2}-\\d{2}T\\d{2}:\\d{2}:\\d{2}-03:00$", + "examples": [ + "2026-03-20T10:33:46-03:00" + ], + "description": "Data e hora em que ocorreu a efetiva Liquidação Interbancária ou Intrabancária no arranjo." + }, + "dtHrRepasse": { + "type": "string", + "format": "date-time", + "pattern": "^\\d{4}-\\d{2}-\\d{2}T\\d{2}:\\d{2}:\\d{2}-03:00$", + "examples": [ + "2026-03-20T10:33:46-03:00" + ], + "description": "Data e hora-limite para o envio do Repasse Financeiro de CBS à RFB e de IBS ao Comitê Gestor. Corresponde a 12:00 (meio-dia) de D+N, conforme o Manual de Tempos (seção 6.2)." + } + }, + "required": [ + "index", + "e2eId", + "vlPago", + "vlCbsSegr", + "vlIbsSegr", + "docFiscal", + "cnpjRaizPspPag", + "cnpjRec", + "cnpjCpfPagEfet", + "dtHrPgto", + "dtHrLiq", + "dtHrRepasse" + ] + }, + "InformeDeSegregacaoPixEstaticoRequest": { + "allOf": [ + { + "$ref": "#/components/schemas/InfoRequest" + }, + { + "properties": { + "dadosLoteSeg": { + "$ref": "#/components/schemas/DadosLoteSegRequest" + }, + "transacoes": { + "type": "array", + "minItems": 1, + "maxItems": 1000, + "items": { + "$ref": "#/components/schemas/InformeDeSegregacaoPixEstaticoTransacao" + } + } + }, + "required": [ + "dadosLoteSeg", + "transacoes" + ] + } + ] + }, + "InformeDeSegregacaoTedTransacao": { + "type": "object", + "properties": { + "index": { + "type": "integer", + "examples": [ + 1 + ], + "minimum": 1, + "maximum": 1000, + "description": "Número sequencial do item na lista enviada, iniciando em 1." + }, + "numCtrlTED": { + "type": "string", + "minLength": 1, + "maxLength": 35, + "examples": [ + "TED123456789" + ], + "description": "Identificador único da transação TED gerado na liquidação (NumCtrlSTR ou NumCtrlPAG)." + }, + "vlPago": { + "type": "number", + "multipleOf": 0.01, + "minimum": 0, + "maximum": 999999999999999999.99, + "examples": [ + 10.02 + ], + "description": "Valor efetivamente pago na transação." + }, + "vlCbsSegr": { + "type": "number", + "multipleOf": 0.01, + "minimum": 0, + "maximum": 999999999999999999.99, + "examples": [ + 10.02 + ], + "description": "Valor de CBS efetivamente segregado pelo PSP Recebedor Direto na transação." + }, + "vlIbsSegr": { + "type": "number", + "multipleOf": 0.01, + "minimum": 0, + "maximum": 999999999999999999.99, + "examples": [ + 10.02 + ], + "description": "Valor de IBS efetivamente segregado pelo PSP Recebedor Direto na transação." + }, + "docFiscal": { + "type": "string", + "minLength": 1, + "maxLength": 50, + "examples": [ + "1234567890123456789B123A5678901234567891123412345" + ], + "description": "Identificador do Documento Fiscal vinculado à transação." + }, + "cnpjRaizPspPag": { + "type": "string", + "minLength": 8, + "maxLength": 8, + "pattern": "^[A-Za-z0-9]{8}$", + "examples": [ + "87654321" + ], + "description": "Raiz do CNPJ do PSP Pagador." + }, + "cnpjRec": { + "type": "string", + "minLength": 14, + "maxLength": 14, + "pattern": "^[A-Za-z0-9]{14}$", + "examples": [ + "11444777000142" + ], + "description": "Identificação do Recebedor (que recebe o valor líquido da transação). Em caso de cessão de recebíveis, preencher com o Recebedor original (e não com o novo detentor de direitos)." + }, + "cnpjCpfPagEfet": { + "type": "string", + "minLength": 11, + "maxLength": 14, + "pattern": "^(\\d{11}|[A-Za-z0-9]{14})$", + "examples": [ + "11444777000142" + ], + "description": "Identificador do Pagador que efetivamente realizou o pagamento. CPF: 11 dígitos. CNPJ: 14 caracteres alfanuméricos." + }, + "dtHrLiq": { + "type": "string", + "format": "date-time", + "pattern": "^\\d{4}-\\d{2}-\\d{2}T\\d{2}:\\d{2}:\\d{2}-03:00$", + "examples": [ + "2026-03-20T10:33:46-03:00" + ], + "description": "Data e hora em que ocorreu a efetiva Liquidação Interbancária ou Intrabancária no arranjo." + }, + "dtHrRepasse": { + "type": "string", + "format": "date-time", + "pattern": "^\\d{4}-\\d{2}-\\d{2}T\\d{2}:\\d{2}:\\d{2}-03:00$", + "examples": [ + "2026-03-20T10:33:46-03:00" + ], + "description": "Data e hora-limite para o envio do Repasse Financeiro de CBS à RFB e de IBS ao Comitê Gestor. Corresponde a 12:00 (meio-dia) de D+N, conforme o Manual de Tempos (seção 6.2)." + } + }, + "required": [ + "index", + "numCtrlTED", + "vlPago", + "vlCbsSegr", + "vlIbsSegr", + "docFiscal", + "cnpjRaizPspPag", + "cnpjRec", + "cnpjCpfPagEfet", + "dtHrLiq", + "dtHrRepasse" + ] + }, + "InformeDeSegregacaoTedRequest": { + "allOf": [ + { + "$ref": "#/components/schemas/InfoRequest" + }, + { + "properties": { + "dadosLoteSeg": { + "$ref": "#/components/schemas/DadosLoteSegRequest" + }, + "transacoes": { + "type": "array", + "minItems": 1, + "maxItems": 1000, + "items": { + "$ref": "#/components/schemas/InformeDeSegregacaoTedTransacao" + } + } + }, + "required": [ + "dadosLoteSeg", + "transacoes" + ] + } + ] + }, + "InformeDeSegregacaoTefTransacao": { + "type": "object", + "properties": { + "index": { + "type": "integer", + "examples": [ + 1 + ], + "minimum": 1, + "maximum": 1000, + "description": "Número sequencial do item na lista enviada, iniciando em 1." + }, + "numCtrlTEF": { + "type": "string", + "minLength": 1, + "maxLength": 35, + "examples": [ + "TEF123456789" + ], + "description": "Identificador da transação TEF gerado pelo PSP." + }, + "vlPago": { + "type": "number", + "multipleOf": 0.01, + "minimum": 0, + "maximum": 999999999999999999.99, + "examples": [ + 10.02 + ], + "description": "Valor efetivamente pago na transação." + }, + "vlCbsSegr": { + "type": "number", + "multipleOf": 0.01, + "minimum": 0, + "maximum": 999999999999999999.99, + "examples": [ + 10.02 + ], + "description": "Valor de CBS efetivamente segregado pelo PSP Recebedor Direto na transação." + }, + "vlIbsSegr": { + "type": "number", + "multipleOf": 0.01, + "minimum": 0, + "maximum": 999999999999999999.99, + "examples": [ + 10.02 + ], + "description": "Valor de IBS efetivamente segregado pelo PSP Recebedor Direto na transação." + }, + "docFiscal": { + "type": "string", + "minLength": 1, + "maxLength": 50, + "examples": [ + "1234567890123456789B123A5678901234567891123412345" + ], + "description": "Identificador do Documento Fiscal vinculado à transação." + }, + "cnpjRec": { + "type": "string", + "minLength": 14, + "maxLength": 14, + "pattern": "^[A-Za-z0-9]{14}$", + "examples": [ + "11444777000142" + ], + "description": "Identificação do Recebedor (que recebe o valor líquido da transação). Em caso de cessão de recebíveis, preencher com o Recebedor original (e não com o novo detentor de direitos)." + }, + "cnpjCpfPagEfet": { + "type": "string", + "minLength": 11, + "maxLength": 14, + "pattern": "^(\\d{11}|[A-Za-z0-9]{14})$", + "examples": [ + "11444777000142" + ], + "description": "Identificador do Pagador que efetivamente realizou o pagamento. CPF: 11 dígitos. CNPJ: 14 caracteres alfanuméricos." + }, + "dtHrPgto": { + "type": "string", + "format": "date-time", + "pattern": "^\\d{4}-\\d{2}-\\d{2}T\\d{2}:\\d{2}:\\d{2}-03:00$", + "examples": [ + "2026-03-20T10:33:46-03:00" + ], + "description": "Data e hora em que o pagamento foi realizado pelo Pagador." + }, + "dtHrLiq": { + "type": "string", + "format": "date-time", + "pattern": "^\\d{4}-\\d{2}-\\d{2}T\\d{2}:\\d{2}:\\d{2}-03:00$", + "examples": [ + "2026-03-20T10:33:46-03:00" + ], + "description": "Data e hora em que ocorreu a efetiva Liquidação Interbancária ou Intrabancária no arranjo." + }, + "dtHrRepasse": { + "type": "string", + "format": "date-time", + "pattern": "^\\d{4}-\\d{2}-\\d{2}T\\d{2}:\\d{2}:\\d{2}-03:00$", + "examples": [ + "2026-03-20T10:33:46-03:00" + ], + "description": "Data e hora-limite para o envio do Repasse Financeiro de CBS à RFB e de IBS ao Comitê Gestor. Corresponde a 12:00 (meio-dia) de D+N, conforme o Manual de Tempos (seção 6.2)." + } + }, + "required": [ + "index", + "numCtrlTEF", + "vlPago", + "vlCbsSegr", + "vlIbsSegr", + "docFiscal", + "cnpjRec", + "cnpjCpfPagEfet", + "dtHrPgto", + "dtHrLiq", + "dtHrRepasse" + ] + }, + "InformeDeSegregacaoTefRequest": { + "allOf": [ + { + "$ref": "#/components/schemas/InfoRequest" + }, + { + "properties": { + "dadosLoteSeg": { + "$ref": "#/components/schemas/DadosLoteSegRequest" + }, + "transacoes": { + "type": "array", + "minItems": 1, + "maxItems": 1000, + "items": { + "$ref": "#/components/schemas/InformeDeSegregacaoTefTransacao" + } + } + }, + "required": [ + "dadosLoteSeg", + "transacoes" + ] + } + ] + }, + "MocOcorrencia": { + "description": "Ocorrência do MOC. O discriminador principal e arrj (arranjo): cada arranjo exige o(s) identificador(es) de transacao correspondente(s).", + "oneOf": [ + { + "$ref": "#/components/schemas/MocOcorrenciaBoleto" + }, + { + "$ref": "#/components/schemas/MocOcorrenciaPixEstatico" + }, + { + "$ref": "#/components/schemas/MocOcorrenciaPixDinamico" + }, + { + "$ref": "#/components/schemas/MocOcorrenciaPixAutomatico" + }, + { + "$ref": "#/components/schemas/MocOcorrenciaTed" + }, + { + "$ref": "#/components/schemas/MocOcorrenciaTef" + } + ], + "discriminator": { + "propertyName": "arrj", + "mapping": { + "BOL": "#/components/schemas/MocOcorrenciaBoleto", + "PXE": "#/components/schemas/MocOcorrenciaPixEstatico", + "PXD": "#/components/schemas/MocOcorrenciaPixDinamico", + "PXA": "#/components/schemas/MocOcorrenciaPixAutomatico", + "TED": "#/components/schemas/MocOcorrenciaTed", + "TEF": "#/components/schemas/MocOcorrenciaTef" + } + } + }, + "MocOcorrenciaRetorno": { + "description": "Retorno de ocorrência do MOC (resposta da RFB/CGIBS), na consulta paginada. O discriminador é arrj: cada arranjo exige o(s) identificador(es) de transação correspondente(s), conforme a matriz 3.9.4.1.", + "oneOf": [ + { + "$ref": "#/components/schemas/MocOcorrenciaRetornoBoleto" + }, + { + "$ref": "#/components/schemas/MocOcorrenciaRetornoPixAutomatico" + }, + { + "$ref": "#/components/schemas/MocOcorrenciaRetornoPixDinamico" + }, + { + "$ref": "#/components/schemas/MocOcorrenciaRetornoPixEstatico" + }, + { + "$ref": "#/components/schemas/MocOcorrenciaRetornoTed" + }, + { + "$ref": "#/components/schemas/MocOcorrenciaRetornoTef" + } + ], + "discriminator": { + "propertyName": "arrj", + "mapping": { + "BOL": "#/components/schemas/MocOcorrenciaRetornoBoleto", + "PXA": "#/components/schemas/MocOcorrenciaRetornoPixAutomatico", + "PXD": "#/components/schemas/MocOcorrenciaRetornoPixDinamico", + "PXE": "#/components/schemas/MocOcorrenciaRetornoPixEstatico", + "TED": "#/components/schemas/MocOcorrenciaRetornoTed", + "TEF": "#/components/schemas/MocOcorrenciaRetornoTef" + } + } + }, + "MocOcorrenciasConsultaResponse": { + "type": "object", + "properties": { + "ocorrencias": { + "type": "array", + "minItems": 1, + "maxItems": 1000, + "description": "Página de ocorrências com resposta. Máximo de 1.000 itens por página.", + "items": { + "$ref": "#/components/schemas/MocOcorrenciaRetorno" + } + } + }, + "required": [ + "ocorrencias" + ] + }, + "MocOcorrenciaBoleto": { + "type": "object", + "description": "Ocorrência do arranjo Boleto (estrutura achatada). Campos válidos e obrigatoriedade conforme o Manual; additionalProperties=false impede campos não previstos.", + "additionalProperties": false, + "properties": { + "arrj": { + "type": "string", + "minLength": 3, + "maxLength": 3, + "const": "BOL", + "description": "Arranjo financeiro ao qual a mensagem está associada (Pix Automático, Pix Dinâmico, Pix Estático, Boleto, TED, TEF). O campo prevê os seguintes valores: PXA, PXD, PXE, BOL, TED ou TEF.", + "examples": [ + "BOL" + ] + }, + "idDda": { + "$ref": "#/components/schemas/InformePreliminarDePagamentoBoletoTransacao/properties/idDda" + }, + "numIdentcBaixa": { + "$ref": "#/components/schemas/InformePreliminarDePagamentoBoletoTransacao/properties/numIdentcBaixa" + }, + "vlPago": { + "type": "number", + "multipleOf": 0.01, + "minimum": 0, + "maximum": 999999999999999999.99, + "examples": [ + 10.02 + ], + "description": "Valor efetivamente pago na transação." + }, + "vlCbsSegr": { + "type": "number", + "multipleOf": 0.01, + "minimum": 0, + "maximum": 999999999999999999.99, + "examples": [ + 10.02 + ], + "description": "Valor de CBS efetivamente segregado pelo PSP Recebedor Direto na transação." + }, + "vlIbsSegr": { + "type": "number", + "multipleOf": 0.01, + "minimum": 0, + "maximum": 999999999999999999.99, + "examples": [ + 10.02 + ], + "description": "Valor de IBS efetivamente segregado pelo PSP Recebedor Direto na transação." + }, + "docFiscal": { + "type": "string", + "minLength": 1, + "maxLength": 50, + "description": "Identificador do Documento Fiscal vinculado à transação.", + "examples": [ + "1234567890123456789B123A5678901234567891123412345" + ] + }, + "cnpjRaizPspRecDir": { + "type": "string", + "minLength": 8, + "maxLength": 8, + "pattern": "^[A-Za-z0-9]{8}$", + "description": "Raiz do CNPJ do PSP Recebedor Direto.", + "examples": [ + "12345678" + ] + }, + "cnpjRaizPspPag": { + "type": "string", + "minLength": 8, + "maxLength": 8, + "pattern": "^[A-Za-z0-9]{8}$", + "description": "Raiz do CNPJ do PSP Pagador.", + "examples": [ + "12345678" + ] + }, + "cnpjRec": { + "type": "string", + "minLength": 14, + "maxLength": 14, + "pattern": "^[A-Za-z0-9]{14}$", + "description": "Identificação do Recebedor (que recebe o valor líquido da transação). Em caso de cessão de recebíveis, preencher com o Recebedor original (e não com o novo detentor de direitos).", + "examples": [ + "11444777000142" + ] + }, + "cnpjPagOrig": { + "type": "string", + "minLength": 14, + "maxLength": 14, + "pattern": "^[A-Za-z0-9]{14}$", + "description": "Identificador do Pagador informado na emissão da transação. CNPJ: 14 caracteres alfanuméricos.", + "examples": [ + "11444777000142" + ] + }, + "cnpjCpfPagEfet": { + "type": "string", + "minLength": 11, + "maxLength": 14, + "pattern": "^(\\d{11}|[A-Za-z0-9]{14})$", + "description": "Identificador do Pagador que efetivamente realizou o pagamento. CPF: 11 dígitos. CNPJ: 14 caracteres alfanuméricos.", + "examples": [ + "11444777000142" + ] + }, + "dtHrPgto": { + "type": "string", + "minLength": 25, + "maxLength": 25, + "format": "date-time", + "pattern": "^\\d{4}-\\d{2}-\\d{2}T\\d{2}:\\d{2}:\\d{2}-03:00$", + "examples": [ + "2026-06-23T09:00:00-03:00" + ], + "description": "Data e hora em que o pagamento foi realizado pelo Pagador." + }, + "dtHrLiq": { + "type": "string", + "minLength": 25, + "maxLength": 25, + "format": "date-time", + "pattern": "^\\d{4}-\\d{2}-\\d{2}T\\d{2}:\\d{2}:\\d{2}-03:00$", + "examples": [ + "2026-06-23T10:00:00-03:00" + ], + "description": "Data e hora em que ocorreu a efetiva Liquidação Interbancária ou Intrabancária no arranjo." + }, + "idOcor": { + "type": "string", + "minLength": 29, + "maxLength": 29, + "pattern": "^(SOL|NOT)[A-Za-z0-9]{8}(PXA|PXD|PXE|BOL|TED|TEF)\\d{15}$", + "description": "Identificador único da ocorrência do MOC. Formato: prefixo do tipo (SOL ou NOT) (3) + raiz do CNPJ do PSP Recebedor Direto (8) + arranjo (PXA, PXD, PXE, BOL, TED, TEF) (3) + data da solicitação (AAAAMMDD) (8) + 7 caracteres para o contador. Gerado pelo PSP Recebedor Direto.", + "examples": [ + "SOL12345678PXD202606230000001" + ] + }, + "index": { + "type": "integer", + "minimum": 1, + "maximum": 1000, + "description": "Número sequencial do item na lista enviada, iniciando em 1.", + "examples": [ + 1 + ] + }, + "codMotOcor": { + "$ref": "#/components/schemas/CodMotOcorEnum" + }, + "descOcor": { + "type": "string", + "maxLength": 100, + "description": "Texto livre complementar ao motivo da ocorrência.", + "examples": [ + "Transação retida para análise de segurança" + ] + }, + "orgRespProcAdm": { + "type": "string", + "minLength": 1, + "maxLength": 8, + "description": "Órgão responsável pelo processo administrativo associado à ocorrência (Notificação de Transação em Análise).", + "examples": [ + "RFB" + ] + }, + "numProcAdm": { + "type": "string", + "minLength": 1, + "maxLength": 20, + "description": "Número do ofício, processo administrativo ou ordem judicial associado à ocorrência (Notificação de Transação em Análise).", + "examples": [ + "PROC2026000123" + ] + }, + "vlCbsEst": { + "type": "number", + "multipleOf": 0.01, + "minimum": 0, + "maximum": 999999999999999999.99, + "examples": [ + 10.02 + ], + "description": "Valor de CBS solicitado para estorno (Solicitação de Estorno)." + }, + "vlIbsEst": { + "type": "number", + "multipleOf": 0.01, + "minimum": 0, + "maximum": 999999999999999999.99, + "examples": [ + 10.02 + ], + "description": "Valor de IBS solicitado para estorno (Solicitação de Estorno)." + }, + "cnpjCpfDest": { + "type": "string", + "minLength": 11, + "maxLength": 14, + "pattern": "^(\\d{11}|[A-Za-z0-9]{14})$", + "description": "Identificador (CNPJ/CPF) da parte prejudicada, que receberá de volta o valor do tributo estornado. CPF: 11 dígitos; CNPJ: 14 caracteres alfanuméricos.", + "examples": [ + "11444777000142" + ] + } + }, + "required": [ + "arrj", + "idDda", + "vlPago", + "vlCbsSegr", + "vlIbsSegr", + "cnpjRaizPspRecDir", + "cnpjRaizPspPag", + "cnpjRec", + "cnpjPagOrig", + "dtHrPgto", + "dtHrLiq", + "idOcor", + "index", + "cnpjCpfDest" + ] + }, + "MocOcorrenciaPixEstatico": { + "type": "object", + "description": "Ocorrência do arranjo Pix Estático (estrutura achatada). Campos válidos e obrigatoriedade conforme o Manual; additionalProperties=false impede campos não previstos.", + "additionalProperties": false, + "properties": { + "arrj": { + "type": "string", + "minLength": 3, + "maxLength": 3, + "const": "PXE", + "description": "Arranjo financeiro ao qual a mensagem está associada (Pix Automático, Pix Dinâmico, Pix Estático, Boleto, TED, TEF). O campo prevê os seguintes valores: PXA, PXD, PXE, BOL, TED ou TEF.", + "examples": [ + "PXE" + ] + }, + "e2eId": { + "$ref": "#/components/schemas/InformePreliminarDePagamentoPixAutomaticoTransacao/properties/e2eId" + }, + "vlPago": { + "type": "number", + "multipleOf": 0.01, + "minimum": 0, + "maximum": 999999999999999999.99, + "examples": [ + 10.02 + ], + "description": "Valor efetivamente pago na transação." + }, + "vlCbsSegr": { + "type": "number", + "multipleOf": 0.01, + "minimum": 0, + "maximum": 999999999999999999.99, + "examples": [ + 10.02 + ], + "description": "Valor de CBS efetivamente segregado pelo PSP Recebedor Direto na transação." + }, + "vlIbsSegr": { + "type": "number", + "multipleOf": 0.01, + "minimum": 0, + "maximum": 999999999999999999.99, + "examples": [ + 10.02 + ], + "description": "Valor de IBS efetivamente segregado pelo PSP Recebedor Direto na transação." + }, + "docFiscal": { + "type": "string", + "minLength": 1, + "maxLength": 50, + "description": "Identificador do Documento Fiscal vinculado à transação.", + "examples": [ + "1234567890123456789B123A5678901234567891123412345" + ] + }, + "cnpjRaizPspRecDir": { + "type": "string", + "minLength": 8, + "maxLength": 8, + "pattern": "^[A-Za-z0-9]{8}$", + "description": "Raiz do CNPJ do PSP Recebedor Direto.", + "examples": [ + "12345678" + ] + }, + "cnpjRaizPspPag": { + "type": "string", + "minLength": 8, + "maxLength": 8, + "pattern": "^[A-Za-z0-9]{8}$", + "description": "Raiz do CNPJ do PSP Pagador.", + "examples": [ + "12345678" + ] + }, + "cnpjRec": { + "type": "string", + "minLength": 14, + "maxLength": 14, + "pattern": "^[A-Za-z0-9]{14}$", + "description": "Identificação do Recebedor (que recebe o valor líquido da transação). Em caso de cessão de recebíveis, preencher com o Recebedor original (e não com o novo detentor de direitos).", + "examples": [ + "11444777000142" + ] + }, + "cnpjPagOrig": { + "type": "string", + "minLength": 14, + "maxLength": 14, + "pattern": "^[A-Za-z0-9]{14}$", + "description": "Identificador do Pagador informado na emissão da transação. CNPJ: 14 caracteres alfanuméricos.", + "examples": [ + "11444777000142" + ] + }, + "cnpjCpfPagEfet": { + "type": "string", + "minLength": 11, + "maxLength": 14, + "pattern": "^(\\d{11}|[A-Za-z0-9]{14})$", + "description": "Identificador do Pagador que efetivamente realizou o pagamento. CPF: 11 dígitos. CNPJ: 14 caracteres alfanuméricos.", + "examples": [ + "11444777000142" + ] + }, + "dtHrPgto": { + "type": "string", + "minLength": 25, + "maxLength": 25, + "format": "date-time", + "pattern": "^\\d{4}-\\d{2}-\\d{2}T\\d{2}:\\d{2}:\\d{2}-03:00$", + "examples": [ + "2026-06-23T09:00:00-03:00" + ], + "description": "Data e hora em que o pagamento foi realizado pelo Pagador." + }, + "dtHrLiq": { + "type": "string", + "minLength": 25, + "maxLength": 25, + "format": "date-time", + "pattern": "^\\d{4}-\\d{2}-\\d{2}T\\d{2}:\\d{2}:\\d{2}-03:00$", + "examples": [ + "2026-06-23T10:00:00-03:00" + ], + "description": "Data e hora em que ocorreu a efetiva Liquidação Interbancária ou Intrabancária no arranjo." + }, + "idOcor": { + "type": "string", + "minLength": 29, + "maxLength": 29, + "pattern": "^(SOL|NOT)[A-Za-z0-9]{8}(PXA|PXD|PXE|BOL|TED|TEF)\\d{15}$", + "description": "Identificador único da ocorrência do MOC. Formato: prefixo do tipo (SOL ou NOT) (3) + raiz do CNPJ do PSP Recebedor Direto (8) + arranjo (PXA, PXD, PXE, BOL, TED, TEF) (3) + data da solicitação (AAAAMMDD) (8) + 7 caracteres para o contador. Gerado pelo PSP Recebedor Direto.", + "examples": [ + "SOL12345678PXD202606230000001" + ] + }, + "index": { + "type": "integer", + "minimum": 1, + "maximum": 1000, + "description": "Número sequencial do item na lista enviada, iniciando em 1.", + "examples": [ + 1 + ] + }, + "codMotOcor": { + "$ref": "#/components/schemas/CodMotOcorEnum" + }, + "descOcor": { + "type": "string", + "maxLength": 100, + "description": "Texto livre complementar ao motivo da ocorrência.", + "examples": [ + "Transação retida para análise de segurança" + ] + }, + "orgRespProcAdm": { + "type": "string", + "minLength": 1, + "maxLength": 8, + "description": "Órgão responsável pelo processo administrativo associado à ocorrência (Notificação de Transação em Análise).", + "examples": [ + "RFB" + ] + }, + "numProcAdm": { + "type": "string", + "minLength": 1, + "maxLength": 20, + "description": "Número do ofício, processo administrativo ou ordem judicial associado à ocorrência (Notificação de Transação em Análise).", + "examples": [ + "PROC2026000123" + ] + }, + "vlCbsEst": { + "type": "number", + "multipleOf": 0.01, + "minimum": 0, + "maximum": 999999999999999999.99, + "examples": [ + 10.02 + ], + "description": "Valor de CBS solicitado para estorno (Solicitação de Estorno)." + }, + "vlIbsEst": { + "type": "number", + "multipleOf": 0.01, + "minimum": 0, + "maximum": 999999999999999999.99, + "examples": [ + 10.02 + ], + "description": "Valor de IBS solicitado para estorno (Solicitação de Estorno)." + }, + "cnpjCpfDest": { + "type": "string", + "minLength": 11, + "maxLength": 14, + "pattern": "^(\\d{11}|[A-Za-z0-9]{14})$", + "description": "Identificador (CNPJ/CPF) da parte prejudicada, que receberá de volta o valor do tributo estornado. CPF: 11 dígitos; CNPJ: 14 caracteres alfanuméricos.", + "examples": [ + "11444777000142" + ] + } + }, + "required": [ + "arrj", + "e2eId", + "vlPago", + "vlCbsSegr", + "vlIbsSegr", + "cnpjRaizPspRecDir", + "cnpjRaizPspPag", + "cnpjRec", + "cnpjPagOrig", + "cnpjCpfPagEfet", + "dtHrPgto", + "dtHrLiq", + "idOcor", + "index", + "cnpjCpfDest" + ] + }, + "MocOcorrenciaPixDinamico": { + "type": "object", + "description": "Ocorrência do arranjo Pix Dinâmico (estrutura achatada). Campos válidos e obrigatoriedade conforme o Manual; additionalProperties=false impede campos não previstos.", + "additionalProperties": false, + "properties": { + "arrj": { + "type": "string", + "minLength": 3, + "maxLength": 3, + "const": "PXD", + "description": "Arranjo financeiro ao qual a mensagem está associada (Pix Automático, Pix Dinâmico, Pix Estático, Boleto, TED, TEF). O campo prevê os seguintes valores: PXA, PXD, PXE, BOL, TED ou TEF.", + "examples": [ + "PXD" + ] + }, + "txId": { + "$ref": "#/components/schemas/InformePreliminarDePagamentoPixAutomaticoTransacao/properties/txId" + }, + "e2eId": { + "$ref": "#/components/schemas/InformePreliminarDePagamentoPixAutomaticoTransacao/properties/e2eId" + }, + "vlPago": { + "type": "number", + "multipleOf": 0.01, + "minimum": 0, + "maximum": 999999999999999999.99, + "examples": [ + 10.02 + ], + "description": "Valor efetivamente pago na transação." + }, + "vlCbsSegr": { + "type": "number", + "multipleOf": 0.01, + "minimum": 0, + "maximum": 999999999999999999.99, + "examples": [ + 10.02 + ], + "description": "Valor de CBS efetivamente segregado pelo PSP Recebedor Direto na transação." + }, + "vlIbsSegr": { + "type": "number", + "multipleOf": 0.01, + "minimum": 0, + "maximum": 999999999999999999.99, + "examples": [ + 10.02 + ], + "description": "Valor de IBS efetivamente segregado pelo PSP Recebedor Direto na transação." + }, + "docFiscal": { + "type": "string", + "minLength": 1, + "maxLength": 50, + "description": "Identificador do Documento Fiscal vinculado à transação.", + "examples": [ + "1234567890123456789B123A5678901234567891123412345" + ] + }, + "cnpjRaizPspRecDir": { + "type": "string", + "minLength": 8, + "maxLength": 8, + "pattern": "^[A-Za-z0-9]{8}$", + "description": "Raiz do CNPJ do PSP Recebedor Direto.", + "examples": [ + "12345678" + ] + }, + "cnpjRaizPspPag": { + "type": "string", + "minLength": 8, + "maxLength": 8, + "pattern": "^[A-Za-z0-9]{8}$", + "description": "Raiz do CNPJ do PSP Pagador.", + "examples": [ + "12345678" + ] + }, + "cnpjRec": { + "type": "string", + "minLength": 14, + "maxLength": 14, + "pattern": "^[A-Za-z0-9]{14}$", + "description": "Identificação do Recebedor (que recebe o valor líquido da transação). Em caso de cessão de recebíveis, preencher com o Recebedor original (e não com o novo detentor de direitos).", + "examples": [ + "11444777000142" + ] + }, + "cnpjPagOrig": { + "type": "string", + "minLength": 14, + "maxLength": 14, + "pattern": "^[A-Za-z0-9]{14}$", + "description": "Identificador do Pagador informado na emissão da transação. CNPJ: 14 caracteres alfanuméricos.", + "examples": [ + "11444777000142" + ] + }, + "cnpjCpfPagEfet": { + "type": "string", + "minLength": 11, + "maxLength": 14, + "pattern": "^(\\d{11}|[A-Za-z0-9]{14})$", + "description": "Identificador do Pagador que efetivamente realizou o pagamento. CPF: 11 dígitos. CNPJ: 14 caracteres alfanuméricos.", + "examples": [ + "11444777000142" + ] + }, + "dtHrPgto": { + "type": "string", + "minLength": 25, + "maxLength": 25, + "format": "date-time", + "pattern": "^\\d{4}-\\d{2}-\\d{2}T\\d{2}:\\d{2}:\\d{2}-03:00$", + "examples": [ + "2026-06-23T09:00:00-03:00" + ], + "description": "Data e hora em que o pagamento foi realizado pelo Pagador." + }, + "dtHrLiq": { + "type": "string", + "minLength": 25, + "maxLength": 25, + "format": "date-time", + "pattern": "^\\d{4}-\\d{2}-\\d{2}T\\d{2}:\\d{2}:\\d{2}-03:00$", + "examples": [ + "2026-06-23T10:00:00-03:00" + ], + "description": "Data e hora em que ocorreu a efetiva Liquidação Interbancária ou Intrabancária no arranjo." + }, + "idOcor": { + "type": "string", + "minLength": 29, + "maxLength": 29, + "pattern": "^(SOL|NOT)[A-Za-z0-9]{8}(PXA|PXD|PXE|BOL|TED|TEF)\\d{15}$", + "description": "Identificador único da ocorrência do MOC. Formato: prefixo do tipo (SOL ou NOT) (3) + raiz do CNPJ do PSP Recebedor Direto (8) + arranjo (PXA, PXD, PXE, BOL, TED, TEF) (3) + data da solicitação (AAAAMMDD) (8) + 7 caracteres para o contador. Gerado pelo PSP Recebedor Direto.", + "examples": [ + "SOL12345678PXD202606230000001" + ] + }, + "index": { + "type": "integer", + "minimum": 1, + "maximum": 1000, + "description": "Número sequencial do item na lista enviada, iniciando em 1.", + "examples": [ + 1 + ] + }, + "codMotOcor": { + "$ref": "#/components/schemas/CodMotOcorEnum" + }, + "descOcor": { + "type": "string", + "maxLength": 100, + "description": "Texto livre complementar ao motivo da ocorrência.", + "examples": [ + "Transação retida para análise de segurança" + ] + }, + "orgRespProcAdm": { + "type": "string", + "minLength": 1, + "maxLength": 8, + "description": "Órgão responsável pelo processo administrativo associado à ocorrência (Notificação de Transação em Análise).", + "examples": [ + "RFB" + ] + }, + "numProcAdm": { + "type": "string", + "minLength": 1, + "maxLength": 20, + "description": "Número do ofício, processo administrativo ou ordem judicial associado à ocorrência (Notificação de Transação em Análise).", + "examples": [ + "PROC2026000123" + ] + }, + "vlCbsEst": { + "type": "number", + "multipleOf": 0.01, + "minimum": 0, + "maximum": 999999999999999999.99, + "examples": [ + 10.02 + ], + "description": "Valor de CBS solicitado para estorno (Solicitação de Estorno)." + }, + "vlIbsEst": { + "type": "number", + "multipleOf": 0.01, + "minimum": 0, + "maximum": 999999999999999999.99, + "examples": [ + 10.02 + ], + "description": "Valor de IBS solicitado para estorno (Solicitação de Estorno)." + }, + "cnpjCpfDest": { + "type": "string", + "minLength": 11, + "maxLength": 14, + "pattern": "^(\\d{11}|[A-Za-z0-9]{14})$", + "description": "Identificador (CNPJ/CPF) da parte prejudicada, que receberá de volta o valor do tributo estornado. CPF: 11 dígitos; CNPJ: 14 caracteres alfanuméricos.", + "examples": [ + "11444777000142" + ] + } + }, + "required": [ + "arrj", + "txId", + "vlPago", + "vlCbsSegr", + "vlIbsSegr", + "cnpjRaizPspRecDir", + "cnpjRaizPspPag", + "cnpjRec", + "cnpjPagOrig", + "cnpjCpfPagEfet", + "dtHrPgto", + "dtHrLiq", + "idOcor", + "index", + "cnpjCpfDest" + ] + }, + "MocOcorrenciaPixAutomatico": { + "type": "object", + "description": "Ocorrência do arranjo Pix Automático (estrutura achatada). Campos válidos e obrigatoriedade conforme o Manual; additionalProperties=false impede campos não previstos.", + "additionalProperties": false, + "properties": { + "arrj": { + "type": "string", + "minLength": 3, + "maxLength": 3, + "const": "PXA", + "description": "Arranjo financeiro ao qual a mensagem está associada (Pix Automático, Pix Dinâmico, Pix Estático, Boleto, TED, TEF). O campo prevê os seguintes valores: PXA, PXD, PXE, BOL, TED ou TEF.", + "examples": [ + "PXA" + ] + }, + "txId": { + "$ref": "#/components/schemas/InformePreliminarDePagamentoPixAutomaticoTransacao/properties/txId" + }, + "e2eId": { + "$ref": "#/components/schemas/InformePreliminarDePagamentoPixAutomaticoTransacao/properties/e2eId" + }, + "vlPago": { + "type": "number", + "multipleOf": 0.01, + "minimum": 0, + "maximum": 999999999999999999.99, + "examples": [ + 10.02 + ], + "description": "Valor efetivamente pago na transação." + }, + "vlCbsSegr": { + "type": "number", + "multipleOf": 0.01, + "minimum": 0, + "maximum": 999999999999999999.99, + "examples": [ + 10.02 + ], + "description": "Valor de CBS efetivamente segregado pelo PSP Recebedor Direto na transação." + }, + "vlIbsSegr": { + "type": "number", + "multipleOf": 0.01, + "minimum": 0, + "maximum": 999999999999999999.99, + "examples": [ + 10.02 + ], + "description": "Valor de IBS efetivamente segregado pelo PSP Recebedor Direto na transação." + }, + "docFiscal": { + "type": "string", + "minLength": 1, + "maxLength": 50, + "description": "Identificador do Documento Fiscal vinculado à transação.", + "examples": [ + "1234567890123456789B123A5678901234567891123412345" + ] + }, + "cnpjRaizPspRecDir": { + "type": "string", + "minLength": 8, + "maxLength": 8, + "pattern": "^[A-Za-z0-9]{8}$", + "description": "Raiz do CNPJ do PSP Recebedor Direto.", + "examples": [ + "12345678" + ] + }, + "cnpjRaizPspPag": { + "type": "string", + "minLength": 8, + "maxLength": 8, + "pattern": "^[A-Za-z0-9]{8}$", + "description": "Raiz do CNPJ do PSP Pagador.", + "examples": [ + "12345678" + ] + }, + "cnpjRec": { + "type": "string", + "minLength": 14, + "maxLength": 14, + "pattern": "^[A-Za-z0-9]{14}$", + "description": "Identificação do Recebedor (que recebe o valor líquido da transação). Em caso de cessão de recebíveis, preencher com o Recebedor original (e não com o novo detentor de direitos).", + "examples": [ + "11444777000142" + ] + }, + "cnpjPagOrig": { + "type": "string", + "minLength": 14, + "maxLength": 14, + "pattern": "^[A-Za-z0-9]{14}$", + "description": "Identificador do Pagador informado na emissão da transação. CNPJ: 14 caracteres alfanuméricos.", + "examples": [ + "11444777000142" + ] + }, + "cnpjCpfPagEfet": { + "type": "string", + "minLength": 11, + "maxLength": 14, + "pattern": "^(\\d{11}|[A-Za-z0-9]{14})$", + "description": "Identificador do Pagador que efetivamente realizou o pagamento. CPF: 11 dígitos. CNPJ: 14 caracteres alfanuméricos.", + "examples": [ + "11444777000142" + ] + }, + "dtHrPgto": { + "type": "string", + "minLength": 25, + "maxLength": 25, + "format": "date-time", + "pattern": "^\\d{4}-\\d{2}-\\d{2}T\\d{2}:\\d{2}:\\d{2}-03:00$", + "examples": [ + "2026-06-23T09:00:00-03:00" + ], + "description": "Data e hora em que o pagamento foi realizado pelo Pagador." + }, + "dtHrLiq": { + "type": "string", + "minLength": 25, + "maxLength": 25, + "format": "date-time", + "pattern": "^\\d{4}-\\d{2}-\\d{2}T\\d{2}:\\d{2}:\\d{2}-03:00$", + "examples": [ + "2026-06-23T10:00:00-03:00" + ], + "description": "Data e hora em que ocorreu a efetiva Liquidação Interbancária ou Intrabancária no arranjo." + }, + "idOcor": { + "type": "string", + "minLength": 29, + "maxLength": 29, + "pattern": "^(SOL|NOT)[A-Za-z0-9]{8}(PXA|PXD|PXE|BOL|TED|TEF)\\d{15}$", + "description": "Identificador único da ocorrência do MOC. Formato: prefixo do tipo (SOL ou NOT) (3) + raiz do CNPJ do PSP Recebedor Direto (8) + arranjo (PXA, PXD, PXE, BOL, TED, TEF) (3) + data da solicitação (AAAAMMDD) (8) + 7 caracteres para o contador. Gerado pelo PSP Recebedor Direto.", + "examples": [ + "SOL12345678PXD202606230000001" + ] + }, + "index": { + "type": "integer", + "minimum": 1, + "maximum": 1000, + "description": "Número sequencial do item na lista enviada, iniciando em 1.", + "examples": [ + 1 + ] + }, + "codMotOcor": { + "$ref": "#/components/schemas/CodMotOcorEnum" + }, + "descOcor": { + "type": "string", + "maxLength": 100, + "description": "Texto livre complementar ao motivo da ocorrência.", + "examples": [ + "Transação retida para análise de segurança" + ] + }, + "orgRespProcAdm": { + "type": "string", + "minLength": 1, + "maxLength": 8, + "description": "Órgão responsável pelo processo administrativo associado à ocorrência (Notificação de Transação em Análise).", + "examples": [ + "RFB" + ] + }, + "numProcAdm": { + "type": "string", + "minLength": 1, + "maxLength": 20, + "description": "Número do ofício, processo administrativo ou ordem judicial associado à ocorrência (Notificação de Transação em Análise).", + "examples": [ + "PROC2026000123" + ] + }, + "vlCbsEst": { + "type": "number", + "multipleOf": 0.01, + "minimum": 0, + "maximum": 999999999999999999.99, + "examples": [ + 10.02 + ], + "description": "Valor de CBS solicitado para estorno (Solicitação de Estorno)." + }, + "vlIbsEst": { + "type": "number", + "multipleOf": 0.01, + "minimum": 0, + "maximum": 999999999999999999.99, + "examples": [ + 10.02 + ], + "description": "Valor de IBS solicitado para estorno (Solicitação de Estorno)." + }, + "cnpjCpfDest": { + "type": "string", + "minLength": 11, + "maxLength": 14, + "pattern": "^(\\d{11}|[A-Za-z0-9]{14})$", + "description": "Identificador (CNPJ/CPF) da parte prejudicada, que receberá de volta o valor do tributo estornado. CPF: 11 dígitos; CNPJ: 14 caracteres alfanuméricos.", + "examples": [ + "11444777000142" + ] + } + }, + "required": [ + "arrj", + "txId", + "vlPago", + "vlCbsSegr", + "vlIbsSegr", + "cnpjRaizPspRecDir", + "cnpjRaizPspPag", + "cnpjRec", + "cnpjPagOrig", + "cnpjCpfPagEfet", + "dtHrPgto", + "dtHrLiq", + "idOcor", + "index", + "cnpjCpfDest" + ] + }, + "MocOcorrenciaTed": { + "type": "object", + "description": "Ocorrência do arranjo TED (estrutura achatada). Campos válidos e obrigatoriedade conforme o Manual; additionalProperties=false impede campos não previstos.", + "additionalProperties": false, + "properties": { + "arrj": { + "type": "string", + "minLength": 3, + "maxLength": 3, + "const": "TED", + "description": "Arranjo financeiro ao qual a mensagem está associada (Pix Automático, Pix Dinâmico, Pix Estático, Boleto, TED, TEF). O campo prevê os seguintes valores: PXA, PXD, PXE, BOL, TED ou TEF.", + "examples": [ + "TED" + ] + }, + "numCtrlTED": { + "$ref": "#/components/schemas/InformePreliminarDePagamentoTedTransacao/properties/numCtrlTED" + }, + "vlPago": { + "type": "number", + "multipleOf": 0.01, + "minimum": 0, + "maximum": 999999999999999999.99, + "examples": [ + 10.02 + ], + "description": "Valor efetivamente pago na transação." + }, + "vlCbsSegr": { + "type": "number", + "multipleOf": 0.01, + "minimum": 0, + "maximum": 999999999999999999.99, + "examples": [ + 10.02 + ], + "description": "Valor de CBS efetivamente segregado pelo PSP Recebedor Direto na transação." + }, + "vlIbsSegr": { + "type": "number", + "multipleOf": 0.01, + "minimum": 0, + "maximum": 999999999999999999.99, + "examples": [ + 10.02 + ], + "description": "Valor de IBS efetivamente segregado pelo PSP Recebedor Direto na transação." + }, + "docFiscal": { + "type": "string", + "minLength": 1, + "maxLength": 50, + "description": "Identificador do Documento Fiscal vinculado à transação.", + "examples": [ + "1234567890123456789B123A5678901234567891123412345" + ] + }, + "cnpjRaizPspRecDir": { + "type": "string", + "minLength": 8, + "maxLength": 8, + "pattern": "^[A-Za-z0-9]{8}$", + "description": "Raiz do CNPJ do PSP Recebedor Direto.", + "examples": [ + "12345678" + ] + }, + "cnpjRaizPspPag": { + "type": "string", + "minLength": 8, + "maxLength": 8, + "pattern": "^[A-Za-z0-9]{8}$", + "description": "Raiz do CNPJ do PSP Pagador.", + "examples": [ + "12345678" + ] + }, + "cnpjRec": { + "type": "string", + "minLength": 14, + "maxLength": 14, + "pattern": "^[A-Za-z0-9]{14}$", + "description": "Identificação do Recebedor (que recebe o valor líquido da transação). Em caso de cessão de recebíveis, preencher com o Recebedor original (e não com o novo detentor de direitos).", + "examples": [ + "11444777000142" + ] + }, + "cnpjPagOrig": { + "type": "string", + "minLength": 14, + "maxLength": 14, + "pattern": "^[A-Za-z0-9]{14}$", + "description": "Identificador do Pagador informado na emissão da transação. CNPJ: 14 caracteres alfanuméricos.", + "examples": [ + "11444777000142" + ] + }, + "cnpjCpfPagEfet": { + "type": "string", + "minLength": 11, + "maxLength": 14, + "pattern": "^(\\d{11}|[A-Za-z0-9]{14})$", + "description": "Identificador do Pagador que efetivamente realizou o pagamento. CPF: 11 dígitos. CNPJ: 14 caracteres alfanuméricos.", + "examples": [ + "11444777000142" + ] + }, + "dtHrLiq": { + "type": "string", + "minLength": 25, + "maxLength": 25, + "format": "date-time", + "pattern": "^\\d{4}-\\d{2}-\\d{2}T\\d{2}:\\d{2}:\\d{2}-03:00$", + "examples": [ + "2026-06-23T10:00:00-03:00" + ], + "description": "Data e hora em que ocorreu a efetiva Liquidação Interbancária ou Intrabancária no arranjo." + }, + "idOcor": { + "type": "string", + "minLength": 29, + "maxLength": 29, + "pattern": "^(SOL|NOT)[A-Za-z0-9]{8}(PXA|PXD|PXE|BOL|TED|TEF)\\d{15}$", + "description": "Identificador único da ocorrência do MOC. Formato: prefixo do tipo (SOL ou NOT) (3) + raiz do CNPJ do PSP Recebedor Direto (8) + arranjo (PXA, PXD, PXE, BOL, TED, TEF) (3) + data da solicitação (AAAAMMDD) (8) + 7 caracteres para o contador. Gerado pelo PSP Recebedor Direto.", + "examples": [ + "SOL12345678PXD202606230000001" + ] + }, + "index": { + "type": "integer", + "minimum": 1, + "maximum": 1000, + "description": "Número sequencial do item na lista enviada, iniciando em 1.", + "examples": [ + 1 + ] + }, + "codMotOcor": { + "$ref": "#/components/schemas/CodMotOcorEnum" + }, + "descOcor": { + "type": "string", + "maxLength": 100, + "description": "Texto livre complementar ao motivo da ocorrência.", + "examples": [ + "Transação retida para análise de segurança" + ] + }, + "orgRespProcAdm": { + "type": "string", + "minLength": 1, + "maxLength": 8, + "description": "Órgão responsável pelo processo administrativo associado à ocorrência (Notificação de Transação em Análise).", + "examples": [ + "RFB" + ] + }, + "numProcAdm": { + "type": "string", + "minLength": 1, + "maxLength": 20, + "description": "Número do ofício, processo administrativo ou ordem judicial associado à ocorrência (Notificação de Transação em Análise).", + "examples": [ + "PROC2026000123" + ] + }, + "vlCbsEst": { + "type": "number", + "multipleOf": 0.01, + "minimum": 0, + "maximum": 999999999999999999.99, + "examples": [ + 10.02 + ], + "description": "Valor de CBS solicitado para estorno (Solicitação de Estorno)." + }, + "vlIbsEst": { + "type": "number", + "multipleOf": 0.01, + "minimum": 0, + "maximum": 999999999999999999.99, + "examples": [ + 10.02 + ], + "description": "Valor de IBS solicitado para estorno (Solicitação de Estorno)." + }, + "cnpjCpfDest": { + "type": "string", + "minLength": 11, + "maxLength": 14, + "pattern": "^(\\d{11}|[A-Za-z0-9]{14})$", + "description": "Identificador (CNPJ/CPF) da parte prejudicada, que receberá de volta o valor do tributo estornado. CPF: 11 dígitos; CNPJ: 14 caracteres alfanuméricos.", + "examples": [ + "11444777000142" + ] + } + }, + "required": [ + "arrj", + "numCtrlTED", + "vlPago", + "vlCbsSegr", + "vlIbsSegr", + "cnpjRaizPspRecDir", + "cnpjRaizPspPag", + "cnpjRec", + "cnpjPagOrig", + "cnpjCpfPagEfet", + "dtHrLiq", + "idOcor", + "index", + "cnpjCpfDest" + ] + }, + "MocOcorrenciaTef": { + "type": "object", + "description": "Ocorrência do arranjo TEF (estrutura achatada). Campos válidos e obrigatoriedade conforme o Manual; additionalProperties=false impede campos não previstos.", + "additionalProperties": false, + "properties": { + "arrj": { + "type": "string", + "minLength": 3, + "maxLength": 3, + "const": "TEF", + "description": "Arranjo financeiro ao qual a mensagem está associada (Pix Automático, Pix Dinâmico, Pix Estático, Boleto, TED, TEF). O campo prevê os seguintes valores: PXA, PXD, PXE, BOL, TED ou TEF.", + "examples": [ + "TEF" + ] + }, + "numCtrlTEF": { + "$ref": "#/components/schemas/InformePreliminarDePagamentoTefTransacao/properties/numCtrlTEF" + }, + "vlPago": { + "type": "number", + "multipleOf": 0.01, + "minimum": 0, + "maximum": 999999999999999999.99, + "examples": [ + 10.02 + ], + "description": "Valor efetivamente pago na transação." + }, + "vlCbsSegr": { + "type": "number", + "multipleOf": 0.01, + "minimum": 0, + "maximum": 999999999999999999.99, + "examples": [ + 10.02 + ], + "description": "Valor de CBS efetivamente segregado pelo PSP Recebedor Direto na transação." + }, + "vlIbsSegr": { + "type": "number", + "multipleOf": 0.01, + "minimum": 0, + "maximum": 999999999999999999.99, + "examples": [ + 10.02 + ], + "description": "Valor de IBS efetivamente segregado pelo PSP Recebedor Direto na transação." + }, + "docFiscal": { + "type": "string", + "minLength": 1, + "maxLength": 50, + "description": "Identificador do Documento Fiscal vinculado à transação.", + "examples": [ + "1234567890123456789B123A5678901234567891123412345" + ] + }, + "cnpjRaizPspRecDir": { + "type": "string", + "minLength": 8, + "maxLength": 8, + "pattern": "^[A-Za-z0-9]{8}$", + "description": "Raiz do CNPJ do PSP Recebedor Direto.", + "examples": [ + "12345678" + ] + }, + "cnpjRec": { + "type": "string", + "minLength": 14, + "maxLength": 14, + "pattern": "^[A-Za-z0-9]{14}$", + "description": "Identificação do Recebedor (que recebe o valor líquido da transação). Em caso de cessão de recebíveis, preencher com o Recebedor original (e não com o novo detentor de direitos).", + "examples": [ + "11444777000142" + ] + }, + "cnpjPagOrig": { + "type": "string", + "minLength": 14, + "maxLength": 14, + "pattern": "^[A-Za-z0-9]{14}$", + "description": "Identificador do Pagador informado na emissão da transação. CNPJ: 14 caracteres alfanuméricos.", + "examples": [ + "11444777000142" + ] + }, + "cnpjCpfPagEfet": { + "type": "string", + "minLength": 11, + "maxLength": 14, + "pattern": "^(\\d{11}|[A-Za-z0-9]{14})$", + "description": "Identificador do Pagador que efetivamente realizou o pagamento. CPF: 11 dígitos. CNPJ: 14 caracteres alfanuméricos.", + "examples": [ + "11444777000142" + ] + }, + "dtHrPgto": { + "type": "string", + "minLength": 25, + "maxLength": 25, + "format": "date-time", + "pattern": "^\\d{4}-\\d{2}-\\d{2}T\\d{2}:\\d{2}:\\d{2}-03:00$", + "examples": [ + "2026-06-23T09:00:00-03:00" + ], + "description": "Data e hora em que o pagamento foi realizado pelo Pagador." + }, + "dtHrLiq": { + "type": "string", + "minLength": 25, + "maxLength": 25, + "format": "date-time", + "pattern": "^\\d{4}-\\d{2}-\\d{2}T\\d{2}:\\d{2}:\\d{2}-03:00$", + "examples": [ + "2026-06-23T10:00:00-03:00" + ], + "description": "Data e hora em que ocorreu a efetiva Liquidação Interbancária ou Intrabancária no arranjo." + }, + "idOcor": { + "type": "string", + "minLength": 29, + "maxLength": 29, + "pattern": "^(SOL|NOT)[A-Za-z0-9]{8}(PXA|PXD|PXE|BOL|TED|TEF)\\d{15}$", + "description": "Identificador único da ocorrência do MOC. Formato: prefixo do tipo (SOL ou NOT) (3) + raiz do CNPJ do PSP Recebedor Direto (8) + arranjo (PXA, PXD, PXE, BOL, TED, TEF) (3) + data da solicitação (AAAAMMDD) (8) + 7 caracteres para o contador. Gerado pelo PSP Recebedor Direto.", + "examples": [ + "SOL12345678PXD202606230000001" + ] + }, + "index": { + "type": "integer", + "minimum": 1, + "maximum": 1000, + "description": "Número sequencial do item na lista enviada, iniciando em 1.", + "examples": [ + 1 + ] + }, + "codMotOcor": { + "$ref": "#/components/schemas/CodMotOcorEnum" + }, + "descOcor": { + "type": "string", + "maxLength": 100, + "description": "Texto livre complementar ao motivo da ocorrência.", + "examples": [ + "Transação retida para análise de segurança" + ] + }, + "orgRespProcAdm": { + "type": "string", + "minLength": 1, + "maxLength": 8, + "description": "Órgão responsável pelo processo administrativo associado à ocorrência (Notificação de Transação em Análise).", + "examples": [ + "RFB" + ] + }, + "numProcAdm": { + "type": "string", + "minLength": 1, + "maxLength": 20, + "description": "Número do ofício, processo administrativo ou ordem judicial associado à ocorrência (Notificação de Transação em Análise).", + "examples": [ + "PROC2026000123" + ] + }, + "vlCbsEst": { + "type": "number", + "multipleOf": 0.01, + "minimum": 0, + "maximum": 999999999999999999.99, + "examples": [ + 10.02 + ], + "description": "Valor de CBS solicitado para estorno (Solicitação de Estorno)." + }, + "vlIbsEst": { + "type": "number", + "multipleOf": 0.01, + "minimum": 0, + "maximum": 999999999999999999.99, + "examples": [ + 10.02 + ], + "description": "Valor de IBS solicitado para estorno (Solicitação de Estorno)." + }, + "cnpjCpfDest": { + "type": "string", + "minLength": 11, + "maxLength": 14, + "pattern": "^(\\d{11}|[A-Za-z0-9]{14})$", + "description": "Identificador (CNPJ/CPF) da parte prejudicada, que receberá de volta o valor do tributo estornado. CPF: 11 dígitos; CNPJ: 14 caracteres alfanuméricos.", + "examples": [ + "11444777000142" + ] + } + }, + "required": [ + "arrj", + "numCtrlTEF", + "vlPago", + "vlCbsSegr", + "vlIbsSegr", + "cnpjRaizPspRecDir", + "cnpjRec", + "cnpjPagOrig", + "cnpjCpfPagEfet", + "dtHrPgto", + "dtHrLiq", + "idOcor", + "index", + "cnpjCpfDest" + ] + }, + "MocOcorrenciaSol": { + "allOf": [ + { + "$ref": "#/components/schemas/MocOcorrencia" + }, + { + "type": "object", + "required": [ + "codMotOcor", + "vlCbsEst", + "vlIbsEst" + ], + "not": { + "anyOf": [ + { + "required": [ + "orgRespProcAdm" + ] + }, + { + "required": [ + "numProcAdm" + ] + } + ] + } + } + ] + }, + "MocOcorrenciaNot": { + "allOf": [ + { + "$ref": "#/components/schemas/MocOcorrencia" + }, + { + "type": "object", + "not": { + "anyOf": [ + { + "required": [ + "codMotOcor" + ] + }, + { + "required": [ + "vlCbsEst" + ] + }, + { + "required": [ + "vlIbsEst" + ] + } + ] + } + } + ] + }, + "MecanismoDeOcorrenciasSolRequest": { + "type": "object", + "properties": { + "infRequisicao": { + "type": "object", + "properties": { + "dtHrMsg": { + "type": "string", + "format": "date-time", + "pattern": "^\\d{4}-\\d{2}-\\d{2}T\\d{2}:\\d{2}:\\d{2}-03:00$", + "examples": [ + "2026-06-23T12:00:00-03:00" + ], + "description": "Data e hora da mensagem que está sendo transmitida entre PSP/Núclea e a Plataforma Pública." + } + }, + "required": [ + "dtHrMsg" + ] + }, + "ocorrencias": { + "type": "array", + "minItems": 1, + "maxItems": 1000, + "description": "Lista de ocorrências do MOC. Máximo de 1.000 por requisição.", + "items": { + "$ref": "#/components/schemas/MocOcorrenciaSol" + } + } + }, + "required": [ + "infRequisicao", + "ocorrencias" + ], + "description": "Requisicao MOC contendo exclusivamente ocorrencias de solicitacao." + }, + "MecanismoDeOcorrenciasNotRequest": { + "type": "object", + "properties": { + "infRequisicao": { + "type": "object", + "properties": { + "dtHrMsg": { + "type": "string", + "format": "date-time", + "pattern": "^\\d{4}-\\d{2}-\\d{2}T\\d{2}:\\d{2}:\\d{2}-03:00$", + "examples": [ + "2026-06-23T12:00:00-03:00" + ], + "description": "Data e hora da mensagem que está sendo transmitida entre PSP/Núclea e a Plataforma Pública." + } + }, + "required": [ + "dtHrMsg" + ] + }, + "ocorrencias": { + "type": "array", + "minItems": 1, + "maxItems": 1000, + "description": "Lista de ocorrências do MOC. Máximo de 1.000 por requisição.", + "items": { + "$ref": "#/components/schemas/MocOcorrenciaNot" + } + } + }, + "required": [ + "infRequisicao", + "ocorrencias" + ], + "description": "Requisicao MOC contendo exclusivamente ocorrencias de notificacao." + }, + "CodParecerEnum": { + "type": "string", + "enum": [ + "01", + "02", + "03" + ], + "examples": [ + "01", + "02", + "03" + ], + "description": "Código do parecer sobre a solicitação de estorno via MOC associada à transação. 01= Aceita, 02 = Aceita Parcialmente, 03 = Não aceita", + "minLength": 2, + "maxLength": 2 + }, + "CodMotOcorEnum": { + "type": "string", + "minLength": 2, + "maxLength": 2, + "enum": [ + "01", + "02" + ], + "description": "Código do motivo da ocorrência (Solicitação de Estorno): 01 = Incidente de segurança; 02 = Falha operacional (Atores Financeiros).", + "examples": [ + "01", + "02" + ] + }, + "OrgRespResEnum": { + "type": "string", + "minLength": 3, + "maxLength": 5, + "enum": [ + "RFB", + "CGIBS" + ], + "description": "Órgão que respondeu à solicitação de estorno: RFB (Receita Federal do Brasil) ou CGIBS (Comitê Gestor do IBS). Presente no Retorno da Solicitação de Estorno.", + "examples": [ + "RFB", + "CGIBS" + ] + }, + "TpTribEnum": { + "type": "string", + "enum": [ + "CBS", + "IBS" + ], + "examples": [ + "CBS", + "IBS" + ], + "description": "Tributo a que se refere o parecer: CBS (Contribuição sobre Bens e Serviços) ou IBS (Imposto sobre Bens e Serviços). Presente no Retorno da Solicitação de Estorno.", + "minLength": 3, + "maxLength": 3 + }, + "MocOcorrenciaRetornoBoleto": { + "type": "object", + "description": "Retorno de ocorrência do MOC — arranjo Boleto (estrutura achatada). Campos e obrigatoriedade conforme a matriz 3.9.4.1; additionalProperties=false impede campos não previstos. idAprovEst é exigido apenas quando codParecer é 01 ou 02.", + "additionalProperties": false, + "properties": { + "nsuId": { + "type": "string", + "pattern": "^\\d{1,19}$", + "description": "NSU da ocorrência retornada, utilizado na paginação dos resultados do MOC.", + "examples": [ + "1234567890123456789" + ] + }, + "arrj": { + "type": "string", + "minLength": 3, + "maxLength": 3, + "const": "BOL", + "description": "Arranjo financeiro ao qual a mensagem está associada (Pix Automático, Pix Dinâmico, Pix Estático, Boleto, TED, TEF). O campo prevê os seguintes valores: PXA, PXD, PXE, BOL, TED ou TEF.", + "examples": [ + "BOL" + ] + }, + "idDda": { + "$ref": "#/components/schemas/InformePreliminarDePagamentoBoletoTransacao/properties/idDda" + }, + "numIdentcBaixa": { + "$ref": "#/components/schemas/InformePreliminarDePagamentoBoletoTransacao/properties/numIdentcBaixa" + }, + "idOcor": { + "type": "string", + "minLength": 29, + "maxLength": 29, + "pattern": "^(SOL|NOT)[A-Za-z0-9]{8}(PXA|PXD|PXE|BOL|TED|TEF)\\d{15}$", + "description": "Identificador único da ocorrência do MOC. Formato: prefixo do tipo (SOL ou NOT) (3) + raiz do CNPJ do PSP Recebedor Direto (8) + arranjo (PXA, PXD, PXE, BOL, TED, TEF) (3) + data da solicitação (AAAAMMDD) (8) + 7 caracteres para o contador. Gerado pelo PSP Recebedor Direto.", + "examples": [ + "SOL12345678PXD202606230000001" + ] + }, + "dtHrEnvOcor": { + "type": "string", + "format": "date-time", + "pattern": "^\\d{4}-\\d{2}-\\d{2}T\\d{2}:\\d{2}:\\d{2}-03:00$", + "examples": [ + "2026-06-23T12:00:00-03:00" + ], + "description": "Data e hora de envio da ocorrência pelo responsável da abertura do MOC." + }, + "dtHrRespOcor": { + "type": "string", + "format": "date-time", + "pattern": "^\\d{4}-\\d{2}-\\d{2}T\\d{2}:\\d{2}:\\d{2}-03:00$", + "examples": [ + "2026-06-24T15:00:00-03:00" + ], + "description": "Data e hora da resposta da ocorrência pela RFB/CGIBS. Presente apenas no Retorno da Solicitação de Estorno." + }, + "orgRespRes": { + "$ref": "#/components/schemas/OrgRespResEnum" + }, + "codParecer": { + "$ref": "#/components/schemas/CodParecerEnum" + }, + "tpTrib": { + "$ref": "#/components/schemas/TpTribEnum" + }, + "vlTribEst": { + "type": "number", + "multipleOf": 0.01, + "minimum": 0, + "maximum": 999999999999999999.99, + "examples": [ + 10.02 + ], + "description": "Valor de CBS ou IBS aprovado para estorno, conforme tpTrib. Presente no Retorno da Solicitação de Estorno." + }, + "descParecer": { + "type": "string", + "minLength": 1, + "maxLength": 500, + "description": "Descrição complementar do parecer da RFB/CGIBS. Presente no Retorno da Solicitação de Estorno.", + "examples": [ + "Ocorrência respondida pelo órgão competente" + ] + }, + "orientSolic": { + "type": "string", + "minLength": 1, + "maxLength": 500, + "description": "Orientação à parte solicitante quanto ao acompanhamento da ocorrência. Presente no Retorno da Solicitação de Estorno.", + "examples": [ + "Consultar retorno da ocorrência para acompanhamento" + ] + }, + "idAprovEst": { + "type": "string", + "minLength": 20, + "maxLength": 20, + "description": "Identificador de aprovação do estorno via MOC, emitido pela RFB ou CGIBS. Corresponde ao número de controle enviado na mensagem de estorno no SPB, conforme o tributo: NumCtrlTESOr para CBS e NumCtrlSTROr para IBS. Preenchimento condicional: retornado somente quando codParecer for 01 (Aceita) ou 02 (Aceita Parcialmente).", + "examples": [ + "APV20260623000100001" + ] + } + }, + "required": [ + "nsuId", + "arrj", + "idDda", + "idOcor", + "dtHrEnvOcor", + "dtHrRespOcor", + "orgRespRes", + "codParecer", + "tpTrib", + "vlTribEst" + ], + "allOf": [ + { + "if": { + "properties": { + "codParecer": { + "enum": [ + "01", + "02" + ] + } + }, + "required": [ + "codParecer" + ] + }, + "then": { + "required": [ + "idAprovEst" + ] + }, + "else": { + "not": { + "required": [ + "idAprovEst" + ] + } + } + } + ] + }, + "MocOcorrenciaRetornoPixAutomatico": { + "type": "object", + "description": "Retorno de ocorrência do MOC — arranjo Pix Automático (estrutura achatada). Campos e obrigatoriedade conforme a matriz 3.9.4.1; additionalProperties=false impede campos não previstos. idAprovEst é exigido apenas quando codParecer é 01 ou 02.", + "additionalProperties": false, + "properties": { + "nsuId": { + "type": "string", + "pattern": "^\\d{1,19}$", + "description": "NSU da ocorrência retornada, utilizado na paginação dos resultados do MOC.", + "examples": [ + "1234567890123456789" + ] + }, + "arrj": { + "type": "string", + "minLength": 3, + "maxLength": 3, + "const": "PXA", + "description": "Arranjo financeiro ao qual a mensagem está associada (Pix Automático, Pix Dinâmico, Pix Estático, Boleto, TED, TEF). O campo prevê os seguintes valores: PXA, PXD, PXE, BOL, TED ou TEF.", + "examples": [ + "PXA" + ] + }, + "txId": { + "$ref": "#/components/schemas/InformePreliminarDePagamentoPixAutomaticoTransacao/properties/txId" + }, + "e2eId": { + "$ref": "#/components/schemas/InformePreliminarDePagamentoPixAutomaticoTransacao/properties/e2eId" + }, + "idOcor": { + "type": "string", + "minLength": 29, + "maxLength": 29, + "pattern": "^(SOL|NOT)[A-Za-z0-9]{8}(PXA|PXD|PXE|BOL|TED|TEF)\\d{15}$", + "description": "Identificador único da ocorrência do MOC. Formato: prefixo do tipo (SOL ou NOT) (3) + raiz do CNPJ do PSP Recebedor Direto (8) + arranjo (PXA, PXD, PXE, BOL, TED, TEF) (3) + data da solicitação (AAAAMMDD) (8) + 7 caracteres para o contador. Gerado pelo PSP Recebedor Direto.", + "examples": [ + "SOL12345678PXD202606230000001" + ] + }, + "dtHrEnvOcor": { + "type": "string", + "format": "date-time", + "pattern": "^\\d{4}-\\d{2}-\\d{2}T\\d{2}:\\d{2}:\\d{2}-03:00$", + "examples": [ + "2026-06-23T12:00:00-03:00" + ], + "description": "Data e hora de envio da ocorrência pelo responsável da abertura do MOC." + }, + "dtHrRespOcor": { + "type": "string", + "format": "date-time", + "pattern": "^\\d{4}-\\d{2}-\\d{2}T\\d{2}:\\d{2}:\\d{2}-03:00$", + "examples": [ + "2026-06-24T15:00:00-03:00" + ], + "description": "Data e hora da resposta da ocorrência pela RFB/CGIBS. Presente apenas no Retorno da Solicitação de Estorno." + }, + "orgRespRes": { + "$ref": "#/components/schemas/OrgRespResEnum" + }, + "codParecer": { + "$ref": "#/components/schemas/CodParecerEnum" + }, + "tpTrib": { + "$ref": "#/components/schemas/TpTribEnum" + }, + "vlTribEst": { + "type": "number", + "multipleOf": 0.01, + "minimum": 0, + "maximum": 999999999999999999.99, + "examples": [ + 10.02 + ], + "description": "Valor de CBS ou IBS aprovado para estorno, conforme tpTrib. Presente no Retorno da Solicitação de Estorno." + }, + "descParecer": { + "type": "string", + "minLength": 1, + "maxLength": 500, + "description": "Descrição complementar do parecer da RFB/CGIBS. Presente no Retorno da Solicitação de Estorno.", + "examples": [ + "Ocorrência respondida pelo órgão competente" + ] + }, + "orientSolic": { + "type": "string", + "minLength": 1, + "maxLength": 500, + "description": "Orientação à parte solicitante quanto ao acompanhamento da ocorrência. Presente no Retorno da Solicitação de Estorno.", + "examples": [ + "Consultar retorno da ocorrência para acompanhamento" + ] + }, + "idAprovEst": { + "type": "string", + "minLength": 20, + "maxLength": 20, + "description": "Identificador de aprovação do estorno via MOC, emitido pela RFB ou CGIBS. Corresponde ao número de controle enviado na mensagem de estorno no SPB, conforme o tributo: NumCtrlTESOr para CBS e NumCtrlSTROr para IBS. Preenchimento condicional: retornado somente quando codParecer for 01 (Aceita) ou 02 (Aceita Parcialmente).", + "examples": [ + "APV20260623000100001" + ] + } + }, + "required": [ + "nsuId", + "arrj", + "txId", + "idOcor", + "dtHrEnvOcor", + "dtHrRespOcor", + "orgRespRes", + "codParecer", + "tpTrib", + "vlTribEst" + ], + "allOf": [ + { + "if": { + "properties": { + "codParecer": { + "enum": [ + "01", + "02" + ] + } + }, + "required": [ + "codParecer" + ] + }, + "then": { + "required": [ + "idAprovEst" + ] + }, + "else": { + "not": { + "required": [ + "idAprovEst" + ] + } + } + } + ] + }, + "MocOcorrenciaRetornoPixDinamico": { + "type": "object", + "description": "Retorno de ocorrência do MOC — arranjo Pix Dinâmico (estrutura achatada). Campos e obrigatoriedade conforme a matriz 3.9.4.1; additionalProperties=false impede campos não previstos. idAprovEst é exigido apenas quando codParecer é 01 ou 02.", + "additionalProperties": false, + "properties": { + "nsuId": { + "type": "string", + "pattern": "^\\d{1,19}$", + "description": "NSU da ocorrência retornada, utilizado na paginação dos resultados do MOC.", + "examples": [ + "1234567890123456789" + ] + }, + "arrj": { + "type": "string", + "minLength": 3, + "maxLength": 3, + "const": "PXD", + "description": "Arranjo financeiro ao qual a mensagem está associada (Pix Automático, Pix Dinâmico, Pix Estático, Boleto, TED, TEF). O campo prevê os seguintes valores: PXA, PXD, PXE, BOL, TED ou TEF.", + "examples": [ + "PXD" + ] + }, + "txId": { + "$ref": "#/components/schemas/InformePreliminarDePagamentoPixAutomaticoTransacao/properties/txId" + }, + "e2eId": { + "$ref": "#/components/schemas/InformePreliminarDePagamentoPixAutomaticoTransacao/properties/e2eId" + }, + "idOcor": { + "type": "string", + "minLength": 29, + "maxLength": 29, + "pattern": "^(SOL|NOT)[A-Za-z0-9]{8}(PXA|PXD|PXE|BOL|TED|TEF)\\d{15}$", + "description": "Identificador único da ocorrência do MOC. Formato: prefixo do tipo (SOL ou NOT) (3) + raiz do CNPJ do PSP Recebedor Direto (8) + arranjo (PXA, PXD, PXE, BOL, TED, TEF) (3) + data da solicitação (AAAAMMDD) (8) + 7 caracteres para o contador. Gerado pelo PSP Recebedor Direto.", + "examples": [ + "SOL12345678PXD202606230000001" + ] + }, + "dtHrEnvOcor": { + "type": "string", + "format": "date-time", + "pattern": "^\\d{4}-\\d{2}-\\d{2}T\\d{2}:\\d{2}:\\d{2}-03:00$", + "examples": [ + "2026-06-23T12:00:00-03:00" + ], + "description": "Data e hora de envio da ocorrência pelo responsável da abertura do MOC." + }, + "dtHrRespOcor": { + "type": "string", + "format": "date-time", + "pattern": "^\\d{4}-\\d{2}-\\d{2}T\\d{2}:\\d{2}:\\d{2}-03:00$", + "examples": [ + "2026-06-24T15:00:00-03:00" + ], + "description": "Data e hora da resposta da ocorrência pela RFB/CGIBS. Presente apenas no Retorno da Solicitação de Estorno." + }, + "orgRespRes": { + "$ref": "#/components/schemas/OrgRespResEnum" + }, + "codParecer": { + "$ref": "#/components/schemas/CodParecerEnum" + }, + "tpTrib": { + "$ref": "#/components/schemas/TpTribEnum" + }, + "vlTribEst": { + "type": "number", + "multipleOf": 0.01, + "minimum": 0, + "maximum": 999999999999999999.99, + "examples": [ + 10.02 + ], + "description": "Valor de CBS ou IBS aprovado para estorno, conforme tpTrib. Presente no Retorno da Solicitação de Estorno." + }, + "descParecer": { + "type": "string", + "minLength": 1, + "maxLength": 500, + "description": "Descrição complementar do parecer da RFB/CGIBS. Presente no Retorno da Solicitação de Estorno.", + "examples": [ + "Ocorrência respondida pelo órgão competente" + ] + }, + "orientSolic": { + "type": "string", + "minLength": 1, + "maxLength": 500, + "description": "Orientação à parte solicitante quanto ao acompanhamento da ocorrência. Presente no Retorno da Solicitação de Estorno.", + "examples": [ + "Consultar retorno da ocorrência para acompanhamento" + ] + }, + "idAprovEst": { + "type": "string", + "minLength": 20, + "maxLength": 20, + "description": "Identificador de aprovação do estorno via MOC, emitido pela RFB ou CGIBS. Corresponde ao número de controle enviado na mensagem de estorno no SPB, conforme o tributo: NumCtrlTESOr para CBS e NumCtrlSTROr para IBS. Preenchimento condicional: retornado somente quando codParecer for 01 (Aceita) ou 02 (Aceita Parcialmente).", + "examples": [ + "APV20260623000100001" + ] + } + }, + "required": [ + "nsuId", + "arrj", + "txId", + "idOcor", + "dtHrEnvOcor", + "dtHrRespOcor", + "orgRespRes", + "codParecer", + "tpTrib", + "vlTribEst" + ], + "allOf": [ + { + "if": { + "properties": { + "codParecer": { + "enum": [ + "01", + "02" + ] + } + }, + "required": [ + "codParecer" + ] + }, + "then": { + "required": [ + "idAprovEst" + ] + }, + "else": { + "not": { + "required": [ + "idAprovEst" + ] + } + } + } + ] + }, + "MocOcorrenciaRetornoPixEstatico": { + "type": "object", + "description": "Retorno de ocorrência do MOC — arranjo Pix Estático (estrutura achatada). Campos e obrigatoriedade conforme a matriz 3.9.4.1; additionalProperties=false impede campos não previstos. idAprovEst é exigido apenas quando codParecer é 01 ou 02.", + "additionalProperties": false, + "properties": { + "nsuId": { + "type": "string", + "pattern": "^\\d{1,19}$", + "description": "NSU da ocorrência retornada, utilizado na paginação dos resultados do MOC.", + "examples": [ + "1234567890123456789" + ] + }, + "arrj": { + "type": "string", + "minLength": 3, + "maxLength": 3, + "const": "PXE", + "description": "Arranjo financeiro ao qual a mensagem está associada (Pix Automático, Pix Dinâmico, Pix Estático, Boleto, TED, TEF). O campo prevê os seguintes valores: PXA, PXD, PXE, BOL, TED ou TEF.", + "examples": [ + "PXE" + ] + }, + "e2eId": { + "$ref": "#/components/schemas/InformePreliminarDePagamentoPixAutomaticoTransacao/properties/e2eId" + }, + "idOcor": { + "type": "string", + "minLength": 29, + "maxLength": 29, + "pattern": "^(SOL|NOT)[A-Za-z0-9]{8}(PXA|PXD|PXE|BOL|TED|TEF)\\d{15}$", + "description": "Identificador único da ocorrência do MOC. Formato: prefixo do tipo (SOL ou NOT) (3) + raiz do CNPJ do PSP Recebedor Direto (8) + arranjo (PXA, PXD, PXE, BOL, TED, TEF) (3) + data da solicitação (AAAAMMDD) (8) + 7 caracteres para o contador. Gerado pelo PSP Recebedor Direto.", + "examples": [ + "SOL12345678PXD202606230000001" + ] + }, + "dtHrEnvOcor": { + "type": "string", + "format": "date-time", + "pattern": "^\\d{4}-\\d{2}-\\d{2}T\\d{2}:\\d{2}:\\d{2}-03:00$", + "examples": [ + "2026-06-23T12:00:00-03:00" + ], + "description": "Data e hora de envio da ocorrência pelo responsável da abertura do MOC." + }, + "dtHrRespOcor": { + "type": "string", + "format": "date-time", + "pattern": "^\\d{4}-\\d{2}-\\d{2}T\\d{2}:\\d{2}:\\d{2}-03:00$", + "examples": [ + "2026-06-24T15:00:00-03:00" + ], + "description": "Data e hora da resposta da ocorrência pela RFB/CGIBS. Presente apenas no Retorno da Solicitação de Estorno." + }, + "orgRespRes": { + "$ref": "#/components/schemas/OrgRespResEnum" + }, + "codParecer": { + "$ref": "#/components/schemas/CodParecerEnum" + }, + "tpTrib": { + "$ref": "#/components/schemas/TpTribEnum" + }, + "vlTribEst": { + "type": "number", + "multipleOf": 0.01, + "minimum": 0, + "maximum": 999999999999999999.99, + "examples": [ + 10.02 + ], + "description": "Valor de CBS ou IBS aprovado para estorno, conforme tpTrib. Presente no Retorno da Solicitação de Estorno." + }, + "descParecer": { + "type": "string", + "minLength": 1, + "maxLength": 500, + "description": "Descrição complementar do parecer da RFB/CGIBS. Presente no Retorno da Solicitação de Estorno.", + "examples": [ + "Ocorrência respondida pelo órgão competente" + ] + }, + "orientSolic": { + "type": "string", + "minLength": 1, + "maxLength": 500, + "description": "Orientação à parte solicitante quanto ao acompanhamento da ocorrência. Presente no Retorno da Solicitação de Estorno.", + "examples": [ + "Consultar retorno da ocorrência para acompanhamento" + ] + }, + "idAprovEst": { + "type": "string", + "minLength": 20, + "maxLength": 20, + "description": "Identificador de aprovação do estorno via MOC, emitido pela RFB ou CGIBS. Corresponde ao número de controle enviado na mensagem de estorno no SPB, conforme o tributo: NumCtrlTESOr para CBS e NumCtrlSTROr para IBS. Preenchimento condicional: retornado somente quando codParecer for 01 (Aceita) ou 02 (Aceita Parcialmente).", + "examples": [ + "APV20260623000100001" + ] + } + }, + "required": [ + "nsuId", + "arrj", + "e2eId", + "idOcor", + "dtHrEnvOcor", + "dtHrRespOcor", + "orgRespRes", + "codParecer", + "tpTrib", + "vlTribEst" + ], + "allOf": [ + { + "if": { + "properties": { + "codParecer": { + "enum": [ + "01", + "02" + ] + } + }, + "required": [ + "codParecer" + ] + }, + "then": { + "required": [ + "idAprovEst" + ] + }, + "else": { + "not": { + "required": [ + "idAprovEst" + ] + } + } + } + ] + }, + "MocOcorrenciaRetornoTed": { + "type": "object", + "description": "Retorno de ocorrência do MOC — arranjo TED (estrutura achatada). Campos e obrigatoriedade conforme a matriz 3.9.4.1; additionalProperties=false impede campos não previstos. idAprovEst é exigido apenas quando codParecer é 01 ou 02.", + "additionalProperties": false, + "properties": { + "nsuId": { + "type": "string", + "pattern": "^\\d{1,19}$", + "description": "NSU da ocorrência retornada, utilizado na paginação dos resultados do MOC.", + "examples": [ + "1234567890123456789" + ] + }, + "arrj": { + "type": "string", + "minLength": 3, + "maxLength": 3, + "const": "TED", + "description": "Arranjo financeiro ao qual a mensagem está associada (Pix Automático, Pix Dinâmico, Pix Estático, Boleto, TED, TEF). O campo prevê os seguintes valores: PXA, PXD, PXE, BOL, TED ou TEF.", + "examples": [ + "TED" + ] + }, + "numCtrlTED": { + "$ref": "#/components/schemas/InformePreliminarDePagamentoTedTransacao/properties/numCtrlTED" + }, + "idOcor": { + "type": "string", + "minLength": 29, + "maxLength": 29, + "pattern": "^(SOL|NOT)[A-Za-z0-9]{8}(PXA|PXD|PXE|BOL|TED|TEF)\\d{15}$", + "description": "Identificador único da ocorrência do MOC. Formato: prefixo do tipo (SOL ou NOT) (3) + raiz do CNPJ do PSP Recebedor Direto (8) + arranjo (PXA, PXD, PXE, BOL, TED, TEF) (3) + data da solicitação (AAAAMMDD) (8) + 7 caracteres para o contador. Gerado pelo PSP Recebedor Direto.", + "examples": [ + "SOL12345678PXD202606230000001" + ] + }, + "dtHrEnvOcor": { + "type": "string", + "format": "date-time", + "pattern": "^\\d{4}-\\d{2}-\\d{2}T\\d{2}:\\d{2}:\\d{2}-03:00$", + "examples": [ + "2026-06-23T12:00:00-03:00" + ], + "description": "Data e hora de envio da ocorrência pelo responsável da abertura do MOC." + }, + "dtHrRespOcor": { + "type": "string", + "format": "date-time", + "pattern": "^\\d{4}-\\d{2}-\\d{2}T\\d{2}:\\d{2}:\\d{2}-03:00$", + "examples": [ + "2026-06-24T15:00:00-03:00" + ], + "description": "Data e hora da resposta da ocorrência pela RFB/CGIBS. Presente apenas no Retorno da Solicitação de Estorno." + }, + "orgRespRes": { + "$ref": "#/components/schemas/OrgRespResEnum" + }, + "codParecer": { + "$ref": "#/components/schemas/CodParecerEnum" + }, + "tpTrib": { + "$ref": "#/components/schemas/TpTribEnum" + }, + "vlTribEst": { + "type": "number", + "multipleOf": 0.01, + "minimum": 0, + "maximum": 999999999999999999.99, + "examples": [ + 10.02 + ], + "description": "Valor de CBS ou IBS aprovado para estorno, conforme tpTrib. Presente no Retorno da Solicitação de Estorno." + }, + "descParecer": { + "type": "string", + "minLength": 1, + "maxLength": 500, + "description": "Descrição complementar do parecer da RFB/CGIBS. Presente no Retorno da Solicitação de Estorno.", + "examples": [ + "Ocorrência respondida pelo órgão competente" + ] + }, + "orientSolic": { + "type": "string", + "minLength": 1, + "maxLength": 500, + "description": "Orientação à parte solicitante quanto ao acompanhamento da ocorrência. Presente no Retorno da Solicitação de Estorno.", + "examples": [ + "Consultar retorno da ocorrência para acompanhamento" + ] + }, + "idAprovEst": { + "type": "string", + "minLength": 20, + "maxLength": 20, + "description": "Identificador de aprovação do estorno via MOC, emitido pela RFB ou CGIBS. Corresponde ao número de controle enviado na mensagem de estorno no SPB, conforme o tributo: NumCtrlTESOr para CBS e NumCtrlSTROr para IBS. Preenchimento condicional: retornado somente quando codParecer for 01 (Aceita) ou 02 (Aceita Parcialmente).", + "examples": [ + "APV20260623000100001" + ] + } + }, + "required": [ + "nsuId", + "arrj", + "numCtrlTED", + "idOcor", + "dtHrEnvOcor", + "dtHrRespOcor", + "orgRespRes", + "codParecer", + "tpTrib", + "vlTribEst" + ], + "allOf": [ + { + "if": { + "properties": { + "codParecer": { + "enum": [ + "01", + "02" + ] + } + }, + "required": [ + "codParecer" + ] + }, + "then": { + "required": [ + "idAprovEst" + ] + }, + "else": { + "not": { + "required": [ + "idAprovEst" + ] + } + } + } + ] + }, + "MocOcorrenciaRetornoTef": { + "type": "object", + "description": "Retorno de ocorrência do MOC — arranjo TEF (estrutura achatada). Campos e obrigatoriedade conforme a matriz 3.9.4.1; additionalProperties=false impede campos não previstos. idAprovEst é exigido apenas quando codParecer é 01 ou 02.", + "additionalProperties": false, + "properties": { + "nsuId": { + "type": "string", + "pattern": "^\\d{1,19}$", + "description": "NSU da ocorrência retornada, utilizado na paginação dos resultados do MOC.", + "examples": [ + "1234567890123456789" + ] + }, + "arrj": { + "type": "string", + "minLength": 3, + "maxLength": 3, + "const": "TEF", + "description": "Arranjo financeiro ao qual a mensagem está associada (Pix Automático, Pix Dinâmico, Pix Estático, Boleto, TED, TEF). O campo prevê os seguintes valores: PXA, PXD, PXE, BOL, TED ou TEF.", + "examples": [ + "TEF" + ] + }, + "numCtrlTEF": { + "$ref": "#/components/schemas/InformePreliminarDePagamentoTefTransacao/properties/numCtrlTEF" + }, + "idOcor": { + "type": "string", + "minLength": 29, + "maxLength": 29, + "pattern": "^(SOL|NOT)[A-Za-z0-9]{8}(PXA|PXD|PXE|BOL|TED|TEF)\\d{15}$", + "description": "Identificador único da ocorrência do MOC. Formato: prefixo do tipo (SOL ou NOT) (3) + raiz do CNPJ do PSP Recebedor Direto (8) + arranjo (PXA, PXD, PXE, BOL, TED, TEF) (3) + data da solicitação (AAAAMMDD) (8) + 7 caracteres para o contador. Gerado pelo PSP Recebedor Direto.", + "examples": [ + "SOL12345678PXD202606230000001" + ] + }, + "dtHrEnvOcor": { + "type": "string", + "format": "date-time", + "pattern": "^\\d{4}-\\d{2}-\\d{2}T\\d{2}:\\d{2}:\\d{2}-03:00$", + "examples": [ + "2026-06-23T12:00:00-03:00" + ], + "description": "Data e hora de envio da ocorrência pelo responsável da abertura do MOC." + }, + "dtHrRespOcor": { + "type": "string", + "format": "date-time", + "pattern": "^\\d{4}-\\d{2}-\\d{2}T\\d{2}:\\d{2}:\\d{2}-03:00$", + "examples": [ + "2026-06-24T15:00:00-03:00" + ], + "description": "Data e hora da resposta da ocorrência pela RFB/CGIBS. Presente apenas no Retorno da Solicitação de Estorno." + }, + "orgRespRes": { + "$ref": "#/components/schemas/OrgRespResEnum" + }, + "codParecer": { + "$ref": "#/components/schemas/CodParecerEnum" + }, + "tpTrib": { + "$ref": "#/components/schemas/TpTribEnum" + }, + "vlTribEst": { + "type": "number", + "multipleOf": 0.01, + "minimum": 0, + "maximum": 999999999999999999.99, + "examples": [ + 10.02 + ], + "description": "Valor de CBS ou IBS aprovado para estorno, conforme tpTrib. Presente no Retorno da Solicitação de Estorno." + }, + "descParecer": { + "type": "string", + "minLength": 1, + "maxLength": 500, + "description": "Descrição complementar do parecer da RFB/CGIBS. Presente no Retorno da Solicitação de Estorno.", + "examples": [ + "Ocorrência respondida pelo órgão competente" + ] + }, + "orientSolic": { + "type": "string", + "minLength": 1, + "maxLength": 500, + "description": "Orientação à parte solicitante quanto ao acompanhamento da ocorrência. Presente no Retorno da Solicitação de Estorno.", + "examples": [ + "Consultar retorno da ocorrência para acompanhamento" + ] + }, + "idAprovEst": { + "type": "string", + "minLength": 20, + "maxLength": 20, + "description": "Identificador de aprovação do estorno via MOC, emitido pela RFB ou CGIBS. Corresponde ao número de controle enviado na mensagem de estorno no SPB, conforme o tributo: NumCtrlTESOr para CBS e NumCtrlSTROr para IBS. Preenchimento condicional: retornado somente quando codParecer for 01 (Aceita) ou 02 (Aceita Parcialmente).", + "examples": [ + "APV20260623000100001" + ] + } + }, + "required": [ + "nsuId", + "arrj", + "numCtrlTEF", + "idOcor", + "dtHrEnvOcor", + "dtHrRespOcor", + "orgRespRes", + "codParecer", + "tpTrib", + "vlTribEst" + ], + "allOf": [ + { + "if": { + "properties": { + "codParecer": { + "enum": [ + "01", + "02" + ] + } + }, + "required": [ + "codParecer" + ] + }, + "then": { + "required": [ + "idAprovEst" + ] + }, + "else": { + "not": { + "required": [ + "idAprovEst" + ] + } + } + } + ] + } + }, + "responses": { + "PPResponseOk": { + "description": "PP Recebido", + "content": { + "application/json": { + "schema": { + "type": "object", + "properties": { + "title": { + "type": "string", + "examples": [ + "Sucesso" + ] + }, + "status": { + "type": "integer", + "examples": [ + 201 + ] + }, + "detail": { + "type": "string", + "examples": [ + "Solicitação processada com sucesso" + ] + }, + "numValidos": { + "type": "integer", + "examples": [ + 997 + ] + }, + "numErros": { + "type": "integer", + "examples": [ + 3 + ] + }, + "errors": { + "type": "array", + "items": { + "type": "object", + "properties": { + "index": { + "type": "integer", + "examples": [ + 10 + ], + "description": "Índice (1..n) do item rejeitado na lista enviada, permitindo correlacionar o erro ao item original da requisição." + }, + "field": { + "type": "string", + "examples": [ + "field1" + ] + }, + "message": { + "type": "string", + "examples": [ + "Campo obrigatório" + ] + } + } + } + }, + "resourceId": { + "type": "string", + "examples": [ + "UEkBbgR-78VqKK-uvuq9O0r9-bqXyBH9Ur" + ] + } + } + } + } + }, + "headers": { + "X-JWS-Signature": { + "$ref": "#/components/headers/XJwsSignatureResponseHeader" + } + } + }, + "PPResponseNoContentStreamStart": { + "description": "Stream iniciado com sucesso. Nenhuma mensagem disponível dentro da janela de espera do long polling. Não representa falha da operação. No fluxo principal do Retorno Super Inteligente, o 204 (sem corpo) retorna o token de continuação no cabeçalho 'proximoToken' e indica ausência de mensagens no momento: o consumidor deve prosseguir consultando com o proximoToken retornado (não reutilizar o token enviado na requisição).", + "headers": { + "streamId": { + "$ref": "#/components/headers/StreamIdHeader" + }, + "proximoToken": { + "$ref": "#/components/headers/ProximoTokenHeader" + }, + "X-JWS-Signature": { + "$ref": "#/components/headers/XJwsSignatureResponseHeader" + } + } + }, + "PPResponseNoContentRetroativoStart": { + "description": "A consulta não retornou resultados Na Consulta Retroativa, o 204 (sem corpo) com o último token no header 'proximoToken' indica fim do stream — o consumidor deve encerrar com DELETE.", + "headers": { + "proximoToken": { + "$ref": "#/components/headers/ProximoTokenHeader" + }, + "X-JWS-Signature": { + "$ref": "#/components/headers/XJwsSignatureResponseHeader" + } + } + }, + "PPResponseNoContentRetroativoToken": { + "description": "Fim do resultado da consulta 204 (sem corpo): na Consulta Retroativa, o retorno do último token no header 'proximoToken' indica fim do stream, exigindo DELETE para encerrar.", + "headers": { + "proximoToken": { + "$ref": "#/components/headers/ProximoTokenHeader" + }, + "X-JWS-Signature": { + "$ref": "#/components/headers/XJwsSignatureResponseHeader" + } + } + }, + "PPResponseNoContentStreamToken": { + "description": "Nenhuma mensagem disponível dentro da janela de espera do long polling. Não representa falha da operação. No fluxo principal do Retorno Super Inteligente, o 204 (sem corpo) retorna o token de continuação no cabeçalho 'proximoToken' e indica ausência de mensagens no momento: o consumidor deve prosseguir consultando com o proximoToken retornado (não reutilizar o token enviado na requisição).", + "headers": { + "proximoToken": { + "$ref": "#/components/headers/ProximoTokenHeader" + }, + "X-JWS-Signature": { + "$ref": "#/components/headers/XJwsSignatureResponseHeader" + } + } + }, + "PPResponseGoneStream": { + "description": "Stream encerrada. A stream foi encerrada por um DELETE ou automaticamente em função da política de sanitização de streams inativas. O PSP deverá considerar a stream definitivamente extinta e iniciar uma nova stream por meio do endpoint /start. Eventuais mensagens não processadas poderão ser recuperadas por meio da Consulta Retroativa Super Inteligente.", + "content": { + "application/problem+json": { + "schema": { + "type": "object", + "properties": { + "title": { + "type": "string", + "examples": [ + "Gone" + ] + }, + "status": { + "type": "integer", + "examples": [ + 410 + ] + }, + "detail": { + "type": "string", + "examples": [ + "Stream encerrada." + ] + }, + "errors": { + "type": "array", + "items": { + "type": "object", + "properties": { + "field": { + "type": "string", + "examples": [ + "token" + ] + }, + "message": { + "type": "string", + "examples": [ + "token pertence a uma stream encerrada" + ] + } + } + } + } + } + } + } + }, + "headers": { + "X-JWS-Signature": { + "$ref": "#/components/headers/XJwsSignatureResponseHeader" + } + } + }, + "PPResponseGoneRetroativoStream": { + "description": "Stream encerrada. A stream foi encerrada por um DELETE ou automaticamente em função da política de sanitização de streams inativas. O PSP deverá considerar a stream definitivamente extinta e, se necessário, iniciar uma nova consulta por meio do endpoint /start.", + "content": { + "application/problem+json": { + "schema": { + "type": "object", + "properties": { + "title": { + "type": "string", + "examples": [ + "Gone" + ] + }, + "status": { + "type": "integer", + "examples": [ + 410 + ] + }, + "detail": { + "type": "string", + "examples": [ + "Stream encerrada." + ] + }, + "errors": { + "type": "array", + "items": { + "type": "object", + "properties": { + "field": { + "type": "string", + "examples": [ + "token" + ] + }, + "message": { + "type": "string", + "examples": [ + "token pertence a uma stream encerrada" + ] + } + } + } + } + } + } + } + }, + "headers": { + "X-JWS-Signature": { + "$ref": "#/components/headers/XJwsSignatureResponseHeader" + } + } + }, + "PPResponseBadRequest": { + "description": "Bad Request", + "content": { + "application/problem+json": { + "schema": { + "type": "object", + "properties": { + "title": { + "type": "string", + "examples": [ + "Bad Request" + ] + }, + "status": { + "type": "integer", + "examples": [ + 400 + ] + }, + "detail": { + "type": "string", + "examples": [ + "Todas as transações do informe estão inválidas" + ] + }, + "errors": { + "type": "array", + "items": { + "type": "object", + "properties": { + "index": { + "type": "integer", + "examples": [ + 1 + ], + "description": "Índice (1..n) do item rejeitado na lista enviada, permitindo correlacionar o erro ao item original da requisição." + }, + "field": { + "type": "string", + "examples": [ + "field1" + ] + }, + "message": { + "type": "string", + "examples": [ + "field1: propriedade obrigatória 'field1' não encontrada" + ] + } + } + } + } + } + } + } + }, + "headers": { + "X-JWS-Signature": { + "$ref": "#/components/headers/XJwsSignatureResponseHeader" + } + } + }, + "PPResponseBadRequestSegregacao": { + "description": "Bad Request", + "content": { + "application/problem+json": { + "schema": { + "type": "object", + "properties": { + "title": { + "type": "string", + "examples": [ + "Bad Request" + ] + }, + "status": { + "type": "integer", + "examples": [ + 400 + ] + }, + "detail": { + "type": "string", + "examples": [ + "Dados do informe de segregacao invalidos" + ] + }, + "errors": { + "type": "array", + "items": { + "type": "object", + "properties": { + "field": { + "type": "string", + "examples": [ + "idInfSegr" + ] + }, + "message": { + "type": "string", + "examples": [ + "idInfSegr: formato invalido" + ] + } + } + } + } + } + } + } + }, + "headers": { + "X-JWS-Signature": { + "$ref": "#/components/headers/XJwsSignatureResponseHeader" + } + } + }, + "PPResponseBadRequestConsultaStream": { + "description": "Bad Request", + "content": { + "application/problem+json": { + "schema": { + "type": "object", + "properties": { + "title": { + "type": "string", + "examples": [ + "Bad Request" + ] + }, + "status": { + "type": "integer", + "examples": [ + 400 + ] + }, + "detail": { + "type": "string", + "examples": [ + "Parametros invalidos" + ] + }, + "errors": { + "type": "array", + "items": { + "type": "object", + "properties": { + "field": { + "type": "string", + "examples": [ + "token" + ] + }, + "message": { + "type": "string", + "examples": [ + "campoX: parametro obrigatorio nao informado" + ] + } + } + } + } + } + } + } + }, + "headers": { + "X-JWS-Signature": { + "$ref": "#/components/headers/XJwsSignatureResponseHeader" + } + } + }, + "PPResponseUnprocessableEntityConsultaStream": { + "description": "Unprocessable Entity", + "content": { + "application/problem+json": { + "schema": { + "type": "object", + "properties": { + "title": { + "type": "string", + "examples": [ + "Unprocessable Entity" + ] + }, + "status": { + "type": "integer", + "examples": [ + 422 + ] + }, + "detail": { + "type": "string", + "examples": [ + "Regras de negocio violadas para consulta de stream" + ] + }, + "errors": { + "type": "array", + "items": { + "type": "object", + "properties": { + "field": { + "type": "string", + "examples": [ + "streamId", + "nsuInicial" + ] + }, + "message": { + "type": "string", + "examples": [ + "streamId inexistente", + "nsuInicial deve ser menor ou igual a nsuFinal" + ] + } + } + } + } + } + } + } + }, + "headers": { + "X-JWS-Signature": { + "$ref": "#/components/headers/XJwsSignatureResponseHeader" + } + } + }, + "PPResponseForbidden": { + "description": "Forbidden", + "content": { + "application/problem+json": { + "schema": { + "type": "object", + "example": { + "title": "Forbidden", + "status": 403, + "detail": "Acesso negado" + }, + "properties": { + "title": { + "type": "string", + "examples": [ + "Forbidden" + ] + }, + "status": { + "type": "integer", + "examples": [ + 403 + ] + }, + "detail": { + "type": "string", + "examples": [ + "Todas as transações do informe estão inválidas" + ] + }, + "errors": { + "type": "array", + "items": { + "type": "object", + "properties": { + "index": { + "type": "integer", + "description": "Índice (1..n) do item rejeitado na lista enviada, permitindo correlacionar o erro ao item original da requisição." + }, + "field": { + "type": "string" + }, + "message": { + "type": "string" + } + } + } + } + } + } + } + }, + "headers": { + "X-JWS-Signature": { + "$ref": "#/components/headers/XJwsSignatureResponseHeader" + } + } + }, + "PPResponseError": { + "description": "Internal Server Error", + "content": { + "application/problem+json": { + "schema": { + "type": "object", + "example": { + "title": "Internal Server Error", + "status": 500, + "detail": "Erro interno inesperado" + }, + "properties": { + "title": { + "type": "string", + "examples": [ + "Internal Server Error" + ] + }, + "status": { + "type": "integer", + "examples": [ + 500 + ] + }, + "detail": { + "type": "string", + "examples": [ + "Todas as transações do informe estão inválidas" + ] + }, + "errors": { + "type": "array", + "items": { + "type": "object", + "properties": { + "index": { + "type": "integer", + "description": "Índice (1..n) do item rejeitado na lista enviada, permitindo correlacionar o erro ao item original da requisição." + }, + "field": { + "type": "string" + }, + "message": { + "type": "string" + } + } + } + } + } + } + } + }, + "headers": { + "X-JWS-Signature": { + "$ref": "#/components/headers/XJwsSignatureResponseHeader" + } + } + }, + "PPResponseCreatedSegregacao": { + "description": "PP Recebido", + "content": { + "application/json": { + "example": { + "title": "PP Recebido", + "status": 201, + "detail": "Informe de segregação iniciado/finalizado com sucesso", + "resourceId": "UEkBbgR-78VqKK-uvuq9O0r9-bqXyBH9Ur" + }, + "schema": { + "$ref": "#/components/responses/PPResponseOk/content/application~1json/schema" + } + } + }, + "headers": { + "X-JWS-Signature": { + "$ref": "#/components/headers/XJwsSignatureResponseHeader" + } + } + }, + "PPResponseCreatedLote": { + "description": "Lote criado com sucesso (primeiro envio do idLote).", + "content": { + "application/json": { + "example": { + "title": "PP Recebido", + "status": 201, + "detail": "Lote criado com sucesso", + "resourceId": "UEkBbgR-78VqKK-uvuq9O0r9-bqXyBH9Ur" + }, + "schema": { + "$ref": "#/components/responses/PPResponseOk/content/application~1json/schema" + } + } + }, + "headers": { + "X-JWS-Signature": { + "$ref": "#/components/headers/XJwsSignatureResponseHeader" + } + } + }, + "PPResponseOkLote": { + "description": "PP Lote Recebido Anteriormente", + "content": { + "application/json": { + "example": { + "title": "PP Lote Recebido Anteriormente", + "status": 200, + "detail": "Lote foi recebido anteriormente", + "resourceId": "UEkBbgR-78VqKK-uvuq9O0r9-bqXyBH9Ur" + }, + "schema": { + "$ref": "#/components/responses/PPResponseOk/content/application~1json/schema" + } + } + } + }, + "PPResponseNoContentMocConsultaStart": { + "description": "Consulta realizada com sucesso, porém sem ocorrências disponíveis no momento. O PSP deve aguardar 30 minutos antes de realizar nova consulta, conforme indicado no header 'Retry-After'. Não representa falha.", + "headers": { + "Retry-After": { + "description": "Tempo, em segundos, que o cliente deve aguardar antes de realizar uma nova consulta.", + "schema": { + "type": "integer", + "example": 1800 + } + }, + "X-JWS-Signature": { + "$ref": "#/components/headers/XJwsSignatureResponseHeader" + } + } + }, + "PPResponseNoContentMocConsultaToken": { + "description": "Não há mais ocorrências disponíveis no momento. O PSP deve aguardar 30 minutos antes de realizar nova consulta, conforme indicado no header 'Retry-After'. Não representa falha.", + "headers": { + "Retry-After": { + "description": "Tempo, em segundos, que o cliente deve aguardar antes de realizar uma nova consulta.", + "schema": { + "type": "integer", + "example": 1800 + } + }, + "X-JWS-Signature": { + "$ref": "#/components/headers/XJwsSignatureResponseHeader" + } + } + }, + "PPResponseBadRequestMocConsulta": { + "description": "Bad Request", + "content": { + "application/problem+json": { + "schema": { + "type": "object", + "properties": { + "title": { + "type": "string", + "examples": [ + "Bad Request" + ] + }, + "status": { + "type": "integer", + "examples": [ + 400 + ] + }, + "detail": { + "type": "string", + "examples": [ + "Parametros invalidos" + ] + }, + "errors": { + "type": "array", + "items": { + "type": "object", + "properties": { + "field": { + "type": "string", + "examples": [ + "nsuInicial" + ] + }, + "message": { + "type": "string", + "examples": [ + "campoX: parametro obrigatorio nao informado" + ] + } + } + } + } + } + } + } + }, + "headers": { + "X-JWS-Signature": { + "$ref": "#/components/headers/XJwsSignatureResponseHeader" + } + } + }, + "PPResponseUnprocessableEntityMocConsulta": { + "description": "Unprocessable Entity", + "content": { + "application/problem+json": { + "schema": { + "type": "object", + "properties": { + "title": { + "type": "string", + "examples": [ + "Unprocessable Entity" + ] + }, + "status": { + "type": "integer", + "examples": [ + 422 + ] + }, + "detail": { + "type": "string", + "examples": [ + "Regras de negocio violadas para a consulta de ocorrencias do MOC" + ] + }, + "errors": { + "type": "array", + "items": { + "type": "object", + "properties": { + "field": { + "type": "string", + "examples": [ + "proximoToken" + ] + }, + "message": { + "type": "string", + "examples": [ + "proximoToken inexistente ou expirado" + ] + } + } + } + } + } + } + } + }, + "headers": { + "X-JWS-Signature": { + "$ref": "#/components/headers/XJwsSignatureResponseHeader" + } + } + }, + "PPResponseUnprocessableEntitySegregacaoIniciada": { + "description": "Unprocessable Entity", + "content": { + "application/problem+json": { + "schema": { + "type": "object", + "properties": { + "title": { + "type": "string", + "examples": [ + "Unprocessable Entity" + ] + }, + "status": { + "type": "integer", + "examples": [ + 422 + ] + }, + "detail": { + "type": "string", + "examples": [ + "Regra de negócio violada na abertura do informe de remessa de segregação." + ] + }, + "errors": { + "type": "array", + "items": { + "type": "object", + "properties": { + "index": { + "type": "integer", + "examples": [ + 1 + ], + "description": "Índice (1..n) do item rejeitado na lista enviada, permitindo correlacionar o erro ao item original da requisição." + }, + "field": { + "type": "string", + "examples": [ + "idInfSegr" + ] + }, + "message": { + "type": "string", + "description": "Mensagem da regra de negócio violada. Valores possíveis nesta etapa listados nos exemplos.", + "examples": [ + "Já existe uma remessa de segregação iniciada para o idInfSegr informado" + ] + } + } + } + } + } + } + } + }, + "headers": { + "X-JWS-Signature": { + "$ref": "#/components/headers/XJwsSignatureResponseHeader" + } + } + }, + "PPResponseUnprocessableEntitySegregacaoLote": { + "description": "Unprocessable Entity", + "content": { + "application/problem+json": { + "schema": { + "type": "object", + "properties": { + "title": { + "type": "string", + "examples": [ + "Unprocessable Entity" + ] + }, + "status": { + "type": "integer", + "examples": [ + 422 + ] + }, + "detail": { + "type": "string", + "examples": [ + "Regra de negócio violada no envio do lote de transações da segregação." + ] + }, + "errors": { + "type": "array", + "items": { + "type": "object", + "properties": { + "index": { + "type": "integer", + "examples": [ + 1 + ], + "description": "Índice (1..n) do item rejeitado na lista enviada, permitindo correlacionar o erro ao item original da requisição." + }, + "field": { + "type": "string", + "examples": [ + "idInfSegr" + ] + }, + "message": { + "type": "string", + "description": "Mensagem da regra de negócio violada. Valores possíveis nesta etapa listados nos exemplos.", + "examples": [ + "Não existe remessa de segregação iniciada para o idInfSegr informado", + "Já existe uma remessa de segregação finalizada para o idInfSegr informado", + "O cnpjRaizPspRecDir informado é diferente do cnpjRaizPspRecDir enviado na remessa de segregação iniciada para o idInfSegr informado" + ] + } + } + } + } + } + } + } + }, + "headers": { + "X-JWS-Signature": { + "$ref": "#/components/headers/XJwsSignatureResponseHeader" + } + } + }, + "PPResponseUnprocessableEntitySegregacaoFinalizacao": { + "description": "Unprocessable Entity", + "content": { + "application/problem+json": { + "schema": { + "type": "object", + "properties": { + "title": { + "type": "string", + "examples": [ + "Unprocessable Entity" + ] + }, + "status": { + "type": "integer", + "examples": [ + 422 + ] + }, + "detail": { + "type": "string", + "examples": [ + "Regra de negócio violada na finalização da remessa de segregação." + ] + }, + "errors": { + "type": "array", + "items": { + "type": "object", + "properties": { + "index": { + "type": "integer", + "examples": [ + 1 + ], + "description": "Índice (1..n) do item rejeitado na lista enviada, permitindo correlacionar o erro ao item original da requisição." + }, + "field": { + "type": "string", + "examples": [ + "idInfSegr" + ] + }, + "message": { + "type": "string", + "description": "Mensagem da regra de negócio violada. Valores possíveis nesta etapa listados nos exemplos.", + "examples": [ + "Não existe remessa de segregação iniciada para o idInfSegr informado", + "Já existe uma remessa de segregação finalizada para o idInfSegr informado", + "O valor informado em totalTrans difere da quantidade de transações enviadas", + "O valor informado em vlTotalCbs difere da soma dos valores de CBS das transações enviadas", + "O valor informado em vlTotalIbs difere da soma dos valores de IBS das transações enviadas", + "O cnpjRaizPspRecDir informado é diferente do cnpjRaizPspRecDir enviado na remessa de segregação iniciada para o idInfSegr informado" + ] + } + } + } + } + } + } + } + }, + "headers": { + "X-JWS-Signature": { + "$ref": "#/components/headers/XJwsSignatureResponseHeader" + } + } + }, + "PPResponseOkLoteAtualizado": { + "description": "Lote atualizado com sucesso (reenvio com o mesmo idLote, substituindo o anterior).", + "content": { + "application/json": { + "example": { + "title": "PP Recebido", + "status": 200, + "detail": "Lote atualizado com sucesso", + "resourceId": "UEkBbgR-78VqKK-uvuq9O0r9-bqXyBH9Ur" + }, + "schema": { + "$ref": "#/components/responses/PPResponseOk/content/application~1json/schema" + } + } + }, + "headers": { + "X-JWS-Signature": { + "$ref": "#/components/headers/XJwsSignatureResponseHeader" + } + } + } + }, + "parameters": { + "XJwsSignatureHeaderParam": { + "name": "X-JWS-Signature", + "in": "header", + "required": true, + "description": "Header: Assinatura JWS da requisição.", + "schema": { + "type": "string", + "examples": [ + "eyJhbGciOiJSUzI1NiIsInR5cCI6IkpXUyIsImtpZCI6IjIwMjYtMDYta2V5LTEiLCJiNjQiOmZhbHNlLCJjcml0IjpbImI2NCJdfQ..dR4M8pVh8kS2b3H1N0aYzQ2vJj5mXw7sK1qP9fL6nE3cU8tI0rB4wD7gF2hL9mN5pQ1sT6uV3xY8zA0bC4dE7w" + ] + } + } + }, + "headers": { + "XJwsSignatureResponseHeader": { + "description": "Header: Assinatura JWS da resposta.", + "schema": { + "type": "string", + "example": "eyJhbGciOiJSUzI1NiIsInR5cCI6IkpXUyIsImtpZCI6IjIwMjYtMDYta2V5LTEiLCJiNjQiOmZhbHNlLCJjcml0IjpbImI2NCJdfQ..dR4M8pVh8kS2b3H1N0aYzQ2vJj5mXw7sK1qP9fL6nE3cU8tI0rB4wD7gF2hL9mN5pQ1sT6uV3xY8zA0bC4dE7w" + } + }, + "ProximoTokenHeader": { + "description": "Token de posição da leitura", + "schema": { + "type": "string", + "example": "123232131232132123" + } + }, + "StreamIdHeader": { + "description": "Identificador do stream", + "schema": { + "type": "string", + "example": "stream-123232131232132123" + } + } + }, + "securitySchemes": { + "mutualTLS": { + "type": "mutualTLS", + "description": "Autenticação mútua TLS (mTLS) com certificado de cliente válido." + } + } + }, + "security": [ + { + "mutualTLS": [] + } + ] +} \ No newline at end of file