# Models

## The MaintenanceStatus object

```json
{"openapi":"3.1.1","info":{"title":"API IXC E-Docs - Integração x-api-key","version":"0.1.0"},"components":{"schemas":{"MaintenanceStatus":{"type":"object","required":["in_maintenance"],"properties":{"in_maintenance":{"type":"boolean","description":"Indica se o sistema está em manutenção programada."},"start_at":{"type":"string","format":"date-time","description":"Início da janela de manutenção (presente apenas quando `in_maintenance` é `true`)."},"end_at":{"type":"string","format":"date-time","description":"Fim da janela de manutenção (presente apenas quando `in_maintenance` é `true`)."},"message":{"type":"string","description":"Mensagem descritiva da manutenção (presente apenas quando `in_maintenance` é `true`)."}}}}}}
```

## The ObjectId object

```json
{"openapi":"3.1.1","info":{"title":"API IXC E-Docs - Integração x-api-key","version":"0.1.0"},"components":{"schemas":{"ObjectId":{"type":"string","description":"Identificador no formato ObjectId."}}}}
```

## The ErrorResponse object

```json
{"openapi":"3.1.1","info":{"title":"API IXC E-Docs - Integração x-api-key","version":"0.1.0"},"components":{"schemas":{"ErrorResponse":{"type":"object","additionalProperties":false,"required":["error"],"properties":{"error":{"type":"object","additionalProperties":false,"required":["code","message","status"],"properties":{"code":{"type":"string","description":"Código machine-readable do erro. Detalhes em `docs/ERRORS.md`."},"message":{"type":"string","description":"Mensagem traduzida conforme Accept-Language."},"status":{"type":"integer","description":"HTTP status code."},"params":{"type":"object","description":"Dados estruturados do erro (campos referenciados, identificadores, contexto técnico). Reflete a interpolação `{{var}}` aplicada ao template da mensagem.","additionalProperties":true},"details":{"type":"array","description":"Lista de falhas estruturadas adicionais (presente quando há múltiplas falhas, ex.: validação Zod, múltiplas empresas inválidas).","items":{"$ref":"#/components/schemas/ErrorDetail"}}}}}},"ErrorDetail":{"type":"object","additionalProperties":false,"required":["code","message"],"properties":{"code":{"type":"string","description":"Código machine-readable do detalhe."},"message":{"type":"string","description":"Mensagem traduzida do detalhe conforme Accept-Language."},"params":{"type":"object","description":"Dados estruturados do detalhe (campo referenciado, identificadores, etc.).","additionalProperties":true}}}}}}
```

## The ErrorDetail object

```json
{"openapi":"3.1.1","info":{"title":"API IXC E-Docs - Integração x-api-key","version":"0.1.0"},"components":{"schemas":{"ErrorDetail":{"type":"object","additionalProperties":false,"required":["code","message"],"properties":{"code":{"type":"string","description":"Código machine-readable do detalhe."},"message":{"type":"string","description":"Mensagem traduzida do detalhe conforme Accept-Language."},"params":{"type":"object","description":"Dados estruturados do detalhe (campo referenciado, identificadores, etc.).","additionalProperties":true}}}}}}
```

## The ValidationErrorResponse object

```json
{"openapi":"3.1.1","info":{"title":"API IXC E-Docs - Integração x-api-key","version":"0.1.0"},"components":{"schemas":{"ValidationErrorResponse":{"allOf":[{"$ref":"#/components/schemas/ErrorResponse"}],"description":"Erro de validação (Zod ou validador de domínio). No `POST /nfse`, `error.code` é `NFSE_VALIDATION_FAILED`; `error.details[]` carrega cada campo inválido com códigos catalogados ou `VALIDATION_*` e `params.field`."},"ErrorResponse":{"type":"object","additionalProperties":false,"required":["error"],"properties":{"error":{"type":"object","additionalProperties":false,"required":["code","message","status"],"properties":{"code":{"type":"string","description":"Código machine-readable do erro. Detalhes em `docs/ERRORS.md`."},"message":{"type":"string","description":"Mensagem traduzida conforme Accept-Language."},"status":{"type":"integer","description":"HTTP status code."},"params":{"type":"object","description":"Dados estruturados do erro (campos referenciados, identificadores, contexto técnico). Reflete a interpolação `{{var}}` aplicada ao template da mensagem.","additionalProperties":true},"details":{"type":"array","description":"Lista de falhas estruturadas adicionais (presente quando há múltiplas falhas, ex.: validação Zod, múltiplas empresas inválidas).","items":{"$ref":"#/components/schemas/ErrorDetail"}}}}}},"ErrorDetail":{"type":"object","additionalProperties":false,"required":["code","message"],"properties":{"code":{"type":"string","description":"Código machine-readable do detalhe."},"message":{"type":"string","description":"Mensagem traduzida do detalhe conforme Accept-Language."},"params":{"type":"object","description":"Dados estruturados do detalhe (campo referenciado, identificadores, etc.).","additionalProperties":true}}}}}}
```

## The CreateNfsesRequest object

```json
{"openapi":"3.1.1","info":{"title":"API IXC E-Docs - Integração x-api-key","version":"0.1.0"},"components":{"schemas":{"CreateNfsesRequest":{"type":"array","minItems":1,"maxItems":500,"items":{"$ref":"#/components/schemas/NfseDocument"}},"NfseDocument":{"type":"object","additionalProperties":false,"required":["external_id","issuer"],"properties":{"external_id":{"type":"string","description":"Identificador externo do documento."},"emission_datetime":{"type":"string","format":"date-time","description":"Data/hora de emissão do documento. Campo raiz canônico para `DataEmissao`; deve ser datetime ISO 8601 com fuso explícito."},"competence_date":{"type":"string","description":"Data de competência do documento. Campo raiz canônico para `Competencia`; pode ser data ou datetime aceito pelo template do provider."},"issuer":{"$ref":"#/components/schemas/NfseIssuer","description":"Prestador do serviço."},"customer":{"$ref":"#/components/schemas/NfseCustomer","description":"Tomador do serviço."},"intermediary":{"$ref":"#/components/schemas/NfseIntermediary","description":"Intermediário do serviço, quando existir. Usa o padrão e-docs de identificação, endereço, telefone e e-mail."},"series":{"type":"string","minLength":1,"description":"Série fiscal opcional. A API decide como serializar a série conforme o provider efetivo da empresa."},"rps":{"type":"object","additionalProperties":false,"description":"**Compatibilidade.** (Compatibility) Alias permanente de entrada HTTP. Em código novo, use `series` na raiz; `rps.series` é normalizado para `series` e `rps.type` legado é descartado sem efeito fiscal.","properties":{"series":{"type":"string","description":"Série fiscal municipal. Normalizada para `series` na raiz antes do processamento."},"type":{"oneOf":[{"type":"string"},{"type":"number"}],"description":"**Uso desaconselhado.** (Discouraged) Campo legado aceito apenas por compatibilidade de entrada HTTP; o valor é descartado antes do processamento fiscal."}}},"dps":{"type":"object","additionalProperties":false,"description":"**Compatibilidade.** (Compatibility) Alias permanente de entrada HTTP. Em código novo, use `series` na raiz; `dps.series` é normalizado para `series` e `dps.type` legado é descartado sem efeito fiscal.","properties":{"series":{"type":"string","pattern":"^\\d{1,5}$","description":"Série fiscal nacional. Normalizada para `series` na raiz antes do processamento."},"type":{"oneOf":[{"type":"string"},{"type":"number"}],"description":"**Uso desaconselhado.** (Discouraged) Campo legado aceito apenas por compatibilidade de entrada HTTP; o valor é descartado antes do processamento fiscal."}}},"send_email":{"type":"boolean","description":"Define se DANFSe e XML da NFS-e serão enviados por email para o tomador."},"substituted_reference":{"$ref":"#/components/schemas/NfseSubstitutedReference","description":"Referência da nota autorizada que será substituída."},"cancel_code":{"type":"integer","description":"Código de cancelamento serializado quando informado; domínio fiscal é validado pelo provedor."},"cancel_reason":{"type":"string","description":"Motivo de cancelamento serializado quando informado; obrigatoriedade e tamanho são validados pelo provedor."},"service":{"type":"object","additionalProperties":false,"description":"Dados do serviço prestado.","required":["description"],"properties":{"description":{"type":"string","description":"Descrição dos serviços da nota fiscal."},"cnae_code":{"type":"string","description":"Código CNAE com 7 dígitos. Use quando o layout fiscal efetivo exigir; não é usado no perfil `national`."},"national_tax_code":{"type":"string","description":"Código nacional de tributação do serviço (`cTribNac`). A serialização vem do template e a obrigatoriedade fiscal deve voltar como rejeição oficial do provedor."},"national_code":{"type":"string","description":"**Compatibilidade.** (Compatibility) Alias de entrada aceito somente em requests de criação para integrações antigas; a API normaliza para `national_tax_code` antes do processamento fiscal e respostas públicas usam apenas `national_tax_code`."},"operation_nature":{"oneOf":[{"type":"string"},{"type":"integer"}],"description":"Natureza da operação fiscal do serviço usada por providers municipais com tag própria, como `NaturezaOperacao`. O domínio é específico do layout municipal e não representa a exigibilidade canônica do ISS."},"lc116_code":{"type":"string","description":"Código do item da lista de serviços da LC 116/2003. Em providers ABRASF/SigSSIS, alimenta `ItemListaServico` e não substitui `municipal_tax_code`."},"municipal_tax_code":{"type":"string","description":"Código de serviço municipal (`cTribMun`)."},"incidence_municipality_code":{"type":"string","description":"Município de incidência do ISS. A aceitação fiscal depende do provedor."},"country_code":{"type":"string","description":"País da prestação do serviço. A aceitação fiscal depende do provedor."},"nbs_code":{"type":"string","description":"Código NBS serializado quando o template do provedor consumir esse campo."},"taxpayer_code":{"type":"string","description":"Código interno do contribuinte para identificar o serviço no ambiente fiscal quando o layout aceitar esse identificador."},"technical_document_id":{"type":"string","description":"Documento de responsabilidade técnica associado ao serviço, como ART, RRT ou documento técnico equivalente aceito pelo provider."},"reference_document":{"type":"string","description":"Documento fiscal, contratual ou administrativo usado como referência da prestação."},"purchase_order_number":{"type":"string","description":"Número de pedido, ordem de serviço, projeto ou referência comercial que identifica a contratação."},"additional_information":{"type":"string","description":"Informações complementares da nota fiscal."},"event":{"$ref":"#/components/schemas/NfseServiceEvent","description":"Dados de evento relacionado ao serviço."},"construction":{"$ref":"#/components/schemas/NfseServiceConstruction","description":"Dados de obra ou construção civil relacionados ao serviço."},"foreign_trade":{"$ref":"#/components/schemas/NfseServiceForeignTrade","description":"Dados de comércio exterior quando o serviço envolver operação internacional."}}},"taxes":{"type":"object","description":"Dados tributários do serviço.","properties":{"iss_taxation":{"oneOf":[{"type":"string","enum":["1","2","3","4","5","6","7"]},{"type":"integer","enum":[1,2,3,4,5,6,7]}],"description":"Tributação do ISSQN no contrato canônico:\n- `1`: operação tributável ou exigível\n- `2`: imunidade ou não incidência, conforme a integração aplicável\n- `3`: exportação de serviço ou isenção, conforme a integração aplicável\n- `4`: não incidência ou exportação, conforme a integração aplicável\n- `5`: imunidade\n- `6`: exigibilidade suspensa por decisão judicial\n- `7`: exigibilidade suspensa por processo administrativo\n\nNa entrada HTTP, também aceita o inteiro equivalente (`1` a `7`) e normaliza para string antes do processamento fiscal.\nObrigatoriedade, tamanho, faixa e domínio fiscal devem voltar como rejeição oficial do provedor."},"iss_retention_type":{"oneOf":[{"type":"string","enum":["1","2","3"]},{"type":"integer","enum":[1,2,3]}],"description":"Retenção do ISSQN no Ambiente Nacional e em providers municipais aderentes ao IBS/CBS:\n- `1`: não retido\n- `2`: retido pelo tomador\n- `3`: retido pelo intermediário\n\nNa entrada HTTP, também aceita o inteiro equivalente (`1` a `3`) e normaliza para string antes do processamento fiscal.\nEm providers municipais aderentes ao IBS/CBS, o runtime deriva `IssRetido` e `ResponsavelRetencao` a partir deste campo quando o provider declarar exigência."},"social_retention_type":{"oneOf":[{"type":"string","enum":["0","1","2","3","4","5","6","7","8","9"]},{"type":"integer","enum":[0,1,2,3,4,5,6,7,8,9]}],"description":"Tipo de retenção social para PIS/COFINS:\n- `0`: não retido\n- `1`: retido pelo tomador\n- `2`: retido pelo prestador\n- `3` a `9`: demais tipos conforme padrão Nacional ADN v1.01\n\nNa entrada HTTP, também aceita o inteiro equivalente (`0` a `9`) e normaliza para string antes do processamento fiscal.\nA aceitação fiscal final deve voltar como rejeição oficial do provedor."},"pis_cofins_cst":{"oneOf":[{"type":"string","enum":["00","01","02","03","04","05","06","07","08","09","49","50","51","52","53","54","55","56","60","61","62","63","64","65","66","67","70","71","72","73","74","75","98","99"]},{"type":"integer","enum":[0,1,2,3,4,5,6,7,8,9,49,50,51,52,53,54,55,56,60,61,62,63,64,65,66,67,70,71,72,73,74,75,98,99]}],"description":"CST opcional de PIS/COFINS usado pelo Ambiente Nacional e por providers municipais que serializam o bloco social do XML:\n- `00`: nenhum\n- `01`: operação tributável com alíquota básica\n- `02`: operação tributável com alíquota diferenciada\n- `03`: operação tributável por unidade de medida\n- `04`: operação tributável monofásica com alíquota zero\n- `05`: operação tributável por substituição tributária\n- `06`: operação tributável a alíquota zero\n- `07`: operação tributável da contribuição\n- `08`: operação sem incidência\n- `09`: operação com suspensão da contribuição\n- `49`, `50` a `56`, `60` a `67`, `70` a `75`, `98` e `99`: demais CSTs oficiais de PIS/COFINS\n\nNa entrada HTTP, também aceita o inteiro equivalente; valores `0` a `9` são normalizados para `00` a `09` antes do processamento fiscal.\nNo municipal, a serialização depende do template anotado."},"result_country_code":{"type":"string","pattern":"^[A-Z]{2}$","description":"País onde ocorre o resultado da exportação do serviço, quando exigido pelo layout fiscal."},"immunity_type":{"type":"string","description":"Tipo de imunidade do ISSQN quando a tributação do serviço indicar imunidade."},"suspension_type":{"type":"string","description":"Tipo de suspensão da exigibilidade do ISSQN, judicial ou administrativa, conforme o layout fiscal."},"suspension_process_number":{"type":"string","description":"Número do processo judicial ou administrativo relacionado à suspensão da exigibilidade."},"municipal_benefit":{"$ref":"#/components/schemas/NfseMunicipalBenefit","description":"Benefício fiscal municipal aplicável ao ISSQN."},"estimated_tax_burden":{"$ref":"#/components/schemas/NfseEstimatedTaxBurden","description":"Tributos aproximados informados no documento fiscal."}}},"ibscbs":{"$ref":"#/components/schemas/NfseIbscbs","description":"Bloco IBS/CBS canônico da Reforma Tributária. Quando informado, o template do provedor serializa os campos suportados e omite ausentes; obrigatoriedade, tamanho, faixa e domínio fiscal devem voltar como rejeição oficial."},"values":{"$ref":"#/components/schemas/NfseValues","description":"Valores da nota fiscal."}}},"NfseIssuer":{"type":"object","additionalProperties":false,"required":["tax_id"],"properties":{"tax_id":{"type":"string","description":"Número do CNPJ do prestador (somente dígitos)."}}},"NfseCustomer":{"type":"object","additionalProperties":false,"required":["legal_name"],"anyOf":[{"required":["tax_id"]},{"required":["nif"]},{"required":["no_nif_reason"]}],"properties":{"tax_id":{"type":"string","minLength":1,"description":"CPF ou CNPJ do tomador, somente dígitos. Para tomador estrangeiro, use `nif` ou `no_nif_reason` conforme o layout fiscal."},"municipal_registration":{"type":"string","description":"Inscrição Municipal do tomador."},"nif":{"type":"string","minLength":1,"description":"Número de identificação fiscal do tomador estrangeiro."},"no_nif_reason":{"type":"string","enum":["0","1","2"],"description":"Motivo da ausência de NIF do tomador estrangeiro quando o layout fiscal permitir."},"caepf":{"type":"string","description":"Cadastro de Atividade Econômica da Pessoa Física do tomador."},"legal_name":{"type":"string","description":"Razão social ou nome do tomador."},"name":{"type":"string","description":"Nome fantasia do tomador."},"address":{"$ref":"#/components/schemas/NfseAddress","description":"Endereço completo do tomador."},"phone":{"type":"string","description":"Telefone de contato do tomador."},"email":{"type":"string","format":"email","description":"E-mail de contato do tomador."}}},"NfseAddress":{"type":"object","additionalProperties":false,"properties":{"street":{"type":"string","minLength":1,"pattern":"^[A-Za-zÀ-ÖØ-öø-ÿ0-9 .,-]+$","description":"Logradouro. Não aceita símbolos especiais nem quebra de linha."},"number":{"type":"string","minLength":1,"pattern":"^[A-Za-zÀ-ÖØ-öø-ÿ0-9 .,-]+$","description":"Número do endereço. Não aceita símbolos especiais nem quebra de linha."},"neighborhood":{"type":"string","minLength":1,"pattern":"^[A-Za-zÀ-ÖØ-öø-ÿ0-9 .,-]+$","description":"Bairro. Não aceita símbolos especiais nem quebra de linha."},"municipality":{"type":"string","description":"**Compatibilidade.** (Compatibility) Alias permanente de `city`.\nAceito na entrada HTTP e devolvido nas respostas para manter integrações existentes.\nNão é usado por providers, templates, workers ou DANFSe."},"city":{"type":"string","description":"Cidade/localidade do endereço. Campo canônico do contrato NFS-e."},"state":{"type":"string","maxLength":2,"description":"UF brasileira ou estado/província/região estrangeira."},"postal_code":{"type":"string","minLength":1,"pattern":"^(?:\\d{8}|\\d{5}-\\d{3})$","description":"CEP brasileiro ou código postal exterior."},"complement":{"type":"string","description":"Complemento do endereço."},"municipality_code":{"type":"string","maxLength":7,"description":"Código IBGE do município brasileiro, usado para serialização fiscal quando aplicável."},"country":{"type":"string","maxLength":60,"description":"Nome do país, quando útil para exibição."},"country_code":{"type":"string","pattern":"^[A-Z]{2}$","description":"Código ISO 3166-1 alfa-2 do país."}}},"NfseIntermediary":{"type":"object","additionalProperties":false,"required":["legal_name"],"anyOf":[{"required":["tax_id"]},{"required":["nif"]},{"required":["no_nif_reason"]}],"properties":{"tax_id":{"type":"string","description":"CPF ou CNPJ, somente dígitos."},"nif":{"type":"string","description":"Número de identificação fiscal no exterior."},"no_nif_reason":{"type":"string","enum":["0","1","2"],"description":"Motivo para ausência de NIF."},"caepf":{"type":"string","description":"Cadastro de Atividade Econômica da Pessoa Física, somente dígitos."},"municipal_registration":{"type":"string","description":"Inscrição Municipal."},"legal_name":{"type":"string","description":"Razão social ou nome."},"name":{"type":"string","description":"Nome fantasia ou alias aceito."},"address":{"$ref":"#/components/schemas/NfseAddress"},"phone":{"type":"string","description":"Telefone de contato."},"email":{"type":"string","format":"email","description":"E-mail de contato."},"municipality_code":{"type":"string","pattern":"^[0-9]{7}$","description":"Código IBGE do município."}}},"NfseSubstitutedReference":{"oneOf":[{"type":"object","additionalProperties":false,"required":["nfse_id"],"properties":{"nfse_id":{"$ref":"#/components/schemas/ObjectId","description":"ID interno da NFS-e autorizada que será substituída."}}},{"type":"object","additionalProperties":false,"required":["external_id"],"properties":{"external_id":{"type":"string","description":"ID externo da NFS-e autorizada que será substituída no mesmo emissor."}}}],"description":"Aceita exatamente um identificador (`nfse_id` ou `external_id`)."},"ObjectId":{"type":"string","description":"Identificador no formato ObjectId."},"NfseServiceEvent":{"type":"object","additionalProperties":false,"properties":{"name":{"type":"string","description":"Nome do evento relacionado ao serviço."},"identifier":{"type":"string","description":"Identificador do evento."},"description":{"type":"string","description":"Descrição do evento."},"start_date":{"type":"string","format":"date","description":"Data de início do evento."},"end_date":{"type":"string","format":"date","description":"Data de encerramento do evento."},"address":{"$ref":"#/components/schemas/NfseAddress","description":"Endereço do evento."}}},"NfseServiceConstruction":{"type":"object","additionalProperties":false,"properties":{"work_code":{"type":"string","description":"Código da obra."},"cib_code":{"type":"string","description":"Código do Cadastro Imobiliário Brasileiro."},"property_registration":{"type":"string","description":"Inscrição imobiliária da obra."},"art":{"type":"string","description":"Anotação, registro ou termo de responsabilidade técnica da obra."},"address":{"$ref":"#/components/schemas/NfseAddress","description":"Endereço da obra."}}},"NfseServiceForeignTrade":{"type":"object","additionalProperties":false,"properties":{"provision_mode":{"type":"string","description":"Modo de prestação no comércio exterior."},"relationship_type":{"type":"string","description":"Tipo de vínculo entre prestador e tomador no exterior."},"currency_code":{"type":"string","description":"Código da moeda da operação."},"foreign_amount":{"allOf":[{"$ref":"#/components/schemas/NfseDecimalValue"}],"minimum":0,"description":"Valor do serviço na moeda estrangeira."},"issuer_support_mechanism":{"type":"string","description":"Mecanismo de apoio ou fomento usado pelo prestador."},"customer_support_mechanism":{"type":"string","description":"Mecanismo de apoio ou fomento usado pelo tomador."},"temporary_goods_movement":{"type":"string","description":"Indicador de movimentação temporária de bens vinculada ao serviço."},"import_declaration_number":{"type":"string","description":"Número da declaração de importação relacionada ao serviço."},"export_registration_number":{"type":"string","description":"Número do registro de exportação relacionado ao serviço."},"mdic_sharing":{"type":"string","description":"Indicador de compartilhamento com o MDIC quando exigido pelo layout fiscal."}}},"NfseDecimalValue":{"oneOf":[{"type":"number"},{"type":"string","pattern":"^\\\\d+(?:\\\\.\\\\d+)?$"}],"description":"Valor decimal aceito como número JSON ou string numérica decimal."},"NfseMunicipalBenefit":{"type":"object","additionalProperties":false,"properties":{"identifier":{"type":"string","pattern":"^[0-9]{14}$","description":"Identificador do benefício fiscal municipal, com 14 dígitos quando serializado no layout nacional."},"base_reduction_amount":{"allOf":[{"$ref":"#/components/schemas/NfseDecimalValue"}],"minimum":0,"description":"Valor de redução da base de cálculo concedido pelo benefício."},"base_reduction_rate":{"allOf":[{"$ref":"#/components/schemas/NfseDecimalValue"}],"minimum":0,"maximum":999.99,"description":"Percentual de redução da base de cálculo concedido pelo benefício."}}},"NfseEstimatedTaxBurden":{"type":"object","additionalProperties":false,"properties":{"federal_amount":{"allOf":[{"$ref":"#/components/schemas/NfseDecimalValue"}],"minimum":0,"maximum":999999999.99,"multipleOf":0.01,"description":"Valor aproximado de tributos federais."},"state_amount":{"allOf":[{"$ref":"#/components/schemas/NfseDecimalValue"}],"minimum":0,"maximum":999999999.99,"multipleOf":0.01,"description":"Valor aproximado de tributos estaduais."},"municipal_amount":{"allOf":[{"$ref":"#/components/schemas/NfseDecimalValue"}],"minimum":0,"maximum":999999999.99,"multipleOf":0.01,"description":"Valor aproximado de tributos municipais."},"federal_rate":{"allOf":[{"$ref":"#/components/schemas/NfseDecimalValue"}],"minimum":0,"maximum":999.99,"description":"Alíquota aproximada de tributos federais."},"state_rate":{"allOf":[{"$ref":"#/components/schemas/NfseDecimalValue"}],"minimum":0,"maximum":999.99,"description":"Alíquota aproximada de tributos estaduais."},"municipal_rate":{"allOf":[{"$ref":"#/components/schemas/NfseDecimalValue"}],"minimum":0,"maximum":999.99,"description":"Alíquota aproximada de tributos municipais."},"simple_national_rate":{"allOf":[{"$ref":"#/components/schemas/NfseDecimalValue"}],"minimum":0,"maximum":99.99,"description":"Alíquota aproximada dos tributos para optante do Simples Nacional."}}},"NfseIbscbs":{"type":"object","additionalProperties":false,"description":"Bloco IBS/CBS compartilhado entre o Ambiente Nacional e provedores municipais aderentes ao IBS/CBS.\n`tax_situation_code` e `classification_code` são o CST/cClassTrib principal do IBS/CBS. O grupo `taxation.regular.*` representa a tributação regular e não é duplicidade desses campos principais.\nNo `national`, envie apenas os campos declaratórios do layout nacional: `purpose`, `final_consumer`, `operation_indicator`, `operation_type`, `government_entity_type`, `destination_indicator`, `references`, `tax_situation_code`/`classification_code`, `destination`, `property`, `taxation` e `reimbursements`.\nOs campos `reduction_rate`, `incidence_location_code`, `incidence_location_name`, `values` e `totals` existem no contrato canônico para provedores municipais aderentes ao IBS/CBS, mas são rejeitados pelo provedor Nacional quando a empresa usa `integration=national`.\nNão envie `ibscbs.taxation.tax_situation_code` nem `ibscbs.taxation.classification_code`; esses aliases são aceitos somente na borda HTTP do `POST /nfse` para compatibilidade de entrada e são normalizados para os campos principais.","properties":{"purpose":{"type":"string","enum":["0"],"description":"Finalidade da NFS-e no bloco IBS/CBS. No XSD nacional atual, apenas `0` é aceito."},"final_consumer":{"type":"string","enum":["0","1"],"description":"Indicador de consumidor final no bloco IBS/CBS. Opcional no XSD nacional."},"operation_indicator":{"type":"string","pattern":"^[0-9]{6}$","description":"Código do indicador da operação no bloco IBS/CBS."},"operation_type":{"type":"string","enum":["1","2","3","4","5"],"description":"Tipo da operação no bloco IBS/CBS."},"government_entity_type":{"type":"string","enum":["1","2","3","4"],"description":"Tipo de ente governamental no bloco IBS/CBS."},"destination_indicator":{"type":"string","enum":["0","1"],"description":"Indicador do destino da operação no bloco IBS/CBS."},"tax_situation_code":{"type":"string","pattern":"^[0-9]{3}$","description":"CST principal aplicado ao bloco IBS/CBS. Não confundir com `taxation.regular.tax_situation_code`, que pertence ao grupo de tributação regular."},"classification_code":{"type":"string","pattern":"^[0-9]{6}$","description":"cClassTrib principal usado no bloco IBS/CBS. Não confundir com `taxation.regular.classification_code`, que pertence ao grupo de tributação regular."},"reduction_rate":{"type":"string","pattern":"^\\\\d+(?:\\\\.\\\\d+)?$","description":"Percentual redutor serializado por providers municipais cujo template consome esse campo. Rejeição fiscal pertence ao provedor."},"incidence_location_code":{"type":"string","description":"Código do local de incidência do IBS/CBS serializado por providers municipais cujo template consome esse campo. Rejeição fiscal pertence ao provedor."},"incidence_location_name":{"type":"string","description":"Nome do local de incidência do IBS/CBS serializado por providers municipais cujo template consome esse campo. Rejeição fiscal pertence ao provedor."},"references":{"type":"array","description":"Referências técnicas aceitas pelo layout IBS/CBS.","items":{"type":"string"}},"destination":{"$ref":"#/components/schemas/NfseIbscbsDestination","description":"Destinatário do serviço no grupo declaratório IBS/CBS do Ambiente Nacional."},"property":{"$ref":"#/components/schemas/NfseIbscbsProperty","description":"Informações de imóvel no grupo declaratório IBS/CBS do Ambiente Nacional."},"taxation":{"$ref":"#/components/schemas/NfseIbscbsTaxation","description":"Subgrupos declaratórios de tributação IBS/CBS. Não contém o CST/cClassTrib principal; esses campos ficam em `ibscbs.tax_situation_code` e `ibscbs.classification_code`."},"reimbursements":{"type":"array","maxItems":1000,"description":"Documentos de reembolso, repasse ou ressarcimento no grupo declaratório IBS/CBS.","items":{"$ref":"#/components/schemas/NfseIbscbsReimbursement"}},"values":{"$ref":"#/components/schemas/NfseIbscbsValues","description":"Valores calculados do IBS/CBS serializados por providers municipais cujo template consome esse grupo. Rejeição fiscal pertence ao provedor."},"totals":{"$ref":"#/components/schemas/NfseIbscbsTotals","description":"Totais calculados do IBS/CBS serializados por providers municipais cujo template consome esse grupo. Rejeição fiscal pertence ao provedor."}}},"NfseIbscbsDestination":{"type":"object","additionalProperties":false,"properties":{"tax_id":{"type":"string","description":"CPF ou CNPJ, somente dígitos."},"nif":{"type":"string","description":"Número de identificação fiscal no exterior."},"no_nif_reason":{"type":"string","enum":["0","1","2"],"description":"Motivo para ausência de NIF."},"legal_name":{"type":"string","description":"Razão social ou nome do destinatário."},"address":{"$ref":"#/components/schemas/NfseIbscbsAddress"},"phone":{"type":"string","description":"Telefone do destinatário."},"email":{"type":"string","format":"email","description":"E-mail do destinatário."}}},"NfseIbscbsAddress":{"type":"object","additionalProperties":false,"properties":{"municipality_code":{"type":"string","pattern":"^[0-9]{7}$","description":"Código IBGE do município para endereço nacional."},"postal_code":{"type":"string","description":"CEP brasileiro ou código postal exterior."},"country_code":{"type":"string","pattern":"^[A-Z]{2}$","description":"Código ISO 3166-1 alfa-2 do país."},"municipality":{"type":"string","description":"Município/localidade do endereço no contrato canônico NFS-e."},"state":{"type":"string","description":"UF brasileira ou estado/província/região estrangeira."},"street":{"type":"string","description":"Logradouro."},"number":{"type":"string","description":"Número do endereço."},"complement":{"type":"string","description":"Complemento do endereço."},"neighborhood":{"type":"string","description":"Bairro."}}},"NfseIbscbsProperty":{"type":"object","additionalProperties":false,"properties":{"registration_code":{"type":"string","description":"Inscrição imobiliária fiscal."},"cib_code":{"type":"string","minLength":8,"maxLength":8,"description":"Código do Cadastro Imobiliário Brasileiro."},"address":{"$ref":"#/components/schemas/NfseIbscbsAddress","description":"Endereço do imóvel. No Nacional, informe `cib_code` ou `address`, nunca ambos."}}},"NfseIbscbsTaxation":{"type":"object","additionalProperties":false,"description":"Subgrupos declaratórios de tributação IBS/CBS. `regular` é tributação regular distinta dos campos principais do bloco.","properties":{"credit_presumed_code":{"type":"string","pattern":"^[0-9]{2}$","description":"Código de crédito presumido IBS/CBS."},"regular":{"$ref":"#/components/schemas/NfseIbscbsRegularTaxation","description":"Tributação regular IBS/CBS, distinta do CST/cClassTrib principal do bloco."},"deferral":{"$ref":"#/components/schemas/NfseIbscbsDeferral"}}},"NfseIbscbsRegularTaxation":{"type":"object","additionalProperties":false,"properties":{"tax_situation_code":{"type":"string","pattern":"^[0-9]{3}$","description":"CST da tributação regular. Campo distinto de `ibscbs.tax_situation_code`."},"classification_code":{"type":"string","pattern":"^[0-9]{6}$","description":"cClassTrib da tributação regular. Campo distinto de `ibscbs.classification_code`."}}},"NfseIbscbsDeferral":{"type":"object","additionalProperties":false,"properties":{"state_rate":{"allOf":[{"$ref":"#/components/schemas/NfseDecimalValue"}],"minimum":0,"maximum":100,"description":"Percentual de diferimento do IBS estadual."},"municipality_rate":{"allOf":[{"$ref":"#/components/schemas/NfseDecimalValue"}],"minimum":0,"maximum":100,"description":"Percentual de diferimento do IBS municipal."},"cbs_rate":{"allOf":[{"$ref":"#/components/schemas/NfseDecimalValue"}],"minimum":0,"maximum":100,"description":"Percentual de diferimento da CBS."}}},"NfseIbscbsReimbursement":{"type":"object","additionalProperties":false,"properties":{"dfe_national":{"$ref":"#/components/schemas/NfseIbscbsDfeNational"},"other_fiscal_document":{"$ref":"#/components/schemas/NfseIbscbsOtherFiscalDocument"},"other_document":{"$ref":"#/components/schemas/NfseIbscbsOtherDocument"},"supplier":{"$ref":"#/components/schemas/NfseIbscbsIdentity"},"issue_date":{"type":"string","format":"date","description":"Data de emissão do documento referenciado."},"competence_date":{"type":"string","format":"date","description":"Data de competência do documento referenciado."},"type":{"type":"string","enum":["01","02","03","04","99"],"description":"Tipo de reembolso, repasse ou ressarcimento."},"type_description":{"type":"string","description":"Descrição quando `type` for `99`."},"amount":{"allOf":[{"$ref":"#/components/schemas/NfseDecimalValue"}],"minimum":0,"description":"Valor do reembolso, repasse ou ressarcimento."}}},"NfseIbscbsDfeNational":{"type":"object","additionalProperties":false,"properties":{"type":{"type":"string","enum":["1","2","3","9"],"description":"Tipo de chave do documento fiscal eletrônico nacional."},"type_description":{"type":"string","description":"Descrição quando `type` for `9`."},"key":{"type":"string","maxLength":50,"description":"Chave do documento fiscal eletrônico."}}},"NfseIbscbsOtherFiscalDocument":{"type":"object","additionalProperties":false,"properties":{"municipality_code":{"type":"string","pattern":"^[0-9]{7}$","description":"Código do município emissor do documento fiscal."},"number":{"type":"string","description":"Número do documento fiscal."},"description":{"type":"string","description":"Descrição do documento fiscal."}}},"NfseIbscbsOtherDocument":{"type":"object","additionalProperties":false,"properties":{"number":{"type":"string","description":"Número do documento não fiscal."},"description":{"type":"string","description":"Descrição do documento não fiscal."}}},"NfseIbscbsIdentity":{"type":"object","additionalProperties":false,"properties":{"tax_id":{"type":"string","description":"CPF ou CNPJ, somente dígitos."},"nif":{"type":"string","description":"Número de identificação fiscal no exterior."},"no_nif_reason":{"type":"string","enum":["0","1","2"],"description":"Motivo para ausência de NIF."},"legal_name":{"type":"string","description":"Razão social ou nome."}}},"NfseIbscbsValues":{"type":"object","additionalProperties":false,"description":"Valores calculados do IBS/CBS para providers municipais que serializam esse grupo. Não enviar no Ambiente Nacional.","properties":{"base_amount":{"allOf":[{"$ref":"#/components/schemas/NfseDecimalValue"}],"minimum":0,"description":"Base de cálculo do IBS/CBS."},"state":{"$ref":"#/components/schemas/NfseIbscbsStateValues"},"municipality":{"$ref":"#/components/schemas/NfseIbscbsMunicipalityValues"},"federal":{"$ref":"#/components/schemas/NfseIbscbsFederalValues"}}},"NfseIbscbsStateValues":{"type":"object","additionalProperties":false,"properties":{"ibs_state_rate":{"allOf":[{"$ref":"#/components/schemas/NfseDecimalValue"}],"minimum":0,"description":"Alíquota estadual do IBS."},"ibs_state_reduction_rate":{"allOf":[{"$ref":"#/components/schemas/NfseDecimalValue"}],"minimum":0,"maximum":100,"description":"Redução de alíquota estadual do IBS em providers municipais aderentes ao IBS/CBS."},"ibs_state_effective_rate":{"allOf":[{"$ref":"#/components/schemas/NfseDecimalValue"}],"minimum":0,"description":"Alíquota efetiva estadual do IBS."}}},"NfseIbscbsMunicipalityValues":{"type":"object","additionalProperties":false,"properties":{"ibs_municipality_rate":{"allOf":[{"$ref":"#/components/schemas/NfseDecimalValue"}],"minimum":0,"description":"Alíquota municipal do IBS."},"ibs_municipality_reduction_rate":{"allOf":[{"$ref":"#/components/schemas/NfseDecimalValue"}],"minimum":0,"maximum":100,"description":"Redução de alíquota municipal do IBS em providers municipais aderentes ao IBS/CBS."},"ibs_municipality_effective_rate":{"allOf":[{"$ref":"#/components/schemas/NfseDecimalValue"}],"minimum":0,"description":"Alíquota efetiva municipal do IBS."}}},"NfseIbscbsFederalValues":{"type":"object","additionalProperties":false,"properties":{"cbs_rate":{"allOf":[{"$ref":"#/components/schemas/NfseDecimalValue"}],"minimum":0,"description":"Alíquota federal da CBS."},"cbs_reduction_rate":{"allOf":[{"$ref":"#/components/schemas/NfseDecimalValue"}],"minimum":0,"maximum":100,"description":"Redução de alíquota federal da CBS em providers municipais aderentes ao IBS/CBS."},"cbs_effective_rate":{"allOf":[{"$ref":"#/components/schemas/NfseDecimalValue"}],"minimum":0,"description":"Alíquota efetiva federal da CBS."}}},"NfseIbscbsTotals":{"type":"object","additionalProperties":false,"description":"Totais calculados do IBS/CBS para providers municipais que serializam esse grupo. Não enviar no Ambiente Nacional.","properties":{"total_nf_amount":{"allOf":[{"$ref":"#/components/schemas/NfseDecimalValue"}],"minimum":0,"description":"Total da NFS-e usado no bloco IBS/CBS."},"ibs":{"$ref":"#/components/schemas/NfseIbscbsIbsTotals"},"cbs":{"$ref":"#/components/schemas/NfseIbscbsCbsTotals"},"government_purchase":{"$ref":"#/components/schemas/NfseIbscbsGovernmentPurchaseTotals"}}},"NfseIbscbsIbsTotals":{"type":"object","additionalProperties":false,"properties":{"total_amount":{"allOf":[{"$ref":"#/components/schemas/NfseDecimalValue"}],"minimum":0,"description":"Total consolidado do IBS."},"credit_presumed":{"$ref":"#/components/schemas/NfseIbscbsCreditPresumedTotals"},"state_total":{"$ref":"#/components/schemas/NfseIbscbsIbsLocationTotal"},"municipality_total":{"$ref":"#/components/schemas/NfseIbscbsIbsLocationTotal"}}},"NfseIbscbsCreditPresumedTotals":{"type":"object","additionalProperties":false,"properties":{"rate":{"allOf":[{"$ref":"#/components/schemas/NfseDecimalValue"}],"minimum":0,"maximum":100,"description":"Percentual de crédito presumido em providers municipais aderentes ao IBS/CBS."},"amount":{"allOf":[{"$ref":"#/components/schemas/NfseDecimalValue"}],"minimum":0,"description":"Valor de crédito presumido em providers municipais aderentes ao IBS/CBS."}}},"NfseIbscbsIbsLocationTotal":{"type":"object","additionalProperties":false,"properties":{"total_amount":{"allOf":[{"$ref":"#/components/schemas/NfseDecimalValue"}],"minimum":0,"description":"Valor total consolidado do grupo correspondente."},"deferral_amount":{"allOf":[{"$ref":"#/components/schemas/NfseDecimalValue"}],"minimum":0,"description":"Valor diferido do grupo correspondente em providers municipais aderentes ao IBS/CBS."}}},"NfseIbscbsCbsTotals":{"type":"object","additionalProperties":false,"properties":{"total_amount":{"allOf":[{"$ref":"#/components/schemas/NfseDecimalValue"}],"minimum":0,"description":"Total consolidado da CBS."},"credit_presumed":{"$ref":"#/components/schemas/NfseIbscbsCreditPresumedTotals"},"deferral_amount":{"allOf":[{"$ref":"#/components/schemas/NfseDecimalValue"}],"minimum":0,"description":"Valor diferido da CBS em providers municipais aderentes ao IBS/CBS."}}},"NfseIbscbsGovernmentPurchaseTotals":{"type":"object","additionalProperties":false,"properties":{"ibs_state_rate":{"allOf":[{"$ref":"#/components/schemas/NfseDecimalValue"}],"minimum":0,"maximum":100,"description":"Alíquota estadual do IBS em compra governamental."},"ibs_state_amount":{"allOf":[{"$ref":"#/components/schemas/NfseDecimalValue"}],"minimum":0,"description":"Valor estadual do IBS em compra governamental."},"ibs_municipality_rate":{"allOf":[{"$ref":"#/components/schemas/NfseDecimalValue"}],"minimum":0,"maximum":100,"description":"Alíquota municipal do IBS em compra governamental."},"ibs_municipality_amount":{"allOf":[{"$ref":"#/components/schemas/NfseDecimalValue"}],"minimum":0,"description":"Valor municipal do IBS em compra governamental."},"cbs_rate":{"allOf":[{"$ref":"#/components/schemas/NfseDecimalValue"}],"minimum":0,"maximum":100,"description":"Alíquota da CBS em compra governamental."},"cbs_amount":{"allOf":[{"$ref":"#/components/schemas/NfseDecimalValue"}],"minimum":0,"description":"Valor da CBS em compra governamental."}}},"NfseValues":{"type":"object","additionalProperties":false,"required":["total_amount"],"properties":{"total_amount":{"allOf":[{"$ref":"#/components/schemas/NfseDecimalValue"}],"minimum":0,"description":"Valor total do serviço."},"net_amount":{"allOf":[{"$ref":"#/components/schemas/NfseDecimalValue"}],"minimum":0,"description":"Valor líquido do serviço."},"rate":{"allOf":[{"$ref":"#/components/schemas/NfseDecimalValue"}],"minimum":0,"description":"Alíquota do ISS."},"iss_amount":{"allOf":[{"$ref":"#/components/schemas/NfseDecimalValue"}],"minimum":0,"description":"Valor do ISS."},"unconditional_discount":{"allOf":[{"$ref":"#/components/schemas/NfseDecimalValue"}],"minimum":0,"description":"Desconto incondicional aplicado ao serviço."},"conditional_discount":{"allOf":[{"$ref":"#/components/schemas/NfseDecimalValue"}],"minimum":0,"description":"Desconto condicional aplicado ao serviço."},"ir_amount":{"allOf":[{"$ref":"#/components/schemas/NfseDecimalValue"}],"minimum":0,"description":"Valor do IR retido na fonte."},"pis_amount":{"allOf":[{"$ref":"#/components/schemas/NfseDecimalValue"}],"minimum":0,"description":"Valor do PIS retido na fonte."},"cofins_amount":{"allOf":[{"$ref":"#/components/schemas/NfseDecimalValue"}],"minimum":0,"description":"Valor da COFINS retida na fonte."},"inss_amount":{"allOf":[{"$ref":"#/components/schemas/NfseDecimalValue"}],"minimum":0,"description":"Valor do INSS retido na fonte."},"csll_amount":{"allOf":[{"$ref":"#/components/schemas/NfseDecimalValue"}],"minimum":0,"description":"Valor da CSLL retida na fonte."},"other_retentions":{"allOf":[{"$ref":"#/components/schemas/NfseDecimalValue"}],"minimum":0,"description":"Outras retenções aplicadas ao serviço."},"deductions_amount":{"allOf":[{"$ref":"#/components/schemas/NfseDecimalValue"}],"minimum":0,"description":"Valor total das deduções."},"intermediary_amount":{"allOf":[{"$ref":"#/components/schemas/NfseDecimalValue"}],"minimum":0,"description":"Valor recebido pelo intermediário do serviço, quando o layout fiscal exigir esse destaque."},"cp_amount":{"allOf":[{"$ref":"#/components/schemas/NfseDecimalValue"}],"minimum":0,"description":"Valor de Contribuição Previdenciária retido."},"pis_cofins_base_amount":{"allOf":[{"$ref":"#/components/schemas/NfseDecimalValue"}],"minimum":0,"description":"Base de cálculo compartilhada para PIS e COFINS (vBCPisCofins no XML)."},"pis_rate":{"allOf":[{"$ref":"#/components/schemas/NfseDecimalValue"}],"minimum":0,"maximum":100,"description":"Alíquota do PIS (pAliqPis no XML)."},"cofins_rate":{"allOf":[{"$ref":"#/components/schemas/NfseDecimalValue"}],"minimum":0,"maximum":100,"description":"Alíquota da COFINS (pAliqCofins no XML)."},"deductions":{"type":"array","maxItems":1000,"description":"Documentos fiscais usados para dedução ou redução da base de cálculo, quando o layout fiscal permitir.","items":{"$ref":"#/components/schemas/NfseDeduction"}}}},"NfseDeduction":{"type":"object","additionalProperties":false,"properties":{"type":{"type":"string","enum":["1","2","3","4","5","6","7","8","9","99"],"description":"Tipo fiscal da dedução conforme o layout aplicável."},"description":{"type":"string","maxLength":150,"description":"Descrição da dedução ou redução."},"deductible_amount":{"allOf":[{"$ref":"#/components/schemas/NfseDecimalValue"}],"minimum":0,"description":"Valor do documento elegível à dedução."},"deduction_amount":{"allOf":[{"$ref":"#/components/schemas/NfseDecimalValue"}],"minimum":0,"description":"Valor efetivamente deduzido."},"document_kind":{"type":"string","description":"Tipo de documento que comprova a dedução."},"nfse_key":{"type":"string","pattern":"^[0-9]{50}$","description":"Chave de acesso da NFS-e usada como documento de dedução, com 50 dígitos quando exigida pelo Nacional."},"nfe_key":{"type":"string","pattern":"^[0-9]{44}$","description":"Chave de acesso da NF-e usada como documento de dedução, com 44 dígitos quando exigida pelo Nacional."},"other_document_number":{"type":"string","maxLength":255,"description":"Número de outro documento aceito para dedução."},"issue_date":{"type":"string","format":"date","description":"Data de emissão do documento de dedução."},"municipal_nfse":{"$ref":"#/components/schemas/NfseDeductionMunicipalNfse"},"fiscal_document":{"$ref":"#/components/schemas/NfseDeductionFiscalDocument"},"supplier":{"$ref":"#/components/schemas/NfseIntermediary","description":"Fornecedor ou prestador associado ao documento de dedução."}}},"NfseDeductionMunicipalNfse":{"type":"object","additionalProperties":false,"properties":{"municipality_code":{"type":"string","pattern":"^[0-9]{7}$","description":"Código IBGE do município da NFS-e dedutível."},"number":{"type":"string","description":"Número da NFS-e dedutível."},"verification_code":{"type":"string","pattern":"^[a-zA-Z0-9]{1,9}$","description":"Código de verificação da NFS-e dedutível."}}},"NfseDeductionFiscalDocument":{"type":"object","additionalProperties":false,"properties":{"number":{"type":"string","description":"Número do documento fiscal dedutível."},"model":{"type":"string","description":"Modelo do documento fiscal dedutível."},"series":{"type":"string","description":"Série do documento fiscal dedutível."},"state":{"type":"string","maxLength":2,"description":"UF do documento fiscal dedutível."},"access_key":{"type":"string","description":"Chave de acesso do documento fiscal dedutível."}}}}}}
```

## The NfseListResponse object

```json
{"openapi":"3.1.1","info":{"title":"API IXC E-Docs - Integração x-api-key","version":"0.1.0"},"components":{"schemas":{"NfseListResponse":{"type":"object","additionalProperties":false,"required":["items","paginate"],"properties":{"items":{"type":"array","items":{"$ref":"#/components/schemas/NfseListItem"}},"paginate":{"$ref":"#/components/schemas/NfseCursorPaginateMeta"}}},"NfseListItem":{"type":"object","additionalProperties":false,"description":"Item retornado na listagem de NFS-e. Os campos disponíveis dependem do parâmetro `fields`; `operation_control` é calculado pela API para controle operacional.","properties":{"id":{"type":"string"},"company_id":{"type":"string","description":"Identificador da empresa emissora da NFS-e."},"protocol":{"type":["string","null"]},"nfse_number":{"type":["string","null"]},"batch_number":{"type":["integer","null"],"description":"Número do lote de envio atribuído para providers que usam envio em lote."},"rps":{"type":["object","null"],"additionalProperties":false,"description":"Identificadores RPS da emissão municipal, quando aplicável.","properties":{"number":{"type":["integer","null"]},"series":{"type":["string","null"]},"type":{"type":["string","null"]},"batch":{"type":["integer","null"]}}},"dps":{"type":["object","null"],"additionalProperties":false,"description":"Identificadores DPS da emissão nacional, quando aplicável.","properties":{"identifier":{"type":["string","null"]},"number":{"type":["integer","null"]},"series":{"type":["string","null"]},"type":{"type":["string","null"]}}},"external_id":{"type":"string"},"authorization":{"type":["string","null"],"description":"Código de verificação retornado pelo provider municipal. No Nacional, a chave fiscal fica em `access_key`."},"access_key":{"type":["string","null"],"description":"Chave de acesso da NFS-e (50 dígitos no padrão nacional, quando disponível no municipal)."},"link":{"type":["string","null"],"description":"Link de verificação da NFS-e no portal do município."},"integration":{"type":"string","enum":["municipal","national"]},"provider":{"type":["string","null"]},"environment":{"type":"string","enum":["production","homologation"]},"status":{"type":"string","enum":["created","processing","authorized","rejected","canceled","substituted","error","unsynced"]},"operation_status":{"type":["string","null"],"description":"Situação operacional. null = nenhuma operação em andamento; `cancellation_error` indica falha terminal de cancelamento com nova tentativa permitida quando `operation_control.can_cancel=true`, inclusive em registros legados `unsynced`.","enum":[null,"sync_pending","cancellation_pending","cancellation_error","substitution_pending"]},"operation_control":{"$ref":"#/components/schemas/NfseOperationControl"},"is_current":{"type":"boolean"},"check_pending_at":{"type":["string","null"],"format":"date-time"},"issuer":{"type":"object","properties":{"legal_name":{"type":"string"},"name":{"type":"string"},"tax_id":{"type":"string"},"address":{"type":"object","properties":{"municipality":{"type":"string"},"state":{"type":"string"},"municipality_code":{"type":["string","null"]}}}}},"created_at":{"type":"string","format":"date-time"},"updated_at":{"type":"string","format":"date-time"}}},"NfseOperationControl":{"type":"object","additionalProperties":false,"required":["current_operation","can_cancel","can_interrupt","interrupt_available_at","elapsed_ms"],"properties":{"current_operation":{"type":["string","null"],"description":"Operação local acompanhada pela API no momento.","enum":[null,"send","cancel","substitute","post_send_verification","document_reconciliation","cancellation_reconciliation"]},"can_cancel":{"type":"boolean","description":"Indica se a interface pode liberar a ação de cancelamento para a NFS-e, considerando status local, operação ativa e capability do provedor."},"can_interrupt":{"type":"boolean","description":"Indica se a interface pode liberar a ação de interromper operação."},"interrupt_available_at":{"type":["string","null"],"format":"date-time","description":"Instante em que a interrupção fica disponível. Para `post_send_verification`, corresponde à janela de atenção de 5 minutos."},"elapsed_ms":{"type":["integer","null"],"minimum":0,"description":"Tempo decorrido desde o início da operação acompanhada, em milissegundos."}}},"NfseCursorPaginateMeta":{"type":"object","additionalProperties":false,"required":["limit","has_next_page","has_previous_page","start_cursor","end_cursor"],"properties":{"limit":{"type":"integer","minimum":10,"maximum":500},"has_next_page":{"type":"boolean"},"has_previous_page":{"type":"boolean"},"start_cursor":{"type":["string","null"]},"end_cursor":{"type":["string","null"]}}}}}}
```

## The NfseCursorPaginateMeta object

```json
{"openapi":"3.1.1","info":{"title":"API IXC E-Docs - Integração x-api-key","version":"0.1.0"},"components":{"schemas":{"NfseCursorPaginateMeta":{"type":"object","additionalProperties":false,"required":["limit","has_next_page","has_previous_page","start_cursor","end_cursor"],"properties":{"limit":{"type":"integer","minimum":10,"maximum":500},"has_next_page":{"type":"boolean"},"has_previous_page":{"type":"boolean"},"start_cursor":{"type":["string","null"]},"end_cursor":{"type":["string","null"]}}}}}}
```

## The NfseOperationControl object

```json
{"openapi":"3.1.1","info":{"title":"API IXC E-Docs - Integração x-api-key","version":"0.1.0"},"components":{"schemas":{"NfseOperationControl":{"type":"object","additionalProperties":false,"required":["current_operation","can_cancel","can_interrupt","interrupt_available_at","elapsed_ms"],"properties":{"current_operation":{"type":["string","null"],"description":"Operação local acompanhada pela API no momento.","enum":[null,"send","cancel","substitute","post_send_verification","document_reconciliation","cancellation_reconciliation"]},"can_cancel":{"type":"boolean","description":"Indica se a interface pode liberar a ação de cancelamento para a NFS-e, considerando status local, operação ativa e capability do provedor."},"can_interrupt":{"type":"boolean","description":"Indica se a interface pode liberar a ação de interromper operação."},"interrupt_available_at":{"type":["string","null"],"format":"date-time","description":"Instante em que a interrupção fica disponível. Para `post_send_verification`, corresponde à janela de atenção de 5 minutos."},"elapsed_ms":{"type":["integer","null"],"minimum":0,"description":"Tempo decorrido desde o início da operação acompanhada, em milissegundos."}}}}}}
```

## The NfseListItem object

```json
{"openapi":"3.1.1","info":{"title":"API IXC E-Docs - Integração x-api-key","version":"0.1.0"},"components":{"schemas":{"NfseListItem":{"type":"object","additionalProperties":false,"description":"Item retornado na listagem de NFS-e. Os campos disponíveis dependem do parâmetro `fields`; `operation_control` é calculado pela API para controle operacional.","properties":{"id":{"type":"string"},"company_id":{"type":"string","description":"Identificador da empresa emissora da NFS-e."},"protocol":{"type":["string","null"]},"nfse_number":{"type":["string","null"]},"batch_number":{"type":["integer","null"],"description":"Número do lote de envio atribuído para providers que usam envio em lote."},"rps":{"type":["object","null"],"additionalProperties":false,"description":"Identificadores RPS da emissão municipal, quando aplicável.","properties":{"number":{"type":["integer","null"]},"series":{"type":["string","null"]},"type":{"type":["string","null"]},"batch":{"type":["integer","null"]}}},"dps":{"type":["object","null"],"additionalProperties":false,"description":"Identificadores DPS da emissão nacional, quando aplicável.","properties":{"identifier":{"type":["string","null"]},"number":{"type":["integer","null"]},"series":{"type":["string","null"]},"type":{"type":["string","null"]}}},"external_id":{"type":"string"},"authorization":{"type":["string","null"],"description":"Código de verificação retornado pelo provider municipal. No Nacional, a chave fiscal fica em `access_key`."},"access_key":{"type":["string","null"],"description":"Chave de acesso da NFS-e (50 dígitos no padrão nacional, quando disponível no municipal)."},"link":{"type":["string","null"],"description":"Link de verificação da NFS-e no portal do município."},"integration":{"type":"string","enum":["municipal","national"]},"provider":{"type":["string","null"]},"environment":{"type":"string","enum":["production","homologation"]},"status":{"type":"string","enum":["created","processing","authorized","rejected","canceled","substituted","error","unsynced"]},"operation_status":{"type":["string","null"],"description":"Situação operacional. null = nenhuma operação em andamento; `cancellation_error` indica falha terminal de cancelamento com nova tentativa permitida quando `operation_control.can_cancel=true`, inclusive em registros legados `unsynced`.","enum":[null,"sync_pending","cancellation_pending","cancellation_error","substitution_pending"]},"operation_control":{"$ref":"#/components/schemas/NfseOperationControl"},"is_current":{"type":"boolean"},"check_pending_at":{"type":["string","null"],"format":"date-time"},"issuer":{"type":"object","properties":{"legal_name":{"type":"string"},"name":{"type":"string"},"tax_id":{"type":"string"},"address":{"type":"object","properties":{"municipality":{"type":"string"},"state":{"type":"string"},"municipality_code":{"type":["string","null"]}}}}},"created_at":{"type":"string","format":"date-time"},"updated_at":{"type":"string","format":"date-time"}}},"NfseOperationControl":{"type":"object","additionalProperties":false,"required":["current_operation","can_cancel","can_interrupt","interrupt_available_at","elapsed_ms"],"properties":{"current_operation":{"type":["string","null"],"description":"Operação local acompanhada pela API no momento.","enum":[null,"send","cancel","substitute","post_send_verification","document_reconciliation","cancellation_reconciliation"]},"can_cancel":{"type":"boolean","description":"Indica se a interface pode liberar a ação de cancelamento para a NFS-e, considerando status local, operação ativa e capability do provedor."},"can_interrupt":{"type":"boolean","description":"Indica se a interface pode liberar a ação de interromper operação."},"interrupt_available_at":{"type":["string","null"],"format":"date-time","description":"Instante em que a interrupção fica disponível. Para `post_send_verification`, corresponde à janela de atenção de 5 minutos."},"elapsed_ms":{"type":["integer","null"],"minimum":0,"description":"Tempo decorrido desde o início da operação acompanhada, em milissegundos."}}}}}}
```

## The NfseReadResponse object

```json
{"openapi":"3.1.1","info":{"title":"API IXC E-Docs - Integração x-api-key","version":"0.1.0"},"components":{"schemas":{"NfseReadResponse":{"type":"object","additionalProperties":false,"description":"Dados completos da NFS-e, incluindo emitente, tomador, serviço, valores, tributos e URLs de download.\nOs campos `xml_url`, `danfse_url` e o alias de compatibilidade `pdf_url` são preenchidos somente quando os artefatos existem.","properties":{"id":{"type":"string","description":"Identificador interno da NFS-e."},"workspace_id":{"type":"string"},"company_id":{"type":"string"},"external_id":{"type":"string"},"status":{"type":"string","enum":["created","processing","authorized","rejected","canceled","substituted","error","unsynced"]},"operation_status":{"type":["string","null"],"description":"Situação operacional. null = nenhuma operação em andamento; `cancellation_error` indica falha terminal de cancelamento com nova tentativa permitida quando `operation_control.can_cancel=true`, inclusive em registros legados `unsynced`.","enum":[null,"sync_pending","cancellation_pending","cancellation_error","substitution_pending"]},"operation_control":{"$ref":"#/components/schemas/NfseOperationControl"},"is_current":{"type":"boolean"},"protocol":{"type":["string","null"]},"nfse_number":{"type":["string","null"]},"authorization":{"type":["string","null"],"description":"Código de verificação retornado pelo provider municipal. No Nacional, a chave fiscal fica em `access_key`."},"access_key":{"type":["string","null"],"description":"Chave de acesso da NFS-e (50 dígitos no padrão nacional, quando disponível no municipal)."},"link":{"type":["string","null"],"description":"Link de verificação da NFS-e no portal do município."},"integration":{"type":"string","description":"Tipo de integração persistido na nota (`municipal` ou `national`)."},"provider":{"type":["string","null"],"description":"Slug técnico do provider municipal, quando a integração for municipal."},"environment":{"type":"string","enum":["production","homologation"]},"emission_datetime":{"type":["string","null"],"format":"date-time","description":"Data/hora de emissão fiscal persistida para a NFS-e."},"competence_date":{"type":["string","null"],"description":"Data de competência fiscal persistida para a NFS-e."},"send_email":{"type":"boolean","description":"Indica se a DANFSe/XML devem ser enviados por e-mail ao tomador."},"check_pending_at":{"type":["string","null"],"format":"date-time","description":"Data/hora em que a nota entrou em estado de verificação pendente."},"next_check_at":{"type":["string","null"],"format":"date-time","description":"Próxima consulta automática planejada para reconciliação."},"sent_at":{"type":["string","null"],"format":"date-time","description":"Data/hora em que o envio foi concluído pelo provedor."},"authorized_at":{"type":["string","null"],"format":"date-time","description":"Data/hora de autorização fiscal da NFS-e."},"cancel_requested_at":{"type":["string","null"],"format":"date-time","description":"Data/hora em que o cancelamento foi solicitado."},"canceled_at":{"type":["string","null"],"format":"date-time","description":"Data/hora de cancelamento fiscal da NFS-e."},"cancel_code":{"type":["integer","null"],"description":"Código fiscal de cancelamento usado em cancelamento ou substituição."},"cancel_not_confirmed_at":{"type":["string","null"],"format":"date-time","description":"Data/hora em que a API registrou cancelamento ainda não confirmado pelo provedor."},"cancel_not_confirmed_reason":{"type":["string","null"],"description":"Motivo registrado quando o cancelamento ainda não foi confirmado."},"substitution_requested_at":{"type":["string","null"],"format":"date-time","description":"Data/hora em que uma substituição foi solicitada."},"substitution_requested_nfse_id":{"type":["string","null"],"description":"Identificador da NFS-e criada para substituir este documento, quando aplicável."},"substituted_id":{"type":["string","null"],"description":"Identificador da NFS-e original substituída por este documento, quando aplicável."},"rejected_at":{"type":["string","null"],"format":"date-time","description":"Data/hora em que a rejeição foi registrada."},"nfse_series":{"type":["string","null"],"description":"Série fiscal persistida para a NFS-e (espelha o RPS/DPS conforme o modelo fiscal de referência)."},"batch_number":{"type":["integer","null"],"description":"Número do lote de envio atribuído pelo dispatcher para providers que usam envio em lote."},"reference_model":{"type":["string","null"],"enum":[null,"rps","dps"],"description":"Modelo fiscal de referência usado nesta emissão, resolvido a partir do `setup_spec.reference_model` do provider efetivo."},"rps":{"type":["object","null"],"additionalProperties":false,"description":"Identificadores RPS da emissão municipal, quando aplicável.","properties":{"number":{"type":["integer","null"]},"series":{"type":["string","null"]},"type":{"type":["string","null"]},"batch":{"type":["integer","null"]}}},"dps":{"type":["object","null"],"additionalProperties":false,"description":"Identificadores DPS da emissão nacional, quando aplicável.","properties":{"identifier":{"type":["string","null"]},"number":{"type":["integer","null"]},"series":{"type":["string","null"]},"type":{"type":["string","null"]}}},"issuer":{"type":"object","properties":{"tax_id":{"type":"string"},"legal_name":{"type":"string"},"name":{"type":"string"},"email":{"type":["string","null"]},"phone":{"type":["string","null"]},"municipal_registration":{"type":["string","null"]},"simple_national":{"type":["integer","null"],"enum":[null,1,2,3],"description":"Enquadramento canônico do emitente no Simples Nacional. Este é o campo usado por providers ABRASF para decidir `OptanteSimplesNacional`; não confundir com `simple_national_apportionment`.\n- `1` — Não optante pelo Simples Nacional.\n- `2` — MEI optante pelo Simples Nacional.\n- `3` — ME/EPP optante pelo Simples Nacional."},"simple_national_apportionment":{"type":["integer","null"],"enum":[null,1,2,3],"description":"Regime de apuração do Simples Nacional usado apenas por layouts que possuem `regApTribSN`, como Nacional, ISSNet, RLZ e Mega. Não substitui `simple_national` e não deve ser usado para montar `OptanteSimplesNacional`.\n- `1` — Tributos federais e municipal pelo Simples Nacional.\n- `2` — Tributos federais pelo Simples Nacional e ISSQN pela NFS-e municipal.\n- `3` — Tributos federais e municipal fora do Simples Nacional."},"special_tax_regime":{"type":["integer","null"]},"tax_incentive":{"type":["integer","null"]},"is_headquarters":{"type":["boolean","null"]},"address":{"type":"object","properties":{"street":{"type":"string"},"number":{"type":"string"},"neighborhood":{"type":"string"},"city":{"type":"string","description":"Cidade/localidade do endereço. Campo canônico do contrato NFS-e."},"municipality":{"type":"string","description":"**Compatibilidade.** (Compatibility) Alias permanente de `city`.\nAceito na entrada HTTP e devolvido nas respostas para manter integrações existentes.\nNão é usado por providers, templates, workers ou DANFSe."},"state":{"type":"string","description":"UF brasileira ou estado/província/região estrangeira."},"postal_code":{"type":"string","description":"CEP brasileiro ou código postal exterior."},"municipality_code":{"type":"string","description":"Código IBGE do município brasileiro, usado para serialização fiscal quando aplicável."},"complement":{"type":"string"},"country":{"type":["string","null"]},"country_code":{"type":["string","null"],"pattern":"^[A-Z]{2}$","description":"Código ISO 3166-1 alfa-2 do país."}}}}},"customer":{"$ref":"#/components/schemas/NfseCustomer","description":"Tomador do serviço."},"intermediary":{"oneOf":[{"$ref":"#/components/schemas/NfseIntermediary"},{"type":"null"}],"description":"Intermediário do serviço, quando informado."},"service":{"type":"object","additionalProperties":false,"properties":{"description":{"type":"string"},"cnae_code":{"type":["string","null"]},"national_tax_code":{"type":["string","null"],"description":"Código nacional de tributação do serviço (`cTribNac`). Campo canônico."},"operation_nature":{"type":["string","null"],"description":"Natureza da operação fiscal do serviço quando o provider municipal possuir tag própria, como `NaturezaOperacao`. Não substitui `taxes.iss_taxation`."},"lc116_code":{"type":["string","null"],"description":"Código do item da lista de serviços da LC 116/2003 usado por providers municipais em `ItemListaServico` quando o layout exigir esse campo separado do código tributário municipal."},"municipal_tax_code":{"type":["string","null"]},"incidence_municipality_code":{"type":["string","null"]},"country_code":{"type":["string","null"]},"nbs_code":{"type":["string","null"]},"taxpayer_code":{"type":["string","null"]},"technical_document_id":{"type":["string","null"]},"reference_document":{"type":["string","null"]},"purchase_order_number":{"type":["string","null"]},"additional_information":{"type":["string","null"]},"event":{"$ref":"#/components/schemas/NfseServiceEvent"},"construction":{"$ref":"#/components/schemas/NfseServiceConstruction"},"foreign_trade":{"$ref":"#/components/schemas/NfseServiceForeignTrade"}}},"taxes":{"oneOf":[{"type":"object","properties":{"iss_taxation":{"type":["string","null"]},"iss_retention_type":{"type":["string","null"]},"social_retention_type":{"type":["string","null"]},"pis_cofins_cst":{"type":["string","null"]},"result_country_code":{"type":["string","null"]},"immunity_type":{"type":["string","null"]},"suspension_type":{"type":["string","null"]},"suspension_process_number":{"type":["string","null"]},"municipal_benefit":{"$ref":"#/components/schemas/NfseMunicipalBenefit"},"estimated_tax_burden":{"$ref":"#/components/schemas/NfseEstimatedTaxBurden"}}},{"type":"null"}]},"ibscbs":{"oneOf":[{"$ref":"#/components/schemas/NfseIbscbs"},{"type":"null"}]},"values":{"$ref":"#/components/schemas/NfseValues","description":"Valores da nota fiscal, incluindo deduções detalhadas quando informadas."},"cancel_reason":{"type":["string","null"]},"rejection_reason":{"type":["string","null"]},"rejection_details":{"type":["array","null"],"description":"Detalhes estruturados da rejeição fiscal persistidos na NFS-e quando o provedor informa mensagens de rejeição. Este campo pode ficar ausente ou nulo quando o documento persistido não carrega detalhe estruturado.","items":{"type":"object","additionalProperties":false,"required":["message"],"properties":{"code":{"type":["string","null"]},"message":{"type":"string"},"correction":{"type":["string","null"]}}}},"xml_url":{"type":["string","null"],"description":"URL pública para download do XML autorizado, incluindo `download_token` na querystring."},"danfse_url":{"type":["string","null"],"description":"URL pública para download da DANFSe, incluindo `download_token` na querystring."},"pdf_url":{"type":["string","null"],"description":"**Compatibilidade.** (Compatibility) Alias permanente de `danfse_url` para integrações antigas.\nMantido indefinidamente. Em código novo, prefira `danfse_url`.\n"},"created_at":{"type":"string","format":"date-time"},"updated_at":{"type":"string","format":"date-time"}}},"NfseOperationControl":{"type":"object","additionalProperties":false,"required":["current_operation","can_cancel","can_interrupt","interrupt_available_at","elapsed_ms"],"properties":{"current_operation":{"type":["string","null"],"description":"Operação local acompanhada pela API no momento.","enum":[null,"send","cancel","substitute","post_send_verification","document_reconciliation","cancellation_reconciliation"]},"can_cancel":{"type":"boolean","description":"Indica se a interface pode liberar a ação de cancelamento para a NFS-e, considerando status local, operação ativa e capability do provedor."},"can_interrupt":{"type":"boolean","description":"Indica se a interface pode liberar a ação de interromper operação."},"interrupt_available_at":{"type":["string","null"],"format":"date-time","description":"Instante em que a interrupção fica disponível. Para `post_send_verification`, corresponde à janela de atenção de 5 minutos."},"elapsed_ms":{"type":["integer","null"],"minimum":0,"description":"Tempo decorrido desde o início da operação acompanhada, em milissegundos."}}},"NfseCustomer":{"type":"object","additionalProperties":false,"required":["legal_name"],"anyOf":[{"required":["tax_id"]},{"required":["nif"]},{"required":["no_nif_reason"]}],"properties":{"tax_id":{"type":"string","minLength":1,"description":"CPF ou CNPJ do tomador, somente dígitos. Para tomador estrangeiro, use `nif` ou `no_nif_reason` conforme o layout fiscal."},"municipal_registration":{"type":"string","description":"Inscrição Municipal do tomador."},"nif":{"type":"string","minLength":1,"description":"Número de identificação fiscal do tomador estrangeiro."},"no_nif_reason":{"type":"string","enum":["0","1","2"],"description":"Motivo da ausência de NIF do tomador estrangeiro quando o layout fiscal permitir."},"caepf":{"type":"string","description":"Cadastro de Atividade Econômica da Pessoa Física do tomador."},"legal_name":{"type":"string","description":"Razão social ou nome do tomador."},"name":{"type":"string","description":"Nome fantasia do tomador."},"address":{"$ref":"#/components/schemas/NfseAddress","description":"Endereço completo do tomador."},"phone":{"type":"string","description":"Telefone de contato do tomador."},"email":{"type":"string","format":"email","description":"E-mail de contato do tomador."}}},"NfseAddress":{"type":"object","additionalProperties":false,"properties":{"street":{"type":"string","minLength":1,"pattern":"^[A-Za-zÀ-ÖØ-öø-ÿ0-9 .,-]+$","description":"Logradouro. Não aceita símbolos especiais nem quebra de linha."},"number":{"type":"string","minLength":1,"pattern":"^[A-Za-zÀ-ÖØ-öø-ÿ0-9 .,-]+$","description":"Número do endereço. Não aceita símbolos especiais nem quebra de linha."},"neighborhood":{"type":"string","minLength":1,"pattern":"^[A-Za-zÀ-ÖØ-öø-ÿ0-9 .,-]+$","description":"Bairro. Não aceita símbolos especiais nem quebra de linha."},"municipality":{"type":"string","description":"**Compatibilidade.** (Compatibility) Alias permanente de `city`.\nAceito na entrada HTTP e devolvido nas respostas para manter integrações existentes.\nNão é usado por providers, templates, workers ou DANFSe."},"city":{"type":"string","description":"Cidade/localidade do endereço. Campo canônico do contrato NFS-e."},"state":{"type":"string","maxLength":2,"description":"UF brasileira ou estado/província/região estrangeira."},"postal_code":{"type":"string","minLength":1,"pattern":"^(?:\\d{8}|\\d{5}-\\d{3})$","description":"CEP brasileiro ou código postal exterior."},"complement":{"type":"string","description":"Complemento do endereço."},"municipality_code":{"type":"string","maxLength":7,"description":"Código IBGE do município brasileiro, usado para serialização fiscal quando aplicável."},"country":{"type":"string","maxLength":60,"description":"Nome do país, quando útil para exibição."},"country_code":{"type":"string","pattern":"^[A-Z]{2}$","description":"Código ISO 3166-1 alfa-2 do país."}}},"NfseIntermediary":{"type":"object","additionalProperties":false,"required":["legal_name"],"anyOf":[{"required":["tax_id"]},{"required":["nif"]},{"required":["no_nif_reason"]}],"properties":{"tax_id":{"type":"string","description":"CPF ou CNPJ, somente dígitos."},"nif":{"type":"string","description":"Número de identificação fiscal no exterior."},"no_nif_reason":{"type":"string","enum":["0","1","2"],"description":"Motivo para ausência de NIF."},"caepf":{"type":"string","description":"Cadastro de Atividade Econômica da Pessoa Física, somente dígitos."},"municipal_registration":{"type":"string","description":"Inscrição Municipal."},"legal_name":{"type":"string","description":"Razão social ou nome."},"name":{"type":"string","description":"Nome fantasia ou alias aceito."},"address":{"$ref":"#/components/schemas/NfseAddress"},"phone":{"type":"string","description":"Telefone de contato."},"email":{"type":"string","format":"email","description":"E-mail de contato."},"municipality_code":{"type":"string","pattern":"^[0-9]{7}$","description":"Código IBGE do município."}}},"NfseServiceEvent":{"type":"object","additionalProperties":false,"properties":{"name":{"type":"string","description":"Nome do evento relacionado ao serviço."},"identifier":{"type":"string","description":"Identificador do evento."},"description":{"type":"string","description":"Descrição do evento."},"start_date":{"type":"string","format":"date","description":"Data de início do evento."},"end_date":{"type":"string","format":"date","description":"Data de encerramento do evento."},"address":{"$ref":"#/components/schemas/NfseAddress","description":"Endereço do evento."}}},"NfseServiceConstruction":{"type":"object","additionalProperties":false,"properties":{"work_code":{"type":"string","description":"Código da obra."},"cib_code":{"type":"string","description":"Código do Cadastro Imobiliário Brasileiro."},"property_registration":{"type":"string","description":"Inscrição imobiliária da obra."},"art":{"type":"string","description":"Anotação, registro ou termo de responsabilidade técnica da obra."},"address":{"$ref":"#/components/schemas/NfseAddress","description":"Endereço da obra."}}},"NfseServiceForeignTrade":{"type":"object","additionalProperties":false,"properties":{"provision_mode":{"type":"string","description":"Modo de prestação no comércio exterior."},"relationship_type":{"type":"string","description":"Tipo de vínculo entre prestador e tomador no exterior."},"currency_code":{"type":"string","description":"Código da moeda da operação."},"foreign_amount":{"allOf":[{"$ref":"#/components/schemas/NfseDecimalValue"}],"minimum":0,"description":"Valor do serviço na moeda estrangeira."},"issuer_support_mechanism":{"type":"string","description":"Mecanismo de apoio ou fomento usado pelo prestador."},"customer_support_mechanism":{"type":"string","description":"Mecanismo de apoio ou fomento usado pelo tomador."},"temporary_goods_movement":{"type":"string","description":"Indicador de movimentação temporária de bens vinculada ao serviço."},"import_declaration_number":{"type":"string","description":"Número da declaração de importação relacionada ao serviço."},"export_registration_number":{"type":"string","description":"Número do registro de exportação relacionado ao serviço."},"mdic_sharing":{"type":"string","description":"Indicador de compartilhamento com o MDIC quando exigido pelo layout fiscal."}}},"NfseDecimalValue":{"oneOf":[{"type":"number"},{"type":"string","pattern":"^\\\\d+(?:\\\\.\\\\d+)?$"}],"description":"Valor decimal aceito como número JSON ou string numérica decimal."},"NfseMunicipalBenefit":{"type":"object","additionalProperties":false,"properties":{"identifier":{"type":"string","pattern":"^[0-9]{14}$","description":"Identificador do benefício fiscal municipal, com 14 dígitos quando serializado no layout nacional."},"base_reduction_amount":{"allOf":[{"$ref":"#/components/schemas/NfseDecimalValue"}],"minimum":0,"description":"Valor de redução da base de cálculo concedido pelo benefício."},"base_reduction_rate":{"allOf":[{"$ref":"#/components/schemas/NfseDecimalValue"}],"minimum":0,"maximum":999.99,"description":"Percentual de redução da base de cálculo concedido pelo benefício."}}},"NfseEstimatedTaxBurden":{"type":"object","additionalProperties":false,"properties":{"federal_amount":{"allOf":[{"$ref":"#/components/schemas/NfseDecimalValue"}],"minimum":0,"maximum":999999999.99,"multipleOf":0.01,"description":"Valor aproximado de tributos federais."},"state_amount":{"allOf":[{"$ref":"#/components/schemas/NfseDecimalValue"}],"minimum":0,"maximum":999999999.99,"multipleOf":0.01,"description":"Valor aproximado de tributos estaduais."},"municipal_amount":{"allOf":[{"$ref":"#/components/schemas/NfseDecimalValue"}],"minimum":0,"maximum":999999999.99,"multipleOf":0.01,"description":"Valor aproximado de tributos municipais."},"federal_rate":{"allOf":[{"$ref":"#/components/schemas/NfseDecimalValue"}],"minimum":0,"maximum":999.99,"description":"Alíquota aproximada de tributos federais."},"state_rate":{"allOf":[{"$ref":"#/components/schemas/NfseDecimalValue"}],"minimum":0,"maximum":999.99,"description":"Alíquota aproximada de tributos estaduais."},"municipal_rate":{"allOf":[{"$ref":"#/components/schemas/NfseDecimalValue"}],"minimum":0,"maximum":999.99,"description":"Alíquota aproximada de tributos municipais."},"simple_national_rate":{"allOf":[{"$ref":"#/components/schemas/NfseDecimalValue"}],"minimum":0,"maximum":99.99,"description":"Alíquota aproximada dos tributos para optante do Simples Nacional."}}},"NfseIbscbs":{"type":"object","additionalProperties":false,"description":"Bloco IBS/CBS compartilhado entre o Ambiente Nacional e provedores municipais aderentes ao IBS/CBS.\n`tax_situation_code` e `classification_code` são o CST/cClassTrib principal do IBS/CBS. O grupo `taxation.regular.*` representa a tributação regular e não é duplicidade desses campos principais.\nNo `national`, envie apenas os campos declaratórios do layout nacional: `purpose`, `final_consumer`, `operation_indicator`, `operation_type`, `government_entity_type`, `destination_indicator`, `references`, `tax_situation_code`/`classification_code`, `destination`, `property`, `taxation` e `reimbursements`.\nOs campos `reduction_rate`, `incidence_location_code`, `incidence_location_name`, `values` e `totals` existem no contrato canônico para provedores municipais aderentes ao IBS/CBS, mas são rejeitados pelo provedor Nacional quando a empresa usa `integration=national`.\nNão envie `ibscbs.taxation.tax_situation_code` nem `ibscbs.taxation.classification_code`; esses aliases são aceitos somente na borda HTTP do `POST /nfse` para compatibilidade de entrada e são normalizados para os campos principais.","properties":{"purpose":{"type":"string","enum":["0"],"description":"Finalidade da NFS-e no bloco IBS/CBS. No XSD nacional atual, apenas `0` é aceito."},"final_consumer":{"type":"string","enum":["0","1"],"description":"Indicador de consumidor final no bloco IBS/CBS. Opcional no XSD nacional."},"operation_indicator":{"type":"string","pattern":"^[0-9]{6}$","description":"Código do indicador da operação no bloco IBS/CBS."},"operation_type":{"type":"string","enum":["1","2","3","4","5"],"description":"Tipo da operação no bloco IBS/CBS."},"government_entity_type":{"type":"string","enum":["1","2","3","4"],"description":"Tipo de ente governamental no bloco IBS/CBS."},"destination_indicator":{"type":"string","enum":["0","1"],"description":"Indicador do destino da operação no bloco IBS/CBS."},"tax_situation_code":{"type":"string","pattern":"^[0-9]{3}$","description":"CST principal aplicado ao bloco IBS/CBS. Não confundir com `taxation.regular.tax_situation_code`, que pertence ao grupo de tributação regular."},"classification_code":{"type":"string","pattern":"^[0-9]{6}$","description":"cClassTrib principal usado no bloco IBS/CBS. Não confundir com `taxation.regular.classification_code`, que pertence ao grupo de tributação regular."},"reduction_rate":{"type":"string","pattern":"^\\\\d+(?:\\\\.\\\\d+)?$","description":"Percentual redutor serializado por providers municipais cujo template consome esse campo. Rejeição fiscal pertence ao provedor."},"incidence_location_code":{"type":"string","description":"Código do local de incidência do IBS/CBS serializado por providers municipais cujo template consome esse campo. Rejeição fiscal pertence ao provedor."},"incidence_location_name":{"type":"string","description":"Nome do local de incidência do IBS/CBS serializado por providers municipais cujo template consome esse campo. Rejeição fiscal pertence ao provedor."},"references":{"type":"array","description":"Referências técnicas aceitas pelo layout IBS/CBS.","items":{"type":"string"}},"destination":{"$ref":"#/components/schemas/NfseIbscbsDestination","description":"Destinatário do serviço no grupo declaratório IBS/CBS do Ambiente Nacional."},"property":{"$ref":"#/components/schemas/NfseIbscbsProperty","description":"Informações de imóvel no grupo declaratório IBS/CBS do Ambiente Nacional."},"taxation":{"$ref":"#/components/schemas/NfseIbscbsTaxation","description":"Subgrupos declaratórios de tributação IBS/CBS. Não contém o CST/cClassTrib principal; esses campos ficam em `ibscbs.tax_situation_code` e `ibscbs.classification_code`."},"reimbursements":{"type":"array","maxItems":1000,"description":"Documentos de reembolso, repasse ou ressarcimento no grupo declaratório IBS/CBS.","items":{"$ref":"#/components/schemas/NfseIbscbsReimbursement"}},"values":{"$ref":"#/components/schemas/NfseIbscbsValues","description":"Valores calculados do IBS/CBS serializados por providers municipais cujo template consome esse grupo. Rejeição fiscal pertence ao provedor."},"totals":{"$ref":"#/components/schemas/NfseIbscbsTotals","description":"Totais calculados do IBS/CBS serializados por providers municipais cujo template consome esse grupo. Rejeição fiscal pertence ao provedor."}}},"NfseIbscbsDestination":{"type":"object","additionalProperties":false,"properties":{"tax_id":{"type":"string","description":"CPF ou CNPJ, somente dígitos."},"nif":{"type":"string","description":"Número de identificação fiscal no exterior."},"no_nif_reason":{"type":"string","enum":["0","1","2"],"description":"Motivo para ausência de NIF."},"legal_name":{"type":"string","description":"Razão social ou nome do destinatário."},"address":{"$ref":"#/components/schemas/NfseIbscbsAddress"},"phone":{"type":"string","description":"Telefone do destinatário."},"email":{"type":"string","format":"email","description":"E-mail do destinatário."}}},"NfseIbscbsAddress":{"type":"object","additionalProperties":false,"properties":{"municipality_code":{"type":"string","pattern":"^[0-9]{7}$","description":"Código IBGE do município para endereço nacional."},"postal_code":{"type":"string","description":"CEP brasileiro ou código postal exterior."},"country_code":{"type":"string","pattern":"^[A-Z]{2}$","description":"Código ISO 3166-1 alfa-2 do país."},"municipality":{"type":"string","description":"Município/localidade do endereço no contrato canônico NFS-e."},"state":{"type":"string","description":"UF brasileira ou estado/província/região estrangeira."},"street":{"type":"string","description":"Logradouro."},"number":{"type":"string","description":"Número do endereço."},"complement":{"type":"string","description":"Complemento do endereço."},"neighborhood":{"type":"string","description":"Bairro."}}},"NfseIbscbsProperty":{"type":"object","additionalProperties":false,"properties":{"registration_code":{"type":"string","description":"Inscrição imobiliária fiscal."},"cib_code":{"type":"string","minLength":8,"maxLength":8,"description":"Código do Cadastro Imobiliário Brasileiro."},"address":{"$ref":"#/components/schemas/NfseIbscbsAddress","description":"Endereço do imóvel. No Nacional, informe `cib_code` ou `address`, nunca ambos."}}},"NfseIbscbsTaxation":{"type":"object","additionalProperties":false,"description":"Subgrupos declaratórios de tributação IBS/CBS. `regular` é tributação regular distinta dos campos principais do bloco.","properties":{"credit_presumed_code":{"type":"string","pattern":"^[0-9]{2}$","description":"Código de crédito presumido IBS/CBS."},"regular":{"$ref":"#/components/schemas/NfseIbscbsRegularTaxation","description":"Tributação regular IBS/CBS, distinta do CST/cClassTrib principal do bloco."},"deferral":{"$ref":"#/components/schemas/NfseIbscbsDeferral"}}},"NfseIbscbsRegularTaxation":{"type":"object","additionalProperties":false,"properties":{"tax_situation_code":{"type":"string","pattern":"^[0-9]{3}$","description":"CST da tributação regular. Campo distinto de `ibscbs.tax_situation_code`."},"classification_code":{"type":"string","pattern":"^[0-9]{6}$","description":"cClassTrib da tributação regular. Campo distinto de `ibscbs.classification_code`."}}},"NfseIbscbsDeferral":{"type":"object","additionalProperties":false,"properties":{"state_rate":{"allOf":[{"$ref":"#/components/schemas/NfseDecimalValue"}],"minimum":0,"maximum":100,"description":"Percentual de diferimento do IBS estadual."},"municipality_rate":{"allOf":[{"$ref":"#/components/schemas/NfseDecimalValue"}],"minimum":0,"maximum":100,"description":"Percentual de diferimento do IBS municipal."},"cbs_rate":{"allOf":[{"$ref":"#/components/schemas/NfseDecimalValue"}],"minimum":0,"maximum":100,"description":"Percentual de diferimento da CBS."}}},"NfseIbscbsReimbursement":{"type":"object","additionalProperties":false,"properties":{"dfe_national":{"$ref":"#/components/schemas/NfseIbscbsDfeNational"},"other_fiscal_document":{"$ref":"#/components/schemas/NfseIbscbsOtherFiscalDocument"},"other_document":{"$ref":"#/components/schemas/NfseIbscbsOtherDocument"},"supplier":{"$ref":"#/components/schemas/NfseIbscbsIdentity"},"issue_date":{"type":"string","format":"date","description":"Data de emissão do documento referenciado."},"competence_date":{"type":"string","format":"date","description":"Data de competência do documento referenciado."},"type":{"type":"string","enum":["01","02","03","04","99"],"description":"Tipo de reembolso, repasse ou ressarcimento."},"type_description":{"type":"string","description":"Descrição quando `type` for `99`."},"amount":{"allOf":[{"$ref":"#/components/schemas/NfseDecimalValue"}],"minimum":0,"description":"Valor do reembolso, repasse ou ressarcimento."}}},"NfseIbscbsDfeNational":{"type":"object","additionalProperties":false,"properties":{"type":{"type":"string","enum":["1","2","3","9"],"description":"Tipo de chave do documento fiscal eletrônico nacional."},"type_description":{"type":"string","description":"Descrição quando `type` for `9`."},"key":{"type":"string","maxLength":50,"description":"Chave do documento fiscal eletrônico."}}},"NfseIbscbsOtherFiscalDocument":{"type":"object","additionalProperties":false,"properties":{"municipality_code":{"type":"string","pattern":"^[0-9]{7}$","description":"Código do município emissor do documento fiscal."},"number":{"type":"string","description":"Número do documento fiscal."},"description":{"type":"string","description":"Descrição do documento fiscal."}}},"NfseIbscbsOtherDocument":{"type":"object","additionalProperties":false,"properties":{"number":{"type":"string","description":"Número do documento não fiscal."},"description":{"type":"string","description":"Descrição do documento não fiscal."}}},"NfseIbscbsIdentity":{"type":"object","additionalProperties":false,"properties":{"tax_id":{"type":"string","description":"CPF ou CNPJ, somente dígitos."},"nif":{"type":"string","description":"Número de identificação fiscal no exterior."},"no_nif_reason":{"type":"string","enum":["0","1","2"],"description":"Motivo para ausência de NIF."},"legal_name":{"type":"string","description":"Razão social ou nome."}}},"NfseIbscbsValues":{"type":"object","additionalProperties":false,"description":"Valores calculados do IBS/CBS para providers municipais que serializam esse grupo. Não enviar no Ambiente Nacional.","properties":{"base_amount":{"allOf":[{"$ref":"#/components/schemas/NfseDecimalValue"}],"minimum":0,"description":"Base de cálculo do IBS/CBS."},"state":{"$ref":"#/components/schemas/NfseIbscbsStateValues"},"municipality":{"$ref":"#/components/schemas/NfseIbscbsMunicipalityValues"},"federal":{"$ref":"#/components/schemas/NfseIbscbsFederalValues"}}},"NfseIbscbsStateValues":{"type":"object","additionalProperties":false,"properties":{"ibs_state_rate":{"allOf":[{"$ref":"#/components/schemas/NfseDecimalValue"}],"minimum":0,"description":"Alíquota estadual do IBS."},"ibs_state_reduction_rate":{"allOf":[{"$ref":"#/components/schemas/NfseDecimalValue"}],"minimum":0,"maximum":100,"description":"Redução de alíquota estadual do IBS em providers municipais aderentes ao IBS/CBS."},"ibs_state_effective_rate":{"allOf":[{"$ref":"#/components/schemas/NfseDecimalValue"}],"minimum":0,"description":"Alíquota efetiva estadual do IBS."}}},"NfseIbscbsMunicipalityValues":{"type":"object","additionalProperties":false,"properties":{"ibs_municipality_rate":{"allOf":[{"$ref":"#/components/schemas/NfseDecimalValue"}],"minimum":0,"description":"Alíquota municipal do IBS."},"ibs_municipality_reduction_rate":{"allOf":[{"$ref":"#/components/schemas/NfseDecimalValue"}],"minimum":0,"maximum":100,"description":"Redução de alíquota municipal do IBS em providers municipais aderentes ao IBS/CBS."},"ibs_municipality_effective_rate":{"allOf":[{"$ref":"#/components/schemas/NfseDecimalValue"}],"minimum":0,"description":"Alíquota efetiva municipal do IBS."}}},"NfseIbscbsFederalValues":{"type":"object","additionalProperties":false,"properties":{"cbs_rate":{"allOf":[{"$ref":"#/components/schemas/NfseDecimalValue"}],"minimum":0,"description":"Alíquota federal da CBS."},"cbs_reduction_rate":{"allOf":[{"$ref":"#/components/schemas/NfseDecimalValue"}],"minimum":0,"maximum":100,"description":"Redução de alíquota federal da CBS em providers municipais aderentes ao IBS/CBS."},"cbs_effective_rate":{"allOf":[{"$ref":"#/components/schemas/NfseDecimalValue"}],"minimum":0,"description":"Alíquota efetiva federal da CBS."}}},"NfseIbscbsTotals":{"type":"object","additionalProperties":false,"description":"Totais calculados do IBS/CBS para providers municipais que serializam esse grupo. Não enviar no Ambiente Nacional.","properties":{"total_nf_amount":{"allOf":[{"$ref":"#/components/schemas/NfseDecimalValue"}],"minimum":0,"description":"Total da NFS-e usado no bloco IBS/CBS."},"ibs":{"$ref":"#/components/schemas/NfseIbscbsIbsTotals"},"cbs":{"$ref":"#/components/schemas/NfseIbscbsCbsTotals"},"government_purchase":{"$ref":"#/components/schemas/NfseIbscbsGovernmentPurchaseTotals"}}},"NfseIbscbsIbsTotals":{"type":"object","additionalProperties":false,"properties":{"total_amount":{"allOf":[{"$ref":"#/components/schemas/NfseDecimalValue"}],"minimum":0,"description":"Total consolidado do IBS."},"credit_presumed":{"$ref":"#/components/schemas/NfseIbscbsCreditPresumedTotals"},"state_total":{"$ref":"#/components/schemas/NfseIbscbsIbsLocationTotal"},"municipality_total":{"$ref":"#/components/schemas/NfseIbscbsIbsLocationTotal"}}},"NfseIbscbsCreditPresumedTotals":{"type":"object","additionalProperties":false,"properties":{"rate":{"allOf":[{"$ref":"#/components/schemas/NfseDecimalValue"}],"minimum":0,"maximum":100,"description":"Percentual de crédito presumido em providers municipais aderentes ao IBS/CBS."},"amount":{"allOf":[{"$ref":"#/components/schemas/NfseDecimalValue"}],"minimum":0,"description":"Valor de crédito presumido em providers municipais aderentes ao IBS/CBS."}}},"NfseIbscbsIbsLocationTotal":{"type":"object","additionalProperties":false,"properties":{"total_amount":{"allOf":[{"$ref":"#/components/schemas/NfseDecimalValue"}],"minimum":0,"description":"Valor total consolidado do grupo correspondente."},"deferral_amount":{"allOf":[{"$ref":"#/components/schemas/NfseDecimalValue"}],"minimum":0,"description":"Valor diferido do grupo correspondente em providers municipais aderentes ao IBS/CBS."}}},"NfseIbscbsCbsTotals":{"type":"object","additionalProperties":false,"properties":{"total_amount":{"allOf":[{"$ref":"#/components/schemas/NfseDecimalValue"}],"minimum":0,"description":"Total consolidado da CBS."},"credit_presumed":{"$ref":"#/components/schemas/NfseIbscbsCreditPresumedTotals"},"deferral_amount":{"allOf":[{"$ref":"#/components/schemas/NfseDecimalValue"}],"minimum":0,"description":"Valor diferido da CBS em providers municipais aderentes ao IBS/CBS."}}},"NfseIbscbsGovernmentPurchaseTotals":{"type":"object","additionalProperties":false,"properties":{"ibs_state_rate":{"allOf":[{"$ref":"#/components/schemas/NfseDecimalValue"}],"minimum":0,"maximum":100,"description":"Alíquota estadual do IBS em compra governamental."},"ibs_state_amount":{"allOf":[{"$ref":"#/components/schemas/NfseDecimalValue"}],"minimum":0,"description":"Valor estadual do IBS em compra governamental."},"ibs_municipality_rate":{"allOf":[{"$ref":"#/components/schemas/NfseDecimalValue"}],"minimum":0,"maximum":100,"description":"Alíquota municipal do IBS em compra governamental."},"ibs_municipality_amount":{"allOf":[{"$ref":"#/components/schemas/NfseDecimalValue"}],"minimum":0,"description":"Valor municipal do IBS em compra governamental."},"cbs_rate":{"allOf":[{"$ref":"#/components/schemas/NfseDecimalValue"}],"minimum":0,"maximum":100,"description":"Alíquota da CBS em compra governamental."},"cbs_amount":{"allOf":[{"$ref":"#/components/schemas/NfseDecimalValue"}],"minimum":0,"description":"Valor da CBS em compra governamental."}}},"NfseValues":{"type":"object","additionalProperties":false,"required":["total_amount"],"properties":{"total_amount":{"allOf":[{"$ref":"#/components/schemas/NfseDecimalValue"}],"minimum":0,"description":"Valor total do serviço."},"net_amount":{"allOf":[{"$ref":"#/components/schemas/NfseDecimalValue"}],"minimum":0,"description":"Valor líquido do serviço."},"rate":{"allOf":[{"$ref":"#/components/schemas/NfseDecimalValue"}],"minimum":0,"description":"Alíquota do ISS."},"iss_amount":{"allOf":[{"$ref":"#/components/schemas/NfseDecimalValue"}],"minimum":0,"description":"Valor do ISS."},"unconditional_discount":{"allOf":[{"$ref":"#/components/schemas/NfseDecimalValue"}],"minimum":0,"description":"Desconto incondicional aplicado ao serviço."},"conditional_discount":{"allOf":[{"$ref":"#/components/schemas/NfseDecimalValue"}],"minimum":0,"description":"Desconto condicional aplicado ao serviço."},"ir_amount":{"allOf":[{"$ref":"#/components/schemas/NfseDecimalValue"}],"minimum":0,"description":"Valor do IR retido na fonte."},"pis_amount":{"allOf":[{"$ref":"#/components/schemas/NfseDecimalValue"}],"minimum":0,"description":"Valor do PIS retido na fonte."},"cofins_amount":{"allOf":[{"$ref":"#/components/schemas/NfseDecimalValue"}],"minimum":0,"description":"Valor da COFINS retida na fonte."},"inss_amount":{"allOf":[{"$ref":"#/components/schemas/NfseDecimalValue"}],"minimum":0,"description":"Valor do INSS retido na fonte."},"csll_amount":{"allOf":[{"$ref":"#/components/schemas/NfseDecimalValue"}],"minimum":0,"description":"Valor da CSLL retida na fonte."},"other_retentions":{"allOf":[{"$ref":"#/components/schemas/NfseDecimalValue"}],"minimum":0,"description":"Outras retenções aplicadas ao serviço."},"deductions_amount":{"allOf":[{"$ref":"#/components/schemas/NfseDecimalValue"}],"minimum":0,"description":"Valor total das deduções."},"intermediary_amount":{"allOf":[{"$ref":"#/components/schemas/NfseDecimalValue"}],"minimum":0,"description":"Valor recebido pelo intermediário do serviço, quando o layout fiscal exigir esse destaque."},"cp_amount":{"allOf":[{"$ref":"#/components/schemas/NfseDecimalValue"}],"minimum":0,"description":"Valor de Contribuição Previdenciária retido."},"pis_cofins_base_amount":{"allOf":[{"$ref":"#/components/schemas/NfseDecimalValue"}],"minimum":0,"description":"Base de cálculo compartilhada para PIS e COFINS (vBCPisCofins no XML)."},"pis_rate":{"allOf":[{"$ref":"#/components/schemas/NfseDecimalValue"}],"minimum":0,"maximum":100,"description":"Alíquota do PIS (pAliqPis no XML)."},"cofins_rate":{"allOf":[{"$ref":"#/components/schemas/NfseDecimalValue"}],"minimum":0,"maximum":100,"description":"Alíquota da COFINS (pAliqCofins no XML)."},"deductions":{"type":"array","maxItems":1000,"description":"Documentos fiscais usados para dedução ou redução da base de cálculo, quando o layout fiscal permitir.","items":{"$ref":"#/components/schemas/NfseDeduction"}}}},"NfseDeduction":{"type":"object","additionalProperties":false,"properties":{"type":{"type":"string","enum":["1","2","3","4","5","6","7","8","9","99"],"description":"Tipo fiscal da dedução conforme o layout aplicável."},"description":{"type":"string","maxLength":150,"description":"Descrição da dedução ou redução."},"deductible_amount":{"allOf":[{"$ref":"#/components/schemas/NfseDecimalValue"}],"minimum":0,"description":"Valor do documento elegível à dedução."},"deduction_amount":{"allOf":[{"$ref":"#/components/schemas/NfseDecimalValue"}],"minimum":0,"description":"Valor efetivamente deduzido."},"document_kind":{"type":"string","description":"Tipo de documento que comprova a dedução."},"nfse_key":{"type":"string","pattern":"^[0-9]{50}$","description":"Chave de acesso da NFS-e usada como documento de dedução, com 50 dígitos quando exigida pelo Nacional."},"nfe_key":{"type":"string","pattern":"^[0-9]{44}$","description":"Chave de acesso da NF-e usada como documento de dedução, com 44 dígitos quando exigida pelo Nacional."},"other_document_number":{"type":"string","maxLength":255,"description":"Número de outro documento aceito para dedução."},"issue_date":{"type":"string","format":"date","description":"Data de emissão do documento de dedução."},"municipal_nfse":{"$ref":"#/components/schemas/NfseDeductionMunicipalNfse"},"fiscal_document":{"$ref":"#/components/schemas/NfseDeductionFiscalDocument"},"supplier":{"$ref":"#/components/schemas/NfseIntermediary","description":"Fornecedor ou prestador associado ao documento de dedução."}}},"NfseDeductionMunicipalNfse":{"type":"object","additionalProperties":false,"properties":{"municipality_code":{"type":"string","pattern":"^[0-9]{7}$","description":"Código IBGE do município da NFS-e dedutível."},"number":{"type":"string","description":"Número da NFS-e dedutível."},"verification_code":{"type":"string","pattern":"^[a-zA-Z0-9]{1,9}$","description":"Código de verificação da NFS-e dedutível."}}},"NfseDeductionFiscalDocument":{"type":"object","additionalProperties":false,"properties":{"number":{"type":"string","description":"Número do documento fiscal dedutível."},"model":{"type":"string","description":"Modelo do documento fiscal dedutível."},"series":{"type":"string","description":"Série do documento fiscal dedutível."},"state":{"type":"string","maxLength":2,"description":"UF do documento fiscal dedutível."},"access_key":{"type":"string","description":"Chave de acesso do documento fiscal dedutível."}}}}}}
```

## The CreateNfsesResponse object

```json
{"openapi":"3.1.1","info":{"title":"API IXC E-Docs - Integração x-api-key","version":"0.1.0"},"components":{"schemas":{"CreateNfsesResponse":{"type":"array","description":"Resultado da criação das NFS-e.","items":{"$ref":"#/components/schemas/NfseCreatedResult"}},"NfseCreatedResult":{"type":"object","additionalProperties":false,"required":["id","nfse_outbox_id","workspace_id","company_id","external_id","issuer_tax_id"],"properties":{"id":{"type":"string","description":"Identificador da NFS-e criada."},"nfse_outbox_id":{"type":"string","description":"Identificador da NFS-e na fila de processamento."},"workspace_id":{"type":"string","description":"Identificador do workspace."},"company_id":{"type":"string","description":"Identificador da empresa emissora."},"external_id":{"type":"string","description":"Identificador externo informado no envio."},"issuer_tax_id":{"type":"string","description":"CNPJ do prestador (somente dígitos)."}}}}}}
```

## The NfseCreatedResult object

```json
{"openapi":"3.1.1","info":{"title":"API IXC E-Docs - Integração x-api-key","version":"0.1.0"},"components":{"schemas":{"NfseCreatedResult":{"type":"object","additionalProperties":false,"required":["id","nfse_outbox_id","workspace_id","company_id","external_id","issuer_tax_id"],"properties":{"id":{"type":"string","description":"Identificador da NFS-e criada."},"nfse_outbox_id":{"type":"string","description":"Identificador da NFS-e na fila de processamento."},"workspace_id":{"type":"string","description":"Identificador do workspace."},"company_id":{"type":"string","description":"Identificador da empresa emissora."},"external_id":{"type":"string","description":"Identificador externo informado no envio."},"issuer_tax_id":{"type":"string","description":"CNPJ do prestador (somente dígitos)."}}}}}}
```

## The NfseDocument object

```json
{"openapi":"3.1.1","info":{"title":"API IXC E-Docs - Integração x-api-key","version":"0.1.0"},"components":{"schemas":{"NfseDocument":{"type":"object","additionalProperties":false,"required":["external_id","issuer"],"properties":{"external_id":{"type":"string","description":"Identificador externo do documento."},"emission_datetime":{"type":"string","format":"date-time","description":"Data/hora de emissão do documento. Campo raiz canônico para `DataEmissao`; deve ser datetime ISO 8601 com fuso explícito."},"competence_date":{"type":"string","description":"Data de competência do documento. Campo raiz canônico para `Competencia`; pode ser data ou datetime aceito pelo template do provider."},"issuer":{"$ref":"#/components/schemas/NfseIssuer","description":"Prestador do serviço."},"customer":{"$ref":"#/components/schemas/NfseCustomer","description":"Tomador do serviço."},"intermediary":{"$ref":"#/components/schemas/NfseIntermediary","description":"Intermediário do serviço, quando existir. Usa o padrão e-docs de identificação, endereço, telefone e e-mail."},"series":{"type":"string","minLength":1,"description":"Série fiscal opcional. A API decide como serializar a série conforme o provider efetivo da empresa."},"rps":{"type":"object","additionalProperties":false,"description":"**Compatibilidade.** (Compatibility) Alias permanente de entrada HTTP. Em código novo, use `series` na raiz; `rps.series` é normalizado para `series` e `rps.type` legado é descartado sem efeito fiscal.","properties":{"series":{"type":"string","description":"Série fiscal municipal. Normalizada para `series` na raiz antes do processamento."},"type":{"oneOf":[{"type":"string"},{"type":"number"}],"description":"**Uso desaconselhado.** (Discouraged) Campo legado aceito apenas por compatibilidade de entrada HTTP; o valor é descartado antes do processamento fiscal."}}},"dps":{"type":"object","additionalProperties":false,"description":"**Compatibilidade.** (Compatibility) Alias permanente de entrada HTTP. Em código novo, use `series` na raiz; `dps.series` é normalizado para `series` e `dps.type` legado é descartado sem efeito fiscal.","properties":{"series":{"type":"string","pattern":"^\\d{1,5}$","description":"Série fiscal nacional. Normalizada para `series` na raiz antes do processamento."},"type":{"oneOf":[{"type":"string"},{"type":"number"}],"description":"**Uso desaconselhado.** (Discouraged) Campo legado aceito apenas por compatibilidade de entrada HTTP; o valor é descartado antes do processamento fiscal."}}},"send_email":{"type":"boolean","description":"Define se DANFSe e XML da NFS-e serão enviados por email para o tomador."},"substituted_reference":{"$ref":"#/components/schemas/NfseSubstitutedReference","description":"Referência da nota autorizada que será substituída."},"cancel_code":{"type":"integer","description":"Código de cancelamento serializado quando informado; domínio fiscal é validado pelo provedor."},"cancel_reason":{"type":"string","description":"Motivo de cancelamento serializado quando informado; obrigatoriedade e tamanho são validados pelo provedor."},"service":{"type":"object","additionalProperties":false,"description":"Dados do serviço prestado.","required":["description"],"properties":{"description":{"type":"string","description":"Descrição dos serviços da nota fiscal."},"cnae_code":{"type":"string","description":"Código CNAE com 7 dígitos. Use quando o layout fiscal efetivo exigir; não é usado no perfil `national`."},"national_tax_code":{"type":"string","description":"Código nacional de tributação do serviço (`cTribNac`). A serialização vem do template e a obrigatoriedade fiscal deve voltar como rejeição oficial do provedor."},"national_code":{"type":"string","description":"**Compatibilidade.** (Compatibility) Alias de entrada aceito somente em requests de criação para integrações antigas; a API normaliza para `national_tax_code` antes do processamento fiscal e respostas públicas usam apenas `national_tax_code`."},"operation_nature":{"oneOf":[{"type":"string"},{"type":"integer"}],"description":"Natureza da operação fiscal do serviço usada por providers municipais com tag própria, como `NaturezaOperacao`. O domínio é específico do layout municipal e não representa a exigibilidade canônica do ISS."},"lc116_code":{"type":"string","description":"Código do item da lista de serviços da LC 116/2003. Em providers ABRASF/SigSSIS, alimenta `ItemListaServico` e não substitui `municipal_tax_code`."},"municipal_tax_code":{"type":"string","description":"Código de serviço municipal (`cTribMun`)."},"incidence_municipality_code":{"type":"string","description":"Município de incidência do ISS. A aceitação fiscal depende do provedor."},"country_code":{"type":"string","description":"País da prestação do serviço. A aceitação fiscal depende do provedor."},"nbs_code":{"type":"string","description":"Código NBS serializado quando o template do provedor consumir esse campo."},"taxpayer_code":{"type":"string","description":"Código interno do contribuinte para identificar o serviço no ambiente fiscal quando o layout aceitar esse identificador."},"technical_document_id":{"type":"string","description":"Documento de responsabilidade técnica associado ao serviço, como ART, RRT ou documento técnico equivalente aceito pelo provider."},"reference_document":{"type":"string","description":"Documento fiscal, contratual ou administrativo usado como referência da prestação."},"purchase_order_number":{"type":"string","description":"Número de pedido, ordem de serviço, projeto ou referência comercial que identifica a contratação."},"additional_information":{"type":"string","description":"Informações complementares da nota fiscal."},"event":{"$ref":"#/components/schemas/NfseServiceEvent","description":"Dados de evento relacionado ao serviço."},"construction":{"$ref":"#/components/schemas/NfseServiceConstruction","description":"Dados de obra ou construção civil relacionados ao serviço."},"foreign_trade":{"$ref":"#/components/schemas/NfseServiceForeignTrade","description":"Dados de comércio exterior quando o serviço envolver operação internacional."}}},"taxes":{"type":"object","description":"Dados tributários do serviço.","properties":{"iss_taxation":{"oneOf":[{"type":"string","enum":["1","2","3","4","5","6","7"]},{"type":"integer","enum":[1,2,3,4,5,6,7]}],"description":"Tributação do ISSQN no contrato canônico:\n- `1`: operação tributável ou exigível\n- `2`: imunidade ou não incidência, conforme a integração aplicável\n- `3`: exportação de serviço ou isenção, conforme a integração aplicável\n- `4`: não incidência ou exportação, conforme a integração aplicável\n- `5`: imunidade\n- `6`: exigibilidade suspensa por decisão judicial\n- `7`: exigibilidade suspensa por processo administrativo\n\nNa entrada HTTP, também aceita o inteiro equivalente (`1` a `7`) e normaliza para string antes do processamento fiscal.\nObrigatoriedade, tamanho, faixa e domínio fiscal devem voltar como rejeição oficial do provedor."},"iss_retention_type":{"oneOf":[{"type":"string","enum":["1","2","3"]},{"type":"integer","enum":[1,2,3]}],"description":"Retenção do ISSQN no Ambiente Nacional e em providers municipais aderentes ao IBS/CBS:\n- `1`: não retido\n- `2`: retido pelo tomador\n- `3`: retido pelo intermediário\n\nNa entrada HTTP, também aceita o inteiro equivalente (`1` a `3`) e normaliza para string antes do processamento fiscal.\nEm providers municipais aderentes ao IBS/CBS, o runtime deriva `IssRetido` e `ResponsavelRetencao` a partir deste campo quando o provider declarar exigência."},"social_retention_type":{"oneOf":[{"type":"string","enum":["0","1","2","3","4","5","6","7","8","9"]},{"type":"integer","enum":[0,1,2,3,4,5,6,7,8,9]}],"description":"Tipo de retenção social para PIS/COFINS:\n- `0`: não retido\n- `1`: retido pelo tomador\n- `2`: retido pelo prestador\n- `3` a `9`: demais tipos conforme padrão Nacional ADN v1.01\n\nNa entrada HTTP, também aceita o inteiro equivalente (`0` a `9`) e normaliza para string antes do processamento fiscal.\nA aceitação fiscal final deve voltar como rejeição oficial do provedor."},"pis_cofins_cst":{"oneOf":[{"type":"string","enum":["00","01","02","03","04","05","06","07","08","09","49","50","51","52","53","54","55","56","60","61","62","63","64","65","66","67","70","71","72","73","74","75","98","99"]},{"type":"integer","enum":[0,1,2,3,4,5,6,7,8,9,49,50,51,52,53,54,55,56,60,61,62,63,64,65,66,67,70,71,72,73,74,75,98,99]}],"description":"CST opcional de PIS/COFINS usado pelo Ambiente Nacional e por providers municipais que serializam o bloco social do XML:\n- `00`: nenhum\n- `01`: operação tributável com alíquota básica\n- `02`: operação tributável com alíquota diferenciada\n- `03`: operação tributável por unidade de medida\n- `04`: operação tributável monofásica com alíquota zero\n- `05`: operação tributável por substituição tributária\n- `06`: operação tributável a alíquota zero\n- `07`: operação tributável da contribuição\n- `08`: operação sem incidência\n- `09`: operação com suspensão da contribuição\n- `49`, `50` a `56`, `60` a `67`, `70` a `75`, `98` e `99`: demais CSTs oficiais de PIS/COFINS\n\nNa entrada HTTP, também aceita o inteiro equivalente; valores `0` a `9` são normalizados para `00` a `09` antes do processamento fiscal.\nNo municipal, a serialização depende do template anotado."},"result_country_code":{"type":"string","pattern":"^[A-Z]{2}$","description":"País onde ocorre o resultado da exportação do serviço, quando exigido pelo layout fiscal."},"immunity_type":{"type":"string","description":"Tipo de imunidade do ISSQN quando a tributação do serviço indicar imunidade."},"suspension_type":{"type":"string","description":"Tipo de suspensão da exigibilidade do ISSQN, judicial ou administrativa, conforme o layout fiscal."},"suspension_process_number":{"type":"string","description":"Número do processo judicial ou administrativo relacionado à suspensão da exigibilidade."},"municipal_benefit":{"$ref":"#/components/schemas/NfseMunicipalBenefit","description":"Benefício fiscal municipal aplicável ao ISSQN."},"estimated_tax_burden":{"$ref":"#/components/schemas/NfseEstimatedTaxBurden","description":"Tributos aproximados informados no documento fiscal."}}},"ibscbs":{"$ref":"#/components/schemas/NfseIbscbs","description":"Bloco IBS/CBS canônico da Reforma Tributária. Quando informado, o template do provedor serializa os campos suportados e omite ausentes; obrigatoriedade, tamanho, faixa e domínio fiscal devem voltar como rejeição oficial."},"values":{"$ref":"#/components/schemas/NfseValues","description":"Valores da nota fiscal."}}},"NfseIssuer":{"type":"object","additionalProperties":false,"required":["tax_id"],"properties":{"tax_id":{"type":"string","description":"Número do CNPJ do prestador (somente dígitos)."}}},"NfseCustomer":{"type":"object","additionalProperties":false,"required":["legal_name"],"anyOf":[{"required":["tax_id"]},{"required":["nif"]},{"required":["no_nif_reason"]}],"properties":{"tax_id":{"type":"string","minLength":1,"description":"CPF ou CNPJ do tomador, somente dígitos. Para tomador estrangeiro, use `nif` ou `no_nif_reason` conforme o layout fiscal."},"municipal_registration":{"type":"string","description":"Inscrição Municipal do tomador."},"nif":{"type":"string","minLength":1,"description":"Número de identificação fiscal do tomador estrangeiro."},"no_nif_reason":{"type":"string","enum":["0","1","2"],"description":"Motivo da ausência de NIF do tomador estrangeiro quando o layout fiscal permitir."},"caepf":{"type":"string","description":"Cadastro de Atividade Econômica da Pessoa Física do tomador."},"legal_name":{"type":"string","description":"Razão social ou nome do tomador."},"name":{"type":"string","description":"Nome fantasia do tomador."},"address":{"$ref":"#/components/schemas/NfseAddress","description":"Endereço completo do tomador."},"phone":{"type":"string","description":"Telefone de contato do tomador."},"email":{"type":"string","format":"email","description":"E-mail de contato do tomador."}}},"NfseAddress":{"type":"object","additionalProperties":false,"properties":{"street":{"type":"string","minLength":1,"pattern":"^[A-Za-zÀ-ÖØ-öø-ÿ0-9 .,-]+$","description":"Logradouro. Não aceita símbolos especiais nem quebra de linha."},"number":{"type":"string","minLength":1,"pattern":"^[A-Za-zÀ-ÖØ-öø-ÿ0-9 .,-]+$","description":"Número do endereço. Não aceita símbolos especiais nem quebra de linha."},"neighborhood":{"type":"string","minLength":1,"pattern":"^[A-Za-zÀ-ÖØ-öø-ÿ0-9 .,-]+$","description":"Bairro. Não aceita símbolos especiais nem quebra de linha."},"municipality":{"type":"string","description":"**Compatibilidade.** (Compatibility) Alias permanente de `city`.\nAceito na entrada HTTP e devolvido nas respostas para manter integrações existentes.\nNão é usado por providers, templates, workers ou DANFSe."},"city":{"type":"string","description":"Cidade/localidade do endereço. Campo canônico do contrato NFS-e."},"state":{"type":"string","maxLength":2,"description":"UF brasileira ou estado/província/região estrangeira."},"postal_code":{"type":"string","minLength":1,"pattern":"^(?:\\d{8}|\\d{5}-\\d{3})$","description":"CEP brasileiro ou código postal exterior."},"complement":{"type":"string","description":"Complemento do endereço."},"municipality_code":{"type":"string","maxLength":7,"description":"Código IBGE do município brasileiro, usado para serialização fiscal quando aplicável."},"country":{"type":"string","maxLength":60,"description":"Nome do país, quando útil para exibição."},"country_code":{"type":"string","pattern":"^[A-Z]{2}$","description":"Código ISO 3166-1 alfa-2 do país."}}},"NfseIntermediary":{"type":"object","additionalProperties":false,"required":["legal_name"],"anyOf":[{"required":["tax_id"]},{"required":["nif"]},{"required":["no_nif_reason"]}],"properties":{"tax_id":{"type":"string","description":"CPF ou CNPJ, somente dígitos."},"nif":{"type":"string","description":"Número de identificação fiscal no exterior."},"no_nif_reason":{"type":"string","enum":["0","1","2"],"description":"Motivo para ausência de NIF."},"caepf":{"type":"string","description":"Cadastro de Atividade Econômica da Pessoa Física, somente dígitos."},"municipal_registration":{"type":"string","description":"Inscrição Municipal."},"legal_name":{"type":"string","description":"Razão social ou nome."},"name":{"type":"string","description":"Nome fantasia ou alias aceito."},"address":{"$ref":"#/components/schemas/NfseAddress"},"phone":{"type":"string","description":"Telefone de contato."},"email":{"type":"string","format":"email","description":"E-mail de contato."},"municipality_code":{"type":"string","pattern":"^[0-9]{7}$","description":"Código IBGE do município."}}},"NfseSubstitutedReference":{"oneOf":[{"type":"object","additionalProperties":false,"required":["nfse_id"],"properties":{"nfse_id":{"$ref":"#/components/schemas/ObjectId","description":"ID interno da NFS-e autorizada que será substituída."}}},{"type":"object","additionalProperties":false,"required":["external_id"],"properties":{"external_id":{"type":"string","description":"ID externo da NFS-e autorizada que será substituída no mesmo emissor."}}}],"description":"Aceita exatamente um identificador (`nfse_id` ou `external_id`)."},"ObjectId":{"type":"string","description":"Identificador no formato ObjectId."},"NfseServiceEvent":{"type":"object","additionalProperties":false,"properties":{"name":{"type":"string","description":"Nome do evento relacionado ao serviço."},"identifier":{"type":"string","description":"Identificador do evento."},"description":{"type":"string","description":"Descrição do evento."},"start_date":{"type":"string","format":"date","description":"Data de início do evento."},"end_date":{"type":"string","format":"date","description":"Data de encerramento do evento."},"address":{"$ref":"#/components/schemas/NfseAddress","description":"Endereço do evento."}}},"NfseServiceConstruction":{"type":"object","additionalProperties":false,"properties":{"work_code":{"type":"string","description":"Código da obra."},"cib_code":{"type":"string","description":"Código do Cadastro Imobiliário Brasileiro."},"property_registration":{"type":"string","description":"Inscrição imobiliária da obra."},"art":{"type":"string","description":"Anotação, registro ou termo de responsabilidade técnica da obra."},"address":{"$ref":"#/components/schemas/NfseAddress","description":"Endereço da obra."}}},"NfseServiceForeignTrade":{"type":"object","additionalProperties":false,"properties":{"provision_mode":{"type":"string","description":"Modo de prestação no comércio exterior."},"relationship_type":{"type":"string","description":"Tipo de vínculo entre prestador e tomador no exterior."},"currency_code":{"type":"string","description":"Código da moeda da operação."},"foreign_amount":{"allOf":[{"$ref":"#/components/schemas/NfseDecimalValue"}],"minimum":0,"description":"Valor do serviço na moeda estrangeira."},"issuer_support_mechanism":{"type":"string","description":"Mecanismo de apoio ou fomento usado pelo prestador."},"customer_support_mechanism":{"type":"string","description":"Mecanismo de apoio ou fomento usado pelo tomador."},"temporary_goods_movement":{"type":"string","description":"Indicador de movimentação temporária de bens vinculada ao serviço."},"import_declaration_number":{"type":"string","description":"Número da declaração de importação relacionada ao serviço."},"export_registration_number":{"type":"string","description":"Número do registro de exportação relacionado ao serviço."},"mdic_sharing":{"type":"string","description":"Indicador de compartilhamento com o MDIC quando exigido pelo layout fiscal."}}},"NfseDecimalValue":{"oneOf":[{"type":"number"},{"type":"string","pattern":"^\\\\d+(?:\\\\.\\\\d+)?$"}],"description":"Valor decimal aceito como número JSON ou string numérica decimal."},"NfseMunicipalBenefit":{"type":"object","additionalProperties":false,"properties":{"identifier":{"type":"string","pattern":"^[0-9]{14}$","description":"Identificador do benefício fiscal municipal, com 14 dígitos quando serializado no layout nacional."},"base_reduction_amount":{"allOf":[{"$ref":"#/components/schemas/NfseDecimalValue"}],"minimum":0,"description":"Valor de redução da base de cálculo concedido pelo benefício."},"base_reduction_rate":{"allOf":[{"$ref":"#/components/schemas/NfseDecimalValue"}],"minimum":0,"maximum":999.99,"description":"Percentual de redução da base de cálculo concedido pelo benefício."}}},"NfseEstimatedTaxBurden":{"type":"object","additionalProperties":false,"properties":{"federal_amount":{"allOf":[{"$ref":"#/components/schemas/NfseDecimalValue"}],"minimum":0,"maximum":999999999.99,"multipleOf":0.01,"description":"Valor aproximado de tributos federais."},"state_amount":{"allOf":[{"$ref":"#/components/schemas/NfseDecimalValue"}],"minimum":0,"maximum":999999999.99,"multipleOf":0.01,"description":"Valor aproximado de tributos estaduais."},"municipal_amount":{"allOf":[{"$ref":"#/components/schemas/NfseDecimalValue"}],"minimum":0,"maximum":999999999.99,"multipleOf":0.01,"description":"Valor aproximado de tributos municipais."},"federal_rate":{"allOf":[{"$ref":"#/components/schemas/NfseDecimalValue"}],"minimum":0,"maximum":999.99,"description":"Alíquota aproximada de tributos federais."},"state_rate":{"allOf":[{"$ref":"#/components/schemas/NfseDecimalValue"}],"minimum":0,"maximum":999.99,"description":"Alíquota aproximada de tributos estaduais."},"municipal_rate":{"allOf":[{"$ref":"#/components/schemas/NfseDecimalValue"}],"minimum":0,"maximum":999.99,"description":"Alíquota aproximada de tributos municipais."},"simple_national_rate":{"allOf":[{"$ref":"#/components/schemas/NfseDecimalValue"}],"minimum":0,"maximum":99.99,"description":"Alíquota aproximada dos tributos para optante do Simples Nacional."}}},"NfseIbscbs":{"type":"object","additionalProperties":false,"description":"Bloco IBS/CBS compartilhado entre o Ambiente Nacional e provedores municipais aderentes ao IBS/CBS.\n`tax_situation_code` e `classification_code` são o CST/cClassTrib principal do IBS/CBS. O grupo `taxation.regular.*` representa a tributação regular e não é duplicidade desses campos principais.\nNo `national`, envie apenas os campos declaratórios do layout nacional: `purpose`, `final_consumer`, `operation_indicator`, `operation_type`, `government_entity_type`, `destination_indicator`, `references`, `tax_situation_code`/`classification_code`, `destination`, `property`, `taxation` e `reimbursements`.\nOs campos `reduction_rate`, `incidence_location_code`, `incidence_location_name`, `values` e `totals` existem no contrato canônico para provedores municipais aderentes ao IBS/CBS, mas são rejeitados pelo provedor Nacional quando a empresa usa `integration=national`.\nNão envie `ibscbs.taxation.tax_situation_code` nem `ibscbs.taxation.classification_code`; esses aliases são aceitos somente na borda HTTP do `POST /nfse` para compatibilidade de entrada e são normalizados para os campos principais.","properties":{"purpose":{"type":"string","enum":["0"],"description":"Finalidade da NFS-e no bloco IBS/CBS. No XSD nacional atual, apenas `0` é aceito."},"final_consumer":{"type":"string","enum":["0","1"],"description":"Indicador de consumidor final no bloco IBS/CBS. Opcional no XSD nacional."},"operation_indicator":{"type":"string","pattern":"^[0-9]{6}$","description":"Código do indicador da operação no bloco IBS/CBS."},"operation_type":{"type":"string","enum":["1","2","3","4","5"],"description":"Tipo da operação no bloco IBS/CBS."},"government_entity_type":{"type":"string","enum":["1","2","3","4"],"description":"Tipo de ente governamental no bloco IBS/CBS."},"destination_indicator":{"type":"string","enum":["0","1"],"description":"Indicador do destino da operação no bloco IBS/CBS."},"tax_situation_code":{"type":"string","pattern":"^[0-9]{3}$","description":"CST principal aplicado ao bloco IBS/CBS. Não confundir com `taxation.regular.tax_situation_code`, que pertence ao grupo de tributação regular."},"classification_code":{"type":"string","pattern":"^[0-9]{6}$","description":"cClassTrib principal usado no bloco IBS/CBS. Não confundir com `taxation.regular.classification_code`, que pertence ao grupo de tributação regular."},"reduction_rate":{"type":"string","pattern":"^\\\\d+(?:\\\\.\\\\d+)?$","description":"Percentual redutor serializado por providers municipais cujo template consome esse campo. Rejeição fiscal pertence ao provedor."},"incidence_location_code":{"type":"string","description":"Código do local de incidência do IBS/CBS serializado por providers municipais cujo template consome esse campo. Rejeição fiscal pertence ao provedor."},"incidence_location_name":{"type":"string","description":"Nome do local de incidência do IBS/CBS serializado por providers municipais cujo template consome esse campo. Rejeição fiscal pertence ao provedor."},"references":{"type":"array","description":"Referências técnicas aceitas pelo layout IBS/CBS.","items":{"type":"string"}},"destination":{"$ref":"#/components/schemas/NfseIbscbsDestination","description":"Destinatário do serviço no grupo declaratório IBS/CBS do Ambiente Nacional."},"property":{"$ref":"#/components/schemas/NfseIbscbsProperty","description":"Informações de imóvel no grupo declaratório IBS/CBS do Ambiente Nacional."},"taxation":{"$ref":"#/components/schemas/NfseIbscbsTaxation","description":"Subgrupos declaratórios de tributação IBS/CBS. Não contém o CST/cClassTrib principal; esses campos ficam em `ibscbs.tax_situation_code` e `ibscbs.classification_code`."},"reimbursements":{"type":"array","maxItems":1000,"description":"Documentos de reembolso, repasse ou ressarcimento no grupo declaratório IBS/CBS.","items":{"$ref":"#/components/schemas/NfseIbscbsReimbursement"}},"values":{"$ref":"#/components/schemas/NfseIbscbsValues","description":"Valores calculados do IBS/CBS serializados por providers municipais cujo template consome esse grupo. Rejeição fiscal pertence ao provedor."},"totals":{"$ref":"#/components/schemas/NfseIbscbsTotals","description":"Totais calculados do IBS/CBS serializados por providers municipais cujo template consome esse grupo. Rejeição fiscal pertence ao provedor."}}},"NfseIbscbsDestination":{"type":"object","additionalProperties":false,"properties":{"tax_id":{"type":"string","description":"CPF ou CNPJ, somente dígitos."},"nif":{"type":"string","description":"Número de identificação fiscal no exterior."},"no_nif_reason":{"type":"string","enum":["0","1","2"],"description":"Motivo para ausência de NIF."},"legal_name":{"type":"string","description":"Razão social ou nome do destinatário."},"address":{"$ref":"#/components/schemas/NfseIbscbsAddress"},"phone":{"type":"string","description":"Telefone do destinatário."},"email":{"type":"string","format":"email","description":"E-mail do destinatário."}}},"NfseIbscbsAddress":{"type":"object","additionalProperties":false,"properties":{"municipality_code":{"type":"string","pattern":"^[0-9]{7}$","description":"Código IBGE do município para endereço nacional."},"postal_code":{"type":"string","description":"CEP brasileiro ou código postal exterior."},"country_code":{"type":"string","pattern":"^[A-Z]{2}$","description":"Código ISO 3166-1 alfa-2 do país."},"municipality":{"type":"string","description":"Município/localidade do endereço no contrato canônico NFS-e."},"state":{"type":"string","description":"UF brasileira ou estado/província/região estrangeira."},"street":{"type":"string","description":"Logradouro."},"number":{"type":"string","description":"Número do endereço."},"complement":{"type":"string","description":"Complemento do endereço."},"neighborhood":{"type":"string","description":"Bairro."}}},"NfseIbscbsProperty":{"type":"object","additionalProperties":false,"properties":{"registration_code":{"type":"string","description":"Inscrição imobiliária fiscal."},"cib_code":{"type":"string","minLength":8,"maxLength":8,"description":"Código do Cadastro Imobiliário Brasileiro."},"address":{"$ref":"#/components/schemas/NfseIbscbsAddress","description":"Endereço do imóvel. No Nacional, informe `cib_code` ou `address`, nunca ambos."}}},"NfseIbscbsTaxation":{"type":"object","additionalProperties":false,"description":"Subgrupos declaratórios de tributação IBS/CBS. `regular` é tributação regular distinta dos campos principais do bloco.","properties":{"credit_presumed_code":{"type":"string","pattern":"^[0-9]{2}$","description":"Código de crédito presumido IBS/CBS."},"regular":{"$ref":"#/components/schemas/NfseIbscbsRegularTaxation","description":"Tributação regular IBS/CBS, distinta do CST/cClassTrib principal do bloco."},"deferral":{"$ref":"#/components/schemas/NfseIbscbsDeferral"}}},"NfseIbscbsRegularTaxation":{"type":"object","additionalProperties":false,"properties":{"tax_situation_code":{"type":"string","pattern":"^[0-9]{3}$","description":"CST da tributação regular. Campo distinto de `ibscbs.tax_situation_code`."},"classification_code":{"type":"string","pattern":"^[0-9]{6}$","description":"cClassTrib da tributação regular. Campo distinto de `ibscbs.classification_code`."}}},"NfseIbscbsDeferral":{"type":"object","additionalProperties":false,"properties":{"state_rate":{"allOf":[{"$ref":"#/components/schemas/NfseDecimalValue"}],"minimum":0,"maximum":100,"description":"Percentual de diferimento do IBS estadual."},"municipality_rate":{"allOf":[{"$ref":"#/components/schemas/NfseDecimalValue"}],"minimum":0,"maximum":100,"description":"Percentual de diferimento do IBS municipal."},"cbs_rate":{"allOf":[{"$ref":"#/components/schemas/NfseDecimalValue"}],"minimum":0,"maximum":100,"description":"Percentual de diferimento da CBS."}}},"NfseIbscbsReimbursement":{"type":"object","additionalProperties":false,"properties":{"dfe_national":{"$ref":"#/components/schemas/NfseIbscbsDfeNational"},"other_fiscal_document":{"$ref":"#/components/schemas/NfseIbscbsOtherFiscalDocument"},"other_document":{"$ref":"#/components/schemas/NfseIbscbsOtherDocument"},"supplier":{"$ref":"#/components/schemas/NfseIbscbsIdentity"},"issue_date":{"type":"string","format":"date","description":"Data de emissão do documento referenciado."},"competence_date":{"type":"string","format":"date","description":"Data de competência do documento referenciado."},"type":{"type":"string","enum":["01","02","03","04","99"],"description":"Tipo de reembolso, repasse ou ressarcimento."},"type_description":{"type":"string","description":"Descrição quando `type` for `99`."},"amount":{"allOf":[{"$ref":"#/components/schemas/NfseDecimalValue"}],"minimum":0,"description":"Valor do reembolso, repasse ou ressarcimento."}}},"NfseIbscbsDfeNational":{"type":"object","additionalProperties":false,"properties":{"type":{"type":"string","enum":["1","2","3","9"],"description":"Tipo de chave do documento fiscal eletrônico nacional."},"type_description":{"type":"string","description":"Descrição quando `type` for `9`."},"key":{"type":"string","maxLength":50,"description":"Chave do documento fiscal eletrônico."}}},"NfseIbscbsOtherFiscalDocument":{"type":"object","additionalProperties":false,"properties":{"municipality_code":{"type":"string","pattern":"^[0-9]{7}$","description":"Código do município emissor do documento fiscal."},"number":{"type":"string","description":"Número do documento fiscal."},"description":{"type":"string","description":"Descrição do documento fiscal."}}},"NfseIbscbsOtherDocument":{"type":"object","additionalProperties":false,"properties":{"number":{"type":"string","description":"Número do documento não fiscal."},"description":{"type":"string","description":"Descrição do documento não fiscal."}}},"NfseIbscbsIdentity":{"type":"object","additionalProperties":false,"properties":{"tax_id":{"type":"string","description":"CPF ou CNPJ, somente dígitos."},"nif":{"type":"string","description":"Número de identificação fiscal no exterior."},"no_nif_reason":{"type":"string","enum":["0","1","2"],"description":"Motivo para ausência de NIF."},"legal_name":{"type":"string","description":"Razão social ou nome."}}},"NfseIbscbsValues":{"type":"object","additionalProperties":false,"description":"Valores calculados do IBS/CBS para providers municipais que serializam esse grupo. Não enviar no Ambiente Nacional.","properties":{"base_amount":{"allOf":[{"$ref":"#/components/schemas/NfseDecimalValue"}],"minimum":0,"description":"Base de cálculo do IBS/CBS."},"state":{"$ref":"#/components/schemas/NfseIbscbsStateValues"},"municipality":{"$ref":"#/components/schemas/NfseIbscbsMunicipalityValues"},"federal":{"$ref":"#/components/schemas/NfseIbscbsFederalValues"}}},"NfseIbscbsStateValues":{"type":"object","additionalProperties":false,"properties":{"ibs_state_rate":{"allOf":[{"$ref":"#/components/schemas/NfseDecimalValue"}],"minimum":0,"description":"Alíquota estadual do IBS."},"ibs_state_reduction_rate":{"allOf":[{"$ref":"#/components/schemas/NfseDecimalValue"}],"minimum":0,"maximum":100,"description":"Redução de alíquota estadual do IBS em providers municipais aderentes ao IBS/CBS."},"ibs_state_effective_rate":{"allOf":[{"$ref":"#/components/schemas/NfseDecimalValue"}],"minimum":0,"description":"Alíquota efetiva estadual do IBS."}}},"NfseIbscbsMunicipalityValues":{"type":"object","additionalProperties":false,"properties":{"ibs_municipality_rate":{"allOf":[{"$ref":"#/components/schemas/NfseDecimalValue"}],"minimum":0,"description":"Alíquota municipal do IBS."},"ibs_municipality_reduction_rate":{"allOf":[{"$ref":"#/components/schemas/NfseDecimalValue"}],"minimum":0,"maximum":100,"description":"Redução de alíquota municipal do IBS em providers municipais aderentes ao IBS/CBS."},"ibs_municipality_effective_rate":{"allOf":[{"$ref":"#/components/schemas/NfseDecimalValue"}],"minimum":0,"description":"Alíquota efetiva municipal do IBS."}}},"NfseIbscbsFederalValues":{"type":"object","additionalProperties":false,"properties":{"cbs_rate":{"allOf":[{"$ref":"#/components/schemas/NfseDecimalValue"}],"minimum":0,"description":"Alíquota federal da CBS."},"cbs_reduction_rate":{"allOf":[{"$ref":"#/components/schemas/NfseDecimalValue"}],"minimum":0,"maximum":100,"description":"Redução de alíquota federal da CBS em providers municipais aderentes ao IBS/CBS."},"cbs_effective_rate":{"allOf":[{"$ref":"#/components/schemas/NfseDecimalValue"}],"minimum":0,"description":"Alíquota efetiva federal da CBS."}}},"NfseIbscbsTotals":{"type":"object","additionalProperties":false,"description":"Totais calculados do IBS/CBS para providers municipais que serializam esse grupo. Não enviar no Ambiente Nacional.","properties":{"total_nf_amount":{"allOf":[{"$ref":"#/components/schemas/NfseDecimalValue"}],"minimum":0,"description":"Total da NFS-e usado no bloco IBS/CBS."},"ibs":{"$ref":"#/components/schemas/NfseIbscbsIbsTotals"},"cbs":{"$ref":"#/components/schemas/NfseIbscbsCbsTotals"},"government_purchase":{"$ref":"#/components/schemas/NfseIbscbsGovernmentPurchaseTotals"}}},"NfseIbscbsIbsTotals":{"type":"object","additionalProperties":false,"properties":{"total_amount":{"allOf":[{"$ref":"#/components/schemas/NfseDecimalValue"}],"minimum":0,"description":"Total consolidado do IBS."},"credit_presumed":{"$ref":"#/components/schemas/NfseIbscbsCreditPresumedTotals"},"state_total":{"$ref":"#/components/schemas/NfseIbscbsIbsLocationTotal"},"municipality_total":{"$ref":"#/components/schemas/NfseIbscbsIbsLocationTotal"}}},"NfseIbscbsCreditPresumedTotals":{"type":"object","additionalProperties":false,"properties":{"rate":{"allOf":[{"$ref":"#/components/schemas/NfseDecimalValue"}],"minimum":0,"maximum":100,"description":"Percentual de crédito presumido em providers municipais aderentes ao IBS/CBS."},"amount":{"allOf":[{"$ref":"#/components/schemas/NfseDecimalValue"}],"minimum":0,"description":"Valor de crédito presumido em providers municipais aderentes ao IBS/CBS."}}},"NfseIbscbsIbsLocationTotal":{"type":"object","additionalProperties":false,"properties":{"total_amount":{"allOf":[{"$ref":"#/components/schemas/NfseDecimalValue"}],"minimum":0,"description":"Valor total consolidado do grupo correspondente."},"deferral_amount":{"allOf":[{"$ref":"#/components/schemas/NfseDecimalValue"}],"minimum":0,"description":"Valor diferido do grupo correspondente em providers municipais aderentes ao IBS/CBS."}}},"NfseIbscbsCbsTotals":{"type":"object","additionalProperties":false,"properties":{"total_amount":{"allOf":[{"$ref":"#/components/schemas/NfseDecimalValue"}],"minimum":0,"description":"Total consolidado da CBS."},"credit_presumed":{"$ref":"#/components/schemas/NfseIbscbsCreditPresumedTotals"},"deferral_amount":{"allOf":[{"$ref":"#/components/schemas/NfseDecimalValue"}],"minimum":0,"description":"Valor diferido da CBS em providers municipais aderentes ao IBS/CBS."}}},"NfseIbscbsGovernmentPurchaseTotals":{"type":"object","additionalProperties":false,"properties":{"ibs_state_rate":{"allOf":[{"$ref":"#/components/schemas/NfseDecimalValue"}],"minimum":0,"maximum":100,"description":"Alíquota estadual do IBS em compra governamental."},"ibs_state_amount":{"allOf":[{"$ref":"#/components/schemas/NfseDecimalValue"}],"minimum":0,"description":"Valor estadual do IBS em compra governamental."},"ibs_municipality_rate":{"allOf":[{"$ref":"#/components/schemas/NfseDecimalValue"}],"minimum":0,"maximum":100,"description":"Alíquota municipal do IBS em compra governamental."},"ibs_municipality_amount":{"allOf":[{"$ref":"#/components/schemas/NfseDecimalValue"}],"minimum":0,"description":"Valor municipal do IBS em compra governamental."},"cbs_rate":{"allOf":[{"$ref":"#/components/schemas/NfseDecimalValue"}],"minimum":0,"maximum":100,"description":"Alíquota da CBS em compra governamental."},"cbs_amount":{"allOf":[{"$ref":"#/components/schemas/NfseDecimalValue"}],"minimum":0,"description":"Valor da CBS em compra governamental."}}},"NfseValues":{"type":"object","additionalProperties":false,"required":["total_amount"],"properties":{"total_amount":{"allOf":[{"$ref":"#/components/schemas/NfseDecimalValue"}],"minimum":0,"description":"Valor total do serviço."},"net_amount":{"allOf":[{"$ref":"#/components/schemas/NfseDecimalValue"}],"minimum":0,"description":"Valor líquido do serviço."},"rate":{"allOf":[{"$ref":"#/components/schemas/NfseDecimalValue"}],"minimum":0,"description":"Alíquota do ISS."},"iss_amount":{"allOf":[{"$ref":"#/components/schemas/NfseDecimalValue"}],"minimum":0,"description":"Valor do ISS."},"unconditional_discount":{"allOf":[{"$ref":"#/components/schemas/NfseDecimalValue"}],"minimum":0,"description":"Desconto incondicional aplicado ao serviço."},"conditional_discount":{"allOf":[{"$ref":"#/components/schemas/NfseDecimalValue"}],"minimum":0,"description":"Desconto condicional aplicado ao serviço."},"ir_amount":{"allOf":[{"$ref":"#/components/schemas/NfseDecimalValue"}],"minimum":0,"description":"Valor do IR retido na fonte."},"pis_amount":{"allOf":[{"$ref":"#/components/schemas/NfseDecimalValue"}],"minimum":0,"description":"Valor do PIS retido na fonte."},"cofins_amount":{"allOf":[{"$ref":"#/components/schemas/NfseDecimalValue"}],"minimum":0,"description":"Valor da COFINS retida na fonte."},"inss_amount":{"allOf":[{"$ref":"#/components/schemas/NfseDecimalValue"}],"minimum":0,"description":"Valor do INSS retido na fonte."},"csll_amount":{"allOf":[{"$ref":"#/components/schemas/NfseDecimalValue"}],"minimum":0,"description":"Valor da CSLL retida na fonte."},"other_retentions":{"allOf":[{"$ref":"#/components/schemas/NfseDecimalValue"}],"minimum":0,"description":"Outras retenções aplicadas ao serviço."},"deductions_amount":{"allOf":[{"$ref":"#/components/schemas/NfseDecimalValue"}],"minimum":0,"description":"Valor total das deduções."},"intermediary_amount":{"allOf":[{"$ref":"#/components/schemas/NfseDecimalValue"}],"minimum":0,"description":"Valor recebido pelo intermediário do serviço, quando o layout fiscal exigir esse destaque."},"cp_amount":{"allOf":[{"$ref":"#/components/schemas/NfseDecimalValue"}],"minimum":0,"description":"Valor de Contribuição Previdenciária retido."},"pis_cofins_base_amount":{"allOf":[{"$ref":"#/components/schemas/NfseDecimalValue"}],"minimum":0,"description":"Base de cálculo compartilhada para PIS e COFINS (vBCPisCofins no XML)."},"pis_rate":{"allOf":[{"$ref":"#/components/schemas/NfseDecimalValue"}],"minimum":0,"maximum":100,"description":"Alíquota do PIS (pAliqPis no XML)."},"cofins_rate":{"allOf":[{"$ref":"#/components/schemas/NfseDecimalValue"}],"minimum":0,"maximum":100,"description":"Alíquota da COFINS (pAliqCofins no XML)."},"deductions":{"type":"array","maxItems":1000,"description":"Documentos fiscais usados para dedução ou redução da base de cálculo, quando o layout fiscal permitir.","items":{"$ref":"#/components/schemas/NfseDeduction"}}}},"NfseDeduction":{"type":"object","additionalProperties":false,"properties":{"type":{"type":"string","enum":["1","2","3","4","5","6","7","8","9","99"],"description":"Tipo fiscal da dedução conforme o layout aplicável."},"description":{"type":"string","maxLength":150,"description":"Descrição da dedução ou redução."},"deductible_amount":{"allOf":[{"$ref":"#/components/schemas/NfseDecimalValue"}],"minimum":0,"description":"Valor do documento elegível à dedução."},"deduction_amount":{"allOf":[{"$ref":"#/components/schemas/NfseDecimalValue"}],"minimum":0,"description":"Valor efetivamente deduzido."},"document_kind":{"type":"string","description":"Tipo de documento que comprova a dedução."},"nfse_key":{"type":"string","pattern":"^[0-9]{50}$","description":"Chave de acesso da NFS-e usada como documento de dedução, com 50 dígitos quando exigida pelo Nacional."},"nfe_key":{"type":"string","pattern":"^[0-9]{44}$","description":"Chave de acesso da NF-e usada como documento de dedução, com 44 dígitos quando exigida pelo Nacional."},"other_document_number":{"type":"string","maxLength":255,"description":"Número de outro documento aceito para dedução."},"issue_date":{"type":"string","format":"date","description":"Data de emissão do documento de dedução."},"municipal_nfse":{"$ref":"#/components/schemas/NfseDeductionMunicipalNfse"},"fiscal_document":{"$ref":"#/components/schemas/NfseDeductionFiscalDocument"},"supplier":{"$ref":"#/components/schemas/NfseIntermediary","description":"Fornecedor ou prestador associado ao documento de dedução."}}},"NfseDeductionMunicipalNfse":{"type":"object","additionalProperties":false,"properties":{"municipality_code":{"type":"string","pattern":"^[0-9]{7}$","description":"Código IBGE do município da NFS-e dedutível."},"number":{"type":"string","description":"Número da NFS-e dedutível."},"verification_code":{"type":"string","pattern":"^[a-zA-Z0-9]{1,9}$","description":"Código de verificação da NFS-e dedutível."}}},"NfseDeductionFiscalDocument":{"type":"object","additionalProperties":false,"properties":{"number":{"type":"string","description":"Número do documento fiscal dedutível."},"model":{"type":"string","description":"Modelo do documento fiscal dedutível."},"series":{"type":"string","description":"Série do documento fiscal dedutível."},"state":{"type":"string","maxLength":2,"description":"UF do documento fiscal dedutível."},"access_key":{"type":"string","description":"Chave de acesso do documento fiscal dedutível."}}}}}}
```

## The NfseSubstitutedReference object

```json
{"openapi":"3.1.1","info":{"title":"API IXC E-Docs - Integração x-api-key","version":"0.1.0"},"components":{"schemas":{"NfseSubstitutedReference":{"oneOf":[{"type":"object","additionalProperties":false,"required":["nfse_id"],"properties":{"nfse_id":{"$ref":"#/components/schemas/ObjectId","description":"ID interno da NFS-e autorizada que será substituída."}}},{"type":"object","additionalProperties":false,"required":["external_id"],"properties":{"external_id":{"type":"string","description":"ID externo da NFS-e autorizada que será substituída no mesmo emissor."}}}],"description":"Aceita exatamente um identificador (`nfse_id` ou `external_id`)."},"ObjectId":{"type":"string","description":"Identificador no formato ObjectId."}}}}
```

## The NfseIssuer object

```json
{"openapi":"3.1.1","info":{"title":"API IXC E-Docs - Integração x-api-key","version":"0.1.0"},"components":{"schemas":{"NfseIssuer":{"type":"object","additionalProperties":false,"required":["tax_id"],"properties":{"tax_id":{"type":"string","description":"Número do CNPJ do prestador (somente dígitos)."}}}}}}
```

## The NfseCustomer object

```json
{"openapi":"3.1.1","info":{"title":"API IXC E-Docs - Integração x-api-key","version":"0.1.0"},"components":{"schemas":{"NfseCustomer":{"type":"object","additionalProperties":false,"required":["legal_name"],"anyOf":[{"required":["tax_id"]},{"required":["nif"]},{"required":["no_nif_reason"]}],"properties":{"tax_id":{"type":"string","minLength":1,"description":"CPF ou CNPJ do tomador, somente dígitos. Para tomador estrangeiro, use `nif` ou `no_nif_reason` conforme o layout fiscal."},"municipal_registration":{"type":"string","description":"Inscrição Municipal do tomador."},"nif":{"type":"string","minLength":1,"description":"Número de identificação fiscal do tomador estrangeiro."},"no_nif_reason":{"type":"string","enum":["0","1","2"],"description":"Motivo da ausência de NIF do tomador estrangeiro quando o layout fiscal permitir."},"caepf":{"type":"string","description":"Cadastro de Atividade Econômica da Pessoa Física do tomador."},"legal_name":{"type":"string","description":"Razão social ou nome do tomador."},"name":{"type":"string","description":"Nome fantasia do tomador."},"address":{"$ref":"#/components/schemas/NfseAddress","description":"Endereço completo do tomador."},"phone":{"type":"string","description":"Telefone de contato do tomador."},"email":{"type":"string","format":"email","description":"E-mail de contato do tomador."}}},"NfseAddress":{"type":"object","additionalProperties":false,"properties":{"street":{"type":"string","minLength":1,"pattern":"^[A-Za-zÀ-ÖØ-öø-ÿ0-9 .,-]+$","description":"Logradouro. Não aceita símbolos especiais nem quebra de linha."},"number":{"type":"string","minLength":1,"pattern":"^[A-Za-zÀ-ÖØ-öø-ÿ0-9 .,-]+$","description":"Número do endereço. Não aceita símbolos especiais nem quebra de linha."},"neighborhood":{"type":"string","minLength":1,"pattern":"^[A-Za-zÀ-ÖØ-öø-ÿ0-9 .,-]+$","description":"Bairro. Não aceita símbolos especiais nem quebra de linha."},"municipality":{"type":"string","description":"**Compatibilidade.** (Compatibility) Alias permanente de `city`.\nAceito na entrada HTTP e devolvido nas respostas para manter integrações existentes.\nNão é usado por providers, templates, workers ou DANFSe."},"city":{"type":"string","description":"Cidade/localidade do endereço. Campo canônico do contrato NFS-e."},"state":{"type":"string","maxLength":2,"description":"UF brasileira ou estado/província/região estrangeira."},"postal_code":{"type":"string","minLength":1,"pattern":"^(?:\\d{8}|\\d{5}-\\d{3})$","description":"CEP brasileiro ou código postal exterior."},"complement":{"type":"string","description":"Complemento do endereço."},"municipality_code":{"type":"string","maxLength":7,"description":"Código IBGE do município brasileiro, usado para serialização fiscal quando aplicável."},"country":{"type":"string","maxLength":60,"description":"Nome do país, quando útil para exibição."},"country_code":{"type":"string","pattern":"^[A-Z]{2}$","description":"Código ISO 3166-1 alfa-2 do país."}}}}}}
```

## The NfseIntermediary object

```json
{"openapi":"3.1.1","info":{"title":"API IXC E-Docs - Integração x-api-key","version":"0.1.0"},"components":{"schemas":{"NfseIntermediary":{"type":"object","additionalProperties":false,"required":["legal_name"],"anyOf":[{"required":["tax_id"]},{"required":["nif"]},{"required":["no_nif_reason"]}],"properties":{"tax_id":{"type":"string","description":"CPF ou CNPJ, somente dígitos."},"nif":{"type":"string","description":"Número de identificação fiscal no exterior."},"no_nif_reason":{"type":"string","enum":["0","1","2"],"description":"Motivo para ausência de NIF."},"caepf":{"type":"string","description":"Cadastro de Atividade Econômica da Pessoa Física, somente dígitos."},"municipal_registration":{"type":"string","description":"Inscrição Municipal."},"legal_name":{"type":"string","description":"Razão social ou nome."},"name":{"type":"string","description":"Nome fantasia ou alias aceito."},"address":{"$ref":"#/components/schemas/NfseAddress"},"phone":{"type":"string","description":"Telefone de contato."},"email":{"type":"string","format":"email","description":"E-mail de contato."},"municipality_code":{"type":"string","pattern":"^[0-9]{7}$","description":"Código IBGE do município."}}},"NfseAddress":{"type":"object","additionalProperties":false,"properties":{"street":{"type":"string","minLength":1,"pattern":"^[A-Za-zÀ-ÖØ-öø-ÿ0-9 .,-]+$","description":"Logradouro. Não aceita símbolos especiais nem quebra de linha."},"number":{"type":"string","minLength":1,"pattern":"^[A-Za-zÀ-ÖØ-öø-ÿ0-9 .,-]+$","description":"Número do endereço. Não aceita símbolos especiais nem quebra de linha."},"neighborhood":{"type":"string","minLength":1,"pattern":"^[A-Za-zÀ-ÖØ-öø-ÿ0-9 .,-]+$","description":"Bairro. Não aceita símbolos especiais nem quebra de linha."},"municipality":{"type":"string","description":"**Compatibilidade.** (Compatibility) Alias permanente de `city`.\nAceito na entrada HTTP e devolvido nas respostas para manter integrações existentes.\nNão é usado por providers, templates, workers ou DANFSe."},"city":{"type":"string","description":"Cidade/localidade do endereço. Campo canônico do contrato NFS-e."},"state":{"type":"string","maxLength":2,"description":"UF brasileira ou estado/província/região estrangeira."},"postal_code":{"type":"string","minLength":1,"pattern":"^(?:\\d{8}|\\d{5}-\\d{3})$","description":"CEP brasileiro ou código postal exterior."},"complement":{"type":"string","description":"Complemento do endereço."},"municipality_code":{"type":"string","maxLength":7,"description":"Código IBGE do município brasileiro, usado para serialização fiscal quando aplicável."},"country":{"type":"string","maxLength":60,"description":"Nome do país, quando útil para exibição."},"country_code":{"type":"string","pattern":"^[A-Z]{2}$","description":"Código ISO 3166-1 alfa-2 do país."}}}}}}
```

## The NfseAddress object

```json
{"openapi":"3.1.1","info":{"title":"API IXC E-Docs - Integração x-api-key","version":"0.1.0"},"components":{"schemas":{"NfseAddress":{"type":"object","additionalProperties":false,"properties":{"street":{"type":"string","minLength":1,"pattern":"^[A-Za-zÀ-ÖØ-öø-ÿ0-9 .,-]+$","description":"Logradouro. Não aceita símbolos especiais nem quebra de linha."},"number":{"type":"string","minLength":1,"pattern":"^[A-Za-zÀ-ÖØ-öø-ÿ0-9 .,-]+$","description":"Número do endereço. Não aceita símbolos especiais nem quebra de linha."},"neighborhood":{"type":"string","minLength":1,"pattern":"^[A-Za-zÀ-ÖØ-öø-ÿ0-9 .,-]+$","description":"Bairro. Não aceita símbolos especiais nem quebra de linha."},"municipality":{"type":"string","description":"**Compatibilidade.** (Compatibility) Alias permanente de `city`.\nAceito na entrada HTTP e devolvido nas respostas para manter integrações existentes.\nNão é usado por providers, templates, workers ou DANFSe."},"city":{"type":"string","description":"Cidade/localidade do endereço. Campo canônico do contrato NFS-e."},"state":{"type":"string","maxLength":2,"description":"UF brasileira ou estado/província/região estrangeira."},"postal_code":{"type":"string","minLength":1,"pattern":"^(?:\\d{8}|\\d{5}-\\d{3})$","description":"CEP brasileiro ou código postal exterior."},"complement":{"type":"string","description":"Complemento do endereço."},"municipality_code":{"type":"string","maxLength":7,"description":"Código IBGE do município brasileiro, usado para serialização fiscal quando aplicável."},"country":{"type":"string","maxLength":60,"description":"Nome do país, quando útil para exibição."},"country_code":{"type":"string","pattern":"^[A-Z]{2}$","description":"Código ISO 3166-1 alfa-2 do país."}}}}}}
```

## The NfseDecimalValue object

```json
{"openapi":"3.1.1","info":{"title":"API IXC E-Docs - Integração x-api-key","version":"0.1.0"},"components":{"schemas":{"NfseDecimalValue":{"oneOf":[{"type":"number"},{"type":"string","pattern":"^\\\\d+(?:\\\\.\\\\d+)?$"}],"description":"Valor decimal aceito como número JSON ou string numérica decimal."}}}}
```

## The NfseValues object

```json
{"openapi":"3.1.1","info":{"title":"API IXC E-Docs - Integração x-api-key","version":"0.1.0"},"components":{"schemas":{"NfseValues":{"type":"object","additionalProperties":false,"required":["total_amount"],"properties":{"total_amount":{"allOf":[{"$ref":"#/components/schemas/NfseDecimalValue"}],"minimum":0,"description":"Valor total do serviço."},"net_amount":{"allOf":[{"$ref":"#/components/schemas/NfseDecimalValue"}],"minimum":0,"description":"Valor líquido do serviço."},"rate":{"allOf":[{"$ref":"#/components/schemas/NfseDecimalValue"}],"minimum":0,"description":"Alíquota do ISS."},"iss_amount":{"allOf":[{"$ref":"#/components/schemas/NfseDecimalValue"}],"minimum":0,"description":"Valor do ISS."},"unconditional_discount":{"allOf":[{"$ref":"#/components/schemas/NfseDecimalValue"}],"minimum":0,"description":"Desconto incondicional aplicado ao serviço."},"conditional_discount":{"allOf":[{"$ref":"#/components/schemas/NfseDecimalValue"}],"minimum":0,"description":"Desconto condicional aplicado ao serviço."},"ir_amount":{"allOf":[{"$ref":"#/components/schemas/NfseDecimalValue"}],"minimum":0,"description":"Valor do IR retido na fonte."},"pis_amount":{"allOf":[{"$ref":"#/components/schemas/NfseDecimalValue"}],"minimum":0,"description":"Valor do PIS retido na fonte."},"cofins_amount":{"allOf":[{"$ref":"#/components/schemas/NfseDecimalValue"}],"minimum":0,"description":"Valor da COFINS retida na fonte."},"inss_amount":{"allOf":[{"$ref":"#/components/schemas/NfseDecimalValue"}],"minimum":0,"description":"Valor do INSS retido na fonte."},"csll_amount":{"allOf":[{"$ref":"#/components/schemas/NfseDecimalValue"}],"minimum":0,"description":"Valor da CSLL retida na fonte."},"other_retentions":{"allOf":[{"$ref":"#/components/schemas/NfseDecimalValue"}],"minimum":0,"description":"Outras retenções aplicadas ao serviço."},"deductions_amount":{"allOf":[{"$ref":"#/components/schemas/NfseDecimalValue"}],"minimum":0,"description":"Valor total das deduções."},"intermediary_amount":{"allOf":[{"$ref":"#/components/schemas/NfseDecimalValue"}],"minimum":0,"description":"Valor recebido pelo intermediário do serviço, quando o layout fiscal exigir esse destaque."},"cp_amount":{"allOf":[{"$ref":"#/components/schemas/NfseDecimalValue"}],"minimum":0,"description":"Valor de Contribuição Previdenciária retido."},"pis_cofins_base_amount":{"allOf":[{"$ref":"#/components/schemas/NfseDecimalValue"}],"minimum":0,"description":"Base de cálculo compartilhada para PIS e COFINS (vBCPisCofins no XML)."},"pis_rate":{"allOf":[{"$ref":"#/components/schemas/NfseDecimalValue"}],"minimum":0,"maximum":100,"description":"Alíquota do PIS (pAliqPis no XML)."},"cofins_rate":{"allOf":[{"$ref":"#/components/schemas/NfseDecimalValue"}],"minimum":0,"maximum":100,"description":"Alíquota da COFINS (pAliqCofins no XML)."},"deductions":{"type":"array","maxItems":1000,"description":"Documentos fiscais usados para dedução ou redução da base de cálculo, quando o layout fiscal permitir.","items":{"$ref":"#/components/schemas/NfseDeduction"}}}},"NfseDecimalValue":{"oneOf":[{"type":"number"},{"type":"string","pattern":"^\\\\d+(?:\\\\.\\\\d+)?$"}],"description":"Valor decimal aceito como número JSON ou string numérica decimal."},"NfseDeduction":{"type":"object","additionalProperties":false,"properties":{"type":{"type":"string","enum":["1","2","3","4","5","6","7","8","9","99"],"description":"Tipo fiscal da dedução conforme o layout aplicável."},"description":{"type":"string","maxLength":150,"description":"Descrição da dedução ou redução."},"deductible_amount":{"allOf":[{"$ref":"#/components/schemas/NfseDecimalValue"}],"minimum":0,"description":"Valor do documento elegível à dedução."},"deduction_amount":{"allOf":[{"$ref":"#/components/schemas/NfseDecimalValue"}],"minimum":0,"description":"Valor efetivamente deduzido."},"document_kind":{"type":"string","description":"Tipo de documento que comprova a dedução."},"nfse_key":{"type":"string","pattern":"^[0-9]{50}$","description":"Chave de acesso da NFS-e usada como documento de dedução, com 50 dígitos quando exigida pelo Nacional."},"nfe_key":{"type":"string","pattern":"^[0-9]{44}$","description":"Chave de acesso da NF-e usada como documento de dedução, com 44 dígitos quando exigida pelo Nacional."},"other_document_number":{"type":"string","maxLength":255,"description":"Número de outro documento aceito para dedução."},"issue_date":{"type":"string","format":"date","description":"Data de emissão do documento de dedução."},"municipal_nfse":{"$ref":"#/components/schemas/NfseDeductionMunicipalNfse"},"fiscal_document":{"$ref":"#/components/schemas/NfseDeductionFiscalDocument"},"supplier":{"$ref":"#/components/schemas/NfseIntermediary","description":"Fornecedor ou prestador associado ao documento de dedução."}}},"NfseDeductionMunicipalNfse":{"type":"object","additionalProperties":false,"properties":{"municipality_code":{"type":"string","pattern":"^[0-9]{7}$","description":"Código IBGE do município da NFS-e dedutível."},"number":{"type":"string","description":"Número da NFS-e dedutível."},"verification_code":{"type":"string","pattern":"^[a-zA-Z0-9]{1,9}$","description":"Código de verificação da NFS-e dedutível."}}},"NfseDeductionFiscalDocument":{"type":"object","additionalProperties":false,"properties":{"number":{"type":"string","description":"Número do documento fiscal dedutível."},"model":{"type":"string","description":"Modelo do documento fiscal dedutível."},"series":{"type":"string","description":"Série do documento fiscal dedutível."},"state":{"type":"string","maxLength":2,"description":"UF do documento fiscal dedutível."},"access_key":{"type":"string","description":"Chave de acesso do documento fiscal dedutível."}}},"NfseIntermediary":{"type":"object","additionalProperties":false,"required":["legal_name"],"anyOf":[{"required":["tax_id"]},{"required":["nif"]},{"required":["no_nif_reason"]}],"properties":{"tax_id":{"type":"string","description":"CPF ou CNPJ, somente dígitos."},"nif":{"type":"string","description":"Número de identificação fiscal no exterior."},"no_nif_reason":{"type":"string","enum":["0","1","2"],"description":"Motivo para ausência de NIF."},"caepf":{"type":"string","description":"Cadastro de Atividade Econômica da Pessoa Física, somente dígitos."},"municipal_registration":{"type":"string","description":"Inscrição Municipal."},"legal_name":{"type":"string","description":"Razão social ou nome."},"name":{"type":"string","description":"Nome fantasia ou alias aceito."},"address":{"$ref":"#/components/schemas/NfseAddress"},"phone":{"type":"string","description":"Telefone de contato."},"email":{"type":"string","format":"email","description":"E-mail de contato."},"municipality_code":{"type":"string","pattern":"^[0-9]{7}$","description":"Código IBGE do município."}}},"NfseAddress":{"type":"object","additionalProperties":false,"properties":{"street":{"type":"string","minLength":1,"pattern":"^[A-Za-zÀ-ÖØ-öø-ÿ0-9 .,-]+$","description":"Logradouro. Não aceita símbolos especiais nem quebra de linha."},"number":{"type":"string","minLength":1,"pattern":"^[A-Za-zÀ-ÖØ-öø-ÿ0-9 .,-]+$","description":"Número do endereço. Não aceita símbolos especiais nem quebra de linha."},"neighborhood":{"type":"string","minLength":1,"pattern":"^[A-Za-zÀ-ÖØ-öø-ÿ0-9 .,-]+$","description":"Bairro. Não aceita símbolos especiais nem quebra de linha."},"municipality":{"type":"string","description":"**Compatibilidade.** (Compatibility) Alias permanente de `city`.\nAceito na entrada HTTP e devolvido nas respostas para manter integrações existentes.\nNão é usado por providers, templates, workers ou DANFSe."},"city":{"type":"string","description":"Cidade/localidade do endereço. Campo canônico do contrato NFS-e."},"state":{"type":"string","maxLength":2,"description":"UF brasileira ou estado/província/região estrangeira."},"postal_code":{"type":"string","minLength":1,"pattern":"^(?:\\d{8}|\\d{5}-\\d{3})$","description":"CEP brasileiro ou código postal exterior."},"complement":{"type":"string","description":"Complemento do endereço."},"municipality_code":{"type":"string","maxLength":7,"description":"Código IBGE do município brasileiro, usado para serialização fiscal quando aplicável."},"country":{"type":"string","maxLength":60,"description":"Nome do país, quando útil para exibição."},"country_code":{"type":"string","pattern":"^[A-Z]{2}$","description":"Código ISO 3166-1 alfa-2 do país."}}}}}}
```

## The NfseDeduction object

```json
{"openapi":"3.1.1","info":{"title":"API IXC E-Docs - Integração x-api-key","version":"0.1.0"},"components":{"schemas":{"NfseDeduction":{"type":"object","additionalProperties":false,"properties":{"type":{"type":"string","enum":["1","2","3","4","5","6","7","8","9","99"],"description":"Tipo fiscal da dedução conforme o layout aplicável."},"description":{"type":"string","maxLength":150,"description":"Descrição da dedução ou redução."},"deductible_amount":{"allOf":[{"$ref":"#/components/schemas/NfseDecimalValue"}],"minimum":0,"description":"Valor do documento elegível à dedução."},"deduction_amount":{"allOf":[{"$ref":"#/components/schemas/NfseDecimalValue"}],"minimum":0,"description":"Valor efetivamente deduzido."},"document_kind":{"type":"string","description":"Tipo de documento que comprova a dedução."},"nfse_key":{"type":"string","pattern":"^[0-9]{50}$","description":"Chave de acesso da NFS-e usada como documento de dedução, com 50 dígitos quando exigida pelo Nacional."},"nfe_key":{"type":"string","pattern":"^[0-9]{44}$","description":"Chave de acesso da NF-e usada como documento de dedução, com 44 dígitos quando exigida pelo Nacional."},"other_document_number":{"type":"string","maxLength":255,"description":"Número de outro documento aceito para dedução."},"issue_date":{"type":"string","format":"date","description":"Data de emissão do documento de dedução."},"municipal_nfse":{"$ref":"#/components/schemas/NfseDeductionMunicipalNfse"},"fiscal_document":{"$ref":"#/components/schemas/NfseDeductionFiscalDocument"},"supplier":{"$ref":"#/components/schemas/NfseIntermediary","description":"Fornecedor ou prestador associado ao documento de dedução."}}},"NfseDecimalValue":{"oneOf":[{"type":"number"},{"type":"string","pattern":"^\\\\d+(?:\\\\.\\\\d+)?$"}],"description":"Valor decimal aceito como número JSON ou string numérica decimal."},"NfseDeductionMunicipalNfse":{"type":"object","additionalProperties":false,"properties":{"municipality_code":{"type":"string","pattern":"^[0-9]{7}$","description":"Código IBGE do município da NFS-e dedutível."},"number":{"type":"string","description":"Número da NFS-e dedutível."},"verification_code":{"type":"string","pattern":"^[a-zA-Z0-9]{1,9}$","description":"Código de verificação da NFS-e dedutível."}}},"NfseDeductionFiscalDocument":{"type":"object","additionalProperties":false,"properties":{"number":{"type":"string","description":"Número do documento fiscal dedutível."},"model":{"type":"string","description":"Modelo do documento fiscal dedutível."},"series":{"type":"string","description":"Série do documento fiscal dedutível."},"state":{"type":"string","maxLength":2,"description":"UF do documento fiscal dedutível."},"access_key":{"type":"string","description":"Chave de acesso do documento fiscal dedutível."}}},"NfseIntermediary":{"type":"object","additionalProperties":false,"required":["legal_name"],"anyOf":[{"required":["tax_id"]},{"required":["nif"]},{"required":["no_nif_reason"]}],"properties":{"tax_id":{"type":"string","description":"CPF ou CNPJ, somente dígitos."},"nif":{"type":"string","description":"Número de identificação fiscal no exterior."},"no_nif_reason":{"type":"string","enum":["0","1","2"],"description":"Motivo para ausência de NIF."},"caepf":{"type":"string","description":"Cadastro de Atividade Econômica da Pessoa Física, somente dígitos."},"municipal_registration":{"type":"string","description":"Inscrição Municipal."},"legal_name":{"type":"string","description":"Razão social ou nome."},"name":{"type":"string","description":"Nome fantasia ou alias aceito."},"address":{"$ref":"#/components/schemas/NfseAddress"},"phone":{"type":"string","description":"Telefone de contato."},"email":{"type":"string","format":"email","description":"E-mail de contato."},"municipality_code":{"type":"string","pattern":"^[0-9]{7}$","description":"Código IBGE do município."}}},"NfseAddress":{"type":"object","additionalProperties":false,"properties":{"street":{"type":"string","minLength":1,"pattern":"^[A-Za-zÀ-ÖØ-öø-ÿ0-9 .,-]+$","description":"Logradouro. Não aceita símbolos especiais nem quebra de linha."},"number":{"type":"string","minLength":1,"pattern":"^[A-Za-zÀ-ÖØ-öø-ÿ0-9 .,-]+$","description":"Número do endereço. Não aceita símbolos especiais nem quebra de linha."},"neighborhood":{"type":"string","minLength":1,"pattern":"^[A-Za-zÀ-ÖØ-öø-ÿ0-9 .,-]+$","description":"Bairro. Não aceita símbolos especiais nem quebra de linha."},"municipality":{"type":"string","description":"**Compatibilidade.** (Compatibility) Alias permanente de `city`.\nAceito na entrada HTTP e devolvido nas respostas para manter integrações existentes.\nNão é usado por providers, templates, workers ou DANFSe."},"city":{"type":"string","description":"Cidade/localidade do endereço. Campo canônico do contrato NFS-e."},"state":{"type":"string","maxLength":2,"description":"UF brasileira ou estado/província/região estrangeira."},"postal_code":{"type":"string","minLength":1,"pattern":"^(?:\\d{8}|\\d{5}-\\d{3})$","description":"CEP brasileiro ou código postal exterior."},"complement":{"type":"string","description":"Complemento do endereço."},"municipality_code":{"type":"string","maxLength":7,"description":"Código IBGE do município brasileiro, usado para serialização fiscal quando aplicável."},"country":{"type":"string","maxLength":60,"description":"Nome do país, quando útil para exibição."},"country_code":{"type":"string","pattern":"^[A-Z]{2}$","description":"Código ISO 3166-1 alfa-2 do país."}}}}}}
```

## The NfseDeductionMunicipalNfse object

```json
{"openapi":"3.1.1","info":{"title":"API IXC E-Docs - Integração x-api-key","version":"0.1.0"},"components":{"schemas":{"NfseDeductionMunicipalNfse":{"type":"object","additionalProperties":false,"properties":{"municipality_code":{"type":"string","pattern":"^[0-9]{7}$","description":"Código IBGE do município da NFS-e dedutível."},"number":{"type":"string","description":"Número da NFS-e dedutível."},"verification_code":{"type":"string","pattern":"^[a-zA-Z0-9]{1,9}$","description":"Código de verificação da NFS-e dedutível."}}}}}}
```

## The NfseDeductionFiscalDocument object

```json
{"openapi":"3.1.1","info":{"title":"API IXC E-Docs - Integração x-api-key","version":"0.1.0"},"components":{"schemas":{"NfseDeductionFiscalDocument":{"type":"object","additionalProperties":false,"properties":{"number":{"type":"string","description":"Número do documento fiscal dedutível."},"model":{"type":"string","description":"Modelo do documento fiscal dedutível."},"series":{"type":"string","description":"Série do documento fiscal dedutível."},"state":{"type":"string","maxLength":2,"description":"UF do documento fiscal dedutível."},"access_key":{"type":"string","description":"Chave de acesso do documento fiscal dedutível."}}}}}}
```

## The NfseServiceEvent object

```json
{"openapi":"3.1.1","info":{"title":"API IXC E-Docs - Integração x-api-key","version":"0.1.0"},"components":{"schemas":{"NfseServiceEvent":{"type":"object","additionalProperties":false,"properties":{"name":{"type":"string","description":"Nome do evento relacionado ao serviço."},"identifier":{"type":"string","description":"Identificador do evento."},"description":{"type":"string","description":"Descrição do evento."},"start_date":{"type":"string","format":"date","description":"Data de início do evento."},"end_date":{"type":"string","format":"date","description":"Data de encerramento do evento."},"address":{"$ref":"#/components/schemas/NfseAddress","description":"Endereço do evento."}}},"NfseAddress":{"type":"object","additionalProperties":false,"properties":{"street":{"type":"string","minLength":1,"pattern":"^[A-Za-zÀ-ÖØ-öø-ÿ0-9 .,-]+$","description":"Logradouro. Não aceita símbolos especiais nem quebra de linha."},"number":{"type":"string","minLength":1,"pattern":"^[A-Za-zÀ-ÖØ-öø-ÿ0-9 .,-]+$","description":"Número do endereço. Não aceita símbolos especiais nem quebra de linha."},"neighborhood":{"type":"string","minLength":1,"pattern":"^[A-Za-zÀ-ÖØ-öø-ÿ0-9 .,-]+$","description":"Bairro. Não aceita símbolos especiais nem quebra de linha."},"municipality":{"type":"string","description":"**Compatibilidade.** (Compatibility) Alias permanente de `city`.\nAceito na entrada HTTP e devolvido nas respostas para manter integrações existentes.\nNão é usado por providers, templates, workers ou DANFSe."},"city":{"type":"string","description":"Cidade/localidade do endereço. Campo canônico do contrato NFS-e."},"state":{"type":"string","maxLength":2,"description":"UF brasileira ou estado/província/região estrangeira."},"postal_code":{"type":"string","minLength":1,"pattern":"^(?:\\d{8}|\\d{5}-\\d{3})$","description":"CEP brasileiro ou código postal exterior."},"complement":{"type":"string","description":"Complemento do endereço."},"municipality_code":{"type":"string","maxLength":7,"description":"Código IBGE do município brasileiro, usado para serialização fiscal quando aplicável."},"country":{"type":"string","maxLength":60,"description":"Nome do país, quando útil para exibição."},"country_code":{"type":"string","pattern":"^[A-Z]{2}$","description":"Código ISO 3166-1 alfa-2 do país."}}}}}}
```

## The NfseServiceConstruction object

```json
{"openapi":"3.1.1","info":{"title":"API IXC E-Docs - Integração x-api-key","version":"0.1.0"},"components":{"schemas":{"NfseServiceConstruction":{"type":"object","additionalProperties":false,"properties":{"work_code":{"type":"string","description":"Código da obra."},"cib_code":{"type":"string","description":"Código do Cadastro Imobiliário Brasileiro."},"property_registration":{"type":"string","description":"Inscrição imobiliária da obra."},"art":{"type":"string","description":"Anotação, registro ou termo de responsabilidade técnica da obra."},"address":{"$ref":"#/components/schemas/NfseAddress","description":"Endereço da obra."}}},"NfseAddress":{"type":"object","additionalProperties":false,"properties":{"street":{"type":"string","minLength":1,"pattern":"^[A-Za-zÀ-ÖØ-öø-ÿ0-9 .,-]+$","description":"Logradouro. Não aceita símbolos especiais nem quebra de linha."},"number":{"type":"string","minLength":1,"pattern":"^[A-Za-zÀ-ÖØ-öø-ÿ0-9 .,-]+$","description":"Número do endereço. Não aceita símbolos especiais nem quebra de linha."},"neighborhood":{"type":"string","minLength":1,"pattern":"^[A-Za-zÀ-ÖØ-öø-ÿ0-9 .,-]+$","description":"Bairro. Não aceita símbolos especiais nem quebra de linha."},"municipality":{"type":"string","description":"**Compatibilidade.** (Compatibility) Alias permanente de `city`.\nAceito na entrada HTTP e devolvido nas respostas para manter integrações existentes.\nNão é usado por providers, templates, workers ou DANFSe."},"city":{"type":"string","description":"Cidade/localidade do endereço. Campo canônico do contrato NFS-e."},"state":{"type":"string","maxLength":2,"description":"UF brasileira ou estado/província/região estrangeira."},"postal_code":{"type":"string","minLength":1,"pattern":"^(?:\\d{8}|\\d{5}-\\d{3})$","description":"CEP brasileiro ou código postal exterior."},"complement":{"type":"string","description":"Complemento do endereço."},"municipality_code":{"type":"string","maxLength":7,"description":"Código IBGE do município brasileiro, usado para serialização fiscal quando aplicável."},"country":{"type":"string","maxLength":60,"description":"Nome do país, quando útil para exibição."},"country_code":{"type":"string","pattern":"^[A-Z]{2}$","description":"Código ISO 3166-1 alfa-2 do país."}}}}}}
```

## The NfseServiceForeignTrade object

```json
{"openapi":"3.1.1","info":{"title":"API IXC E-Docs - Integração x-api-key","version":"0.1.0"},"components":{"schemas":{"NfseServiceForeignTrade":{"type":"object","additionalProperties":false,"properties":{"provision_mode":{"type":"string","description":"Modo de prestação no comércio exterior."},"relationship_type":{"type":"string","description":"Tipo de vínculo entre prestador e tomador no exterior."},"currency_code":{"type":"string","description":"Código da moeda da operação."},"foreign_amount":{"allOf":[{"$ref":"#/components/schemas/NfseDecimalValue"}],"minimum":0,"description":"Valor do serviço na moeda estrangeira."},"issuer_support_mechanism":{"type":"string","description":"Mecanismo de apoio ou fomento usado pelo prestador."},"customer_support_mechanism":{"type":"string","description":"Mecanismo de apoio ou fomento usado pelo tomador."},"temporary_goods_movement":{"type":"string","description":"Indicador de movimentação temporária de bens vinculada ao serviço."},"import_declaration_number":{"type":"string","description":"Número da declaração de importação relacionada ao serviço."},"export_registration_number":{"type":"string","description":"Número do registro de exportação relacionado ao serviço."},"mdic_sharing":{"type":"string","description":"Indicador de compartilhamento com o MDIC quando exigido pelo layout fiscal."}}},"NfseDecimalValue":{"oneOf":[{"type":"number"},{"type":"string","pattern":"^\\\\d+(?:\\\\.\\\\d+)?$"}],"description":"Valor decimal aceito como número JSON ou string numérica decimal."}}}}
```

## The NfseMunicipalBenefit object

```json
{"openapi":"3.1.1","info":{"title":"API IXC E-Docs - Integração x-api-key","version":"0.1.0"},"components":{"schemas":{"NfseMunicipalBenefit":{"type":"object","additionalProperties":false,"properties":{"identifier":{"type":"string","pattern":"^[0-9]{14}$","description":"Identificador do benefício fiscal municipal, com 14 dígitos quando serializado no layout nacional."},"base_reduction_amount":{"allOf":[{"$ref":"#/components/schemas/NfseDecimalValue"}],"minimum":0,"description":"Valor de redução da base de cálculo concedido pelo benefício."},"base_reduction_rate":{"allOf":[{"$ref":"#/components/schemas/NfseDecimalValue"}],"minimum":0,"maximum":999.99,"description":"Percentual de redução da base de cálculo concedido pelo benefício."}}},"NfseDecimalValue":{"oneOf":[{"type":"number"},{"type":"string","pattern":"^\\\\d+(?:\\\\.\\\\d+)?$"}],"description":"Valor decimal aceito como número JSON ou string numérica decimal."}}}}
```

## The NfseEstimatedTaxBurden object

```json
{"openapi":"3.1.1","info":{"title":"API IXC E-Docs - Integração x-api-key","version":"0.1.0"},"components":{"schemas":{"NfseEstimatedTaxBurden":{"type":"object","additionalProperties":false,"properties":{"federal_amount":{"allOf":[{"$ref":"#/components/schemas/NfseDecimalValue"}],"minimum":0,"maximum":999999999.99,"multipleOf":0.01,"description":"Valor aproximado de tributos federais."},"state_amount":{"allOf":[{"$ref":"#/components/schemas/NfseDecimalValue"}],"minimum":0,"maximum":999999999.99,"multipleOf":0.01,"description":"Valor aproximado de tributos estaduais."},"municipal_amount":{"allOf":[{"$ref":"#/components/schemas/NfseDecimalValue"}],"minimum":0,"maximum":999999999.99,"multipleOf":0.01,"description":"Valor aproximado de tributos municipais."},"federal_rate":{"allOf":[{"$ref":"#/components/schemas/NfseDecimalValue"}],"minimum":0,"maximum":999.99,"description":"Alíquota aproximada de tributos federais."},"state_rate":{"allOf":[{"$ref":"#/components/schemas/NfseDecimalValue"}],"minimum":0,"maximum":999.99,"description":"Alíquota aproximada de tributos estaduais."},"municipal_rate":{"allOf":[{"$ref":"#/components/schemas/NfseDecimalValue"}],"minimum":0,"maximum":999.99,"description":"Alíquota aproximada de tributos municipais."},"simple_national_rate":{"allOf":[{"$ref":"#/components/schemas/NfseDecimalValue"}],"minimum":0,"maximum":99.99,"description":"Alíquota aproximada dos tributos para optante do Simples Nacional."}}},"NfseDecimalValue":{"oneOf":[{"type":"number"},{"type":"string","pattern":"^\\\\d+(?:\\\\.\\\\d+)?$"}],"description":"Valor decimal aceito como número JSON ou string numérica decimal."}}}}
```

## The NfseIbscbs object

```json
{"openapi":"3.1.1","info":{"title":"API IXC E-Docs - Integração x-api-key","version":"0.1.0"},"components":{"schemas":{"NfseIbscbs":{"type":"object","additionalProperties":false,"description":"Bloco IBS/CBS compartilhado entre o Ambiente Nacional e provedores municipais aderentes ao IBS/CBS.\n`tax_situation_code` e `classification_code` são o CST/cClassTrib principal do IBS/CBS. O grupo `taxation.regular.*` representa a tributação regular e não é duplicidade desses campos principais.\nNo `national`, envie apenas os campos declaratórios do layout nacional: `purpose`, `final_consumer`, `operation_indicator`, `operation_type`, `government_entity_type`, `destination_indicator`, `references`, `tax_situation_code`/`classification_code`, `destination`, `property`, `taxation` e `reimbursements`.\nOs campos `reduction_rate`, `incidence_location_code`, `incidence_location_name`, `values` e `totals` existem no contrato canônico para provedores municipais aderentes ao IBS/CBS, mas são rejeitados pelo provedor Nacional quando a empresa usa `integration=national`.\nNão envie `ibscbs.taxation.tax_situation_code` nem `ibscbs.taxation.classification_code`; esses aliases são aceitos somente na borda HTTP do `POST /nfse` para compatibilidade de entrada e são normalizados para os campos principais.","properties":{"purpose":{"type":"string","enum":["0"],"description":"Finalidade da NFS-e no bloco IBS/CBS. No XSD nacional atual, apenas `0` é aceito."},"final_consumer":{"type":"string","enum":["0","1"],"description":"Indicador de consumidor final no bloco IBS/CBS. Opcional no XSD nacional."},"operation_indicator":{"type":"string","pattern":"^[0-9]{6}$","description":"Código do indicador da operação no bloco IBS/CBS."},"operation_type":{"type":"string","enum":["1","2","3","4","5"],"description":"Tipo da operação no bloco IBS/CBS."},"government_entity_type":{"type":"string","enum":["1","2","3","4"],"description":"Tipo de ente governamental no bloco IBS/CBS."},"destination_indicator":{"type":"string","enum":["0","1"],"description":"Indicador do destino da operação no bloco IBS/CBS."},"tax_situation_code":{"type":"string","pattern":"^[0-9]{3}$","description":"CST principal aplicado ao bloco IBS/CBS. Não confundir com `taxation.regular.tax_situation_code`, que pertence ao grupo de tributação regular."},"classification_code":{"type":"string","pattern":"^[0-9]{6}$","description":"cClassTrib principal usado no bloco IBS/CBS. Não confundir com `taxation.regular.classification_code`, que pertence ao grupo de tributação regular."},"reduction_rate":{"type":"string","pattern":"^\\\\d+(?:\\\\.\\\\d+)?$","description":"Percentual redutor serializado por providers municipais cujo template consome esse campo. Rejeição fiscal pertence ao provedor."},"incidence_location_code":{"type":"string","description":"Código do local de incidência do IBS/CBS serializado por providers municipais cujo template consome esse campo. Rejeição fiscal pertence ao provedor."},"incidence_location_name":{"type":"string","description":"Nome do local de incidência do IBS/CBS serializado por providers municipais cujo template consome esse campo. Rejeição fiscal pertence ao provedor."},"references":{"type":"array","description":"Referências técnicas aceitas pelo layout IBS/CBS.","items":{"type":"string"}},"destination":{"$ref":"#/components/schemas/NfseIbscbsDestination","description":"Destinatário do serviço no grupo declaratório IBS/CBS do Ambiente Nacional."},"property":{"$ref":"#/components/schemas/NfseIbscbsProperty","description":"Informações de imóvel no grupo declaratório IBS/CBS do Ambiente Nacional."},"taxation":{"$ref":"#/components/schemas/NfseIbscbsTaxation","description":"Subgrupos declaratórios de tributação IBS/CBS. Não contém o CST/cClassTrib principal; esses campos ficam em `ibscbs.tax_situation_code` e `ibscbs.classification_code`."},"reimbursements":{"type":"array","maxItems":1000,"description":"Documentos de reembolso, repasse ou ressarcimento no grupo declaratório IBS/CBS.","items":{"$ref":"#/components/schemas/NfseIbscbsReimbursement"}},"values":{"$ref":"#/components/schemas/NfseIbscbsValues","description":"Valores calculados do IBS/CBS serializados por providers municipais cujo template consome esse grupo. Rejeição fiscal pertence ao provedor."},"totals":{"$ref":"#/components/schemas/NfseIbscbsTotals","description":"Totais calculados do IBS/CBS serializados por providers municipais cujo template consome esse grupo. Rejeição fiscal pertence ao provedor."}}},"NfseIbscbsDestination":{"type":"object","additionalProperties":false,"properties":{"tax_id":{"type":"string","description":"CPF ou CNPJ, somente dígitos."},"nif":{"type":"string","description":"Número de identificação fiscal no exterior."},"no_nif_reason":{"type":"string","enum":["0","1","2"],"description":"Motivo para ausência de NIF."},"legal_name":{"type":"string","description":"Razão social ou nome do destinatário."},"address":{"$ref":"#/components/schemas/NfseIbscbsAddress"},"phone":{"type":"string","description":"Telefone do destinatário."},"email":{"type":"string","format":"email","description":"E-mail do destinatário."}}},"NfseIbscbsAddress":{"type":"object","additionalProperties":false,"properties":{"municipality_code":{"type":"string","pattern":"^[0-9]{7}$","description":"Código IBGE do município para endereço nacional."},"postal_code":{"type":"string","description":"CEP brasileiro ou código postal exterior."},"country_code":{"type":"string","pattern":"^[A-Z]{2}$","description":"Código ISO 3166-1 alfa-2 do país."},"municipality":{"type":"string","description":"Município/localidade do endereço no contrato canônico NFS-e."},"state":{"type":"string","description":"UF brasileira ou estado/província/região estrangeira."},"street":{"type":"string","description":"Logradouro."},"number":{"type":"string","description":"Número do endereço."},"complement":{"type":"string","description":"Complemento do endereço."},"neighborhood":{"type":"string","description":"Bairro."}}},"NfseIbscbsProperty":{"type":"object","additionalProperties":false,"properties":{"registration_code":{"type":"string","description":"Inscrição imobiliária fiscal."},"cib_code":{"type":"string","minLength":8,"maxLength":8,"description":"Código do Cadastro Imobiliário Brasileiro."},"address":{"$ref":"#/components/schemas/NfseIbscbsAddress","description":"Endereço do imóvel. No Nacional, informe `cib_code` ou `address`, nunca ambos."}}},"NfseIbscbsTaxation":{"type":"object","additionalProperties":false,"description":"Subgrupos declaratórios de tributação IBS/CBS. `regular` é tributação regular distinta dos campos principais do bloco.","properties":{"credit_presumed_code":{"type":"string","pattern":"^[0-9]{2}$","description":"Código de crédito presumido IBS/CBS."},"regular":{"$ref":"#/components/schemas/NfseIbscbsRegularTaxation","description":"Tributação regular IBS/CBS, distinta do CST/cClassTrib principal do bloco."},"deferral":{"$ref":"#/components/schemas/NfseIbscbsDeferral"}}},"NfseIbscbsRegularTaxation":{"type":"object","additionalProperties":false,"properties":{"tax_situation_code":{"type":"string","pattern":"^[0-9]{3}$","description":"CST da tributação regular. Campo distinto de `ibscbs.tax_situation_code`."},"classification_code":{"type":"string","pattern":"^[0-9]{6}$","description":"cClassTrib da tributação regular. Campo distinto de `ibscbs.classification_code`."}}},"NfseIbscbsDeferral":{"type":"object","additionalProperties":false,"properties":{"state_rate":{"allOf":[{"$ref":"#/components/schemas/NfseDecimalValue"}],"minimum":0,"maximum":100,"description":"Percentual de diferimento do IBS estadual."},"municipality_rate":{"allOf":[{"$ref":"#/components/schemas/NfseDecimalValue"}],"minimum":0,"maximum":100,"description":"Percentual de diferimento do IBS municipal."},"cbs_rate":{"allOf":[{"$ref":"#/components/schemas/NfseDecimalValue"}],"minimum":0,"maximum":100,"description":"Percentual de diferimento da CBS."}}},"NfseDecimalValue":{"oneOf":[{"type":"number"},{"type":"string","pattern":"^\\\\d+(?:\\\\.\\\\d+)?$"}],"description":"Valor decimal aceito como número JSON ou string numérica decimal."},"NfseIbscbsReimbursement":{"type":"object","additionalProperties":false,"properties":{"dfe_national":{"$ref":"#/components/schemas/NfseIbscbsDfeNational"},"other_fiscal_document":{"$ref":"#/components/schemas/NfseIbscbsOtherFiscalDocument"},"other_document":{"$ref":"#/components/schemas/NfseIbscbsOtherDocument"},"supplier":{"$ref":"#/components/schemas/NfseIbscbsIdentity"},"issue_date":{"type":"string","format":"date","description":"Data de emissão do documento referenciado."},"competence_date":{"type":"string","format":"date","description":"Data de competência do documento referenciado."},"type":{"type":"string","enum":["01","02","03","04","99"],"description":"Tipo de reembolso, repasse ou ressarcimento."},"type_description":{"type":"string","description":"Descrição quando `type` for `99`."},"amount":{"allOf":[{"$ref":"#/components/schemas/NfseDecimalValue"}],"minimum":0,"description":"Valor do reembolso, repasse ou ressarcimento."}}},"NfseIbscbsDfeNational":{"type":"object","additionalProperties":false,"properties":{"type":{"type":"string","enum":["1","2","3","9"],"description":"Tipo de chave do documento fiscal eletrônico nacional."},"type_description":{"type":"string","description":"Descrição quando `type` for `9`."},"key":{"type":"string","maxLength":50,"description":"Chave do documento fiscal eletrônico."}}},"NfseIbscbsOtherFiscalDocument":{"type":"object","additionalProperties":false,"properties":{"municipality_code":{"type":"string","pattern":"^[0-9]{7}$","description":"Código do município emissor do documento fiscal."},"number":{"type":"string","description":"Número do documento fiscal."},"description":{"type":"string","description":"Descrição do documento fiscal."}}},"NfseIbscbsOtherDocument":{"type":"object","additionalProperties":false,"properties":{"number":{"type":"string","description":"Número do documento não fiscal."},"description":{"type":"string","description":"Descrição do documento não fiscal."}}},"NfseIbscbsIdentity":{"type":"object","additionalProperties":false,"properties":{"tax_id":{"type":"string","description":"CPF ou CNPJ, somente dígitos."},"nif":{"type":"string","description":"Número de identificação fiscal no exterior."},"no_nif_reason":{"type":"string","enum":["0","1","2"],"description":"Motivo para ausência de NIF."},"legal_name":{"type":"string","description":"Razão social ou nome."}}},"NfseIbscbsValues":{"type":"object","additionalProperties":false,"description":"Valores calculados do IBS/CBS para providers municipais que serializam esse grupo. Não enviar no Ambiente Nacional.","properties":{"base_amount":{"allOf":[{"$ref":"#/components/schemas/NfseDecimalValue"}],"minimum":0,"description":"Base de cálculo do IBS/CBS."},"state":{"$ref":"#/components/schemas/NfseIbscbsStateValues"},"municipality":{"$ref":"#/components/schemas/NfseIbscbsMunicipalityValues"},"federal":{"$ref":"#/components/schemas/NfseIbscbsFederalValues"}}},"NfseIbscbsStateValues":{"type":"object","additionalProperties":false,"properties":{"ibs_state_rate":{"allOf":[{"$ref":"#/components/schemas/NfseDecimalValue"}],"minimum":0,"description":"Alíquota estadual do IBS."},"ibs_state_reduction_rate":{"allOf":[{"$ref":"#/components/schemas/NfseDecimalValue"}],"minimum":0,"maximum":100,"description":"Redução de alíquota estadual do IBS em providers municipais aderentes ao IBS/CBS."},"ibs_state_effective_rate":{"allOf":[{"$ref":"#/components/schemas/NfseDecimalValue"}],"minimum":0,"description":"Alíquota efetiva estadual do IBS."}}},"NfseIbscbsMunicipalityValues":{"type":"object","additionalProperties":false,"properties":{"ibs_municipality_rate":{"allOf":[{"$ref":"#/components/schemas/NfseDecimalValue"}],"minimum":0,"description":"Alíquota municipal do IBS."},"ibs_municipality_reduction_rate":{"allOf":[{"$ref":"#/components/schemas/NfseDecimalValue"}],"minimum":0,"maximum":100,"description":"Redução de alíquota municipal do IBS em providers municipais aderentes ao IBS/CBS."},"ibs_municipality_effective_rate":{"allOf":[{"$ref":"#/components/schemas/NfseDecimalValue"}],"minimum":0,"description":"Alíquota efetiva municipal do IBS."}}},"NfseIbscbsFederalValues":{"type":"object","additionalProperties":false,"properties":{"cbs_rate":{"allOf":[{"$ref":"#/components/schemas/NfseDecimalValue"}],"minimum":0,"description":"Alíquota federal da CBS."},"cbs_reduction_rate":{"allOf":[{"$ref":"#/components/schemas/NfseDecimalValue"}],"minimum":0,"maximum":100,"description":"Redução de alíquota federal da CBS em providers municipais aderentes ao IBS/CBS."},"cbs_effective_rate":{"allOf":[{"$ref":"#/components/schemas/NfseDecimalValue"}],"minimum":0,"description":"Alíquota efetiva federal da CBS."}}},"NfseIbscbsTotals":{"type":"object","additionalProperties":false,"description":"Totais calculados do IBS/CBS para providers municipais que serializam esse grupo. Não enviar no Ambiente Nacional.","properties":{"total_nf_amount":{"allOf":[{"$ref":"#/components/schemas/NfseDecimalValue"}],"minimum":0,"description":"Total da NFS-e usado no bloco IBS/CBS."},"ibs":{"$ref":"#/components/schemas/NfseIbscbsIbsTotals"},"cbs":{"$ref":"#/components/schemas/NfseIbscbsCbsTotals"},"government_purchase":{"$ref":"#/components/schemas/NfseIbscbsGovernmentPurchaseTotals"}}},"NfseIbscbsIbsTotals":{"type":"object","additionalProperties":false,"properties":{"total_amount":{"allOf":[{"$ref":"#/components/schemas/NfseDecimalValue"}],"minimum":0,"description":"Total consolidado do IBS."},"credit_presumed":{"$ref":"#/components/schemas/NfseIbscbsCreditPresumedTotals"},"state_total":{"$ref":"#/components/schemas/NfseIbscbsIbsLocationTotal"},"municipality_total":{"$ref":"#/components/schemas/NfseIbscbsIbsLocationTotal"}}},"NfseIbscbsCreditPresumedTotals":{"type":"object","additionalProperties":false,"properties":{"rate":{"allOf":[{"$ref":"#/components/schemas/NfseDecimalValue"}],"minimum":0,"maximum":100,"description":"Percentual de crédito presumido em providers municipais aderentes ao IBS/CBS."},"amount":{"allOf":[{"$ref":"#/components/schemas/NfseDecimalValue"}],"minimum":0,"description":"Valor de crédito presumido em providers municipais aderentes ao IBS/CBS."}}},"NfseIbscbsIbsLocationTotal":{"type":"object","additionalProperties":false,"properties":{"total_amount":{"allOf":[{"$ref":"#/components/schemas/NfseDecimalValue"}],"minimum":0,"description":"Valor total consolidado do grupo correspondente."},"deferral_amount":{"allOf":[{"$ref":"#/components/schemas/NfseDecimalValue"}],"minimum":0,"description":"Valor diferido do grupo correspondente em providers municipais aderentes ao IBS/CBS."}}},"NfseIbscbsCbsTotals":{"type":"object","additionalProperties":false,"properties":{"total_amount":{"allOf":[{"$ref":"#/components/schemas/NfseDecimalValue"}],"minimum":0,"description":"Total consolidado da CBS."},"credit_presumed":{"$ref":"#/components/schemas/NfseIbscbsCreditPresumedTotals"},"deferral_amount":{"allOf":[{"$ref":"#/components/schemas/NfseDecimalValue"}],"minimum":0,"description":"Valor diferido da CBS em providers municipais aderentes ao IBS/CBS."}}},"NfseIbscbsGovernmentPurchaseTotals":{"type":"object","additionalProperties":false,"properties":{"ibs_state_rate":{"allOf":[{"$ref":"#/components/schemas/NfseDecimalValue"}],"minimum":0,"maximum":100,"description":"Alíquota estadual do IBS em compra governamental."},"ibs_state_amount":{"allOf":[{"$ref":"#/components/schemas/NfseDecimalValue"}],"minimum":0,"description":"Valor estadual do IBS em compra governamental."},"ibs_municipality_rate":{"allOf":[{"$ref":"#/components/schemas/NfseDecimalValue"}],"minimum":0,"maximum":100,"description":"Alíquota municipal do IBS em compra governamental."},"ibs_municipality_amount":{"allOf":[{"$ref":"#/components/schemas/NfseDecimalValue"}],"minimum":0,"description":"Valor municipal do IBS em compra governamental."},"cbs_rate":{"allOf":[{"$ref":"#/components/schemas/NfseDecimalValue"}],"minimum":0,"maximum":100,"description":"Alíquota da CBS em compra governamental."},"cbs_amount":{"allOf":[{"$ref":"#/components/schemas/NfseDecimalValue"}],"minimum":0,"description":"Valor da CBS em compra governamental."}}}}}}
```

## The NfseIbscbsAddress object

```json
{"openapi":"3.1.1","info":{"title":"API IXC E-Docs - Integração x-api-key","version":"0.1.0"},"components":{"schemas":{"NfseIbscbsAddress":{"type":"object","additionalProperties":false,"properties":{"municipality_code":{"type":"string","pattern":"^[0-9]{7}$","description":"Código IBGE do município para endereço nacional."},"postal_code":{"type":"string","description":"CEP brasileiro ou código postal exterior."},"country_code":{"type":"string","pattern":"^[A-Z]{2}$","description":"Código ISO 3166-1 alfa-2 do país."},"municipality":{"type":"string","description":"Município/localidade do endereço no contrato canônico NFS-e."},"state":{"type":"string","description":"UF brasileira ou estado/província/região estrangeira."},"street":{"type":"string","description":"Logradouro."},"number":{"type":"string","description":"Número do endereço."},"complement":{"type":"string","description":"Complemento do endereço."},"neighborhood":{"type":"string","description":"Bairro."}}}}}}
```

## The NfseIbscbsIdentity object

```json
{"openapi":"3.1.1","info":{"title":"API IXC E-Docs - Integração x-api-key","version":"0.1.0"},"components":{"schemas":{"NfseIbscbsIdentity":{"type":"object","additionalProperties":false,"properties":{"tax_id":{"type":"string","description":"CPF ou CNPJ, somente dígitos."},"nif":{"type":"string","description":"Número de identificação fiscal no exterior."},"no_nif_reason":{"type":"string","enum":["0","1","2"],"description":"Motivo para ausência de NIF."},"legal_name":{"type":"string","description":"Razão social ou nome."}}}}}}
```

## The NfseIbscbsDestination object

```json
{"openapi":"3.1.1","info":{"title":"API IXC E-Docs - Integração x-api-key","version":"0.1.0"},"components":{"schemas":{"NfseIbscbsDestination":{"type":"object","additionalProperties":false,"properties":{"tax_id":{"type":"string","description":"CPF ou CNPJ, somente dígitos."},"nif":{"type":"string","description":"Número de identificação fiscal no exterior."},"no_nif_reason":{"type":"string","enum":["0","1","2"],"description":"Motivo para ausência de NIF."},"legal_name":{"type":"string","description":"Razão social ou nome do destinatário."},"address":{"$ref":"#/components/schemas/NfseIbscbsAddress"},"phone":{"type":"string","description":"Telefone do destinatário."},"email":{"type":"string","format":"email","description":"E-mail do destinatário."}}},"NfseIbscbsAddress":{"type":"object","additionalProperties":false,"properties":{"municipality_code":{"type":"string","pattern":"^[0-9]{7}$","description":"Código IBGE do município para endereço nacional."},"postal_code":{"type":"string","description":"CEP brasileiro ou código postal exterior."},"country_code":{"type":"string","pattern":"^[A-Z]{2}$","description":"Código ISO 3166-1 alfa-2 do país."},"municipality":{"type":"string","description":"Município/localidade do endereço no contrato canônico NFS-e."},"state":{"type":"string","description":"UF brasileira ou estado/província/região estrangeira."},"street":{"type":"string","description":"Logradouro."},"number":{"type":"string","description":"Número do endereço."},"complement":{"type":"string","description":"Complemento do endereço."},"neighborhood":{"type":"string","description":"Bairro."}}}}}}
```

## The NfseIbscbsProperty object

```json
{"openapi":"3.1.1","info":{"title":"API IXC E-Docs - Integração x-api-key","version":"0.1.0"},"components":{"schemas":{"NfseIbscbsProperty":{"type":"object","additionalProperties":false,"properties":{"registration_code":{"type":"string","description":"Inscrição imobiliária fiscal."},"cib_code":{"type":"string","minLength":8,"maxLength":8,"description":"Código do Cadastro Imobiliário Brasileiro."},"address":{"$ref":"#/components/schemas/NfseIbscbsAddress","description":"Endereço do imóvel. No Nacional, informe `cib_code` ou `address`, nunca ambos."}}},"NfseIbscbsAddress":{"type":"object","additionalProperties":false,"properties":{"municipality_code":{"type":"string","pattern":"^[0-9]{7}$","description":"Código IBGE do município para endereço nacional."},"postal_code":{"type":"string","description":"CEP brasileiro ou código postal exterior."},"country_code":{"type":"string","pattern":"^[A-Z]{2}$","description":"Código ISO 3166-1 alfa-2 do país."},"municipality":{"type":"string","description":"Município/localidade do endereço no contrato canônico NFS-e."},"state":{"type":"string","description":"UF brasileira ou estado/província/região estrangeira."},"street":{"type":"string","description":"Logradouro."},"number":{"type":"string","description":"Número do endereço."},"complement":{"type":"string","description":"Complemento do endereço."},"neighborhood":{"type":"string","description":"Bairro."}}}}}}
```

## The NfseIbscbsTaxation object

```json
{"openapi":"3.1.1","info":{"title":"API IXC E-Docs - Integração x-api-key","version":"0.1.0"},"components":{"schemas":{"NfseIbscbsTaxation":{"type":"object","additionalProperties":false,"description":"Subgrupos declaratórios de tributação IBS/CBS. `regular` é tributação regular distinta dos campos principais do bloco.","properties":{"credit_presumed_code":{"type":"string","pattern":"^[0-9]{2}$","description":"Código de crédito presumido IBS/CBS."},"regular":{"$ref":"#/components/schemas/NfseIbscbsRegularTaxation","description":"Tributação regular IBS/CBS, distinta do CST/cClassTrib principal do bloco."},"deferral":{"$ref":"#/components/schemas/NfseIbscbsDeferral"}}},"NfseIbscbsRegularTaxation":{"type":"object","additionalProperties":false,"properties":{"tax_situation_code":{"type":"string","pattern":"^[0-9]{3}$","description":"CST da tributação regular. Campo distinto de `ibscbs.tax_situation_code`."},"classification_code":{"type":"string","pattern":"^[0-9]{6}$","description":"cClassTrib da tributação regular. Campo distinto de `ibscbs.classification_code`."}}},"NfseIbscbsDeferral":{"type":"object","additionalProperties":false,"properties":{"state_rate":{"allOf":[{"$ref":"#/components/schemas/NfseDecimalValue"}],"minimum":0,"maximum":100,"description":"Percentual de diferimento do IBS estadual."},"municipality_rate":{"allOf":[{"$ref":"#/components/schemas/NfseDecimalValue"}],"minimum":0,"maximum":100,"description":"Percentual de diferimento do IBS municipal."},"cbs_rate":{"allOf":[{"$ref":"#/components/schemas/NfseDecimalValue"}],"minimum":0,"maximum":100,"description":"Percentual de diferimento da CBS."}}},"NfseDecimalValue":{"oneOf":[{"type":"number"},{"type":"string","pattern":"^\\\\d+(?:\\\\.\\\\d+)?$"}],"description":"Valor decimal aceito como número JSON ou string numérica decimal."}}}}
```

## The NfseIbscbsRegularTaxation object

```json
{"openapi":"3.1.1","info":{"title":"API IXC E-Docs - Integração x-api-key","version":"0.1.0"},"components":{"schemas":{"NfseIbscbsRegularTaxation":{"type":"object","additionalProperties":false,"properties":{"tax_situation_code":{"type":"string","pattern":"^[0-9]{3}$","description":"CST da tributação regular. Campo distinto de `ibscbs.tax_situation_code`."},"classification_code":{"type":"string","pattern":"^[0-9]{6}$","description":"cClassTrib da tributação regular. Campo distinto de `ibscbs.classification_code`."}}}}}}
```

## The NfseIbscbsDeferral object

```json
{"openapi":"3.1.1","info":{"title":"API IXC E-Docs - Integração x-api-key","version":"0.1.0"},"components":{"schemas":{"NfseIbscbsDeferral":{"type":"object","additionalProperties":false,"properties":{"state_rate":{"allOf":[{"$ref":"#/components/schemas/NfseDecimalValue"}],"minimum":0,"maximum":100,"description":"Percentual de diferimento do IBS estadual."},"municipality_rate":{"allOf":[{"$ref":"#/components/schemas/NfseDecimalValue"}],"minimum":0,"maximum":100,"description":"Percentual de diferimento do IBS municipal."},"cbs_rate":{"allOf":[{"$ref":"#/components/schemas/NfseDecimalValue"}],"minimum":0,"maximum":100,"description":"Percentual de diferimento da CBS."}}},"NfseDecimalValue":{"oneOf":[{"type":"number"},{"type":"string","pattern":"^\\\\d+(?:\\\\.\\\\d+)?$"}],"description":"Valor decimal aceito como número JSON ou string numérica decimal."}}}}
```

## The NfseIbscbsReimbursement object

```json
{"openapi":"3.1.1","info":{"title":"API IXC E-Docs - Integração x-api-key","version":"0.1.0"},"components":{"schemas":{"NfseIbscbsReimbursement":{"type":"object","additionalProperties":false,"properties":{"dfe_national":{"$ref":"#/components/schemas/NfseIbscbsDfeNational"},"other_fiscal_document":{"$ref":"#/components/schemas/NfseIbscbsOtherFiscalDocument"},"other_document":{"$ref":"#/components/schemas/NfseIbscbsOtherDocument"},"supplier":{"$ref":"#/components/schemas/NfseIbscbsIdentity"},"issue_date":{"type":"string","format":"date","description":"Data de emissão do documento referenciado."},"competence_date":{"type":"string","format":"date","description":"Data de competência do documento referenciado."},"type":{"type":"string","enum":["01","02","03","04","99"],"description":"Tipo de reembolso, repasse ou ressarcimento."},"type_description":{"type":"string","description":"Descrição quando `type` for `99`."},"amount":{"allOf":[{"$ref":"#/components/schemas/NfseDecimalValue"}],"minimum":0,"description":"Valor do reembolso, repasse ou ressarcimento."}}},"NfseIbscbsDfeNational":{"type":"object","additionalProperties":false,"properties":{"type":{"type":"string","enum":["1","2","3","9"],"description":"Tipo de chave do documento fiscal eletrônico nacional."},"type_description":{"type":"string","description":"Descrição quando `type` for `9`."},"key":{"type":"string","maxLength":50,"description":"Chave do documento fiscal eletrônico."}}},"NfseIbscbsOtherFiscalDocument":{"type":"object","additionalProperties":false,"properties":{"municipality_code":{"type":"string","pattern":"^[0-9]{7}$","description":"Código do município emissor do documento fiscal."},"number":{"type":"string","description":"Número do documento fiscal."},"description":{"type":"string","description":"Descrição do documento fiscal."}}},"NfseIbscbsOtherDocument":{"type":"object","additionalProperties":false,"properties":{"number":{"type":"string","description":"Número do documento não fiscal."},"description":{"type":"string","description":"Descrição do documento não fiscal."}}},"NfseIbscbsIdentity":{"type":"object","additionalProperties":false,"properties":{"tax_id":{"type":"string","description":"CPF ou CNPJ, somente dígitos."},"nif":{"type":"string","description":"Número de identificação fiscal no exterior."},"no_nif_reason":{"type":"string","enum":["0","1","2"],"description":"Motivo para ausência de NIF."},"legal_name":{"type":"string","description":"Razão social ou nome."}}},"NfseDecimalValue":{"oneOf":[{"type":"number"},{"type":"string","pattern":"^\\\\d+(?:\\\\.\\\\d+)?$"}],"description":"Valor decimal aceito como número JSON ou string numérica decimal."}}}}
```

## The NfseIbscbsDfeNational object

```json
{"openapi":"3.1.1","info":{"title":"API IXC E-Docs - Integração x-api-key","version":"0.1.0"},"components":{"schemas":{"NfseIbscbsDfeNational":{"type":"object","additionalProperties":false,"properties":{"type":{"type":"string","enum":["1","2","3","9"],"description":"Tipo de chave do documento fiscal eletrônico nacional."},"type_description":{"type":"string","description":"Descrição quando `type` for `9`."},"key":{"type":"string","maxLength":50,"description":"Chave do documento fiscal eletrônico."}}}}}}
```

## The NfseIbscbsOtherFiscalDocument object

```json
{"openapi":"3.1.1","info":{"title":"API IXC E-Docs - Integração x-api-key","version":"0.1.0"},"components":{"schemas":{"NfseIbscbsOtherFiscalDocument":{"type":"object","additionalProperties":false,"properties":{"municipality_code":{"type":"string","pattern":"^[0-9]{7}$","description":"Código do município emissor do documento fiscal."},"number":{"type":"string","description":"Número do documento fiscal."},"description":{"type":"string","description":"Descrição do documento fiscal."}}}}}}
```

## The NfseIbscbsOtherDocument object

```json
{"openapi":"3.1.1","info":{"title":"API IXC E-Docs - Integração x-api-key","version":"0.1.0"},"components":{"schemas":{"NfseIbscbsOtherDocument":{"type":"object","additionalProperties":false,"properties":{"number":{"type":"string","description":"Número do documento não fiscal."},"description":{"type":"string","description":"Descrição do documento não fiscal."}}}}}}
```

## The NfseIbscbsValues object

```json
{"openapi":"3.1.1","info":{"title":"API IXC E-Docs - Integração x-api-key","version":"0.1.0"},"components":{"schemas":{"NfseIbscbsValues":{"type":"object","additionalProperties":false,"description":"Valores calculados do IBS/CBS para providers municipais que serializam esse grupo. Não enviar no Ambiente Nacional.","properties":{"base_amount":{"allOf":[{"$ref":"#/components/schemas/NfseDecimalValue"}],"minimum":0,"description":"Base de cálculo do IBS/CBS."},"state":{"$ref":"#/components/schemas/NfseIbscbsStateValues"},"municipality":{"$ref":"#/components/schemas/NfseIbscbsMunicipalityValues"},"federal":{"$ref":"#/components/schemas/NfseIbscbsFederalValues"}}},"NfseDecimalValue":{"oneOf":[{"type":"number"},{"type":"string","pattern":"^\\\\d+(?:\\\\.\\\\d+)?$"}],"description":"Valor decimal aceito como número JSON ou string numérica decimal."},"NfseIbscbsStateValues":{"type":"object","additionalProperties":false,"properties":{"ibs_state_rate":{"allOf":[{"$ref":"#/components/schemas/NfseDecimalValue"}],"minimum":0,"description":"Alíquota estadual do IBS."},"ibs_state_reduction_rate":{"allOf":[{"$ref":"#/components/schemas/NfseDecimalValue"}],"minimum":0,"maximum":100,"description":"Redução de alíquota estadual do IBS em providers municipais aderentes ao IBS/CBS."},"ibs_state_effective_rate":{"allOf":[{"$ref":"#/components/schemas/NfseDecimalValue"}],"minimum":0,"description":"Alíquota efetiva estadual do IBS."}}},"NfseIbscbsMunicipalityValues":{"type":"object","additionalProperties":false,"properties":{"ibs_municipality_rate":{"allOf":[{"$ref":"#/components/schemas/NfseDecimalValue"}],"minimum":0,"description":"Alíquota municipal do IBS."},"ibs_municipality_reduction_rate":{"allOf":[{"$ref":"#/components/schemas/NfseDecimalValue"}],"minimum":0,"maximum":100,"description":"Redução de alíquota municipal do IBS em providers municipais aderentes ao IBS/CBS."},"ibs_municipality_effective_rate":{"allOf":[{"$ref":"#/components/schemas/NfseDecimalValue"}],"minimum":0,"description":"Alíquota efetiva municipal do IBS."}}},"NfseIbscbsFederalValues":{"type":"object","additionalProperties":false,"properties":{"cbs_rate":{"allOf":[{"$ref":"#/components/schemas/NfseDecimalValue"}],"minimum":0,"description":"Alíquota federal da CBS."},"cbs_reduction_rate":{"allOf":[{"$ref":"#/components/schemas/NfseDecimalValue"}],"minimum":0,"maximum":100,"description":"Redução de alíquota federal da CBS em providers municipais aderentes ao IBS/CBS."},"cbs_effective_rate":{"allOf":[{"$ref":"#/components/schemas/NfseDecimalValue"}],"minimum":0,"description":"Alíquota efetiva federal da CBS."}}}}}}
```

## The NfseIbscbsStateValues object

```json
{"openapi":"3.1.1","info":{"title":"API IXC E-Docs - Integração x-api-key","version":"0.1.0"},"components":{"schemas":{"NfseIbscbsStateValues":{"type":"object","additionalProperties":false,"properties":{"ibs_state_rate":{"allOf":[{"$ref":"#/components/schemas/NfseDecimalValue"}],"minimum":0,"description":"Alíquota estadual do IBS."},"ibs_state_reduction_rate":{"allOf":[{"$ref":"#/components/schemas/NfseDecimalValue"}],"minimum":0,"maximum":100,"description":"Redução de alíquota estadual do IBS em providers municipais aderentes ao IBS/CBS."},"ibs_state_effective_rate":{"allOf":[{"$ref":"#/components/schemas/NfseDecimalValue"}],"minimum":0,"description":"Alíquota efetiva estadual do IBS."}}},"NfseDecimalValue":{"oneOf":[{"type":"number"},{"type":"string","pattern":"^\\\\d+(?:\\\\.\\\\d+)?$"}],"description":"Valor decimal aceito como número JSON ou string numérica decimal."}}}}
```

## The NfseIbscbsMunicipalityValues object

```json
{"openapi":"3.1.1","info":{"title":"API IXC E-Docs - Integração x-api-key","version":"0.1.0"},"components":{"schemas":{"NfseIbscbsMunicipalityValues":{"type":"object","additionalProperties":false,"properties":{"ibs_municipality_rate":{"allOf":[{"$ref":"#/components/schemas/NfseDecimalValue"}],"minimum":0,"description":"Alíquota municipal do IBS."},"ibs_municipality_reduction_rate":{"allOf":[{"$ref":"#/components/schemas/NfseDecimalValue"}],"minimum":0,"maximum":100,"description":"Redução de alíquota municipal do IBS em providers municipais aderentes ao IBS/CBS."},"ibs_municipality_effective_rate":{"allOf":[{"$ref":"#/components/schemas/NfseDecimalValue"}],"minimum":0,"description":"Alíquota efetiva municipal do IBS."}}},"NfseDecimalValue":{"oneOf":[{"type":"number"},{"type":"string","pattern":"^\\\\d+(?:\\\\.\\\\d+)?$"}],"description":"Valor decimal aceito como número JSON ou string numérica decimal."}}}}
```

## The NfseIbscbsFederalValues object

```json
{"openapi":"3.1.1","info":{"title":"API IXC E-Docs - Integração x-api-key","version":"0.1.0"},"components":{"schemas":{"NfseIbscbsFederalValues":{"type":"object","additionalProperties":false,"properties":{"cbs_rate":{"allOf":[{"$ref":"#/components/schemas/NfseDecimalValue"}],"minimum":0,"description":"Alíquota federal da CBS."},"cbs_reduction_rate":{"allOf":[{"$ref":"#/components/schemas/NfseDecimalValue"}],"minimum":0,"maximum":100,"description":"Redução de alíquota federal da CBS em providers municipais aderentes ao IBS/CBS."},"cbs_effective_rate":{"allOf":[{"$ref":"#/components/schemas/NfseDecimalValue"}],"minimum":0,"description":"Alíquota efetiva federal da CBS."}}},"NfseDecimalValue":{"oneOf":[{"type":"number"},{"type":"string","pattern":"^\\\\d+(?:\\\\.\\\\d+)?$"}],"description":"Valor decimal aceito como número JSON ou string numérica decimal."}}}}
```

## The NfseIbscbsTotals object

```json
{"openapi":"3.1.1","info":{"title":"API IXC E-Docs - Integração x-api-key","version":"0.1.0"},"components":{"schemas":{"NfseIbscbsTotals":{"type":"object","additionalProperties":false,"description":"Totais calculados do IBS/CBS para providers municipais que serializam esse grupo. Não enviar no Ambiente Nacional.","properties":{"total_nf_amount":{"allOf":[{"$ref":"#/components/schemas/NfseDecimalValue"}],"minimum":0,"description":"Total da NFS-e usado no bloco IBS/CBS."},"ibs":{"$ref":"#/components/schemas/NfseIbscbsIbsTotals"},"cbs":{"$ref":"#/components/schemas/NfseIbscbsCbsTotals"},"government_purchase":{"$ref":"#/components/schemas/NfseIbscbsGovernmentPurchaseTotals"}}},"NfseDecimalValue":{"oneOf":[{"type":"number"},{"type":"string","pattern":"^\\\\d+(?:\\\\.\\\\d+)?$"}],"description":"Valor decimal aceito como número JSON ou string numérica decimal."},"NfseIbscbsIbsTotals":{"type":"object","additionalProperties":false,"properties":{"total_amount":{"allOf":[{"$ref":"#/components/schemas/NfseDecimalValue"}],"minimum":0,"description":"Total consolidado do IBS."},"credit_presumed":{"$ref":"#/components/schemas/NfseIbscbsCreditPresumedTotals"},"state_total":{"$ref":"#/components/schemas/NfseIbscbsIbsLocationTotal"},"municipality_total":{"$ref":"#/components/schemas/NfseIbscbsIbsLocationTotal"}}},"NfseIbscbsCreditPresumedTotals":{"type":"object","additionalProperties":false,"properties":{"rate":{"allOf":[{"$ref":"#/components/schemas/NfseDecimalValue"}],"minimum":0,"maximum":100,"description":"Percentual de crédito presumido em providers municipais aderentes ao IBS/CBS."},"amount":{"allOf":[{"$ref":"#/components/schemas/NfseDecimalValue"}],"minimum":0,"description":"Valor de crédito presumido em providers municipais aderentes ao IBS/CBS."}}},"NfseIbscbsIbsLocationTotal":{"type":"object","additionalProperties":false,"properties":{"total_amount":{"allOf":[{"$ref":"#/components/schemas/NfseDecimalValue"}],"minimum":0,"description":"Valor total consolidado do grupo correspondente."},"deferral_amount":{"allOf":[{"$ref":"#/components/schemas/NfseDecimalValue"}],"minimum":0,"description":"Valor diferido do grupo correspondente em providers municipais aderentes ao IBS/CBS."}}},"NfseIbscbsCbsTotals":{"type":"object","additionalProperties":false,"properties":{"total_amount":{"allOf":[{"$ref":"#/components/schemas/NfseDecimalValue"}],"minimum":0,"description":"Total consolidado da CBS."},"credit_presumed":{"$ref":"#/components/schemas/NfseIbscbsCreditPresumedTotals"},"deferral_amount":{"allOf":[{"$ref":"#/components/schemas/NfseDecimalValue"}],"minimum":0,"description":"Valor diferido da CBS em providers municipais aderentes ao IBS/CBS."}}},"NfseIbscbsGovernmentPurchaseTotals":{"type":"object","additionalProperties":false,"properties":{"ibs_state_rate":{"allOf":[{"$ref":"#/components/schemas/NfseDecimalValue"}],"minimum":0,"maximum":100,"description":"Alíquota estadual do IBS em compra governamental."},"ibs_state_amount":{"allOf":[{"$ref":"#/components/schemas/NfseDecimalValue"}],"minimum":0,"description":"Valor estadual do IBS em compra governamental."},"ibs_municipality_rate":{"allOf":[{"$ref":"#/components/schemas/NfseDecimalValue"}],"minimum":0,"maximum":100,"description":"Alíquota municipal do IBS em compra governamental."},"ibs_municipality_amount":{"allOf":[{"$ref":"#/components/schemas/NfseDecimalValue"}],"minimum":0,"description":"Valor municipal do IBS em compra governamental."},"cbs_rate":{"allOf":[{"$ref":"#/components/schemas/NfseDecimalValue"}],"minimum":0,"maximum":100,"description":"Alíquota da CBS em compra governamental."},"cbs_amount":{"allOf":[{"$ref":"#/components/schemas/NfseDecimalValue"}],"minimum":0,"description":"Valor da CBS em compra governamental."}}}}}}
```

## The NfseIbscbsIbsTotals object

```json
{"openapi":"3.1.1","info":{"title":"API IXC E-Docs - Integração x-api-key","version":"0.1.0"},"components":{"schemas":{"NfseIbscbsIbsTotals":{"type":"object","additionalProperties":false,"properties":{"total_amount":{"allOf":[{"$ref":"#/components/schemas/NfseDecimalValue"}],"minimum":0,"description":"Total consolidado do IBS."},"credit_presumed":{"$ref":"#/components/schemas/NfseIbscbsCreditPresumedTotals"},"state_total":{"$ref":"#/components/schemas/NfseIbscbsIbsLocationTotal"},"municipality_total":{"$ref":"#/components/schemas/NfseIbscbsIbsLocationTotal"}}},"NfseDecimalValue":{"oneOf":[{"type":"number"},{"type":"string","pattern":"^\\\\d+(?:\\\\.\\\\d+)?$"}],"description":"Valor decimal aceito como número JSON ou string numérica decimal."},"NfseIbscbsCreditPresumedTotals":{"type":"object","additionalProperties":false,"properties":{"rate":{"allOf":[{"$ref":"#/components/schemas/NfseDecimalValue"}],"minimum":0,"maximum":100,"description":"Percentual de crédito presumido em providers municipais aderentes ao IBS/CBS."},"amount":{"allOf":[{"$ref":"#/components/schemas/NfseDecimalValue"}],"minimum":0,"description":"Valor de crédito presumido em providers municipais aderentes ao IBS/CBS."}}},"NfseIbscbsIbsLocationTotal":{"type":"object","additionalProperties":false,"properties":{"total_amount":{"allOf":[{"$ref":"#/components/schemas/NfseDecimalValue"}],"minimum":0,"description":"Valor total consolidado do grupo correspondente."},"deferral_amount":{"allOf":[{"$ref":"#/components/schemas/NfseDecimalValue"}],"minimum":0,"description":"Valor diferido do grupo correspondente em providers municipais aderentes ao IBS/CBS."}}}}}}
```

## The NfseIbscbsCbsTotals object

```json
{"openapi":"3.1.1","info":{"title":"API IXC E-Docs - Integração x-api-key","version":"0.1.0"},"components":{"schemas":{"NfseIbscbsCbsTotals":{"type":"object","additionalProperties":false,"properties":{"total_amount":{"allOf":[{"$ref":"#/components/schemas/NfseDecimalValue"}],"minimum":0,"description":"Total consolidado da CBS."},"credit_presumed":{"$ref":"#/components/schemas/NfseIbscbsCreditPresumedTotals"},"deferral_amount":{"allOf":[{"$ref":"#/components/schemas/NfseDecimalValue"}],"minimum":0,"description":"Valor diferido da CBS em providers municipais aderentes ao IBS/CBS."}}},"NfseDecimalValue":{"oneOf":[{"type":"number"},{"type":"string","pattern":"^\\\\d+(?:\\\\.\\\\d+)?$"}],"description":"Valor decimal aceito como número JSON ou string numérica decimal."},"NfseIbscbsCreditPresumedTotals":{"type":"object","additionalProperties":false,"properties":{"rate":{"allOf":[{"$ref":"#/components/schemas/NfseDecimalValue"}],"minimum":0,"maximum":100,"description":"Percentual de crédito presumido em providers municipais aderentes ao IBS/CBS."},"amount":{"allOf":[{"$ref":"#/components/schemas/NfseDecimalValue"}],"minimum":0,"description":"Valor de crédito presumido em providers municipais aderentes ao IBS/CBS."}}}}}}
```

## The NfseIbscbsGovernmentPurchaseTotals object

```json
{"openapi":"3.1.1","info":{"title":"API IXC E-Docs - Integração x-api-key","version":"0.1.0"},"components":{"schemas":{"NfseIbscbsGovernmentPurchaseTotals":{"type":"object","additionalProperties":false,"properties":{"ibs_state_rate":{"allOf":[{"$ref":"#/components/schemas/NfseDecimalValue"}],"minimum":0,"maximum":100,"description":"Alíquota estadual do IBS em compra governamental."},"ibs_state_amount":{"allOf":[{"$ref":"#/components/schemas/NfseDecimalValue"}],"minimum":0,"description":"Valor estadual do IBS em compra governamental."},"ibs_municipality_rate":{"allOf":[{"$ref":"#/components/schemas/NfseDecimalValue"}],"minimum":0,"maximum":100,"description":"Alíquota municipal do IBS em compra governamental."},"ibs_municipality_amount":{"allOf":[{"$ref":"#/components/schemas/NfseDecimalValue"}],"minimum":0,"description":"Valor municipal do IBS em compra governamental."},"cbs_rate":{"allOf":[{"$ref":"#/components/schemas/NfseDecimalValue"}],"minimum":0,"maximum":100,"description":"Alíquota da CBS em compra governamental."},"cbs_amount":{"allOf":[{"$ref":"#/components/schemas/NfseDecimalValue"}],"minimum":0,"description":"Valor da CBS em compra governamental."}}},"NfseDecimalValue":{"oneOf":[{"type":"number"},{"type":"string","pattern":"^\\\\d+(?:\\\\.\\\\d+)?$"}],"description":"Valor decimal aceito como número JSON ou string numérica decimal."}}}}
```

## The NfseIbscbsCreditPresumedTotals object

```json
{"openapi":"3.1.1","info":{"title":"API IXC E-Docs - Integração x-api-key","version":"0.1.0"},"components":{"schemas":{"NfseIbscbsCreditPresumedTotals":{"type":"object","additionalProperties":false,"properties":{"rate":{"allOf":[{"$ref":"#/components/schemas/NfseDecimalValue"}],"minimum":0,"maximum":100,"description":"Percentual de crédito presumido em providers municipais aderentes ao IBS/CBS."},"amount":{"allOf":[{"$ref":"#/components/schemas/NfseDecimalValue"}],"minimum":0,"description":"Valor de crédito presumido em providers municipais aderentes ao IBS/CBS."}}},"NfseDecimalValue":{"oneOf":[{"type":"number"},{"type":"string","pattern":"^\\\\d+(?:\\\\.\\\\d+)?$"}],"description":"Valor decimal aceito como número JSON ou string numérica decimal."}}}}
```

## The NfseIbscbsIbsLocationTotal object

```json
{"openapi":"3.1.1","info":{"title":"API IXC E-Docs - Integração x-api-key","version":"0.1.0"},"components":{"schemas":{"NfseIbscbsIbsLocationTotal":{"type":"object","additionalProperties":false,"properties":{"total_amount":{"allOf":[{"$ref":"#/components/schemas/NfseDecimalValue"}],"minimum":0,"description":"Valor total consolidado do grupo correspondente."},"deferral_amount":{"allOf":[{"$ref":"#/components/schemas/NfseDecimalValue"}],"minimum":0,"description":"Valor diferido do grupo correspondente em providers municipais aderentes ao IBS/CBS."}}},"NfseDecimalValue":{"oneOf":[{"type":"number"},{"type":"string","pattern":"^\\\\d+(?:\\\\.\\\\d+)?$"}],"description":"Valor decimal aceito como número JSON ou string numérica decimal."}}}}
```

## The NfseIbscbsSimpleTotal object

```json
{"openapi":"3.1.1","info":{"title":"API IXC E-Docs - Integração x-api-key","version":"0.1.0"},"components":{"schemas":{"NfseIbscbsSimpleTotal":{"type":"object","additionalProperties":false,"properties":{"total_amount":{"allOf":[{"$ref":"#/components/schemas/NfseDecimalValue"}],"minimum":0,"description":"Valor total consolidado do grupo correspondente."}}},"NfseDecimalValue":{"oneOf":[{"type":"number"},{"type":"string","pattern":"^\\\\d+(?:\\\\.\\\\d+)?$"}],"description":"Valor decimal aceito como número JSON ou string numérica decimal."}}}}
```

## The CancelNfseRequest object

```json
{"openapi":"3.1.1","info":{"title":"API IXC E-Docs - Integração x-api-key","version":"0.1.0"},"components":{"schemas":{"CancelNfseRequest":{"type":"object","additionalProperties":false,"required":["resolve"],"properties":{"resolve":{"type":"array","minItems":1,"items":{"$ref":"#/components/schemas/CancelNfseResolve"},"description":"Lista de referências para resolução das NFS-e que serão canceladas."},"cancel_reason":{"type":"string","description":"Motivo do cancelamento da NFS-e. Serializado quando informado; obrigatoriedade e tamanho são validados pelo provedor."},"cancel_code":{"type":"integer","description":"Código de cancelamento serializado quando informado; domínio fiscal é validado pelo provedor.\nProviders com tradução canônica conhecida podem mapear esse valor para o código municipal específico.\n\n- 1: Erro na emissão\n- 2: Serviço não prestado (default)\n- 3: Erro de assinatura\n- 4: Duplicidade\n- 5: Substituição\n- 99: Outros\n"}}},"CancelNfseResolve":{"oneOf":[{"type":"object","additionalProperties":false,"required":["nfse_id"],"properties":{"nfse_id":{"$ref":"#/components/schemas/ObjectId","description":"ID interno da NFS-e que será cancelada."}}},{"type":"object","additionalProperties":false,"required":["issuer_tax_id","external_id"],"properties":{"issuer_tax_id":{"type":"string","description":"CNPJ do emissor da NFS-e (somente dígitos)."},"external_id":{"type":"string","description":"ID externo da NFS-e que será cancelada."}}}]},"ObjectId":{"type":"string","description":"Identificador no formato ObjectId."}}}}
```

## The CancelNfseResolve object

```json
{"openapi":"3.1.1","info":{"title":"API IXC E-Docs - Integração x-api-key","version":"0.1.0"},"components":{"schemas":{"CancelNfseResolve":{"oneOf":[{"type":"object","additionalProperties":false,"required":["nfse_id"],"properties":{"nfse_id":{"$ref":"#/components/schemas/ObjectId","description":"ID interno da NFS-e que será cancelada."}}},{"type":"object","additionalProperties":false,"required":["issuer_tax_id","external_id"],"properties":{"issuer_tax_id":{"type":"string","description":"CNPJ do emissor da NFS-e (somente dígitos)."},"external_id":{"type":"string","description":"ID externo da NFS-e que será cancelada."}}}]},"ObjectId":{"type":"string","description":"Identificador no formato ObjectId."}}}}
```

## The NfseResolveReference object

```json
{"openapi":"3.1.1","info":{"title":"API IXC E-Docs - Integração x-api-key","version":"0.1.0"},"components":{"schemas":{"NfseResolveReference":{"oneOf":[{"type":"object","additionalProperties":false,"required":["nfse_id"],"properties":{"nfse_id":{"$ref":"#/components/schemas/ObjectId","description":"ID interno da NFS-e."}}},{"type":"object","additionalProperties":false,"required":["issuer_tax_id","external_id"],"properties":{"issuer_tax_id":{"type":"string","description":"CNPJ do emissor da NFS-e (somente dígitos)."},"external_id":{"type":"string","description":"ID externo da NFS-e."}}}]},"ObjectId":{"type":"string","description":"Identificador no formato ObjectId."}}}}
```

## The CancelFailedItem object

```json
{"openapi":"3.1.1","info":{"title":"API IXC E-Docs - Integração x-api-key","version":"0.1.0"},"components":{"schemas":{"CancelFailedItem":{"type":"object","additionalProperties":false,"required":["id","code","error","params"],"properties":{"id":{"$ref":"#/components/schemas/ObjectId","description":"Identificador público do certificado. Em `PUT /certificates/{certificate_id}`, preserva o mesmo valor enviado no path."},"code":{"type":"string","description":"Código estruturado da falha parcial."},"error":{"type":"string","description":"Motivo da falha por NFS-e. Pode ser erro de validação (status incompatível, motivo inválido)\nou de lock otimista quando a NFS-e já está em outra operação pendente."},"params":{"type":"object","additionalProperties":true,"description":"Parâmetros estruturados da falha parcial."}}},"ObjectId":{"type":"string","description":"Identificador no formato ObjectId."}}}}
```

## The CancelNfseResponse object

```json
{"openapi":"3.1.1","info":{"title":"API IXC E-Docs - Integração x-api-key","version":"0.1.0"},"components":{"schemas":{"CancelNfseResponse":{"type":"object","additionalProperties":false,"required":["canceled_ids","failed"],"properties":{"canceled_ids":{"type":"array","description":"IDs das NFS-es que tiveram cancelamento aceito e enfileirado no outbox.","items":{"$ref":"#/components/schemas/ObjectId"}},"failed":{"type":"array","description":"IDs das NFS-es que não puderam ser cancelados nesta requisição.\nInclui falhas de validação e tentativas que perderam o lock otimista\n(NFS-e já em outra operação pendente).","items":{"$ref":"#/components/schemas/CancelFailedItem"}}}},"ObjectId":{"type":"string","description":"Identificador no formato ObjectId."},"CancelFailedItem":{"type":"object","additionalProperties":false,"required":["id","code","error","params"],"properties":{"id":{"$ref":"#/components/schemas/ObjectId","description":"Identificador público do certificado. Em `PUT /certificates/{certificate_id}`, preserva o mesmo valor enviado no path."},"code":{"type":"string","description":"Código estruturado da falha parcial."},"error":{"type":"string","description":"Motivo da falha por NFS-e. Pode ser erro de validação (status incompatível, motivo inválido)\nou de lock otimista quando a NFS-e já está em outra operação pendente."},"params":{"type":"object","additionalProperties":true,"description":"Parâmetros estruturados da falha parcial."}}}}}}
```

## The SyncNfseRequest object

```json
{"openapi":"3.1.1","info":{"title":"API IXC E-Docs - Integração x-api-key","version":"0.1.0"},"components":{"schemas":{"SyncNfseRequest":{"type":"object","additionalProperties":false,"required":["resolve"],"properties":{"resolve":{"type":"array","minItems":1,"maxItems":1,"items":{"$ref":"#/components/schemas/NfseResolveReference"},"description":"Referência unitária da NFS-e que será reconciliada. Aceita `nfse_id` ou `issuer_tax_id` + `external_id`."}}},"NfseResolveReference":{"oneOf":[{"type":"object","additionalProperties":false,"required":["nfse_id"],"properties":{"nfse_id":{"$ref":"#/components/schemas/ObjectId","description":"ID interno da NFS-e."}}},{"type":"object","additionalProperties":false,"required":["issuer_tax_id","external_id"],"properties":{"issuer_tax_id":{"type":"string","description":"CNPJ do emissor da NFS-e (somente dígitos)."},"external_id":{"type":"string","description":"ID externo da NFS-e."}}}]},"ObjectId":{"type":"string","description":"Identificador no formato ObjectId."}}}}
```

## The SyncFailedItem object

```json
{"openapi":"3.1.1","info":{"title":"API IXC E-Docs - Integração x-api-key","version":"0.1.0"},"components":{"schemas":{"SyncFailedItem":{"type":"object","additionalProperties":false,"required":["id","code","error","params"],"properties":{"id":{"type":"string","description":"Identificador informado ou resolvido para a NFS-e que não pôde ser sincronizada."},"code":{"type":"string","description":"Código estruturado da falha parcial."},"error":{"type":"string","description":"Mensagem de erro retornada pelo processamento."},"params":{"type":"object","additionalProperties":true,"description":"Parâmetros estruturados da falha parcial."}}}}}}
```

## The SyncNfseResponse object

```json
{"openapi":"3.1.1","info":{"title":"API IXC E-Docs - Integração x-api-key","version":"0.1.0"},"components":{"schemas":{"SyncNfseResponse":{"type":"object","additionalProperties":false,"required":["synced_ids","failed"],"properties":{"synced_ids":{"type":"array","items":{"$ref":"#/components/schemas/ObjectId"}},"failed":{"type":"array","items":{"$ref":"#/components/schemas/SyncFailedItem"}}}},"ObjectId":{"type":"string","description":"Identificador no formato ObjectId."},"SyncFailedItem":{"type":"object","additionalProperties":false,"required":["id","code","error","params"],"properties":{"id":{"type":"string","description":"Identificador informado ou resolvido para a NFS-e que não pôde ser sincronizada."},"code":{"type":"string","description":"Código estruturado da falha parcial."},"error":{"type":"string","description":"Mensagem de erro retornada pelo processamento."},"params":{"type":"object","additionalProperties":true,"description":"Parâmetros estruturados da falha parcial."}}}}}}
```

## The ResendNfseRequest object

```json
{"openapi":"3.1.1","info":{"title":"API IXC E-Docs - Integração x-api-key","version":"0.1.0"},"components":{"schemas":{"ResendNfseRequest":{"type":"object","additionalProperties":false,"required":["resolve"],"properties":{"resolve":{"type":"array","minItems":1,"items":{"$ref":"#/components/schemas/NfseResolveReference"},"description":"Lista de referências para resolução das NFS-e que serão reenviadas sem edição. Aceita `nfse_id` ou `issuer_tax_id` + `external_id`."}}},"NfseResolveReference":{"oneOf":[{"type":"object","additionalProperties":false,"required":["nfse_id"],"properties":{"nfse_id":{"$ref":"#/components/schemas/ObjectId","description":"ID interno da NFS-e."}}},{"type":"object","additionalProperties":false,"required":["issuer_tax_id","external_id"],"properties":{"issuer_tax_id":{"type":"string","description":"CNPJ do emissor da NFS-e (somente dígitos)."},"external_id":{"type":"string","description":"ID externo da NFS-e."}}}]},"ObjectId":{"type":"string","description":"Identificador no formato ObjectId."}}}}
```

## The ResendNfseFailedItem object

```json
{"openapi":"3.1.1","info":{"title":"API IXC E-Docs - Integração x-api-key","version":"0.1.0"},"components":{"schemas":{"ResendNfseFailedItem":{"type":"object","additionalProperties":false,"required":["id","code","error","params"],"properties":{"id":{"type":"string","description":"Identificador informado ou resolvido para a NFS-e que não pôde ser reenviada."},"code":{"type":"string","description":"Código estruturado da falha parcial."},"error":{"type":"string","description":"Mensagem de erro retornada para a NFS-e que não pôde ser reenviada."},"params":{"type":"object","additionalProperties":true,"description":"Parâmetros estruturados da falha parcial."}}}}}}
```

## The ResendNfseResponse object

```json
{"openapi":"3.1.1","info":{"title":"API IXC E-Docs - Integração x-api-key","version":"0.1.0"},"components":{"schemas":{"ResendNfseResponse":{"type":"object","additionalProperties":false,"required":["resent_ids","failed"],"properties":{"resent_ids":{"type":"array","description":"IDs das NFS-es que tiveram novo envio enfileirado.","items":{"$ref":"#/components/schemas/ObjectId"}},"failed":{"type":"array","description":"IDs das NFS-es que não puderam ser reenviadas nesta requisição.","items":{"$ref":"#/components/schemas/ResendNfseFailedItem"}}}},"ObjectId":{"type":"string","description":"Identificador no formato ObjectId."},"ResendNfseFailedItem":{"type":"object","additionalProperties":false,"required":["id","code","error","params"],"properties":{"id":{"type":"string","description":"Identificador informado ou resolvido para a NFS-e que não pôde ser reenviada."},"code":{"type":"string","description":"Código estruturado da falha parcial."},"error":{"type":"string","description":"Mensagem de erro retornada para a NFS-e que não pôde ser reenviada."},"params":{"type":"object","additionalProperties":true,"description":"Parâmetros estruturados da falha parcial."}}}}}}
```

## The ReplayNfseWebhookRequest object

```json
{"openapi":"3.1.1","info":{"title":"API IXC E-Docs - Integração x-api-key","version":"0.1.0"},"components":{"schemas":{"ReplayNfseWebhookRequest":{"type":"object","additionalProperties":false,"required":["resolve"],"properties":{"resolve":{"type":"array","minItems":1,"items":{"$ref":"#/components/schemas/NfseResolveReference"},"description":"Lista de referências para resolução das NFS-e que terão webhook reemitido. Aceita `nfse_id` ou `issuer_tax_id` + `external_id`."}}},"NfseResolveReference":{"oneOf":[{"type":"object","additionalProperties":false,"required":["nfse_id"],"properties":{"nfse_id":{"$ref":"#/components/schemas/ObjectId","description":"ID interno da NFS-e."}}},{"type":"object","additionalProperties":false,"required":["issuer_tax_id","external_id"],"properties":{"issuer_tax_id":{"type":"string","description":"CNPJ do emissor da NFS-e (somente dígitos)."},"external_id":{"type":"string","description":"ID externo da NFS-e."}}}]},"ObjectId":{"type":"string","description":"Identificador no formato ObjectId."}}}}
```

## The ReplayNfseWebhookFailedItem object

```json
{"openapi":"3.1.1","info":{"title":"API IXC E-Docs - Integração x-api-key","version":"0.1.0"},"components":{"schemas":{"ReplayNfseWebhookFailedItem":{"type":"object","additionalProperties":false,"required":["id","code","error","params"],"properties":{"id":{"$ref":"#/components/schemas/ObjectId"},"code":{"type":"string","description":"Código estruturado da falha parcial."},"error":{"type":"string","description":"Mensagem de erro retornada para a NFS-e que não pôde ter webhook reemitido."},"params":{"type":"object","additionalProperties":true,"description":"Parâmetros estruturados da falha parcial."}}},"ObjectId":{"type":"string","description":"Identificador no formato ObjectId."}}}}
```

## The ReplayNfseWebhookResponse object

```json
{"openapi":"3.1.1","info":{"title":"API IXC E-Docs - Integração x-api-key","version":"0.1.0"},"components":{"schemas":{"ReplayNfseWebhookResponse":{"type":"object","additionalProperties":false,"required":["replayed_ids","skipped_ids","failed"],"properties":{"replayed_ids":{"type":"array","description":"IDs das NFS-es que tiveram ao menos um webhook log criado para entrega.","items":{"$ref":"#/components/schemas/ObjectId"}},"skipped_ids":{"type":"array","description":"IDs das NFS-es válidas que não possuíam webhook ativo assinando o evento atual.","items":{"$ref":"#/components/schemas/ObjectId"}},"failed":{"type":"array","description":"IDs das NFS-es que não puderam gerar replay por operação pendente, status sem evento ou erro técnico.","items":{"$ref":"#/components/schemas/ReplayNfseWebhookFailedItem"}}}},"ObjectId":{"type":"string","description":"Identificador no formato ObjectId."},"ReplayNfseWebhookFailedItem":{"type":"object","additionalProperties":false,"required":["id","code","error","params"],"properties":{"id":{"$ref":"#/components/schemas/ObjectId"},"code":{"type":"string","description":"Código estruturado da falha parcial."},"error":{"type":"string","description":"Mensagem de erro retornada para a NFS-e que não pôde ter webhook reemitido."},"params":{"type":"object","additionalProperties":true,"description":"Parâmetros estruturados da falha parcial."}}}}}}
```

## The NfcomCreateBody object

```json
{"openapi":"3.1.1","info":{"title":"API IXC E-Docs - Integração x-api-key","version":"0.1.0"},"components":{"schemas":{"NfcomCreateBody":{"type":"object","additionalProperties":false,"required":["external_id","issuer","customer","subscriber","service"],"properties":{"external_id":{"type":"string","minLength":1,"description":"Identificador externo do documento atribuído pelo integrador. Deve ser único por emitente."},"environment":{"type":"string","enum":["production","homologation"],"description":"Ambiente de emissão (tpAmb no XML). Quando omitido, usa o ambiente configurado na empresa."},"series":{"type":"string","minLength":1,"maxLength":3,"description":"Série do documento (serie no XML). Quando omitido, usa a série configurada na empresa."},"purpose":{"type":"integer","enum":[0,3,4],"description":"Finalidade de emissão (finNFCom no XML).\n- `0` — Normal.\n- `3` — Substituição.\n- `4` — Ajuste."},"billing_type":{"type":"integer","enum":[0,1,2],"description":"Tipo de faturamento (tpFat no XML).\n- `0` — Normal.\n- `1` — Centralizado.\n- `2` — Co-faturamento."},"prepaid":{"type":"boolean","description":"Indica se o serviço é pré-pago (indPrePago no XML)."},"network_cession":{"type":"boolean","description":"Indica cessão de meios de rede (indCessaoMeiosRede no XML)."},"entry_note":{"type":"boolean","description":"Indica nota de entrada (indNotaEntrada no XML)."},"send_email":{"type":"boolean","description":"Indica se deve enviar e-mail ao destinatário após autorização."},"issuer":{"type":"object","additionalProperties":false,"description":"Emitente da NFCom (emit no XML).","required":["tax_id","state_registration","legal_name","address"],"properties":{"tax_id":{"type":"string","pattern":"^\\d{14}$","description":"CNPJ do emitente, somente dígitos (CNPJ no XML)."},"state_registration":{"type":"string","minLength":2,"maxLength":14,"description":"Inscrição estadual do emitente (IE no XML)."},"tax_regime":{"type":"integer","minimum":1,"maximum":3,"description":"Código de Regime Tributário (CRT no XML).\n- `1` — Simples Nacional.\n- `2` — Simples Nacional, excesso sublimite de receita bruta.\n- `3` — Regime Normal."},"legal_name":{"type":"string","minLength":2,"maxLength":60,"description":"Razão social do emitente (xNome no XML)."},"name":{"type":"string","minLength":1,"maxLength":60,"description":"Nome fantasia do emitente (xFant no XML)."},"address":{"$ref":"#/components/schemas/NfseAddress"},"phone":{"type":"string","description":"Telefone do emitente (fone no XML)."},"email":{"type":"string","format":"email","description":"E-mail do emitente."},"destination_state_registration":{"type":"string","description":"Inscricao Estadual do emitente na UF de destino (IEUFDest no XML). Opcional, usado quando o emitente tem IE em outro estado."}}},"customer":{"type":"object","additionalProperties":false,"description":"Destinatário da NFCom (dest no XML).","required":["legal_name","address"],"properties":{"tax_id":{"type":"string","description":"CPF ou CNPJ do destinatário, somente dígitos (CPF/CNPJ no XML). Detecção automática pelo tamanho."},"other_id":{"type":"string","description":"Documento de identificação alternativo quando não possui CPF/CNPJ (idOutros no XML)."},"legal_name":{"type":"string","minLength":2,"maxLength":60,"description":"Razão social ou nome do destinatário (xNome no XML)."},"name":{"type":"string","description":"Nome fantasia do destinatário (xFant no XML)."},"ie_indicator":{"type":"integer","enum":[1,2,9],"description":"Indicador de IE do destinatário (indIEDest no XML).\n- `1` — Contribuinte ICMS.\n- `2` — Contribuinte isento de inscrição.\n- `9` — Não contribuinte."},"state_registration":{"type":"string","description":"Inscrição estadual do destinatário (IE no XML)."},"municipal_registration":{"type":"string","description":"Inscrição municipal do destinatário (IM no XML)."},"address":{"$ref":"#/components/schemas/NfseAddress"},"phone":{"type":"string","description":"Telefone do destinatário (fone no XML)."},"email":{"type":"string","format":"email","description":"E-mail do destinatário."}}},"subscriber":{"type":"object","additionalProperties":false,"description":"Assinante da NFCom (assinante no XML).","required":["code","type","service_type"],"properties":{"code":{"type":"string","minLength":1,"maxLength":30,"description":"Código do assinante/cliente (nContrato no XML)."},"type":{"type":"integer","enum":[1,2,3,4,5,6,7,8,99],"description":"Tipo de assinante (tpAssinante no XML).\n- `1` — Comercial/Industrial.\n- `2` — Poder Público.\n- `3` — Residencial/Pessoa Física.\n- `4` — Público.\n- `5` — Semi-Público.\n- `6` — Outros.\n- `7` — Prestadora de serviço de telecomunicação.\n- `8` — Missão diplomática/Repartição consular.\n- `99` — Não se aplica."},"service_type":{"type":"integer","minimum":1,"maximum":7,"description":"Tipo de serviço prestado (tpServUtil no XML).\n- `1` — Telefonia.\n- `2` — Comunicação de dados.\n- `3` — TV por assinatura.\n- `4` — Provimento de acesso à Internet.\n- `5` — Multimídia.\n- `6` — Outros.\n- `7` — Vários."},"contract_number":{"type":"string","minLength":1,"maxLength":20,"description":"Número do contrato (nContrato no XML)."},"contract_start_date":{"type":"string","format":"date","description":"Data de início do contrato (dContratoIni no XML)."},"contract_end_date":{"type":"string","format":"date","description":"Data de fim do contrato (dContratoFim no XML)."},"main_terminal":{"type":"string","minLength":7,"maxLength":12,"description":"Terminal principal do assinante (NroTermPrinc no XML)."},"main_terminal_uf":{"type":"string","minLength":2,"maxLength":2,"description":"UF do terminal principal (cUFPrinc no XML)."},"additional_terminals":{"type":"array","description":"Terminais adicionais do assinante (NroTermAdic no XML).","items":{"type":"object","additionalProperties":false,"required":["number","uf"],"properties":{"number":{"type":"string","minLength":7,"maxLength":12,"description":"Número do terminal adicional."},"uf":{"type":"string","minLength":2,"maxLength":2,"description":"UF do terminal adicional."}}}}}},"service":{"type":"object","additionalProperties":false,"description":"Detalhamento dos itens de serviço (det no XML).","required":["items"],"properties":{"items":{"type":"array","minItems":1,"maxItems":990,"items":{"$ref":"#/components/schemas/NfcomServiceItem"}}}},"values":{"type":"object","additionalProperties":false,"description":"Totalizadores da NFCom (total no XML). Quando omitido, os totais são calculados automaticamente a partir dos itens.","properties":{"total_products":{"type":"number","minimum":0,"description":"Valor total dos produtos/serviços (vProd no XML)."},"total_discounts":{"type":"number","minimum":0,"description":"Valor total de descontos (vDesc no XML)."},"total_other":{"type":"number","minimum":0,"description":"Valor total de outras despesas (vOutro no XML)."},"icms_base":{"type":"number","minimum":0,"description":"Base de cálculo total do ICMS (vBC no XML)."},"icms_amount":{"type":"number","minimum":0,"description":"Valor total do ICMS (vICMS no XML)."},"icms_desonerated":{"type":"number","minimum":0,"description":"Valor total do ICMS desonerado (vICMSDeson no XML)."},"fcp_amount":{"type":"number","minimum":0,"description":"Valor total do FCP (vFCP no XML)."},"pis_amount":{"type":"number","minimum":0,"description":"Valor total do PIS (vPIS no XML)."},"cofins_amount":{"type":"number","minimum":0,"description":"Valor total do COFINS (vCOFINS no XML)."},"fust_amount":{"type":"number","minimum":0,"description":"Valor total do FUST (vFUST no XML)."},"funttel_amount":{"type":"number","minimum":0,"description":"Valor total do FUNTTEL (vFUNTTEL no XML)."},"retention_pis":{"type":"number","minimum":0,"description":"Valor de retenção de PIS (vRetPIS no XML)."},"retention_cofins":{"type":"number","minimum":0,"description":"Valor de retenção de COFINS (vRetCOFINS no XML)."},"retention_csll":{"type":"number","minimum":0,"description":"Valor de retenção de CSLL (vRetCSLL no XML)."},"retention_irrf":{"type":"number","minimum":0,"description":"Valor de retenção de IRRF (vRetIRRF no XML)."}}},"substitution":{"type":"object","additionalProperties":false,"description":"Substituição de NFCom ou NF modelo 21/22 (gSub no XML).","required":["reason"],"properties":{"original_nfcom_key":{"type":"string","description":"Chave de acesso da NFCom original substituída (chNFCom no XML)."},"original_nf":{"type":"object","additionalProperties":false,"description":"NF modelo 21/22 substituída, quando a nota original não é NFCom (gNF no XML).","required":["tax_id","model","series","number","competence"],"properties":{"tax_id":{"type":"string","pattern":"^\\d{14}$","description":"CNPJ do emitente da NF original (CNPJ no XML)."},"model":{"type":"integer","description":"Modelo da NF original (mod no XML)."},"series":{"type":"integer","description":"Série da NF original (serie no XML)."},"number":{"type":"integer","description":"Número da NF original (nNF no XML)."},"competence":{"type":"string","minLength":6,"maxLength":6,"description":"Competência da NF original no formato AAAAMM (CompetEmis no XML)."},"hash_115":{"type":"string","description":"Hash do registro do convênio 115 da NF original (hash115 no XML)."}}},"reason":{"type":"string","minLength":2,"maxLength":2,"description":"Motivo da substituição (motSub no XML).\n- `01` — Erro de preço/valor.\n- `02` — Erro cadastral.\n- `03` — Decisão judicial.\n- `04` — Outros."}}},"co_billing":{"type":"object","additionalProperties":false,"description":"Co-faturamento (gCofat no XML). Usado quando billing_type=2.","required":["local_nfcom_key"],"properties":{"local_nfcom_key":{"type":"string","minLength":44,"maxLength":44,"description":"Chave de acesso da NFCom da operadora local (chNFComLocal no XML)."}}},"billing":{"type":"object","additionalProperties":false,"description":"Faturamento da NFCom (gFat no XML).","properties":{"competence":{"type":"string","minLength":6,"maxLength":6,"description":"Competência no formato AAAAMM (CompetFat no XML)."},"due_date":{"type":"string","format":"date","description":"Data de vencimento (dVencFat no XML)."},"usage_start_date":{"type":"string","format":"date","description":"Data de início de utilização (dPerUsoIni no XML)."},"usage_end_date":{"type":"string","format":"date","description":"Data de fim de utilização (dPerUsoFim no XML)."},"barcode":{"type":"string","minLength":1,"maxLength":48,"description":"Código de barras do boleto (codBarras no XML)."},"auto_debit_code":{"type":"string","minLength":1,"maxLength":20,"description":"Código de débito automático (codDebAuto no XML)."},"bank_code":{"type":"string","minLength":3,"maxLength":5,"description":"Código do banco (codBanco no XML)."},"agency_code":{"type":"string","minLength":1,"maxLength":10,"description":"Código da agência (codAgencia no XML)."},"correspondence_address":{"$ref":"#/components/schemas/NfseAddress"},"pix_qr_code_url":{"type":"string","minLength":2,"maxLength":2000,"description":"URL do QR Code Pix para pagamento (urlQRCodePIX no XML)."}}},"centralized_billing":{"type":"object","additionalProperties":false,"description":"Faturamento centralizado (gFatCentral no XML). Usado quando billing_type=1.","required":["centralizer_tax_id","centralizer_uf"],"properties":{"centralizer_tax_id":{"type":"string","pattern":"^\\d{14}$","description":"CNPJ da empresa centralizadora (CNPJ no XML)."},"centralizer_uf":{"type":"string","minLength":2,"maxLength":2,"description":"UF da empresa centralizadora (UF no XML)."}}},"loyalty":{"type":"object","additionalProperties":false,"description":"Programa de fidelidade (gFidelidade no XML).","properties":{"points_balance":{"type":"string","minLength":1,"maxLength":20,"description":"Saldo de pontos (qtdSaldoPts no XML)."},"points_balance_date":{"type":"string","format":"date","description":"Data de referência do saldo de pontos (dRefSaldoPts no XML)."},"redeemed_points":{"type":"string","minLength":1,"maxLength":20,"description":"Pontos resgatados (qtdPtsResg no XML)."},"redeemed_points_date":{"type":"string","format":"date","description":"Data de referência dos pontos resgatados (dRefResgPts no XML)."}}},"authorized_xml_access":{"type":"array","maxItems":10,"description":"Autorizados a baixar o XML (autXML no XML).","items":{"type":"object","additionalProperties":false,"required":["tax_id"],"properties":{"tax_id":{"type":"string","minLength":11,"maxLength":14,"description":"CPF ou CNPJ autorizado a acessar o XML (CPF/CNPJ no XML)."}}}},"technical_responsibility":{"type":"object","additionalProperties":false,"description":"Responsável técnico (gRespTec no XML).","required":["tax_id","contact_name","email","phone"],"properties":{"tax_id":{"type":"string","pattern":"^\\d{14}$","description":"CNPJ do responsável técnico (CNPJ no XML)."},"contact_name":{"type":"string","minLength":2,"maxLength":60,"description":"Nome do contato técnico (xContato no XML)."},"email":{"type":"string","format":"email","description":"E-mail do responsável técnico (email no XML)."},"phone":{"type":"string","minLength":7,"maxLength":12,"description":"Telefone do responsável técnico (fone no XML)."},"csrt_id":{"type":"string","minLength":1,"maxLength":3,"description":"Identificador do CSRT (idCSRT no XML)."},"csrt_hash":{"type":"string","minLength":1,"maxLength":28,"description":"Hash do CSRT (hashCSRT no XML)."}}},"additional_info":{"type":"string","minLength":1,"maxLength":2000,"description":"Informações adicionais de interesse do contribuinte (infAdFisco no XML)."},"taxpayer_info":{"type":"string","minLength":1,"maxLength":3000,"description":"Informações complementares de interesse do contribuinte (infCpl no XML)."}}},"NfseAddress":{"type":"object","additionalProperties":false,"properties":{"street":{"type":"string","minLength":1,"pattern":"^[A-Za-zÀ-ÖØ-öø-ÿ0-9 .,-]+$","description":"Logradouro. Não aceita símbolos especiais nem quebra de linha."},"number":{"type":"string","minLength":1,"pattern":"^[A-Za-zÀ-ÖØ-öø-ÿ0-9 .,-]+$","description":"Número do endereço. Não aceita símbolos especiais nem quebra de linha."},"neighborhood":{"type":"string","minLength":1,"pattern":"^[A-Za-zÀ-ÖØ-öø-ÿ0-9 .,-]+$","description":"Bairro. Não aceita símbolos especiais nem quebra de linha."},"municipality":{"type":"string","description":"**Compatibilidade.** (Compatibility) Alias permanente de `city`.\nAceito na entrada HTTP e devolvido nas respostas para manter integrações existentes.\nNão é usado por providers, templates, workers ou DANFSe."},"city":{"type":"string","description":"Cidade/localidade do endereço. Campo canônico do contrato NFS-e."},"state":{"type":"string","maxLength":2,"description":"UF brasileira ou estado/província/região estrangeira."},"postal_code":{"type":"string","minLength":1,"pattern":"^(?:\\d{8}|\\d{5}-\\d{3})$","description":"CEP brasileiro ou código postal exterior."},"complement":{"type":"string","description":"Complemento do endereço."},"municipality_code":{"type":"string","maxLength":7,"description":"Código IBGE do município brasileiro, usado para serialização fiscal quando aplicável."},"country":{"type":"string","maxLength":60,"description":"Nome do país, quando útil para exibição."},"country_code":{"type":"string","pattern":"^[A-Z]{2}$","description":"Código ISO 3166-1 alfa-2 do país."}}},"NfcomServiceItem":{"type":"object","additionalProperties":false,"description":"Item de detalhe da NFCom (det no XML).","required":["product_code","description","classification_code","cfop","unit","quantity","unit_value"],"properties":{"product_code":{"type":"string","minLength":1,"maxLength":60,"description":"Código do produto/serviço (cProd no XML)."},"description":{"type":"string","minLength":1,"maxLength":120,"description":"Descrição do item (xProd no XML)."},"classification_code":{"type":"string","minLength":1,"maxLength":7,"description":"Código de classificação do item (cClass no XML)."},"cfop":{"type":"string","minLength":4,"maxLength":4,"description":"Código fiscal de operações e prestações (CFOP no XML)."},"unit":{"type":"integer","minimum":1,"maximum":4,"description":"Unidade de medida tributável (uMed no XML).\n- `1` — Minuto.\n- `2` — Megabyte.\n- `3` — Gigabyte.\n- `4` — Unidade."},"quantity":{"type":"number","minimum":0,"description":"Quantidade do item (qFaturada no XML)."},"unit_value":{"type":"number","minimum":0,"description":"Valor unitário do item (vItem no XML)."},"discount":{"type":"number","minimum":0,"description":"Valor de desconto do item (vDesc no XML)."},"other_expenses":{"type":"number","minimum":0,"description":"Valor de outras despesas do item (vOutro no XML)."},"ld_operator_tax_id":{"type":"string","description":"CNPJ da operadora de longa distância (CNPJ_OperLD no XML)."},"previous_nfcom_key":{"type":"string","description":"Chave de acesso da NFCom anterior de referência (chNFComAnt no XML)."},"previous_item_number":{"type":"integer","minimum":1,"description":"Número do item na NFCom anterior (nItemAnt no XML)."},"expiration_date":{"type":"string","format":"date","description":"Data de expiração/vencimento do item (dExpiracao no XML)."},"return_indicator":{"type":"boolean","description":"Indica que o item é devolução/estorno (indDevolucao no XML)."},"additional_info":{"type":"string","minLength":1,"maxLength":500,"description":"Informações adicionais do item (infAdProd no XML)."},"icms":{"type":"object","additionalProperties":false,"description":"ICMS do item (ICMS no XML).","properties":{"cst":{"type":"string","minLength":2,"maxLength":3,"description":"Código de Situação Tributária do ICMS (CST no XML)."},"base":{"type":"number","minimum":0,"description":"Base de cálculo do ICMS (vBC no XML)."},"rate":{"type":"number","minimum":0,"description":"Alíquota do ICMS em percentual (pICMS no XML)."},"amount":{"type":"number","minimum":0,"description":"Valor do ICMS (vICMS no XML)."},"desonerated_amount":{"type":"number","minimum":0,"description":"Valor do ICMS desonerado (vICMSDeson no XML)."},"benefit_code":{"type":"string","description":"Código do benefício fiscal (cBenef no XML)."},"base_reduction_rate":{"type":"number","minimum":0,"description":"Percentual de redução da base de cálculo (pRedBC no XML)."},"fcp_base":{"type":"number","minimum":0,"description":"Base de cálculo do FCP (vBCFCP no XML)."},"fcp_rate":{"type":"number","minimum":0,"description":"Alíquota do FCP em percentual (pFCP no XML)."},"fcp_amount":{"type":"number","minimum":0,"description":"Valor do FCP (vFCP no XML)."},"is_simple_national":{"type":"boolean","description":"Indica se o emitente é optante do Simples Nacional."}}},"icms_uf_dest":{"type":"array","description":"ICMS partilhado com UF de destino (ICMSUFDest no XML). Usado para serviços prestados em UF diferente.","items":{"type":"object","additionalProperties":false,"required":["destination_uf","base","rate","destination_amount","issuer_amount"],"properties":{"destination_uf":{"type":"string","minLength":2,"maxLength":2,"description":"UF de destino (cUFDest no XML)."},"base":{"type":"number","minimum":0,"description":"Base de cálculo do ICMS UF destino (vBCUFDest no XML)."},"fcp_rate":{"type":"number","minimum":0,"description":"Alíquota do FCP na UF destino (pFCPUFDest no XML)."},"rate":{"type":"number","minimum":0,"description":"Alíquota interna da UF destino (pICMSUFDest no XML)."},"interstate_rate":{"type":"number","minimum":0,"description":"Alíquota interestadual (pICMSInter no XML)."},"fcp_amount":{"type":"number","minimum":0,"description":"Valor do FCP na UF destino (vFCPUFDest no XML)."},"destination_amount":{"type":"number","minimum":0,"description":"Valor do ICMS para a UF destino (vICMSUFDest no XML)."},"issuer_amount":{"type":"number","minimum":0,"description":"Valor do ICMS para a UF do emitente (vICMSUFEmi no XML)."},"benefit_code":{"type":"string","description":"Código do benefício fiscal na UF destino (cBenef no XML)."}}}},"no_icms":{"type":"boolean","description":"Indica que o item não possui tributação ICMS."},"pis":{"type":"object","additionalProperties":false,"description":"PIS do item (PIS no XML).","properties":{"cst":{"type":"string","minLength":2,"maxLength":2,"description":"Código de Situação Tributária do PIS (CST no XML)."},"base":{"type":"number","minimum":0,"description":"Base de cálculo do PIS (vBC no XML)."},"rate":{"type":"number","minimum":0,"description":"Alíquota do PIS em percentual (pPIS no XML)."},"amount":{"type":"number","minimum":0,"description":"Valor do PIS (vPIS no XML)."}}},"cofins":{"type":"object","additionalProperties":false,"description":"COFINS do item (COFINS no XML).","properties":{"cst":{"type":"string","minLength":2,"maxLength":2,"description":"Código de Situação Tributária do COFINS (CST no XML)."},"base":{"type":"number","minimum":0,"description":"Base de cálculo do COFINS (vBC no XML)."},"rate":{"type":"number","minimum":0,"description":"Alíquota do COFINS em percentual (pCOFINS no XML)."},"amount":{"type":"number","minimum":0,"description":"Valor do COFINS (vCOFINS no XML)."}}},"fust":{"type":"object","additionalProperties":false,"description":"FUST do item (FUST no XML).","properties":{"base":{"type":"number","minimum":0,"description":"Base de cálculo do FUST (vBC no XML)."},"rate":{"type":"number","minimum":0,"description":"Alíquota do FUST em percentual (pFUST no XML)."},"amount":{"type":"number","minimum":0,"description":"Valor do FUST (vFUST no XML)."}}},"funttel":{"type":"object","additionalProperties":false,"description":"FUNTTEL do item (FUNTTEL no XML).","properties":{"base":{"type":"number","minimum":0,"description":"Base de cálculo do FUNTTEL (vBC no XML)."},"rate":{"type":"number","minimum":0,"description":"Alíquota do FUNTTEL em percentual (pFUNTTEL no XML)."},"amount":{"type":"number","minimum":0,"description":"Valor do FUNTTEL (vFUNTTEL no XML)."}}},"retention":{"type":"object","additionalProperties":false,"description":"Retenções federais do item (retTrib no XML).","properties":{"pis":{"type":"number","minimum":0,"description":"Valor retido de PIS (vRetPIS no XML)."},"cofins":{"type":"number","minimum":0,"description":"Valor retido de COFINS (vRetCOFINS no XML)."},"csll":{"type":"number","minimum":0,"description":"Valor retido de CSLL (vRetCSLL no XML)."},"irrf_base":{"type":"number","minimum":0,"description":"Base de cálculo do IRRF (vBCIRRF no XML)."},"irrf":{"type":"number","minimum":0,"description":"Valor retido de IRRF (vIRRF no XML)."}}},"referenced_process":{"type":"object","description":"Processo referenciado do item (gProcRef no XML). Usado quando um item está vinculado a processo judicial ou administrativo.","properties":{"item_value":{"type":"number","minimum":0,"description":"Valor do item no processo (vItem no XML)."},"billed_quantity":{"type":"number","minimum":0},"product_value":{"type":"number","minimum":0},"discount":{"type":"number","minimum":0},"other_expenses":{"type":"number","minimum":0},"return_indicator":{"type":"boolean"},"icms_base":{"type":"number","minimum":0},"icms_rate":{"type":"number","minimum":0},"icms_amount":{"type":"number","minimum":0},"pis_amount":{"type":"number","minimum":0},"cofins_amount":{"type":"number","minimum":0},"fcp_amount":{"type":"number","minimum":0},"processes":{"type":"array","minItems":1,"maxItems":10,"items":{"type":"object","required":["type","number"],"properties":{"type":{"type":"integer","description":"0=SEFAZ, 1=Federal, 2=Estadual"},"number":{"type":"string","description":"Número do processo."}}}}}},"reimbursement":{"type":"object","description":"Ressarcimento do item (gRessarc no XML). Usado para créditos de ICMS por ressarcimento.","required":["type","reference_date"],"properties":{"type":{"type":"integer","description":"Tipo de ressarcimento: 1=indevido, 2=interrupção de serviço, 99=outros."},"reference_date":{"type":"string","format":"date","description":"Data de referência do ressarcimento."},"process_number":{"type":"string"},"complaint_protocol":{"type":"string"},"observations":{"type":"string","minLength":15,"maxLength":100}}}}}}}}
```

## The NfcomServiceItem object

```json
{"openapi":"3.1.1","info":{"title":"API IXC E-Docs - Integração x-api-key","version":"0.1.0"},"components":{"schemas":{"NfcomServiceItem":{"type":"object","additionalProperties":false,"description":"Item de detalhe da NFCom (det no XML).","required":["product_code","description","classification_code","cfop","unit","quantity","unit_value"],"properties":{"product_code":{"type":"string","minLength":1,"maxLength":60,"description":"Código do produto/serviço (cProd no XML)."},"description":{"type":"string","minLength":1,"maxLength":120,"description":"Descrição do item (xProd no XML)."},"classification_code":{"type":"string","minLength":1,"maxLength":7,"description":"Código de classificação do item (cClass no XML)."},"cfop":{"type":"string","minLength":4,"maxLength":4,"description":"Código fiscal de operações e prestações (CFOP no XML)."},"unit":{"type":"integer","minimum":1,"maximum":4,"description":"Unidade de medida tributável (uMed no XML).\n- `1` — Minuto.\n- `2` — Megabyte.\n- `3` — Gigabyte.\n- `4` — Unidade."},"quantity":{"type":"number","minimum":0,"description":"Quantidade do item (qFaturada no XML)."},"unit_value":{"type":"number","minimum":0,"description":"Valor unitário do item (vItem no XML)."},"discount":{"type":"number","minimum":0,"description":"Valor de desconto do item (vDesc no XML)."},"other_expenses":{"type":"number","minimum":0,"description":"Valor de outras despesas do item (vOutro no XML)."},"ld_operator_tax_id":{"type":"string","description":"CNPJ da operadora de longa distância (CNPJ_OperLD no XML)."},"previous_nfcom_key":{"type":"string","description":"Chave de acesso da NFCom anterior de referência (chNFComAnt no XML)."},"previous_item_number":{"type":"integer","minimum":1,"description":"Número do item na NFCom anterior (nItemAnt no XML)."},"expiration_date":{"type":"string","format":"date","description":"Data de expiração/vencimento do item (dExpiracao no XML)."},"return_indicator":{"type":"boolean","description":"Indica que o item é devolução/estorno (indDevolucao no XML)."},"additional_info":{"type":"string","minLength":1,"maxLength":500,"description":"Informações adicionais do item (infAdProd no XML)."},"icms":{"type":"object","additionalProperties":false,"description":"ICMS do item (ICMS no XML).","properties":{"cst":{"type":"string","minLength":2,"maxLength":3,"description":"Código de Situação Tributária do ICMS (CST no XML)."},"base":{"type":"number","minimum":0,"description":"Base de cálculo do ICMS (vBC no XML)."},"rate":{"type":"number","minimum":0,"description":"Alíquota do ICMS em percentual (pICMS no XML)."},"amount":{"type":"number","minimum":0,"description":"Valor do ICMS (vICMS no XML)."},"desonerated_amount":{"type":"number","minimum":0,"description":"Valor do ICMS desonerado (vICMSDeson no XML)."},"benefit_code":{"type":"string","description":"Código do benefício fiscal (cBenef no XML)."},"base_reduction_rate":{"type":"number","minimum":0,"description":"Percentual de redução da base de cálculo (pRedBC no XML)."},"fcp_base":{"type":"number","minimum":0,"description":"Base de cálculo do FCP (vBCFCP no XML)."},"fcp_rate":{"type":"number","minimum":0,"description":"Alíquota do FCP em percentual (pFCP no XML)."},"fcp_amount":{"type":"number","minimum":0,"description":"Valor do FCP (vFCP no XML)."},"is_simple_national":{"type":"boolean","description":"Indica se o emitente é optante do Simples Nacional."}}},"icms_uf_dest":{"type":"array","description":"ICMS partilhado com UF de destino (ICMSUFDest no XML). Usado para serviços prestados em UF diferente.","items":{"type":"object","additionalProperties":false,"required":["destination_uf","base","rate","destination_amount","issuer_amount"],"properties":{"destination_uf":{"type":"string","minLength":2,"maxLength":2,"description":"UF de destino (cUFDest no XML)."},"base":{"type":"number","minimum":0,"description":"Base de cálculo do ICMS UF destino (vBCUFDest no XML)."},"fcp_rate":{"type":"number","minimum":0,"description":"Alíquota do FCP na UF destino (pFCPUFDest no XML)."},"rate":{"type":"number","minimum":0,"description":"Alíquota interna da UF destino (pICMSUFDest no XML)."},"interstate_rate":{"type":"number","minimum":0,"description":"Alíquota interestadual (pICMSInter no XML)."},"fcp_amount":{"type":"number","minimum":0,"description":"Valor do FCP na UF destino (vFCPUFDest no XML)."},"destination_amount":{"type":"number","minimum":0,"description":"Valor do ICMS para a UF destino (vICMSUFDest no XML)."},"issuer_amount":{"type":"number","minimum":0,"description":"Valor do ICMS para a UF do emitente (vICMSUFEmi no XML)."},"benefit_code":{"type":"string","description":"Código do benefício fiscal na UF destino (cBenef no XML)."}}}},"no_icms":{"type":"boolean","description":"Indica que o item não possui tributação ICMS."},"pis":{"type":"object","additionalProperties":false,"description":"PIS do item (PIS no XML).","properties":{"cst":{"type":"string","minLength":2,"maxLength":2,"description":"Código de Situação Tributária do PIS (CST no XML)."},"base":{"type":"number","minimum":0,"description":"Base de cálculo do PIS (vBC no XML)."},"rate":{"type":"number","minimum":0,"description":"Alíquota do PIS em percentual (pPIS no XML)."},"amount":{"type":"number","minimum":0,"description":"Valor do PIS (vPIS no XML)."}}},"cofins":{"type":"object","additionalProperties":false,"description":"COFINS do item (COFINS no XML).","properties":{"cst":{"type":"string","minLength":2,"maxLength":2,"description":"Código de Situação Tributária do COFINS (CST no XML)."},"base":{"type":"number","minimum":0,"description":"Base de cálculo do COFINS (vBC no XML)."},"rate":{"type":"number","minimum":0,"description":"Alíquota do COFINS em percentual (pCOFINS no XML)."},"amount":{"type":"number","minimum":0,"description":"Valor do COFINS (vCOFINS no XML)."}}},"fust":{"type":"object","additionalProperties":false,"description":"FUST do item (FUST no XML).","properties":{"base":{"type":"number","minimum":0,"description":"Base de cálculo do FUST (vBC no XML)."},"rate":{"type":"number","minimum":0,"description":"Alíquota do FUST em percentual (pFUST no XML)."},"amount":{"type":"number","minimum":0,"description":"Valor do FUST (vFUST no XML)."}}},"funttel":{"type":"object","additionalProperties":false,"description":"FUNTTEL do item (FUNTTEL no XML).","properties":{"base":{"type":"number","minimum":0,"description":"Base de cálculo do FUNTTEL (vBC no XML)."},"rate":{"type":"number","minimum":0,"description":"Alíquota do FUNTTEL em percentual (pFUNTTEL no XML)."},"amount":{"type":"number","minimum":0,"description":"Valor do FUNTTEL (vFUNTTEL no XML)."}}},"retention":{"type":"object","additionalProperties":false,"description":"Retenções federais do item (retTrib no XML).","properties":{"pis":{"type":"number","minimum":0,"description":"Valor retido de PIS (vRetPIS no XML)."},"cofins":{"type":"number","minimum":0,"description":"Valor retido de COFINS (vRetCOFINS no XML)."},"csll":{"type":"number","minimum":0,"description":"Valor retido de CSLL (vRetCSLL no XML)."},"irrf_base":{"type":"number","minimum":0,"description":"Base de cálculo do IRRF (vBCIRRF no XML)."},"irrf":{"type":"number","minimum":0,"description":"Valor retido de IRRF (vIRRF no XML)."}}},"referenced_process":{"type":"object","description":"Processo referenciado do item (gProcRef no XML). Usado quando um item está vinculado a processo judicial ou administrativo.","properties":{"item_value":{"type":"number","minimum":0,"description":"Valor do item no processo (vItem no XML)."},"billed_quantity":{"type":"number","minimum":0},"product_value":{"type":"number","minimum":0},"discount":{"type":"number","minimum":0},"other_expenses":{"type":"number","minimum":0},"return_indicator":{"type":"boolean"},"icms_base":{"type":"number","minimum":0},"icms_rate":{"type":"number","minimum":0},"icms_amount":{"type":"number","minimum":0},"pis_amount":{"type":"number","minimum":0},"cofins_amount":{"type":"number","minimum":0},"fcp_amount":{"type":"number","minimum":0},"processes":{"type":"array","minItems":1,"maxItems":10,"items":{"type":"object","required":["type","number"],"properties":{"type":{"type":"integer","description":"0=SEFAZ, 1=Federal, 2=Estadual"},"number":{"type":"string","description":"Número do processo."}}}}}},"reimbursement":{"type":"object","description":"Ressarcimento do item (gRessarc no XML). Usado para créditos de ICMS por ressarcimento.","required":["type","reference_date"],"properties":{"type":{"type":"integer","description":"Tipo de ressarcimento: 1=indevido, 2=interrupção de serviço, 99=outros."},"reference_date":{"type":"string","format":"date","description":"Data de referência do ressarcimento."},"process_number":{"type":"string"},"complaint_protocol":{"type":"string"},"observations":{"type":"string","minLength":15,"maxLength":100}}}}}}}}
```

## The NfcomCreatedResult object

```json
{"openapi":"3.1.1","info":{"title":"API IXC E-Docs - Integração x-api-key","version":"0.1.0"},"components":{"schemas":{"NfcomCreatedResult":{"type":"object","additionalProperties":false,"required":["id","external_id","outbox_id"],"properties":{"id":{"type":"string","description":"Identificador da NFCom criada."},"external_id":{"type":"string","description":"Identificador externo informado no envio."},"number":{"type":["string","null"],"description":"Número do documento (preenchido após autorização)."},"series":{"type":["string","null"],"description":"Série do documento."},"outbox_id":{"type":"string","description":"Identificador na fila de processamento."}}}}}}
```

## The NfcomListResponse object

```json
{"openapi":"3.1.1","info":{"title":"API IXC E-Docs - Integração x-api-key","version":"0.1.0"},"components":{"schemas":{"NfcomListResponse":{"type":"object","additionalProperties":false,"required":["data","next_cursor"],"properties":{"data":{"type":"array","items":{"$ref":"#/components/schemas/NfcomListItem"}},"next_cursor":{"type":["string","null"],"description":"Cursor para a próxima página. `null` quando não há mais resultados."}}},"NfcomListItem":{"type":"object","description":"Item retornado na listagem de NFCom.","properties":{"id":{"type":"string","description":"Identificador da NFCom."},"external_id":{"type":"string","description":"Identificador externo atribuído pelo integrador."},"number":{"type":["string","null"],"description":"Número do documento (preenchido após autorização)."},"series":{"type":["string","null"],"description":"Série do documento."},"status":{"type":"string","enum":["created","processing","authorized","rejected","canceled","error","unsynced"],"description":"Status do ciclo de vida da NFCom.\n- `created` — Documento criado e aguardando envio.\n- `processing` — Enviado ao autorizador e aguardando resposta.\n- `authorized` — Autorizado pelo autorizador.\n- `rejected` — Rejeitado pelo autorizador.\n- `canceled` — Cancelado via evento.\n- `error` — Falha técnica no processamento.\n- `unsynced` — Importado sem confirmação do autorizador."},"emission_type":{"type":"string","enum":["normal","contingency"],"description":"Tipo de emissão (tpEmis no XML).\n- `normal` — Emissão normal (online).\n- `contingency` — Emissão em contingência automática (SEFAZ indisponível)."},"issuer":{"type":"object","properties":{"tax_id":{"type":"string","description":"CNPJ do emitente."}}},"customer":{"type":"object","properties":{"legal_name":{"type":"string","description":"Razão social do destinatário."}}},"access_key":{"type":["string","null"],"description":"Chave de acesso da NFCom (44 dígitos)."},"created_at":{"type":"string","format":"date-time","description":"Data de criação do registro."},"updated_at":{"type":"string","format":"date-time","description":"Data da última atualização."}}}}}}
```

## The NfcomListItem object

```json
{"openapi":"3.1.1","info":{"title":"API IXC E-Docs - Integração x-api-key","version":"0.1.0"},"components":{"schemas":{"NfcomListItem":{"type":"object","description":"Item retornado na listagem de NFCom.","properties":{"id":{"type":"string","description":"Identificador da NFCom."},"external_id":{"type":"string","description":"Identificador externo atribuído pelo integrador."},"number":{"type":["string","null"],"description":"Número do documento (preenchido após autorização)."},"series":{"type":["string","null"],"description":"Série do documento."},"status":{"type":"string","enum":["created","processing","authorized","rejected","canceled","error","unsynced"],"description":"Status do ciclo de vida da NFCom.\n- `created` — Documento criado e aguardando envio.\n- `processing` — Enviado ao autorizador e aguardando resposta.\n- `authorized` — Autorizado pelo autorizador.\n- `rejected` — Rejeitado pelo autorizador.\n- `canceled` — Cancelado via evento.\n- `error` — Falha técnica no processamento.\n- `unsynced` — Importado sem confirmação do autorizador."},"emission_type":{"type":"string","enum":["normal","contingency"],"description":"Tipo de emissão (tpEmis no XML).\n- `normal` — Emissão normal (online).\n- `contingency` — Emissão em contingência automática (SEFAZ indisponível)."},"issuer":{"type":"object","properties":{"tax_id":{"type":"string","description":"CNPJ do emitente."}}},"customer":{"type":"object","properties":{"legal_name":{"type":"string","description":"Razão social do destinatário."}}},"access_key":{"type":["string","null"],"description":"Chave de acesso da NFCom (44 dígitos)."},"created_at":{"type":"string","format":"date-time","description":"Data de criação do registro."},"updated_at":{"type":"string","format":"date-time","description":"Data da última atualização."}}}}}}
```

## The NfcomReadResponse object

```json
{"openapi":"3.1.1","info":{"title":"API IXC E-Docs - Integração x-api-key","version":"0.1.0"},"components":{"schemas":{"NfcomReadResponse":{"type":"object","description":"Dados completos da NFCom, incluindo issuer, customer, subscriber, service, impostos e URLs de download.\nOs campos `xml_url` e `pdf_url` são preenchidos somente quando os artefatos existem.","properties":{"id":{"type":"string","description":"Identificador interno da NFCom."},"workspace_id":{"type":"string","description":"Identificador do workspace."},"company_id":{"type":"string","description":"Identificador da empresa."},"external_id":{"type":"string","description":"Identificador externo atribuído pelo integrador."},"status":{"type":"string","enum":["created","processing","authorized","rejected","canceled","error","unsynced"],"description":"Status do ciclo de vida da NFCom.\n- `created` — Documento criado e aguardando envio.\n- `processing` — Enviado ao autorizador e aguardando resposta.\n- `authorized` — Autorizado pelo autorizador.\n- `rejected` — Rejeitado pelo autorizador.\n- `canceled` — Cancelado via evento.\n- `error` — Falha técnica no processamento.\n- `unsynced` — Importado sem confirmação do autorizador."},"emission_type":{"type":"string","enum":["normal","contingency"],"description":"Tipo de emissão (tpEmis no XML).\n- `normal` — Emissão normal (online).\n- `contingency` — Emissão em contingência automática (SEFAZ indisponível)."},"contingency_started_at":{"type":["string","null"],"format":"date-time","description":"Data/hora de entrada automática em contingência."},"operation_status":{"type":["string","null"],"description":"Situação operacional. `null` quando nenhuma operação está em andamento.\n- `sync_pending` — Sincronização pendente com o autorizador.\n- `cancellation_pending` — Cancelamento via evento pendente de confirmação.\n- `cancellation_error` — Falha terminal de cancelamento; o status fiscal é preservado e nova tentativa é permitida quando `operation_control.can_cancel=true`, inclusive em registros legados `unsynced`.","enum":[null,"sync_pending","cancellation_pending","cancellation_error"]},"purpose":{"type":["integer","null"],"enum":[0,3,4],"description":"Finalidade de emissão (finNFCom no XML).\n- `0` — Normal.\n- `3` — Substituição.\n- `4` — Ajuste."},"billing_type":{"type":["integer","null"],"enum":[0,1,2],"description":"Tipo de faturamento (tpFat no XML).\n- `0` — Normal.\n- `1` — Centralizado.\n- `2` — Co-faturamento."},"access_key":{"type":["string","null"],"description":"Chave de acesso da NFCom (44 dígitos)."},"protocol":{"type":["string","null"],"description":"Número do protocolo de autorização."},"number":{"type":["string","null"],"description":"Número do documento."},"series":{"type":["string","null"],"description":"Série do documento."},"authorizer":{"type":["string","null"],"description":"Autorizador da NFCom."},"uf":{"type":["string","null"],"description":"UF de emissão."},"environment":{"type":"string","enum":["production","homologation"],"description":"Ambiente de emissão."},"issuer":{"type":"object","description":"Emitente da NFCom (emit no XML).","properties":{"tax_id":{"type":"string","description":"CNPJ do emitente."},"state_registration":{"type":"string","description":"Inscrição estadual do emitente (IE no XML)."},"tax_regime":{"type":["integer","null"],"description":"Código de Regime Tributário (CRT no XML)."},"legal_name":{"type":"string","description":"Razão social do emitente."},"name":{"type":["string","null"],"description":"Nome fantasia do emitente."},"address":{"type":"object","properties":{"street":{"type":"string"},"number":{"type":"string"},"neighborhood":{"type":"string"},"municipality":{"type":"string"},"state":{"type":"string"},"postal_code":{"type":"string"},"municipality_code":{"type":"string"},"complement":{"type":["string","null"]}}},"phone":{"type":["string","null"],"description":"Telefone do emitente."},"email":{"type":["string","null"],"description":"E-mail do emitente."},"destination_state_registration":{"type":"string","description":"Inscricao Estadual do emitente na UF de destino (IEUFDest no XML). Opcional, usado quando o emitente tem IE em outro estado."}}},"customer":{"type":"object","description":"Destinatário da NFCom (dest no XML).","properties":{"tax_id":{"type":["string","null"],"description":"CPF ou CNPJ do destinatário."},"other_id":{"type":["string","null"],"description":"Documento de identificação alternativo."},"legal_name":{"type":"string","description":"Razão social ou nome do destinatário."},"name":{"type":["string","null"],"description":"Nome fantasia do destinatário."},"ie_indicator":{"type":["integer","null"],"description":"Indicador de IE do destinatário."},"state_registration":{"type":["string","null"],"description":"Inscrição estadual do destinatário."},"municipal_registration":{"type":["string","null"],"description":"Inscrição municipal do destinatário."},"email":{"type":["string","null"],"description":"E-mail do destinatário."},"phone":{"type":["string","null"],"description":"Telefone do destinatário."},"address":{"type":"object","properties":{"street":{"type":"string"},"number":{"type":"string"},"neighborhood":{"type":"string"},"municipality":{"type":"string"},"state":{"type":"string"},"postal_code":{"type":"string"},"municipality_code":{"type":"string"},"complement":{"type":["string","null"]}}}}},"subscriber":{"type":"object","description":"Assinante da NFCom (assinante no XML).","properties":{"code":{"type":"string","description":"Código do assinante."},"type":{"type":"integer","description":"Tipo de assinante (tpAssinante no XML)."},"service_type":{"type":"integer","description":"Tipo de serviço prestado (tpServUtil no XML)."},"contract_number":{"type":["string","null"],"description":"Número do contrato."},"contract_start_date":{"type":["string","null"],"format":"date","description":"Data de início do contrato."},"contract_end_date":{"type":["string","null"],"format":"date","description":"Data de fim do contrato."},"main_terminal":{"type":["string","null"],"description":"Terminal principal do assinante."},"main_terminal_uf":{"type":["string","null"],"description":"UF do terminal principal."},"additional_terminals":{"type":["array","null"],"items":{"type":"object","properties":{"number":{"type":"string"},"uf":{"type":"string"}}}}}},"service":{"type":"object","description":"Detalhamento dos itens de serviço.","properties":{"items":{"type":"array","items":{"type":"object","properties":{"product_code":{"type":"string","description":"Código do produto/serviço."},"description":{"type":"string","description":"Descrição do item."},"classification_code":{"type":"string","description":"Código de classificação do item."},"cfop":{"type":"string","description":"CFOP."},"unit":{"type":"integer","description":"Unidade de medida."},"quantity":{"type":"number","description":"Quantidade."},"unit_value":{"type":"number","description":"Valor unitário."},"discount":{"type":["number","null"],"description":"Desconto."},"other_expenses":{"type":["number","null"],"description":"Outras despesas."},"icms":{"type":["object","null"],"properties":{"cst":{"type":"string"},"base":{"type":["number","null"]},"rate":{"type":["number","null"]},"amount":{"type":["number","null"]},"desonerated_amount":{"type":["number","null"]},"benefit_code":{"type":["string","null"]},"base_reduction_rate":{"type":["number","null"]},"fcp_base":{"type":["number","null"]},"fcp_rate":{"type":["number","null"]},"fcp_amount":{"type":["number","null"]},"is_simple_national":{"type":["boolean","null"]}}},"icms_uf_dest":{"type":["array","null"],"items":{"type":"object","properties":{"destination_uf":{"type":"string"},"base":{"type":"number"},"fcp_rate":{"type":["number","null"]},"rate":{"type":"number"},"interstate_rate":{"type":["number","null"]},"fcp_amount":{"type":["number","null"]},"destination_amount":{"type":"number"},"issuer_amount":{"type":"number"},"benefit_code":{"type":["string","null"]}}}},"pis":{"type":["object","null"],"properties":{"cst":{"type":"string"},"base":{"type":["number","null"]},"rate":{"type":["number","null"]},"amount":{"type":["number","null"]}}},"cofins":{"type":["object","null"],"properties":{"cst":{"type":"string"},"base":{"type":["number","null"]},"rate":{"type":["number","null"]},"amount":{"type":["number","null"]}}},"fust":{"type":["object","null"],"properties":{"base":{"type":["number","null"]},"rate":{"type":["number","null"]},"amount":{"type":["number","null"]}}},"funttel":{"type":["object","null"],"properties":{"base":{"type":["number","null"]},"rate":{"type":["number","null"]},"amount":{"type":["number","null"]}}},"retention":{"type":["object","null"],"properties":{"pis":{"type":["number","null"]},"cofins":{"type":["number","null"]},"csll":{"type":["number","null"]},"irrf_base":{"type":["number","null"]},"irrf":{"type":["number","null"]}}}}}}}},"values":{"type":["object","null"],"description":"Totalizadores da NFCom (total no XML).","properties":{"total_products":{"type":["number","null"],"description":"Valor total dos produtos/serviços (vProd no XML)."},"total_discounts":{"type":["number","null"],"description":"Valor total de descontos (vDesc no XML)."},"total_other":{"type":["number","null"],"description":"Valor total de outras despesas (vOutro no XML)."},"icms_base":{"type":["number","null"],"description":"Base de cálculo total do ICMS (vBC no XML)."},"icms_amount":{"type":["number","null"],"description":"Valor total do ICMS (vICMS no XML)."},"icms_desonerated":{"type":["number","null"],"description":"Valor total do ICMS desonerado (vICMSDeson no XML)."},"fcp_amount":{"type":["number","null"],"description":"Valor total do FCP (vFCP no XML)."},"pis_amount":{"type":["number","null"],"description":"Valor total do PIS (vPIS no XML)."},"cofins_amount":{"type":["number","null"],"description":"Valor total do COFINS (vCOFINS no XML)."},"fust_amount":{"type":["number","null"],"description":"Valor total do FUST (vFUST no XML)."},"funttel_amount":{"type":["number","null"],"description":"Valor total do FUNTTEL (vFUNTTEL no XML)."},"retention_pis":{"type":["number","null"],"description":"Valor de retenção de PIS (vRetPIS no XML)."},"retention_cofins":{"type":["number","null"],"description":"Valor de retenção de COFINS (vRetCOFINS no XML)."},"retention_csll":{"type":["number","null"],"description":"Valor de retenção de CSLL (vRetCSLL no XML)."},"retention_irrf":{"type":["number","null"],"description":"Valor de retenção de IRRF (vRetIRRF no XML)."}}},"substitution":{"type":["object","null"],"description":"Dados de substituição (gSub no XML).","properties":{"original_nfcom_key":{"type":["string","null"]},"original_nf":{"type":["object","null"],"properties":{"tax_id":{"type":"string"},"model":{"type":"integer"},"series":{"type":"integer"},"number":{"type":"integer"},"competence":{"type":"string"},"hash_115":{"type":["string","null"]}}},"reason":{"type":"string"}}},"co_billing":{"type":["object","null"],"description":"Co-faturamento (gCofat no XML).","properties":{"local_nfcom_key":{"type":"string"}}},"billing":{"type":["object","null"],"description":"Faturamento (gFat no XML).","properties":{"competence":{"type":["string","null"]},"due_date":{"type":["string","null"],"format":"date"},"usage_start_date":{"type":["string","null"],"format":"date"},"usage_end_date":{"type":["string","null"],"format":"date"},"barcode":{"type":["string","null"]},"auto_debit_code":{"type":["string","null"]},"bank_code":{"type":["string","null"]},"agency_code":{"type":["string","null"]},"correspondence_address":{"type":["object","null"],"properties":{"street":{"type":"string"},"number":{"type":"string"},"neighborhood":{"type":"string"},"municipality":{"type":"string"},"state":{"type":"string"},"postal_code":{"type":"string"},"municipality_code":{"type":"string"},"complement":{"type":["string","null"]}}},"pix_qr_code_url":{"type":["string","null"]}}},"centralized_billing":{"type":["object","null"],"description":"Faturamento centralizado (gFatCentral no XML).","properties":{"centralizer_tax_id":{"type":"string"},"centralizer_uf":{"type":"string"}}},"loyalty":{"type":["object","null"],"description":"Programa de fidelidade (gFidelidade no XML).","properties":{"points_balance":{"type":["string","null"]},"points_balance_date":{"type":["string","null"],"format":"date"},"redeemed_points":{"type":["string","null"]},"redeemed_points_date":{"type":["string","null"],"format":"date"}}},"authorized_xml_access":{"type":["array","null"],"description":"Autorizados a baixar o XML (autXML no XML).","items":{"type":"object","properties":{"tax_id":{"type":"string"}}}},"technical_responsibility":{"type":["object","null"],"description":"Responsável técnico (gRespTec no XML).","properties":{"tax_id":{"type":"string"},"contact_name":{"type":"string"},"email":{"type":"string"},"phone":{"type":"string"},"csrt_id":{"type":["string","null"]},"csrt_hash":{"type":["string","null"]}}},"additional_info":{"type":["string","null"],"description":"Informações adicionais de interesse do contribuinte."},"taxpayer_info":{"type":["string","null"],"description":"Informações complementares de interesse do contribuinte."},"cancel_reason":{"type":["string","null"],"description":"Motivo do cancelamento (quando cancelada)."},"rejection_reason":{"type":["string","null"],"description":"Motivo da rejeição (quando rejeitada)."},"xml_url":{"type":["string","null"],"description":"URL pública para download do XML autorizado."},"pdf_url":{"type":["string","null"],"description":"URL pública para download do DANFCom."},"created_at":{"type":"string","format":"date-time","description":"Data de criação do registro."},"updated_at":{"type":"string","format":"date-time","description":"Data da última atualização."}}}}}}
```

## The NfcomCancelRequest object

```json
{"openapi":"3.1.1","info":{"title":"API IXC E-Docs - Integração x-api-key","version":"0.1.0"},"components":{"schemas":{"NfcomCancelRequest":{"type":"object","additionalProperties":false,"required":["cancel_reason"],"properties":{"cancel_reason":{"type":"string","minLength":15,"maxLength":255,"description":"Motivo do cancelamento da NFCom (mínimo 15, máximo 255 caracteres)."}}}}}}
```

## The NfcomCancelResponse object

```json
{"openapi":"3.1.1","info":{"title":"API IXC E-Docs - Integração x-api-key","version":"0.1.0"},"components":{"schemas":{"NfcomCancelResponse":{"type":"object","additionalProperties":false,"required":["canceled_id"],"properties":{"canceled_id":{"$ref":"#/components/schemas/ObjectId"}}},"ObjectId":{"type":"string","description":"Identificador no formato ObjectId."}}}}
```

## The NfcomSyncResponse object

```json
{"openapi":"3.1.1","info":{"title":"API IXC E-Docs - Integração x-api-key","version":"0.1.0"},"components":{"schemas":{"NfcomSyncResponse":{"type":"object","additionalProperties":false,"required":["synced_id"],"properties":{"synced_id":{"$ref":"#/components/schemas/ObjectId"}}},"ObjectId":{"type":"string","description":"Identificador no formato ObjectId."}}}}
```

## The NfseMunicipalityProfile object

```json
{"openapi":"3.1.1","info":{"title":"API IXC E-Docs - Integração x-api-key","version":"0.1.0"},"components":{"schemas":{"NfseMunicipalityProfile":{"type":"object","additionalProperties":false,"required":["municipality","state","municipality_code","timezone","provider","provider_config"],"properties":{"municipality":{"type":"string","description":"Nome do município."},"state":{"type":"string","description":"UF."},"municipality_code":{"type":"string","description":"Código IBGE."},"timezone":{"type":"string","description":"Timezone IANA do município."},"provider":{"type":"string","description":"Slug técnico do provider municipal."},"provider_config":{"$ref":"#/components/schemas/NfseProfileProviderConfig"}}},"NfseProfileProviderConfig":{"type":"object","additionalProperties":false,"required":["active","docs_version","endpoints"],"properties":{"active":{"type":"boolean"},"description":{"type":"string"},"docs_version":{"type":"string","description":"Versão do conjunto de artefatos oficiais usados para validar o provider."},"doc_source":{"$ref":"#/components/schemas/NfseProviderArtifactSource"},"max_batch_size":{"type":"integer","minimum":1,"description":"Máximo de documentos aceito por envio. Valor `1` indica envio unitário."},"requires_certificate":{"type":"boolean","description":"Capacidade resolvida do provedor para indicar exigência de certificado digital."},"max_series_per_company":{"type":"integer","minimum":1},"max_description_length":{"type":"integer","minimum":1,"description":"Limite de caracteres da discriminação do serviço."},"generates_official_danfse":{"type":"boolean","description":"Indica se o município gera DANFSe oficial automaticamente."},"cancellation_async_confirmation":{"type":"boolean","description":"Indica se o município confirma o cancelamento de forma assíncrona (devolve a NFS-e como autorizada por um tempo até efetivar)."},"xml_encoding":{"type":"string","enum":["utf-8","iso-8859-1"],"description":"Encoding XML aceito pelo provider municipal."},"endpoints":{"$ref":"#/components/schemas/NfseProviderConfigEndpoints"},"setup_spec":{"oneOf":[{"$ref":"#/components/schemas/NfseProviderSetupSpec"},{"type":"null"}],"description":"Setup spec público do provider, sem o modelo operacional interno de referência."},"capabilities":{"type":"object","additionalProperties":true,"description":"Matriz de capacidades resolvida do provider."}}},"NfseProviderArtifactSource":{"type":"object","additionalProperties":false,"properties":{"municipality":{"type":["string","null"],"description":"Município usado como fonte oficial do artefato versionado."},"provider":{"type":["string","null"],"description":"Nome do provedor usado como fonte oficial do artefato versionado."},"documentation_url":{"type":["string","null"],"description":"URL do portal oficial consultado para manual, layout ou XSD."},"wsdl_url":{"type":["string","null"],"description":"URL oficial do WSDL publicada pelo portal do provider ou município."},"captured_at":{"type":["string","null"],"description":"Data em que os artefatos versionados foram conferidos no repositório."},"checksum":{"type":["string","null"],"description":"Checksum opcional do artefato oficial quando a coleta registrar esse valor."}}},"NfseProviderConfigEndpoints":{"type":"object","additionalProperties":false,"required":["production","homologation"],"properties":{"production":{"type":["string","null"]},"homologation":{"type":["string","null"]}}},"NfseProviderSetupSpec":{"type":"object","description":"Especificação declarativa do provider usada para montar a configuração da empresa.\n\nCampos relevantes para a configuração NFS-e:\n- `certificate.required`: define se a empresa precisa selecionar certificado.\n- `authorization`: declara os tipos de autorização técnica aceitos pelo provider.\n- `profile_settings`: declara campos dinâmicos do perfil municipal/provedor.\n- `company_settings`: declara os campos dinâmicos top-level aceitos na configuração da empresa.\n- `profile_settings[].template.visible` e `company_settings[].template.visible`: quando `true`, expõem o campo no editor de templates como `provider_settings.<key>` ou como o `template.path` literal declarado pelo provider.\n- `numbering.series_format`: indica se a série fiscal usa formato `numeric` ou `alphanumeric`.","additionalProperties":true,"properties":{"certificate":{"type":"object","additionalProperties":true},"profile_settings":{"type":"array","items":{"$ref":"#/components/schemas/NfseProviderSetupField"}},"company_settings":{"type":"array","items":{"$ref":"#/components/schemas/NfseProviderSetupField"}},"authorization":{"type":"object","additionalProperties":true,"description":"Tipos de autorização técnica aceitos pelo provider. Quando houver um único tipo, a API pode inferir o `type` no payload da empresa."},"numbering":{"type":"object","additionalProperties":false,"properties":{"series_format":{"type":"string","enum":["numeric","alphanumeric"],"description":"Formato canônico da série fiscal usada em `numbering[].series`."}}}}},"NfseProviderSetupField":{"type":"object","additionalProperties":true,"required":["key","type","required"],"properties":{"key":{"type":"string","description":"Chave declarada pelo provider. Quando exposta em template, vira `provider_settings.<key>`."},"type":{"type":"string","enum":["boolean","number","password","radio","select","text","url"]},"required":{"type":"boolean"},"sensitive":{"type":"boolean"},"template":{"type":"object","additionalProperties":false,"description":"Metadado de UI para campos já existentes no contrato do provider. Não cria campo fiscal novo.","properties":{"visible":{"type":"boolean","description":"Quando `true`, permite selecionar `provider_settings.<key>` no editor de templates."},"path":{"type":"string","description":"Path literal usado no template físico quando o contexto do provider não usa `provider_settings.<key>`."},"description":{"type":"string","description":"Descrição opcional exibida no seletor de campos do editor de templates."}}}}}}}}
```

## The NfseProviderArtifactSource object

```json
{"openapi":"3.1.1","info":{"title":"API IXC E-Docs - Integração x-api-key","version":"0.1.0"},"components":{"schemas":{"NfseProviderArtifactSource":{"type":"object","additionalProperties":false,"properties":{"municipality":{"type":["string","null"],"description":"Município usado como fonte oficial do artefato versionado."},"provider":{"type":["string","null"],"description":"Nome do provedor usado como fonte oficial do artefato versionado."},"documentation_url":{"type":["string","null"],"description":"URL do portal oficial consultado para manual, layout ou XSD."},"wsdl_url":{"type":["string","null"],"description":"URL oficial do WSDL publicada pelo portal do provider ou município."},"captured_at":{"type":["string","null"],"description":"Data em que os artefatos versionados foram conferidos no repositório."},"checksum":{"type":["string","null"],"description":"Checksum opcional do artefato oficial quando a coleta registrar esse valor."}}}}}}
```

## The NfseProfileProviderConfig object

```json
{"openapi":"3.1.1","info":{"title":"API IXC E-Docs - Integração x-api-key","version":"0.1.0"},"components":{"schemas":{"NfseProfileProviderConfig":{"type":"object","additionalProperties":false,"required":["active","docs_version","endpoints"],"properties":{"active":{"type":"boolean"},"description":{"type":"string"},"docs_version":{"type":"string","description":"Versão do conjunto de artefatos oficiais usados para validar o provider."},"doc_source":{"$ref":"#/components/schemas/NfseProviderArtifactSource"},"max_batch_size":{"type":"integer","minimum":1,"description":"Máximo de documentos aceito por envio. Valor `1` indica envio unitário."},"requires_certificate":{"type":"boolean","description":"Capacidade resolvida do provedor para indicar exigência de certificado digital."},"max_series_per_company":{"type":"integer","minimum":1},"max_description_length":{"type":"integer","minimum":1,"description":"Limite de caracteres da discriminação do serviço."},"generates_official_danfse":{"type":"boolean","description":"Indica se o município gera DANFSe oficial automaticamente."},"cancellation_async_confirmation":{"type":"boolean","description":"Indica se o município confirma o cancelamento de forma assíncrona (devolve a NFS-e como autorizada por um tempo até efetivar)."},"xml_encoding":{"type":"string","enum":["utf-8","iso-8859-1"],"description":"Encoding XML aceito pelo provider municipal."},"endpoints":{"$ref":"#/components/schemas/NfseProviderConfigEndpoints"},"setup_spec":{"oneOf":[{"$ref":"#/components/schemas/NfseProviderSetupSpec"},{"type":"null"}],"description":"Setup spec público do provider, sem o modelo operacional interno de referência."},"capabilities":{"type":"object","additionalProperties":true,"description":"Matriz de capacidades resolvida do provider."}}},"NfseProviderArtifactSource":{"type":"object","additionalProperties":false,"properties":{"municipality":{"type":["string","null"],"description":"Município usado como fonte oficial do artefato versionado."},"provider":{"type":["string","null"],"description":"Nome do provedor usado como fonte oficial do artefato versionado."},"documentation_url":{"type":["string","null"],"description":"URL do portal oficial consultado para manual, layout ou XSD."},"wsdl_url":{"type":["string","null"],"description":"URL oficial do WSDL publicada pelo portal do provider ou município."},"captured_at":{"type":["string","null"],"description":"Data em que os artefatos versionados foram conferidos no repositório."},"checksum":{"type":["string","null"],"description":"Checksum opcional do artefato oficial quando a coleta registrar esse valor."}}},"NfseProviderConfigEndpoints":{"type":"object","additionalProperties":false,"required":["production","homologation"],"properties":{"production":{"type":["string","null"]},"homologation":{"type":["string","null"]}}},"NfseProviderSetupSpec":{"type":"object","description":"Especificação declarativa do provider usada para montar a configuração da empresa.\n\nCampos relevantes para a configuração NFS-e:\n- `certificate.required`: define se a empresa precisa selecionar certificado.\n- `authorization`: declara os tipos de autorização técnica aceitos pelo provider.\n- `profile_settings`: declara campos dinâmicos do perfil municipal/provedor.\n- `company_settings`: declara os campos dinâmicos top-level aceitos na configuração da empresa.\n- `profile_settings[].template.visible` e `company_settings[].template.visible`: quando `true`, expõem o campo no editor de templates como `provider_settings.<key>` ou como o `template.path` literal declarado pelo provider.\n- `numbering.series_format`: indica se a série fiscal usa formato `numeric` ou `alphanumeric`.","additionalProperties":true,"properties":{"certificate":{"type":"object","additionalProperties":true},"profile_settings":{"type":"array","items":{"$ref":"#/components/schemas/NfseProviderSetupField"}},"company_settings":{"type":"array","items":{"$ref":"#/components/schemas/NfseProviderSetupField"}},"authorization":{"type":"object","additionalProperties":true,"description":"Tipos de autorização técnica aceitos pelo provider. Quando houver um único tipo, a API pode inferir o `type` no payload da empresa."},"numbering":{"type":"object","additionalProperties":false,"properties":{"series_format":{"type":"string","enum":["numeric","alphanumeric"],"description":"Formato canônico da série fiscal usada em `numbering[].series`."}}}}},"NfseProviderSetupField":{"type":"object","additionalProperties":true,"required":["key","type","required"],"properties":{"key":{"type":"string","description":"Chave declarada pelo provider. Quando exposta em template, vira `provider_settings.<key>`."},"type":{"type":"string","enum":["boolean","number","password","radio","select","text","url"]},"required":{"type":"boolean"},"sensitive":{"type":"boolean"},"template":{"type":"object","additionalProperties":false,"description":"Metadado de UI para campos já existentes no contrato do provider. Não cria campo fiscal novo.","properties":{"visible":{"type":"boolean","description":"Quando `true`, permite selecionar `provider_settings.<key>` no editor de templates."},"path":{"type":"string","description":"Path literal usado no template físico quando o contexto do provider não usa `provider_settings.<key>`."},"description":{"type":"string","description":"Descrição opcional exibida no seletor de campos do editor de templates."}}}}}}}}
```

## The NfseProviderConfigEndpoints object

```json
{"openapi":"3.1.1","info":{"title":"API IXC E-Docs - Integração x-api-key","version":"0.1.0"},"components":{"schemas":{"NfseProviderConfigEndpoints":{"type":"object","additionalProperties":false,"required":["production","homologation"],"properties":{"production":{"type":["string","null"]},"homologation":{"type":["string","null"]}}}}}}
```

## The CompanyAddress object

```json
{"openapi":"3.1.1","info":{"title":"API IXC E-Docs - Integração x-api-key","version":"0.1.0"},"components":{"schemas":{"CompanyAddress":{"type":"object","additionalProperties":false,"required":["city","municipality_code","neighborhood","number","postal_code","state","street"],"properties":{"city":{"type":"string","description":"Cidade/localidade textual do endereço. Campo canônico de empresa."},"municipality":{"type":"string","description":"**Compatibilidade.** (Compatibility) Alias permanente de `city` aceito na borda pública e retornado nas respostas para integrações legadas."},"complement":{"type":["string","null"]},"country":{"type":"string"},"country_code":{"type":"string"},"municipality_code":{"type":"string","minLength":7,"maxLength":7},"neighborhood":{"type":"string"},"number":{"type":"string"},"postal_code":{"type":"string"},"state":{"type":"string","maxLength":2},"street":{"type":"string"}}}}}}
```

## The MetaFieldDefinition object

```json
{"openapi":"3.1.1","info":{"title":"API IXC E-Docs - Integração x-api-key","version":"0.1.0"},"components":{"schemas":{"MetaFieldDefinition":{"type":"object","description":"Definição de um campo extra configurado no workspace.\n\nUm campo extra representa um campo personalizado que cada empresa do workspace pode ou deve preencher em `companies.meta_fields`.\nO valor preenchido pela empresa só é enviado em webhooks quando `send_webhook: true`.\n\nExemplo: um campo `token_erp` com `required: true`, `encrypted: true`, `send_webhook: true` e `target: header`\nexige que cada empresa informe seu token, que será enviado como header HTTP nos webhooks.","additionalProperties":false,"required":["key","label","value_type","use_company_crud","required","send_webhook","target","webhook_level","encrypted"],"properties":{"id":{"$ref":"#/components/schemas/ObjectId"},"key":{"type":"string","description":"Identificador único do campo. Usado como chave em `company.meta_fields`.","pattern":"^[A-Za-z][A-Za-z0-9_-]{0,127}$"},"label":{"type":"string","description":"Nome amigável do campo exibido no painel."},"value_type":{"type":"string","enum":["dynamic","fixed"],"description":"`dynamic`: valor preenchido por empresa no campo `company.meta_fields[key]`.\n`fixed`: valor definido na configuração do workspace, igual para todas as empresas."},"use_company_crud":{"type":"boolean","description":"Quando `true`, o campo é preenchido via cadastro da empresa (POST/PUT /companies)."},"fixed_value":{"type":["string","null"],"description":"Valor fixo usado quando `value_type` é `fixed`. Mascarado (`********`) quando `encrypted: true`."},"required":{"type":"boolean","description":"Quando `true` e `use_company_crud: true`, o campo deve ser preenchido em `company.meta_fields` ao criar ou atualizar a empresa."},"send_webhook":{"type":"boolean","description":"Quando `true`, o campo é incluído no payload do webhook."},"target":{"type":"string","enum":["body","body.payload","header"],"description":"Destino do campo no payload do webhook:\n- `body`: raiz do body JSON.\n- `body.payload`: dentro do objeto `payload`.\n- `header`: como HTTP header.\n\nSó tem efeito quando `send_webhook: true`.\nQuando o destino é `header`, o campo extra é aplicado por último e sobrescreve headers internos de forma case-insensitive."},"webhook_level":{"type":"string","enum":["company","workspace","all"],"description":"Escopo de webhooks em que o campo é enviado. Só tem efeito quando `send_webhook: true`."},"encrypted":{"type":"boolean","description":"Quando `true`, o valor é armazenado cifrado e mascarado na resposta da API."}}},"ObjectId":{"type":"string","description":"Identificador no formato ObjectId."}}}}
```

## The MetaFieldRequest object

```json
{"openapi":"3.1.1","info":{"title":"API IXC E-Docs - Integração x-api-key","version":"0.1.0"},"components":{"schemas":{"MetaFieldRequest":{"type":"object","additionalProperties":false,"required":["key","label"],"properties":{"key":{"type":"string","pattern":"^[A-Za-z][A-Za-z0-9_-]{0,127}$","description":"Identificador único por workspace, case-insensitive."},"label":{"type":"string","minLength":1,"maxLength":120},"value_type":{"type":"string","enum":["dynamic","fixed"],"default":"dynamic"},"use_company_crud":{"type":"boolean","default":true,"description":"Quando `true`, campos dinâmicos podem ser preenchidos em `company.meta_fields`."},"fixed_value":{"type":["string","null"],"maxLength":1024,"description":"Obrigatório quando `value_type` é `fixed`. Pode vir mascarado como `********` em atualização para preservar valor sensível existente."},"required":{"type":"boolean","default":false,"description":"Só torna o campo obrigatório quando `value_type=dynamic` e `use_company_crud=true`."},"send_webhook":{"type":"boolean","default":true},"target":{"type":"string","enum":["body","body.payload","header"],"default":"body","description":"Destino usado na entrega de webhook quando `send_webhook: true`."},"webhook_level":{"type":"string","enum":["company","workspace","all"],"default":"all","description":"Escopo usado na entrega de webhook quando `send_webhook: true`."},"encrypted":{"type":"boolean","default":false}}}}}}
```

## The MetaFieldListResponse object

```json
{"openapi":"3.1.1","info":{"title":"API IXC E-Docs - Integração x-api-key","version":"0.1.0"},"components":{"schemas":{"MetaFieldListResponse":{"type":"object","additionalProperties":false,"required":["items","paginate"],"properties":{"items":{"type":"array","items":{"$ref":"#/components/schemas/MetaFieldDefinition"}},"paginate":{"$ref":"#/components/schemas/CursorPaginateMeta"}}},"MetaFieldDefinition":{"type":"object","description":"Definição de um campo extra configurado no workspace.\n\nUm campo extra representa um campo personalizado que cada empresa do workspace pode ou deve preencher em `companies.meta_fields`.\nO valor preenchido pela empresa só é enviado em webhooks quando `send_webhook: true`.\n\nExemplo: um campo `token_erp` com `required: true`, `encrypted: true`, `send_webhook: true` e `target: header`\nexige que cada empresa informe seu token, que será enviado como header HTTP nos webhooks.","additionalProperties":false,"required":["key","label","value_type","use_company_crud","required","send_webhook","target","webhook_level","encrypted"],"properties":{"id":{"$ref":"#/components/schemas/ObjectId"},"key":{"type":"string","description":"Identificador único do campo. Usado como chave em `company.meta_fields`.","pattern":"^[A-Za-z][A-Za-z0-9_-]{0,127}$"},"label":{"type":"string","description":"Nome amigável do campo exibido no painel."},"value_type":{"type":"string","enum":["dynamic","fixed"],"description":"`dynamic`: valor preenchido por empresa no campo `company.meta_fields[key]`.\n`fixed`: valor definido na configuração do workspace, igual para todas as empresas."},"use_company_crud":{"type":"boolean","description":"Quando `true`, o campo é preenchido via cadastro da empresa (POST/PUT /companies)."},"fixed_value":{"type":["string","null"],"description":"Valor fixo usado quando `value_type` é `fixed`. Mascarado (`********`) quando `encrypted: true`."},"required":{"type":"boolean","description":"Quando `true` e `use_company_crud: true`, o campo deve ser preenchido em `company.meta_fields` ao criar ou atualizar a empresa."},"send_webhook":{"type":"boolean","description":"Quando `true`, o campo é incluído no payload do webhook."},"target":{"type":"string","enum":["body","body.payload","header"],"description":"Destino do campo no payload do webhook:\n- `body`: raiz do body JSON.\n- `body.payload`: dentro do objeto `payload`.\n- `header`: como HTTP header.\n\nSó tem efeito quando `send_webhook: true`.\nQuando o destino é `header`, o campo extra é aplicado por último e sobrescreve headers internos de forma case-insensitive."},"webhook_level":{"type":"string","enum":["company","workspace","all"],"description":"Escopo de webhooks em que o campo é enviado. Só tem efeito quando `send_webhook: true`."},"encrypted":{"type":"boolean","description":"Quando `true`, o valor é armazenado cifrado e mascarado na resposta da API."}}},"ObjectId":{"type":"string","description":"Identificador no formato ObjectId."},"CursorPaginateMeta":{"type":"object","additionalProperties":false,"required":["limit","has_next_page","has_previous_page","start_cursor","end_cursor"],"properties":{"limit":{"type":"integer","minimum":10,"maximum":100},"has_next_page":{"type":"boolean"},"has_previous_page":{"type":"boolean"},"start_cursor":{"type":["string","null"]},"end_cursor":{"type":["string","null"]}}}}}}
```

## The CertificateExpirationSummaryResponse object

```json
{"openapi":"3.1.1","info":{"title":"API IXC E-Docs - Integração x-api-key","version":"0.1.0"},"components":{"schemas":{"CertificateExpirationSummaryResponse":{"type":"object","additionalProperties":false,"required":["expiring_count"],"properties":{"expiring_count":{"type":"integer","minimum":0,"description":"Quantidade de certificados ainda válidos que vencem dentro da janela solicitada."}}}}}}
```

## The CompanyCreateRequest object

```json
{"openapi":"3.1.1","info":{"title":"API IXC E-Docs - Integração x-api-key","version":"0.1.0"},"components":{"schemas":{"CompanyCreateRequest":{"type":"object","additionalProperties":false,"required":["name","legal_name","tax_id","email","address"],"properties":{"name":{"type":"string","minLength":2,"maxLength":120},"legal_name":{"type":"string","minLength":2,"maxLength":120},"tax_id":{"type":"string","description":"CNPJ sem máscara (14 dígitos).","pattern":"^\\d{14}$"},"email":{"type":"string","format":"email"},"phone":{"type":["string","null"]},"municipal_registration":{"type":["string","null"],"maxLength":60},"simple_national":{"type":["integer","null"],"enum":[null,1,2,3],"description":"Enquadramento canônico da empresa no Simples Nacional usado pela emissão NFS-e. Providers ABRASF traduzem este campo para `OptanteSimplesNacional`; não confundir com `simple_national_apportionment`.\n- `1` — Não optante pelo Simples Nacional.\n- `2` — MEI optante pelo Simples Nacional.\n- `3` — ME/EPP optante pelo Simples Nacional."},"simple_national_apportionment":{"type":["integer","null"],"enum":[null,1,2,3],"description":"Regime de apuração do Simples Nacional usado por layouts que serializam `regApTribSN`. Não substitui `simple_national` e não define `OptanteSimplesNacional`.\n- `1` — Tributos federais e municipal pelo Simples Nacional.\n- `2` — Tributos federais pelo Simples Nacional e ISSQN pela NFS-e municipal.\n- `3` — Tributos federais e municipal fora do Simples Nacional."},"special_tax_regime":{"type":["integer","null"],"enum":[null,0,1,2,3,4,5,6,9],"description":"Regime especial de tributação canônico usado pela emissão NFS-e quando o layout do provider exigir."},"tax_incentive":{"type":["integer","null"],"enum":[null,1,2],"description":"Indicador canônico de incentivo fiscal municipal: `1` para sim e `2` para não."},"address":{"$ref":"#/components/schemas/CompanyAddress"},"is_headquarters":{"type":"boolean","default":false},"active":{"type":"boolean","default":false},"meta_fields":{"$ref":"#/components/schemas/CompanyMetaFields"}}},"CompanyAddress":{"type":"object","additionalProperties":false,"required":["city","municipality_code","neighborhood","number","postal_code","state","street"],"properties":{"city":{"type":"string","description":"Cidade/localidade textual do endereço. Campo canônico de empresa."},"municipality":{"type":"string","description":"**Compatibilidade.** (Compatibility) Alias permanente de `city` aceito na borda pública e retornado nas respostas para integrações legadas."},"complement":{"type":["string","null"]},"country":{"type":"string"},"country_code":{"type":"string"},"municipality_code":{"type":"string","minLength":7,"maxLength":7},"neighborhood":{"type":"string"},"number":{"type":"string"},"postal_code":{"type":"string"},"state":{"type":"string","maxLength":2},"street":{"type":"string"}}},"CompanyMetaFields":{"type":"object","description":"Valores dos campos extras dinâmicos configurados no workspace para a empresa.\n\nRegras:\n- chave: texto não vazio (até 128 caracteres).\n- valor: texto não vazio (1 a 2048 caracteres).\n- Campos sensíveis são retornados mascarados (`********`) nas rotas de leitura.\n- Envio por webhook depende da definição do campo em `meta_fields.send_webhook`.","additionalProperties":{"type":"string","minLength":1,"maxLength":2048}}}}}
```

## The CompanyMetaFields object

```json
{"openapi":"3.1.1","info":{"title":"API IXC E-Docs - Integração x-api-key","version":"0.1.0"},"components":{"schemas":{"CompanyMetaFields":{"type":"object","description":"Valores dos campos extras dinâmicos configurados no workspace para a empresa.\n\nRegras:\n- chave: texto não vazio (até 128 caracteres).\n- valor: texto não vazio (1 a 2048 caracteres).\n- Campos sensíveis são retornados mascarados (`********`) nas rotas de leitura.\n- Envio por webhook depende da definição do campo em `meta_fields.send_webhook`.","additionalProperties":{"type":"string","minLength":1,"maxLength":2048}}}}}
```

## The CompanyResponse object

```json
{"openapi":"3.1.1","info":{"title":"API IXC E-Docs - Integração x-api-key","version":"0.1.0"},"components":{"schemas":{"CompanyResponse":{"type":"object","additionalProperties":false,"required":["id","workspace_id","name","legal_name","tax_id","email","active"],"properties":{"id":{"$ref":"#/components/schemas/ObjectId"},"workspace_id":{"$ref":"#/components/schemas/ObjectId"},"name":{"type":"string"},"legal_name":{"type":"string"},"tax_id":{"type":"string"},"email":{"type":"string","format":"email"},"phone":{"type":["string","null"]},"municipal_registration":{"type":["string","null"]},"simple_national":{"type":["integer","null"],"enum":[null,1,2,3],"description":"Enquadramento canônico da empresa no Simples Nacional usado pela emissão NFS-e. Providers ABRASF traduzem este campo para `OptanteSimplesNacional`; não confundir com `simple_national_apportionment`.\n- `1` — Não optante pelo Simples Nacional.\n- `2` — MEI optante pelo Simples Nacional.\n- `3` — ME/EPP optante pelo Simples Nacional."},"simple_national_apportionment":{"type":["integer","null"],"enum":[null,1,2,3],"description":"Regime de apuração do Simples Nacional usado por layouts que serializam `regApTribSN`. Não substitui `simple_national` e não define `OptanteSimplesNacional`.\n- `1` — Tributos federais e municipal pelo Simples Nacional.\n- `2` — Tributos federais pelo Simples Nacional e ISSQN pela NFS-e municipal.\n- `3` — Tributos federais e municipal fora do Simples Nacional."},"special_tax_regime":{"type":["integer","null"],"enum":[null,0,1,2,3,4,5,6,9],"description":"Regime especial de tributação canônico usado pela emissão NFS-e quando o layout do provider exigir."},"tax_incentive":{"type":["integer","null"],"enum":[null,1,2],"description":"Indicador canônico de incentivo fiscal municipal: `1` para sim e `2` para não."},"certificate_id":{"type":["string","null"],"description":"Certificado digital fiscal da empresa. Para NFS-e, este é o vínculo ativo usado por provedores que exigem mTLS e/ou assinatura XML."},"address":{"$ref":"#/components/schemas/CompanyAddress"},"meta_fields":{"$ref":"#/components/schemas/CompanyMetaFields"},"is_headquarters":{"type":"boolean"},"nfse_config":{"type":"object","oneOf":[{"$ref":"#/components/schemas/CompanyNfseConfigResponse"},{"type":"null"}]},"active":{"type":"boolean"},"created_at":{"type":"string","format":"date-time"},"updated_at":{"type":"string","format":"date-time"}}},"ObjectId":{"type":"string","description":"Identificador no formato ObjectId."},"CompanyAddress":{"type":"object","additionalProperties":false,"required":["city","municipality_code","neighborhood","number","postal_code","state","street"],"properties":{"city":{"type":"string","description":"Cidade/localidade textual do endereço. Campo canônico de empresa."},"municipality":{"type":"string","description":"**Compatibilidade.** (Compatibility) Alias permanente de `city` aceito na borda pública e retornado nas respostas para integrações legadas."},"complement":{"type":["string","null"]},"country":{"type":"string"},"country_code":{"type":"string"},"municipality_code":{"type":"string","minLength":7,"maxLength":7},"neighborhood":{"type":"string"},"number":{"type":"string"},"postal_code":{"type":"string"},"state":{"type":"string","maxLength":2},"street":{"type":"string"}}},"CompanyMetaFields":{"type":"object","description":"Valores dos campos extras dinâmicos configurados no workspace para a empresa.\n\nRegras:\n- chave: texto não vazio (até 128 caracteres).\n- valor: texto não vazio (1 a 2048 caracteres).\n- Campos sensíveis são retornados mascarados (`********`) nas rotas de leitura.\n- Envio por webhook depende da definição do campo em `meta_fields.send_webhook`.","additionalProperties":{"type":"string","minLength":1,"maxLength":2048}},"CompanyNfseConfigResponse":{"oneOf":[{"$ref":"#/components/schemas/CompanyMunicipalNfseConfigResponse"},{"$ref":"#/components/schemas/CompanyNationalNfseConfigResponse"}]},"CompanyMunicipalNfseConfigResponse":{"allOf":[{"$ref":"#/components/schemas/CompanyMunicipalNfseConfig"},{"$ref":"#/components/schemas/CompanyNfseRuntimeMetadata"}]},"CompanyMunicipalNfseConfig":{"type":"object","additionalProperties":true,"description":"Configuração municipal de NFS-e devolvida pela API, incluindo campos derivados e metadados públicos de runtime. Campos `company_settings` sensíveis podem aparecer como ciphertext `enc::v*::...` apenas na rota administrativa de edição.","required":["integration","profile_id","provider","environment","numbering"],"properties":{"integration":{"type":"string","enum":["municipal"]},"profile_id":{"type":"string"},"provider":{"type":"string","readOnly":true,"description":"Provedor municipal derivado automaticamente do perfil municipal escolhido."},"municipal_registration":{"type":["string","null"]},"environment":{"type":"string","enum":["production","homologation"]},"series_selection_mode":{"type":"string","enum":["manual","automatic"]},"danfse_generation_mode":{"type":"string","enum":["automatic","custom"]},"batch":{"type":"integer","minimum":1,"description":"Próximo número de lote da empresa quando o provedor efetivo opera com envio em lote."},"send_template_id":{"type":["string","null"]},"numbering":{"type":"array","minItems":1,"items":{"$ref":"#/components/schemas/NfseCompanyNumbering"}},"authorization":{"oneOf":[{"type":"object","additionalProperties":true},{"type":"null"}]}}},"NfseCompanyNumbering":{"type":"object","additionalProperties":false,"required":["number","series"],"properties":{"number":{"type":"integer","minimum":1},"series":{"type":"string"}}},"CompanyNfseRuntimeMetadata":{"type":"object","required":["docs_version"],"description":"Metadados de runtime devolvidos ao consumir a configuração NFS-e da empresa.\nA validação estrutural do envelope acontece no momento da emissão (Zod estático no schema canônico);\ncampos fiscais variáveis dependem do template anotado e de rejeição oficial do provedor — não há\nmapa dinâmico de campos.","properties":{"docs_version":{"type":["string","null"],"description":"Versão do conjunto de artefatos oficiais associado ao profile resolvido."},"setup_spec":{"oneOf":[{"$ref":"#/components/schemas/NfseProviderSetupSpec"},{"type":"null"}],"description":"Especificação dinâmica do provider usada pelo front para montar campos de empresa, certificado e credenciais."}}},"NfseProviderSetupSpec":{"type":"object","description":"Especificação declarativa do provider usada para montar a configuração da empresa.\n\nCampos relevantes para a configuração NFS-e:\n- `certificate.required`: define se a empresa precisa selecionar certificado.\n- `authorization`: declara os tipos de autorização técnica aceitos pelo provider.\n- `profile_settings`: declara campos dinâmicos do perfil municipal/provedor.\n- `company_settings`: declara os campos dinâmicos top-level aceitos na configuração da empresa.\n- `profile_settings[].template.visible` e `company_settings[].template.visible`: quando `true`, expõem o campo no editor de templates como `provider_settings.<key>` ou como o `template.path` literal declarado pelo provider.\n- `numbering.series_format`: indica se a série fiscal usa formato `numeric` ou `alphanumeric`.","additionalProperties":true,"properties":{"certificate":{"type":"object","additionalProperties":true},"profile_settings":{"type":"array","items":{"$ref":"#/components/schemas/NfseProviderSetupField"}},"company_settings":{"type":"array","items":{"$ref":"#/components/schemas/NfseProviderSetupField"}},"authorization":{"type":"object","additionalProperties":true,"description":"Tipos de autorização técnica aceitos pelo provider. Quando houver um único tipo, a API pode inferir o `type` no payload da empresa."},"numbering":{"type":"object","additionalProperties":false,"properties":{"series_format":{"type":"string","enum":["numeric","alphanumeric"],"description":"Formato canônico da série fiscal usada em `numbering[].series`."}}}}},"NfseProviderSetupField":{"type":"object","additionalProperties":true,"required":["key","type","required"],"properties":{"key":{"type":"string","description":"Chave declarada pelo provider. Quando exposta em template, vira `provider_settings.<key>`."},"type":{"type":"string","enum":["boolean","number","password","radio","select","text","url"]},"required":{"type":"boolean"},"sensitive":{"type":"boolean"},"template":{"type":"object","additionalProperties":false,"description":"Metadado de UI para campos já existentes no contrato do provider. Não cria campo fiscal novo.","properties":{"visible":{"type":"boolean","description":"Quando `true`, permite selecionar `provider_settings.<key>` no editor de templates."},"path":{"type":"string","description":"Path literal usado no template físico quando o contexto do provider não usa `provider_settings.<key>`."},"description":{"type":"string","description":"Descrição opcional exibida no seletor de campos do editor de templates."}}}}},"CompanyNationalNfseConfigResponse":{"allOf":[{"$ref":"#/components/schemas/CompanyNationalNfseConfig"},{"$ref":"#/components/schemas/CompanyNfseRuntimeMetadata"}]},"CompanyNationalNfseConfig":{"type":"object","additionalProperties":true,"description":"Configuração de NFS-e Nacional devolvida pela API, incluindo metadados públicos de runtime. Campos `company_settings` sensíveis podem aparecer como ciphertext `enc::v*::...` apenas na rota administrativa de edição.","required":["integration","environment","numbering"],"properties":{"integration":{"type":"string","enum":["national"]},"environment":{"type":"string","enum":["production","homologation"]},"series_selection_mode":{"type":"string","enum":["manual","automatic"]},"numbering":{"type":"array","minItems":1,"items":{"$ref":"#/components/schemas/NfseCompanyNumbering"}},"batch":{"type":"integer","minimum":1,"description":"Próximo número de lote da empresa quando o provedor efetivo opera com envio em lote."},"send_template_id":{"type":["string","null"]},"include_municipal_registration":{"type":"boolean"},"authorization":{"oneOf":[{"type":"object","additionalProperties":true},{"type":"null"}]}}}}}}
```

## The CompanyListResponse object

```json
{"openapi":"3.1.1","info":{"title":"API IXC E-Docs - Integração x-api-key","version":"0.1.0"},"components":{"schemas":{"CompanyListResponse":{"type":"object","additionalProperties":false,"required":["items","paginate"],"properties":{"items":{"type":"array","items":{"$ref":"#/components/schemas/CompanyResponse"}},"paginate":{"$ref":"#/components/schemas/CursorPaginateMeta"}}},"CompanyResponse":{"type":"object","additionalProperties":false,"required":["id","workspace_id","name","legal_name","tax_id","email","active"],"properties":{"id":{"$ref":"#/components/schemas/ObjectId"},"workspace_id":{"$ref":"#/components/schemas/ObjectId"},"name":{"type":"string"},"legal_name":{"type":"string"},"tax_id":{"type":"string"},"email":{"type":"string","format":"email"},"phone":{"type":["string","null"]},"municipal_registration":{"type":["string","null"]},"simple_national":{"type":["integer","null"],"enum":[null,1,2,3],"description":"Enquadramento canônico da empresa no Simples Nacional usado pela emissão NFS-e. Providers ABRASF traduzem este campo para `OptanteSimplesNacional`; não confundir com `simple_national_apportionment`.\n- `1` — Não optante pelo Simples Nacional.\n- `2` — MEI optante pelo Simples Nacional.\n- `3` — ME/EPP optante pelo Simples Nacional."},"simple_national_apportionment":{"type":["integer","null"],"enum":[null,1,2,3],"description":"Regime de apuração do Simples Nacional usado por layouts que serializam `regApTribSN`. Não substitui `simple_national` e não define `OptanteSimplesNacional`.\n- `1` — Tributos federais e municipal pelo Simples Nacional.\n- `2` — Tributos federais pelo Simples Nacional e ISSQN pela NFS-e municipal.\n- `3` — Tributos federais e municipal fora do Simples Nacional."},"special_tax_regime":{"type":["integer","null"],"enum":[null,0,1,2,3,4,5,6,9],"description":"Regime especial de tributação canônico usado pela emissão NFS-e quando o layout do provider exigir."},"tax_incentive":{"type":["integer","null"],"enum":[null,1,2],"description":"Indicador canônico de incentivo fiscal municipal: `1` para sim e `2` para não."},"certificate_id":{"type":["string","null"],"description":"Certificado digital fiscal da empresa. Para NFS-e, este é o vínculo ativo usado por provedores que exigem mTLS e/ou assinatura XML."},"address":{"$ref":"#/components/schemas/CompanyAddress"},"meta_fields":{"$ref":"#/components/schemas/CompanyMetaFields"},"is_headquarters":{"type":"boolean"},"nfse_config":{"type":"object","oneOf":[{"$ref":"#/components/schemas/CompanyNfseConfigResponse"},{"type":"null"}]},"active":{"type":"boolean"},"created_at":{"type":"string","format":"date-time"},"updated_at":{"type":"string","format":"date-time"}}},"ObjectId":{"type":"string","description":"Identificador no formato ObjectId."},"CompanyAddress":{"type":"object","additionalProperties":false,"required":["city","municipality_code","neighborhood","number","postal_code","state","street"],"properties":{"city":{"type":"string","description":"Cidade/localidade textual do endereço. Campo canônico de empresa."},"municipality":{"type":"string","description":"**Compatibilidade.** (Compatibility) Alias permanente de `city` aceito na borda pública e retornado nas respostas para integrações legadas."},"complement":{"type":["string","null"]},"country":{"type":"string"},"country_code":{"type":"string"},"municipality_code":{"type":"string","minLength":7,"maxLength":7},"neighborhood":{"type":"string"},"number":{"type":"string"},"postal_code":{"type":"string"},"state":{"type":"string","maxLength":2},"street":{"type":"string"}}},"CompanyMetaFields":{"type":"object","description":"Valores dos campos extras dinâmicos configurados no workspace para a empresa.\n\nRegras:\n- chave: texto não vazio (até 128 caracteres).\n- valor: texto não vazio (1 a 2048 caracteres).\n- Campos sensíveis são retornados mascarados (`********`) nas rotas de leitura.\n- Envio por webhook depende da definição do campo em `meta_fields.send_webhook`.","additionalProperties":{"type":"string","minLength":1,"maxLength":2048}},"CompanyNfseConfigResponse":{"oneOf":[{"$ref":"#/components/schemas/CompanyMunicipalNfseConfigResponse"},{"$ref":"#/components/schemas/CompanyNationalNfseConfigResponse"}]},"CompanyMunicipalNfseConfigResponse":{"allOf":[{"$ref":"#/components/schemas/CompanyMunicipalNfseConfig"},{"$ref":"#/components/schemas/CompanyNfseRuntimeMetadata"}]},"CompanyMunicipalNfseConfig":{"type":"object","additionalProperties":true,"description":"Configuração municipal de NFS-e devolvida pela API, incluindo campos derivados e metadados públicos de runtime. Campos `company_settings` sensíveis podem aparecer como ciphertext `enc::v*::...` apenas na rota administrativa de edição.","required":["integration","profile_id","provider","environment","numbering"],"properties":{"integration":{"type":"string","enum":["municipal"]},"profile_id":{"type":"string"},"provider":{"type":"string","readOnly":true,"description":"Provedor municipal derivado automaticamente do perfil municipal escolhido."},"municipal_registration":{"type":["string","null"]},"environment":{"type":"string","enum":["production","homologation"]},"series_selection_mode":{"type":"string","enum":["manual","automatic"]},"danfse_generation_mode":{"type":"string","enum":["automatic","custom"]},"batch":{"type":"integer","minimum":1,"description":"Próximo número de lote da empresa quando o provedor efetivo opera com envio em lote."},"send_template_id":{"type":["string","null"]},"numbering":{"type":"array","minItems":1,"items":{"$ref":"#/components/schemas/NfseCompanyNumbering"}},"authorization":{"oneOf":[{"type":"object","additionalProperties":true},{"type":"null"}]}}},"NfseCompanyNumbering":{"type":"object","additionalProperties":false,"required":["number","series"],"properties":{"number":{"type":"integer","minimum":1},"series":{"type":"string"}}},"CompanyNfseRuntimeMetadata":{"type":"object","required":["docs_version"],"description":"Metadados de runtime devolvidos ao consumir a configuração NFS-e da empresa.\nA validação estrutural do envelope acontece no momento da emissão (Zod estático no schema canônico);\ncampos fiscais variáveis dependem do template anotado e de rejeição oficial do provedor — não há\nmapa dinâmico de campos.","properties":{"docs_version":{"type":["string","null"],"description":"Versão do conjunto de artefatos oficiais associado ao profile resolvido."},"setup_spec":{"oneOf":[{"$ref":"#/components/schemas/NfseProviderSetupSpec"},{"type":"null"}],"description":"Especificação dinâmica do provider usada pelo front para montar campos de empresa, certificado e credenciais."}}},"NfseProviderSetupSpec":{"type":"object","description":"Especificação declarativa do provider usada para montar a configuração da empresa.\n\nCampos relevantes para a configuração NFS-e:\n- `certificate.required`: define se a empresa precisa selecionar certificado.\n- `authorization`: declara os tipos de autorização técnica aceitos pelo provider.\n- `profile_settings`: declara campos dinâmicos do perfil municipal/provedor.\n- `company_settings`: declara os campos dinâmicos top-level aceitos na configuração da empresa.\n- `profile_settings[].template.visible` e `company_settings[].template.visible`: quando `true`, expõem o campo no editor de templates como `provider_settings.<key>` ou como o `template.path` literal declarado pelo provider.\n- `numbering.series_format`: indica se a série fiscal usa formato `numeric` ou `alphanumeric`.","additionalProperties":true,"properties":{"certificate":{"type":"object","additionalProperties":true},"profile_settings":{"type":"array","items":{"$ref":"#/components/schemas/NfseProviderSetupField"}},"company_settings":{"type":"array","items":{"$ref":"#/components/schemas/NfseProviderSetupField"}},"authorization":{"type":"object","additionalProperties":true,"description":"Tipos de autorização técnica aceitos pelo provider. Quando houver um único tipo, a API pode inferir o `type` no payload da empresa."},"numbering":{"type":"object","additionalProperties":false,"properties":{"series_format":{"type":"string","enum":["numeric","alphanumeric"],"description":"Formato canônico da série fiscal usada em `numbering[].series`."}}}}},"NfseProviderSetupField":{"type":"object","additionalProperties":true,"required":["key","type","required"],"properties":{"key":{"type":"string","description":"Chave declarada pelo provider. Quando exposta em template, vira `provider_settings.<key>`."},"type":{"type":"string","enum":["boolean","number","password","radio","select","text","url"]},"required":{"type":"boolean"},"sensitive":{"type":"boolean"},"template":{"type":"object","additionalProperties":false,"description":"Metadado de UI para campos já existentes no contrato do provider. Não cria campo fiscal novo.","properties":{"visible":{"type":"boolean","description":"Quando `true`, permite selecionar `provider_settings.<key>` no editor de templates."},"path":{"type":"string","description":"Path literal usado no template físico quando o contexto do provider não usa `provider_settings.<key>`."},"description":{"type":"string","description":"Descrição opcional exibida no seletor de campos do editor de templates."}}}}},"CompanyNationalNfseConfigResponse":{"allOf":[{"$ref":"#/components/schemas/CompanyNationalNfseConfig"},{"$ref":"#/components/schemas/CompanyNfseRuntimeMetadata"}]},"CompanyNationalNfseConfig":{"type":"object","additionalProperties":true,"description":"Configuração de NFS-e Nacional devolvida pela API, incluindo metadados públicos de runtime. Campos `company_settings` sensíveis podem aparecer como ciphertext `enc::v*::...` apenas na rota administrativa de edição.","required":["integration","environment","numbering"],"properties":{"integration":{"type":"string","enum":["national"]},"environment":{"type":"string","enum":["production","homologation"]},"series_selection_mode":{"type":"string","enum":["manual","automatic"]},"numbering":{"type":"array","minItems":1,"items":{"$ref":"#/components/schemas/NfseCompanyNumbering"}},"batch":{"type":"integer","minimum":1,"description":"Próximo número de lote da empresa quando o provedor efetivo opera com envio em lote."},"send_template_id":{"type":["string","null"]},"include_municipal_registration":{"type":"boolean"},"authorization":{"oneOf":[{"type":"object","additionalProperties":true},{"type":"null"}]}}},"CursorPaginateMeta":{"type":"object","additionalProperties":false,"required":["limit","has_next_page","has_previous_page","start_cursor","end_cursor"],"properties":{"limit":{"type":"integer","minimum":10,"maximum":100},"has_next_page":{"type":"boolean"},"has_previous_page":{"type":"boolean"},"start_cursor":{"type":["string","null"]},"end_cursor":{"type":["string","null"]}}}}}}
```

## The CompanyNfseConfigRequest object

```json
{"openapi":"3.1.1","info":{"title":"API IXC E-Docs - Integração x-api-key","version":"0.1.0"},"components":{"schemas":{"CompanyNfseConfigRequest":{"oneOf":[{"$ref":"#/components/schemas/CompanyMunicipalNfseConfigRequest"},{"$ref":"#/components/schemas/CompanyNationalNfseConfigRequest"}]},"CompanyMunicipalNfseConfigRequest":{"type":"object","additionalProperties":true,"description":"Payload de configuração municipal de NFS-e.\nA API aceita campos fixos deste schema e campos top-level declarados em `setup_spec.company_settings` do provider efetivo; metadados de runtime, referências operacionais e aliases de cadastro fiscal continuam rejeitados pela validação semântica.\nCampos `company_settings` sensíveis podem receber texto novo ou o ciphertext `enc::v*::...` idêntico ao valor já persistido na empresa; ciphertext diferente é inválido.","required":["integration","profile_id","environment","numbering"],"properties":{"integration":{"type":"string","enum":["municipal"],"description":"Integração municipal."},"profile_id":{"type":"string","description":"Perfil municipal escolhido pela empresa; é a chave primária da configuração municipal."},"municipal_registration":{"type":["string","null"],"description":"Inscrição Municipal da empresa quando o provider municipal declarar esse campo no setup efetivo."},"environment":{"type":"string","enum":["production","homologation"]},"series_selection_mode":{"type":"string","enum":["manual","automatic"],"description":"Estratégia de seleção automática da série quando o envio não informar `series` na raiz.\n\n- `manual`: usa a série única cadastrada; quando houver múltiplas séries, o envio deve informar `series`.\n- `automatic`: distribui entre as séries cadastradas em rotação (round-robin)."},"danfse_generation_mode":{"type":"string","enum":["automatic","custom"],"description":"Define como a empresa municipal prefere obter a DANFSe.\n\n- `automatic`: tenta usar a DANFSe oficial da prefeitura; quando o provedor não entrega ou retorna conteúdo inválido, usa a DANFSe local do e-docs.\n- `custom`: usa diretamente a geração local de DANFSe do e-docs."},"batch":{"type":"integer","minimum":1,"description":"Próximo número de lote da empresa. Obrigatório quando o provedor efetivo declara `capabilities.send.max_batch_size > 1`; rejeitado para provedores de envio unitário."},"send_template_id":{"type":["string","null"],"description":"Template de envio customizado da empresa. Pode apontar para rascunho ou publicado do provedor derivado do `profile_id` e da operação `send`; `null` usa o template do perfil, depois o padrão do provedor e, por fim, o XML físico do pacote. Templates arquivados não podem ser vinculados."},"numbering":{"type":"array","minItems":1,"description":"Séries fiscais e próximo número inicial da empresa.","items":{"$ref":"#/components/schemas/NfseCompanyNumbering"}},"authorization":{"oneOf":[{"type":"object","additionalProperties":true},{"type":"null"}],"description":"Autorização técnica do provedor, quando aplicável. Quando o provider declara um único tipo de autorização, envie apenas os campos externos exigidos; a API infere o `type` pelo `setup_spec`. Campos de `setup_spec.company_settings` são enviados no top-level."}}},"NfseCompanyNumbering":{"type":"object","additionalProperties":false,"required":["number","series"],"properties":{"number":{"type":"integer","minimum":1},"series":{"type":"string"}}},"CompanyNationalNfseConfigRequest":{"type":"object","description":"Payload de configuração de empresa no Ambiente Nacional.\nA API aceita campos fixos deste schema e campos top-level declarados em `setup_spec.company_settings` do Ambiente Nacional; metadados de runtime e referências operacionais continuam rejeitados pela validação semântica.\n`send_template_id` é permitido quando aponta para template rascunho ou publicado do provedor `national` e da operação `send`.\nO DANFSe Nacional é sempre gerado localmente no layout NT 008.\nCampos `company_settings` sensíveis podem receber texto novo ou o ciphertext `enc::v*::...` idêntico ao valor já persistido na empresa; ciphertext diferente é inválido.","additionalProperties":true,"required":["integration","environment","numbering"],"properties":{"integration":{"type":"string","enum":["national"],"description":"Integração com o Ambiente Nacional."},"environment":{"type":"string","enum":["production","homologation"]},"series_selection_mode":{"type":"string","enum":["manual","automatic"],"description":"Estratégia de seleção automática da série quando o envio não informar `series` na raiz.\n\n- `manual`: usa a série única cadastrada; quando houver múltiplas séries, o envio deve informar `series`.\n- `automatic`: distribui entre as séries cadastradas em rotação (round-robin)."},"numbering":{"type":"array","minItems":1,"items":{"$ref":"#/components/schemas/NfseCompanyNumbering"}},"batch":{"type":"integer","minimum":1,"description":"Próximo número de lote da empresa. Obrigatório quando o provedor efetivo declara `capabilities.send.max_batch_size > 1`; rejeitado para provedores de envio unitário."},"send_template_id":{"type":["string","null"],"description":"Template de envio customizado da empresa no Ambiente Nacional. Deve pertencer ao provedor `national` e à operação `send`; `null` usa o padrão do provedor e, se não houver, o XML físico do pacote."},"include_municipal_registration":{"type":"boolean","description":"Quando `true`, permite enviar a Inscrição Municipal do cadastro da empresa no layout nacional, se existir."},"authorization":{"oneOf":[{"type":"object","additionalProperties":true},{"type":"null"}],"description":"Autorização técnica do Ambiente Nacional, quando aplicável."}}}}}}
```

## The CompanyNfseConfig object

```json
{"openapi":"3.1.1","info":{"title":"API IXC E-Docs - Integração x-api-key","version":"0.1.0"},"components":{"schemas":{"CompanyNfseConfig":{"oneOf":[{"$ref":"#/components/schemas/CompanyMunicipalNfseConfig"},{"$ref":"#/components/schemas/CompanyNationalNfseConfig"}]},"CompanyMunicipalNfseConfig":{"type":"object","additionalProperties":true,"description":"Configuração municipal de NFS-e devolvida pela API, incluindo campos derivados e metadados públicos de runtime. Campos `company_settings` sensíveis podem aparecer como ciphertext `enc::v*::...` apenas na rota administrativa de edição.","required":["integration","profile_id","provider","environment","numbering"],"properties":{"integration":{"type":"string","enum":["municipal"]},"profile_id":{"type":"string"},"provider":{"type":"string","readOnly":true,"description":"Provedor municipal derivado automaticamente do perfil municipal escolhido."},"municipal_registration":{"type":["string","null"]},"environment":{"type":"string","enum":["production","homologation"]},"series_selection_mode":{"type":"string","enum":["manual","automatic"]},"danfse_generation_mode":{"type":"string","enum":["automatic","custom"]},"batch":{"type":"integer","minimum":1,"description":"Próximo número de lote da empresa quando o provedor efetivo opera com envio em lote."},"send_template_id":{"type":["string","null"]},"numbering":{"type":"array","minItems":1,"items":{"$ref":"#/components/schemas/NfseCompanyNumbering"}},"authorization":{"oneOf":[{"type":"object","additionalProperties":true},{"type":"null"}]}}},"NfseCompanyNumbering":{"type":"object","additionalProperties":false,"required":["number","series"],"properties":{"number":{"type":"integer","minimum":1},"series":{"type":"string"}}},"CompanyNationalNfseConfig":{"type":"object","additionalProperties":true,"description":"Configuração de NFS-e Nacional devolvida pela API, incluindo metadados públicos de runtime. Campos `company_settings` sensíveis podem aparecer como ciphertext `enc::v*::...` apenas na rota administrativa de edição.","required":["integration","environment","numbering"],"properties":{"integration":{"type":"string","enum":["national"]},"environment":{"type":"string","enum":["production","homologation"]},"series_selection_mode":{"type":"string","enum":["manual","automatic"]},"numbering":{"type":"array","minItems":1,"items":{"$ref":"#/components/schemas/NfseCompanyNumbering"}},"batch":{"type":"integer","minimum":1,"description":"Próximo número de lote da empresa quando o provedor efetivo opera com envio em lote."},"send_template_id":{"type":["string","null"]},"include_municipal_registration":{"type":"boolean"},"authorization":{"oneOf":[{"type":"object","additionalProperties":true},{"type":"null"}]}}}}}}
```

## The CompanyNfseConfigResponse object

```json
{"openapi":"3.1.1","info":{"title":"API IXC E-Docs - Integração x-api-key","version":"0.1.0"},"components":{"schemas":{"CompanyNfseConfigResponse":{"oneOf":[{"$ref":"#/components/schemas/CompanyMunicipalNfseConfigResponse"},{"$ref":"#/components/schemas/CompanyNationalNfseConfigResponse"}]},"CompanyMunicipalNfseConfigResponse":{"allOf":[{"$ref":"#/components/schemas/CompanyMunicipalNfseConfig"},{"$ref":"#/components/schemas/CompanyNfseRuntimeMetadata"}]},"CompanyMunicipalNfseConfig":{"type":"object","additionalProperties":true,"description":"Configuração municipal de NFS-e devolvida pela API, incluindo campos derivados e metadados públicos de runtime. Campos `company_settings` sensíveis podem aparecer como ciphertext `enc::v*::...` apenas na rota administrativa de edição.","required":["integration","profile_id","provider","environment","numbering"],"properties":{"integration":{"type":"string","enum":["municipal"]},"profile_id":{"type":"string"},"provider":{"type":"string","readOnly":true,"description":"Provedor municipal derivado automaticamente do perfil municipal escolhido."},"municipal_registration":{"type":["string","null"]},"environment":{"type":"string","enum":["production","homologation"]},"series_selection_mode":{"type":"string","enum":["manual","automatic"]},"danfse_generation_mode":{"type":"string","enum":["automatic","custom"]},"batch":{"type":"integer","minimum":1,"description":"Próximo número de lote da empresa quando o provedor efetivo opera com envio em lote."},"send_template_id":{"type":["string","null"]},"numbering":{"type":"array","minItems":1,"items":{"$ref":"#/components/schemas/NfseCompanyNumbering"}},"authorization":{"oneOf":[{"type":"object","additionalProperties":true},{"type":"null"}]}}},"NfseCompanyNumbering":{"type":"object","additionalProperties":false,"required":["number","series"],"properties":{"number":{"type":"integer","minimum":1},"series":{"type":"string"}}},"CompanyNfseRuntimeMetadata":{"type":"object","required":["docs_version"],"description":"Metadados de runtime devolvidos ao consumir a configuração NFS-e da empresa.\nA validação estrutural do envelope acontece no momento da emissão (Zod estático no schema canônico);\ncampos fiscais variáveis dependem do template anotado e de rejeição oficial do provedor — não há\nmapa dinâmico de campos.","properties":{"docs_version":{"type":["string","null"],"description":"Versão do conjunto de artefatos oficiais associado ao profile resolvido."},"setup_spec":{"oneOf":[{"$ref":"#/components/schemas/NfseProviderSetupSpec"},{"type":"null"}],"description":"Especificação dinâmica do provider usada pelo front para montar campos de empresa, certificado e credenciais."}}},"NfseProviderSetupSpec":{"type":"object","description":"Especificação declarativa do provider usada para montar a configuração da empresa.\n\nCampos relevantes para a configuração NFS-e:\n- `certificate.required`: define se a empresa precisa selecionar certificado.\n- `authorization`: declara os tipos de autorização técnica aceitos pelo provider.\n- `profile_settings`: declara campos dinâmicos do perfil municipal/provedor.\n- `company_settings`: declara os campos dinâmicos top-level aceitos na configuração da empresa.\n- `profile_settings[].template.visible` e `company_settings[].template.visible`: quando `true`, expõem o campo no editor de templates como `provider_settings.<key>` ou como o `template.path` literal declarado pelo provider.\n- `numbering.series_format`: indica se a série fiscal usa formato `numeric` ou `alphanumeric`.","additionalProperties":true,"properties":{"certificate":{"type":"object","additionalProperties":true},"profile_settings":{"type":"array","items":{"$ref":"#/components/schemas/NfseProviderSetupField"}},"company_settings":{"type":"array","items":{"$ref":"#/components/schemas/NfseProviderSetupField"}},"authorization":{"type":"object","additionalProperties":true,"description":"Tipos de autorização técnica aceitos pelo provider. Quando houver um único tipo, a API pode inferir o `type` no payload da empresa."},"numbering":{"type":"object","additionalProperties":false,"properties":{"series_format":{"type":"string","enum":["numeric","alphanumeric"],"description":"Formato canônico da série fiscal usada em `numbering[].series`."}}}}},"NfseProviderSetupField":{"type":"object","additionalProperties":true,"required":["key","type","required"],"properties":{"key":{"type":"string","description":"Chave declarada pelo provider. Quando exposta em template, vira `provider_settings.<key>`."},"type":{"type":"string","enum":["boolean","number","password","radio","select","text","url"]},"required":{"type":"boolean"},"sensitive":{"type":"boolean"},"template":{"type":"object","additionalProperties":false,"description":"Metadado de UI para campos já existentes no contrato do provider. Não cria campo fiscal novo.","properties":{"visible":{"type":"boolean","description":"Quando `true`, permite selecionar `provider_settings.<key>` no editor de templates."},"path":{"type":"string","description":"Path literal usado no template físico quando o contexto do provider não usa `provider_settings.<key>`."},"description":{"type":"string","description":"Descrição opcional exibida no seletor de campos do editor de templates."}}}}},"CompanyNationalNfseConfigResponse":{"allOf":[{"$ref":"#/components/schemas/CompanyNationalNfseConfig"},{"$ref":"#/components/schemas/CompanyNfseRuntimeMetadata"}]},"CompanyNationalNfseConfig":{"type":"object","additionalProperties":true,"description":"Configuração de NFS-e Nacional devolvida pela API, incluindo metadados públicos de runtime. Campos `company_settings` sensíveis podem aparecer como ciphertext `enc::v*::...` apenas na rota administrativa de edição.","required":["integration","environment","numbering"],"properties":{"integration":{"type":"string","enum":["national"]},"environment":{"type":"string","enum":["production","homologation"]},"series_selection_mode":{"type":"string","enum":["manual","automatic"]},"numbering":{"type":"array","minItems":1,"items":{"$ref":"#/components/schemas/NfseCompanyNumbering"}},"batch":{"type":"integer","minimum":1,"description":"Próximo número de lote da empresa quando o provedor efetivo opera com envio em lote."},"send_template_id":{"type":["string","null"]},"include_municipal_registration":{"type":"boolean"},"authorization":{"oneOf":[{"type":"object","additionalProperties":true},{"type":"null"}]}}}}}}
```

## The CompanyNfcomConfigRequest object

```json
{"openapi":"3.1.1","info":{"title":"API IXC E-Docs - Integração x-api-key","version":"0.1.0"},"components":{"schemas":{"CompanyNfcomConfigRequest":{"type":"object","additionalProperties":false,"properties":{"production":{"type":"boolean","description":"Define se a emissão é em produção (`true`) ou homologação (`false`)."},"auto_numbering":{"type":"boolean","description":"Habilita numeração automática de NFCom."},"numbering":{"type":"array","description":"Lista de séries com numeração atual.","items":{"$ref":"#/components/schemas/CompanyNfcomConfigNumberingItem"}},"email":{"type":"object","additionalProperties":false,"properties":{"send":{"type":"boolean","description":"Habilita envio automático de email ao destinatário."}}}}},"CompanyNfcomConfigNumberingItem":{"type":"object","additionalProperties":false,"required":["series","number"],"properties":{"series":{"type":"integer","description":"Série da NFCom."},"number":{"type":"integer","description":"Próximo número da NFCom na série."}}}}}}
```

## The CompanyNfcomConfigResponse object

```json
{"openapi":"3.1.1","info":{"title":"API IXC E-Docs - Integração x-api-key","version":"0.1.0"},"components":{"schemas":{"CompanyNfcomConfigResponse":{"type":"object","additionalProperties":false,"properties":{"production":{"type":"boolean","description":"Indica se a emissão é em produção (`true`) ou homologação (`false`)."},"contingency_mode":{"type":"object","additionalProperties":false,"properties":{"active":{"type":"boolean"}}},"email":{"type":"object","additionalProperties":false,"properties":{"send":{"type":"boolean"}}},"emission_type":{"type":["string","null"],"description":"Tipo de emissão (normal, contingência offline)."},"billing_type":{"type":["string","null"],"description":"Tipo de faturamento."},"emission_purpose":{"type":["string","null"],"description":"Finalidade de emissão."},"emitter_version":{"type":["string","null"],"description":"Versão do emissor."},"authorizer_site_number":{"type":["string","null"],"description":"Número do site autorizador."},"numbering":{"type":"array","items":{"$ref":"#/components/schemas/CompanyNfcomConfigNumberingItem"}},"auto_numbering":{"type":"boolean"}}},"CompanyNfcomConfigNumberingItem":{"type":"object","additionalProperties":false,"required":["series","number"],"properties":{"series":{"type":"integer","description":"Série da NFCom."},"number":{"type":"integer","description":"Próximo número da NFCom na série."}}}}}}
```

## The CompanyNfcomConfigNumberingItem object

```json
{"openapi":"3.1.1","info":{"title":"API IXC E-Docs - Integração x-api-key","version":"0.1.0"},"components":{"schemas":{"CompanyNfcomConfigNumberingItem":{"type":"object","additionalProperties":false,"required":["series","number"],"properties":{"series":{"type":"integer","description":"Série da NFCom."},"number":{"type":"integer","description":"Próximo número da NFCom na série."}}}}}}
```

## The CompanyNfseRuntimeMetadata object

```json
{"openapi":"3.1.1","info":{"title":"API IXC E-Docs - Integração x-api-key","version":"0.1.0"},"components":{"schemas":{"CompanyNfseRuntimeMetadata":{"type":"object","required":["docs_version"],"description":"Metadados de runtime devolvidos ao consumir a configuração NFS-e da empresa.\nA validação estrutural do envelope acontece no momento da emissão (Zod estático no schema canônico);\ncampos fiscais variáveis dependem do template anotado e de rejeição oficial do provedor — não há\nmapa dinâmico de campos.","properties":{"docs_version":{"type":["string","null"],"description":"Versão do conjunto de artefatos oficiais associado ao profile resolvido."},"setup_spec":{"oneOf":[{"$ref":"#/components/schemas/NfseProviderSetupSpec"},{"type":"null"}],"description":"Especificação dinâmica do provider usada pelo front para montar campos de empresa, certificado e credenciais."}}},"NfseProviderSetupSpec":{"type":"object","description":"Especificação declarativa do provider usada para montar a configuração da empresa.\n\nCampos relevantes para a configuração NFS-e:\n- `certificate.required`: define se a empresa precisa selecionar certificado.\n- `authorization`: declara os tipos de autorização técnica aceitos pelo provider.\n- `profile_settings`: declara campos dinâmicos do perfil municipal/provedor.\n- `company_settings`: declara os campos dinâmicos top-level aceitos na configuração da empresa.\n- `profile_settings[].template.visible` e `company_settings[].template.visible`: quando `true`, expõem o campo no editor de templates como `provider_settings.<key>` ou como o `template.path` literal declarado pelo provider.\n- `numbering.series_format`: indica se a série fiscal usa formato `numeric` ou `alphanumeric`.","additionalProperties":true,"properties":{"certificate":{"type":"object","additionalProperties":true},"profile_settings":{"type":"array","items":{"$ref":"#/components/schemas/NfseProviderSetupField"}},"company_settings":{"type":"array","items":{"$ref":"#/components/schemas/NfseProviderSetupField"}},"authorization":{"type":"object","additionalProperties":true,"description":"Tipos de autorização técnica aceitos pelo provider. Quando houver um único tipo, a API pode inferir o `type` no payload da empresa."},"numbering":{"type":"object","additionalProperties":false,"properties":{"series_format":{"type":"string","enum":["numeric","alphanumeric"],"description":"Formato canônico da série fiscal usada em `numbering[].series`."}}}}},"NfseProviderSetupField":{"type":"object","additionalProperties":true,"required":["key","type","required"],"properties":{"key":{"type":"string","description":"Chave declarada pelo provider. Quando exposta em template, vira `provider_settings.<key>`."},"type":{"type":"string","enum":["boolean","number","password","radio","select","text","url"]},"required":{"type":"boolean"},"sensitive":{"type":"boolean"},"template":{"type":"object","additionalProperties":false,"description":"Metadado de UI para campos já existentes no contrato do provider. Não cria campo fiscal novo.","properties":{"visible":{"type":"boolean","description":"Quando `true`, permite selecionar `provider_settings.<key>` no editor de templates."},"path":{"type":"string","description":"Path literal usado no template físico quando o contexto do provider não usa `provider_settings.<key>`."},"description":{"type":"string","description":"Descrição opcional exibida no seletor de campos do editor de templates."}}}}}}}}
```

## The NfseProviderSetupSpec object

```json
{"openapi":"3.1.1","info":{"title":"API IXC E-Docs - Integração x-api-key","version":"0.1.0"},"components":{"schemas":{"NfseProviderSetupSpec":{"type":"object","description":"Especificação declarativa do provider usada para montar a configuração da empresa.\n\nCampos relevantes para a configuração NFS-e:\n- `certificate.required`: define se a empresa precisa selecionar certificado.\n- `authorization`: declara os tipos de autorização técnica aceitos pelo provider.\n- `profile_settings`: declara campos dinâmicos do perfil municipal/provedor.\n- `company_settings`: declara os campos dinâmicos top-level aceitos na configuração da empresa.\n- `profile_settings[].template.visible` e `company_settings[].template.visible`: quando `true`, expõem o campo no editor de templates como `provider_settings.<key>` ou como o `template.path` literal declarado pelo provider.\n- `numbering.series_format`: indica se a série fiscal usa formato `numeric` ou `alphanumeric`.","additionalProperties":true,"properties":{"certificate":{"type":"object","additionalProperties":true},"profile_settings":{"type":"array","items":{"$ref":"#/components/schemas/NfseProviderSetupField"}},"company_settings":{"type":"array","items":{"$ref":"#/components/schemas/NfseProviderSetupField"}},"authorization":{"type":"object","additionalProperties":true,"description":"Tipos de autorização técnica aceitos pelo provider. Quando houver um único tipo, a API pode inferir o `type` no payload da empresa."},"numbering":{"type":"object","additionalProperties":false,"properties":{"series_format":{"type":"string","enum":["numeric","alphanumeric"],"description":"Formato canônico da série fiscal usada em `numbering[].series`."}}}}},"NfseProviderSetupField":{"type":"object","additionalProperties":true,"required":["key","type","required"],"properties":{"key":{"type":"string","description":"Chave declarada pelo provider. Quando exposta em template, vira `provider_settings.<key>`."},"type":{"type":"string","enum":["boolean","number","password","radio","select","text","url"]},"required":{"type":"boolean"},"sensitive":{"type":"boolean"},"template":{"type":"object","additionalProperties":false,"description":"Metadado de UI para campos já existentes no contrato do provider. Não cria campo fiscal novo.","properties":{"visible":{"type":"boolean","description":"Quando `true`, permite selecionar `provider_settings.<key>` no editor de templates."},"path":{"type":"string","description":"Path literal usado no template físico quando o contexto do provider não usa `provider_settings.<key>`."},"description":{"type":"string","description":"Descrição opcional exibida no seletor de campos do editor de templates."}}}}}}}}
```

## The NfseProviderSetupField object

```json
{"openapi":"3.1.1","info":{"title":"API IXC E-Docs - Integração x-api-key","version":"0.1.0"},"components":{"schemas":{"NfseProviderSetupField":{"type":"object","additionalProperties":true,"required":["key","type","required"],"properties":{"key":{"type":"string","description":"Chave declarada pelo provider. Quando exposta em template, vira `provider_settings.<key>`."},"type":{"type":"string","enum":["boolean","number","password","radio","select","text","url"]},"required":{"type":"boolean"},"sensitive":{"type":"boolean"},"template":{"type":"object","additionalProperties":false,"description":"Metadado de UI para campos já existentes no contrato do provider. Não cria campo fiscal novo.","properties":{"visible":{"type":"boolean","description":"Quando `true`, permite selecionar `provider_settings.<key>` no editor de templates."},"path":{"type":"string","description":"Path literal usado no template físico quando o contexto do provider não usa `provider_settings.<key>`."},"description":{"type":"string","description":"Descrição opcional exibida no seletor de campos do editor de templates."}}}}}}}}
```

## The CompanyMunicipalNfseConfigRequest object

```json
{"openapi":"3.1.1","info":{"title":"API IXC E-Docs - Integração x-api-key","version":"0.1.0"},"components":{"schemas":{"CompanyMunicipalNfseConfigRequest":{"type":"object","additionalProperties":true,"description":"Payload de configuração municipal de NFS-e.\nA API aceita campos fixos deste schema e campos top-level declarados em `setup_spec.company_settings` do provider efetivo; metadados de runtime, referências operacionais e aliases de cadastro fiscal continuam rejeitados pela validação semântica.\nCampos `company_settings` sensíveis podem receber texto novo ou o ciphertext `enc::v*::...` idêntico ao valor já persistido na empresa; ciphertext diferente é inválido.","required":["integration","profile_id","environment","numbering"],"properties":{"integration":{"type":"string","enum":["municipal"],"description":"Integração municipal."},"profile_id":{"type":"string","description":"Perfil municipal escolhido pela empresa; é a chave primária da configuração municipal."},"municipal_registration":{"type":["string","null"],"description":"Inscrição Municipal da empresa quando o provider municipal declarar esse campo no setup efetivo."},"environment":{"type":"string","enum":["production","homologation"]},"series_selection_mode":{"type":"string","enum":["manual","automatic"],"description":"Estratégia de seleção automática da série quando o envio não informar `series` na raiz.\n\n- `manual`: usa a série única cadastrada; quando houver múltiplas séries, o envio deve informar `series`.\n- `automatic`: distribui entre as séries cadastradas em rotação (round-robin)."},"danfse_generation_mode":{"type":"string","enum":["automatic","custom"],"description":"Define como a empresa municipal prefere obter a DANFSe.\n\n- `automatic`: tenta usar a DANFSe oficial da prefeitura; quando o provedor não entrega ou retorna conteúdo inválido, usa a DANFSe local do e-docs.\n- `custom`: usa diretamente a geração local de DANFSe do e-docs."},"batch":{"type":"integer","minimum":1,"description":"Próximo número de lote da empresa. Obrigatório quando o provedor efetivo declara `capabilities.send.max_batch_size > 1`; rejeitado para provedores de envio unitário."},"send_template_id":{"type":["string","null"],"description":"Template de envio customizado da empresa. Pode apontar para rascunho ou publicado do provedor derivado do `profile_id` e da operação `send`; `null` usa o template do perfil, depois o padrão do provedor e, por fim, o XML físico do pacote. Templates arquivados não podem ser vinculados."},"numbering":{"type":"array","minItems":1,"description":"Séries fiscais e próximo número inicial da empresa.","items":{"$ref":"#/components/schemas/NfseCompanyNumbering"}},"authorization":{"oneOf":[{"type":"object","additionalProperties":true},{"type":"null"}],"description":"Autorização técnica do provedor, quando aplicável. Quando o provider declara um único tipo de autorização, envie apenas os campos externos exigidos; a API infere o `type` pelo `setup_spec`. Campos de `setup_spec.company_settings` são enviados no top-level."}}},"NfseCompanyNumbering":{"type":"object","additionalProperties":false,"required":["number","series"],"properties":{"number":{"type":"integer","minimum":1},"series":{"type":"string"}}}}}}
```

## The CompanyMunicipalNfseConfig object

```json
{"openapi":"3.1.1","info":{"title":"API IXC E-Docs - Integração x-api-key","version":"0.1.0"},"components":{"schemas":{"CompanyMunicipalNfseConfig":{"type":"object","additionalProperties":true,"description":"Configuração municipal de NFS-e devolvida pela API, incluindo campos derivados e metadados públicos de runtime. Campos `company_settings` sensíveis podem aparecer como ciphertext `enc::v*::...` apenas na rota administrativa de edição.","required":["integration","profile_id","provider","environment","numbering"],"properties":{"integration":{"type":"string","enum":["municipal"]},"profile_id":{"type":"string"},"provider":{"type":"string","readOnly":true,"description":"Provedor municipal derivado automaticamente do perfil municipal escolhido."},"municipal_registration":{"type":["string","null"]},"environment":{"type":"string","enum":["production","homologation"]},"series_selection_mode":{"type":"string","enum":["manual","automatic"]},"danfse_generation_mode":{"type":"string","enum":["automatic","custom"]},"batch":{"type":"integer","minimum":1,"description":"Próximo número de lote da empresa quando o provedor efetivo opera com envio em lote."},"send_template_id":{"type":["string","null"]},"numbering":{"type":"array","minItems":1,"items":{"$ref":"#/components/schemas/NfseCompanyNumbering"}},"authorization":{"oneOf":[{"type":"object","additionalProperties":true},{"type":"null"}]}}},"NfseCompanyNumbering":{"type":"object","additionalProperties":false,"required":["number","series"],"properties":{"number":{"type":"integer","minimum":1},"series":{"type":"string"}}}}}}
```

## The CompanyMunicipalNfseConfigResponse object

```json
{"openapi":"3.1.1","info":{"title":"API IXC E-Docs - Integração x-api-key","version":"0.1.0"},"components":{"schemas":{"CompanyMunicipalNfseConfigResponse":{"allOf":[{"$ref":"#/components/schemas/CompanyMunicipalNfseConfig"},{"$ref":"#/components/schemas/CompanyNfseRuntimeMetadata"}]},"CompanyMunicipalNfseConfig":{"type":"object","additionalProperties":true,"description":"Configuração municipal de NFS-e devolvida pela API, incluindo campos derivados e metadados públicos de runtime. Campos `company_settings` sensíveis podem aparecer como ciphertext `enc::v*::...` apenas na rota administrativa de edição.","required":["integration","profile_id","provider","environment","numbering"],"properties":{"integration":{"type":"string","enum":["municipal"]},"profile_id":{"type":"string"},"provider":{"type":"string","readOnly":true,"description":"Provedor municipal derivado automaticamente do perfil municipal escolhido."},"municipal_registration":{"type":["string","null"]},"environment":{"type":"string","enum":["production","homologation"]},"series_selection_mode":{"type":"string","enum":["manual","automatic"]},"danfse_generation_mode":{"type":"string","enum":["automatic","custom"]},"batch":{"type":"integer","minimum":1,"description":"Próximo número de lote da empresa quando o provedor efetivo opera com envio em lote."},"send_template_id":{"type":["string","null"]},"numbering":{"type":"array","minItems":1,"items":{"$ref":"#/components/schemas/NfseCompanyNumbering"}},"authorization":{"oneOf":[{"type":"object","additionalProperties":true},{"type":"null"}]}}},"NfseCompanyNumbering":{"type":"object","additionalProperties":false,"required":["number","series"],"properties":{"number":{"type":"integer","minimum":1},"series":{"type":"string"}}},"CompanyNfseRuntimeMetadata":{"type":"object","required":["docs_version"],"description":"Metadados de runtime devolvidos ao consumir a configuração NFS-e da empresa.\nA validação estrutural do envelope acontece no momento da emissão (Zod estático no schema canônico);\ncampos fiscais variáveis dependem do template anotado e de rejeição oficial do provedor — não há\nmapa dinâmico de campos.","properties":{"docs_version":{"type":["string","null"],"description":"Versão do conjunto de artefatos oficiais associado ao profile resolvido."},"setup_spec":{"oneOf":[{"$ref":"#/components/schemas/NfseProviderSetupSpec"},{"type":"null"}],"description":"Especificação dinâmica do provider usada pelo front para montar campos de empresa, certificado e credenciais."}}},"NfseProviderSetupSpec":{"type":"object","description":"Especificação declarativa do provider usada para montar a configuração da empresa.\n\nCampos relevantes para a configuração NFS-e:\n- `certificate.required`: define se a empresa precisa selecionar certificado.\n- `authorization`: declara os tipos de autorização técnica aceitos pelo provider.\n- `profile_settings`: declara campos dinâmicos do perfil municipal/provedor.\n- `company_settings`: declara os campos dinâmicos top-level aceitos na configuração da empresa.\n- `profile_settings[].template.visible` e `company_settings[].template.visible`: quando `true`, expõem o campo no editor de templates como `provider_settings.<key>` ou como o `template.path` literal declarado pelo provider.\n- `numbering.series_format`: indica se a série fiscal usa formato `numeric` ou `alphanumeric`.","additionalProperties":true,"properties":{"certificate":{"type":"object","additionalProperties":true},"profile_settings":{"type":"array","items":{"$ref":"#/components/schemas/NfseProviderSetupField"}},"company_settings":{"type":"array","items":{"$ref":"#/components/schemas/NfseProviderSetupField"}},"authorization":{"type":"object","additionalProperties":true,"description":"Tipos de autorização técnica aceitos pelo provider. Quando houver um único tipo, a API pode inferir o `type` no payload da empresa."},"numbering":{"type":"object","additionalProperties":false,"properties":{"series_format":{"type":"string","enum":["numeric","alphanumeric"],"description":"Formato canônico da série fiscal usada em `numbering[].series`."}}}}},"NfseProviderSetupField":{"type":"object","additionalProperties":true,"required":["key","type","required"],"properties":{"key":{"type":"string","description":"Chave declarada pelo provider. Quando exposta em template, vira `provider_settings.<key>`."},"type":{"type":"string","enum":["boolean","number","password","radio","select","text","url"]},"required":{"type":"boolean"},"sensitive":{"type":"boolean"},"template":{"type":"object","additionalProperties":false,"description":"Metadado de UI para campos já existentes no contrato do provider. Não cria campo fiscal novo.","properties":{"visible":{"type":"boolean","description":"Quando `true`, permite selecionar `provider_settings.<key>` no editor de templates."},"path":{"type":"string","description":"Path literal usado no template físico quando o contexto do provider não usa `provider_settings.<key>`."},"description":{"type":"string","description":"Descrição opcional exibida no seletor de campos do editor de templates."}}}}}}}}
```

## The CompanyNationalNfseConfigRequest object

```json
{"openapi":"3.1.1","info":{"title":"API IXC E-Docs - Integração x-api-key","version":"0.1.0"},"components":{"schemas":{"CompanyNationalNfseConfigRequest":{"type":"object","description":"Payload de configuração de empresa no Ambiente Nacional.\nA API aceita campos fixos deste schema e campos top-level declarados em `setup_spec.company_settings` do Ambiente Nacional; metadados de runtime e referências operacionais continuam rejeitados pela validação semântica.\n`send_template_id` é permitido quando aponta para template rascunho ou publicado do provedor `national` e da operação `send`.\nO DANFSe Nacional é sempre gerado localmente no layout NT 008.\nCampos `company_settings` sensíveis podem receber texto novo ou o ciphertext `enc::v*::...` idêntico ao valor já persistido na empresa; ciphertext diferente é inválido.","additionalProperties":true,"required":["integration","environment","numbering"],"properties":{"integration":{"type":"string","enum":["national"],"description":"Integração com o Ambiente Nacional."},"environment":{"type":"string","enum":["production","homologation"]},"series_selection_mode":{"type":"string","enum":["manual","automatic"],"description":"Estratégia de seleção automática da série quando o envio não informar `series` na raiz.\n\n- `manual`: usa a série única cadastrada; quando houver múltiplas séries, o envio deve informar `series`.\n- `automatic`: distribui entre as séries cadastradas em rotação (round-robin)."},"numbering":{"type":"array","minItems":1,"items":{"$ref":"#/components/schemas/NfseCompanyNumbering"}},"batch":{"type":"integer","minimum":1,"description":"Próximo número de lote da empresa. Obrigatório quando o provedor efetivo declara `capabilities.send.max_batch_size > 1`; rejeitado para provedores de envio unitário."},"send_template_id":{"type":["string","null"],"description":"Template de envio customizado da empresa no Ambiente Nacional. Deve pertencer ao provedor `national` e à operação `send`; `null` usa o padrão do provedor e, se não houver, o XML físico do pacote."},"include_municipal_registration":{"type":"boolean","description":"Quando `true`, permite enviar a Inscrição Municipal do cadastro da empresa no layout nacional, se existir."},"authorization":{"oneOf":[{"type":"object","additionalProperties":true},{"type":"null"}],"description":"Autorização técnica do Ambiente Nacional, quando aplicável."}}},"NfseCompanyNumbering":{"type":"object","additionalProperties":false,"required":["number","series"],"properties":{"number":{"type":"integer","minimum":1},"series":{"type":"string"}}}}}}
```

## The CompanyNationalNfseConfig object

```json
{"openapi":"3.1.1","info":{"title":"API IXC E-Docs - Integração x-api-key","version":"0.1.0"},"components":{"schemas":{"CompanyNationalNfseConfig":{"type":"object","additionalProperties":true,"description":"Configuração de NFS-e Nacional devolvida pela API, incluindo metadados públicos de runtime. Campos `company_settings` sensíveis podem aparecer como ciphertext `enc::v*::...` apenas na rota administrativa de edição.","required":["integration","environment","numbering"],"properties":{"integration":{"type":"string","enum":["national"]},"environment":{"type":"string","enum":["production","homologation"]},"series_selection_mode":{"type":"string","enum":["manual","automatic"]},"numbering":{"type":"array","minItems":1,"items":{"$ref":"#/components/schemas/NfseCompanyNumbering"}},"batch":{"type":"integer","minimum":1,"description":"Próximo número de lote da empresa quando o provedor efetivo opera com envio em lote."},"send_template_id":{"type":["string","null"]},"include_municipal_registration":{"type":"boolean"},"authorization":{"oneOf":[{"type":"object","additionalProperties":true},{"type":"null"}]}}},"NfseCompanyNumbering":{"type":"object","additionalProperties":false,"required":["number","series"],"properties":{"number":{"type":"integer","minimum":1},"series":{"type":"string"}}}}}}
```

## The CompanyNationalNfseConfigResponse object

```json
{"openapi":"3.1.1","info":{"title":"API IXC E-Docs - Integração x-api-key","version":"0.1.0"},"components":{"schemas":{"CompanyNationalNfseConfigResponse":{"allOf":[{"$ref":"#/components/schemas/CompanyNationalNfseConfig"},{"$ref":"#/components/schemas/CompanyNfseRuntimeMetadata"}]},"CompanyNationalNfseConfig":{"type":"object","additionalProperties":true,"description":"Configuração de NFS-e Nacional devolvida pela API, incluindo metadados públicos de runtime. Campos `company_settings` sensíveis podem aparecer como ciphertext `enc::v*::...` apenas na rota administrativa de edição.","required":["integration","environment","numbering"],"properties":{"integration":{"type":"string","enum":["national"]},"environment":{"type":"string","enum":["production","homologation"]},"series_selection_mode":{"type":"string","enum":["manual","automatic"]},"numbering":{"type":"array","minItems":1,"items":{"$ref":"#/components/schemas/NfseCompanyNumbering"}},"batch":{"type":"integer","minimum":1,"description":"Próximo número de lote da empresa quando o provedor efetivo opera com envio em lote."},"send_template_id":{"type":["string","null"]},"include_municipal_registration":{"type":"boolean"},"authorization":{"oneOf":[{"type":"object","additionalProperties":true},{"type":"null"}]}}},"NfseCompanyNumbering":{"type":"object","additionalProperties":false,"required":["number","series"],"properties":{"number":{"type":"integer","minimum":1},"series":{"type":"string"}}},"CompanyNfseRuntimeMetadata":{"type":"object","required":["docs_version"],"description":"Metadados de runtime devolvidos ao consumir a configuração NFS-e da empresa.\nA validação estrutural do envelope acontece no momento da emissão (Zod estático no schema canônico);\ncampos fiscais variáveis dependem do template anotado e de rejeição oficial do provedor — não há\nmapa dinâmico de campos.","properties":{"docs_version":{"type":["string","null"],"description":"Versão do conjunto de artefatos oficiais associado ao profile resolvido."},"setup_spec":{"oneOf":[{"$ref":"#/components/schemas/NfseProviderSetupSpec"},{"type":"null"}],"description":"Especificação dinâmica do provider usada pelo front para montar campos de empresa, certificado e credenciais."}}},"NfseProviderSetupSpec":{"type":"object","description":"Especificação declarativa do provider usada para montar a configuração da empresa.\n\nCampos relevantes para a configuração NFS-e:\n- `certificate.required`: define se a empresa precisa selecionar certificado.\n- `authorization`: declara os tipos de autorização técnica aceitos pelo provider.\n- `profile_settings`: declara campos dinâmicos do perfil municipal/provedor.\n- `company_settings`: declara os campos dinâmicos top-level aceitos na configuração da empresa.\n- `profile_settings[].template.visible` e `company_settings[].template.visible`: quando `true`, expõem o campo no editor de templates como `provider_settings.<key>` ou como o `template.path` literal declarado pelo provider.\n- `numbering.series_format`: indica se a série fiscal usa formato `numeric` ou `alphanumeric`.","additionalProperties":true,"properties":{"certificate":{"type":"object","additionalProperties":true},"profile_settings":{"type":"array","items":{"$ref":"#/components/schemas/NfseProviderSetupField"}},"company_settings":{"type":"array","items":{"$ref":"#/components/schemas/NfseProviderSetupField"}},"authorization":{"type":"object","additionalProperties":true,"description":"Tipos de autorização técnica aceitos pelo provider. Quando houver um único tipo, a API pode inferir o `type` no payload da empresa."},"numbering":{"type":"object","additionalProperties":false,"properties":{"series_format":{"type":"string","enum":["numeric","alphanumeric"],"description":"Formato canônico da série fiscal usada em `numbering[].series`."}}}}},"NfseProviderSetupField":{"type":"object","additionalProperties":true,"required":["key","type","required"],"properties":{"key":{"type":"string","description":"Chave declarada pelo provider. Quando exposta em template, vira `provider_settings.<key>`."},"type":{"type":"string","enum":["boolean","number","password","radio","select","text","url"]},"required":{"type":"boolean"},"sensitive":{"type":"boolean"},"template":{"type":"object","additionalProperties":false,"description":"Metadado de UI para campos já existentes no contrato do provider. Não cria campo fiscal novo.","properties":{"visible":{"type":"boolean","description":"Quando `true`, permite selecionar `provider_settings.<key>` no editor de templates."},"path":{"type":"string","description":"Path literal usado no template físico quando o contexto do provider não usa `provider_settings.<key>`."},"description":{"type":"string","description":"Descrição opcional exibida no seletor de campos do editor de templates."}}}}}}}}
```

## The NfseCompanyNumbering object

```json
{"openapi":"3.1.1","info":{"title":"API IXC E-Docs - Integração x-api-key","version":"0.1.0"},"components":{"schemas":{"NfseCompanyNumbering":{"type":"object","additionalProperties":false,"required":["number","series"],"properties":{"number":{"type":"integer","minimum":1},"series":{"type":"string"}}}}}}
```

## The IntegrationCreateRequest object

```json
{"openapi":"3.1.1","info":{"title":"API IXC E-Docs - Integração x-api-key","version":"0.1.0"},"components":{"schemas":{"IntegrationCreateRequest":{"type":"object","additionalProperties":false,"required":["name","active"],"properties":{"name":{"type":"string","minLength":3,"maxLength":200},"active":{"type":"boolean"},"allowed_ips":{"type":["array","null"],"description":"Lista opcional de IPs ou blocos CIDR autorizados a consumir a integração via `x-api-key`.\n\nQuando preenchida, a API compara o IP resolvido por `request.ip` com cada item antes de executar a rota.","items":{"type":"string","description":"IP exato ou faixa CIDR permitida para consumir a integração."}},"company_id":{"oneOf":[{"$ref":"#/components/schemas/ObjectId"},{"type":"null"}],"description":"Empresa alvo dentro do mesmo workspace da `x-api-key`.\n\nRegras:\n- Em chave de workspace, associa a integração a essa empresa específica.\n- Em chave de empresa, este campo é ignorado e substituído automaticamente pela empresa da própria chave."},"tax_id":{"type":["string","null"],"minLength":14,"maxLength":14,"description":"CNPJ da empresa alvo (somente dígitos), resolvido dentro do mesmo workspace da `x-api-key`.\n\nRegras:\n- Em chave de workspace, resolve o `company_id` correspondente antes da persistência.\n- Em chave de empresa, este campo é ignorado e substituído automaticamente pela empresa da própria chave."}}},"ObjectId":{"type":"string","description":"Identificador no formato ObjectId."}}}}
```

## The IntegrationResponse object

```json
{"openapi":"3.1.1","info":{"title":"API IXC E-Docs - Integração x-api-key","version":"0.1.0"},"components":{"schemas":{"IntegrationResponse":{"type":"object","additionalProperties":false,"required":["id","workspace_id","name","active"],"properties":{"id":{"$ref":"#/components/schemas/ObjectId"},"workspace_id":{"$ref":"#/components/schemas/ObjectId"},"name":{"type":"string"},"active":{"type":"boolean"},"allowed_ips":{"type":["array","null"],"description":"IPs e faixas CIDR permitidos para autenticar chamadas dessa integração.","items":{"type":"string"}},"api_key":{"type":["string","null"],"description":"Retornado em valor completo na criação e na regeneração, e mascarado em leituras e listagens."},"company_id":{"oneOf":[{"$ref":"#/components/schemas/ObjectId"},{"type":"null"}]},"created_at":{"type":"string","format":"date-time"},"updated_at":{"type":"string","format":"date-time"}}},"ObjectId":{"type":"string","description":"Identificador no formato ObjectId."}}}}
```

## The IntegrationListResponse object

```json
{"openapi":"3.1.1","info":{"title":"API IXC E-Docs - Integração x-api-key","version":"0.1.0"},"components":{"schemas":{"IntegrationListResponse":{"type":"object","additionalProperties":false,"required":["items","paginate"],"properties":{"items":{"type":"array","items":{"$ref":"#/components/schemas/IntegrationResponse"}},"paginate":{"$ref":"#/components/schemas/CursorPaginateMeta"}}},"IntegrationResponse":{"type":"object","additionalProperties":false,"required":["id","workspace_id","name","active"],"properties":{"id":{"$ref":"#/components/schemas/ObjectId"},"workspace_id":{"$ref":"#/components/schemas/ObjectId"},"name":{"type":"string"},"active":{"type":"boolean"},"allowed_ips":{"type":["array","null"],"description":"IPs e faixas CIDR permitidos para autenticar chamadas dessa integração.","items":{"type":"string"}},"api_key":{"type":["string","null"],"description":"Retornado em valor completo na criação e na regeneração, e mascarado em leituras e listagens."},"company_id":{"oneOf":[{"$ref":"#/components/schemas/ObjectId"},{"type":"null"}]},"created_at":{"type":"string","format":"date-time"},"updated_at":{"type":"string","format":"date-time"}}},"ObjectId":{"type":"string","description":"Identificador no formato ObjectId."},"CursorPaginateMeta":{"type":"object","additionalProperties":false,"required":["limit","has_next_page","has_previous_page","start_cursor","end_cursor"],"properties":{"limit":{"type":"integer","minimum":10,"maximum":100},"has_next_page":{"type":"boolean"},"has_previous_page":{"type":"boolean"},"start_cursor":{"type":["string","null"]},"end_cursor":{"type":["string","null"]}}}}}}
```

## The WebhookEvent object

```json
{"openapi":"3.1.1","info":{"title":"API IXC E-Docs - Integração x-api-key","version":"0.1.0"},"components":{"schemas":{"WebhookEvent":{"type":"string","description":"Evento de status publicado para o documento fiscal.\n\nSemântica de cada valor:\n- `nfse_created`: documento criado e aguardando processamento.\n- `nfse_updated`: correção aplicada ao documento já reenfileirado.\n- `nfse_authorized`: documento autorizado no provedor.\n- `nfse_rejected`: documento rejeitado por regra fiscal.\n- `nfse_canceled`: documento cancelado após autorização.\n- `nfse_substituted`: documento anterior marcado como substituído por outra NFS-e autorizada.\n- `nfse_error`: falha técnica ou operacional no processamento da NFS-e.\n- `nfse_unsynced`: NFS-e sem sincronização após esgotar o fluxo assíncrono.\nRecomendação de integração:\n- Tratar eventos como idempotentes e possivelmente fora de ordem.\n- Usar `payload.occurred_at` como referência temporal para decidir aplicação do estado mais recente.","enum":["nfse_created","nfse_updated","nfse_authorized","nfse_rejected","nfse_canceled","nfse_substituted","nfse_error","nfse_unsynced"]}}}}
```

## The WebhookSecurityTokenType object

```json
{"openapi":"3.1.1","info":{"title":"API IXC E-Docs - Integração x-api-key","version":"0.1.0"},"components":{"schemas":{"WebhookSecurityTokenType":{"type":["string","null"],"description":"Controla qual header HTTP recebe o token de segurança do webhook, ou se o envio segue sem autenticação por token.","enum":["x-web-token","bearer",null]}}}}
```

## The WebhookCreateRequest object

```json
{"openapi":"3.1.1","info":{"title":"API IXC E-Docs - Integração x-api-key","version":"0.1.0"},"components":{"schemas":{"WebhookCreateRequest":{"type":"object","additionalProperties":false,"required":["events","name","security_token_type","active","url"],"properties":{"events":{"type":"array","minItems":1,"items":{"$ref":"#/components/schemas/WebhookEvent"}},"name":{"type":"string","minLength":3,"maxLength":200},"security_token_type":{"$ref":"#/components/schemas/WebhookSecurityTokenType","default":"x-web-token"},"security_token":{"type":["string","null"],"maxLength":1024},"active":{"type":"boolean"},"url":{"type":"string","format":"uri","minLength":3,"maxLength":200},"company_id":{"oneOf":[{"$ref":"#/components/schemas/ObjectId"},{"type":"null"}],"description":"Empresa alvo dentro do mesmo workspace da `x-api-key`.\n\nRegras:\n- Em chave de workspace, associa o webhook a essa empresa específica.\n- Em chave de empresa, este campo é ignorado e substituído automaticamente pela empresa da própria chave."},"tax_id":{"type":["string","null"],"minLength":14,"maxLength":14,"description":"CNPJ da empresa alvo (somente dígitos), resolvido dentro do mesmo workspace da `x-api-key`.\n\nRegras:\n- Em chave de workspace, resolve o `company_id` correspondente antes da persistência.\n- Em chave de empresa, este campo é ignorado e substituído automaticamente pela empresa da própria chave."}}},"WebhookEvent":{"type":"string","description":"Evento de status publicado para o documento fiscal.\n\nSemântica de cada valor:\n- `nfse_created`: documento criado e aguardando processamento.\n- `nfse_updated`: correção aplicada ao documento já reenfileirado.\n- `nfse_authorized`: documento autorizado no provedor.\n- `nfse_rejected`: documento rejeitado por regra fiscal.\n- `nfse_canceled`: documento cancelado após autorização.\n- `nfse_substituted`: documento anterior marcado como substituído por outra NFS-e autorizada.\n- `nfse_error`: falha técnica ou operacional no processamento da NFS-e.\n- `nfse_unsynced`: NFS-e sem sincronização após esgotar o fluxo assíncrono.\nRecomendação de integração:\n- Tratar eventos como idempotentes e possivelmente fora de ordem.\n- Usar `payload.occurred_at` como referência temporal para decidir aplicação do estado mais recente.","enum":["nfse_created","nfse_updated","nfse_authorized","nfse_rejected","nfse_canceled","nfse_substituted","nfse_error","nfse_unsynced"]},"WebhookSecurityTokenType":{"type":["string","null"],"description":"Controla qual header HTTP recebe o token de segurança do webhook, ou se o envio segue sem autenticação por token.","enum":["x-web-token","bearer",null]},"ObjectId":{"type":"string","description":"Identificador no formato ObjectId."}}}}
```

## The WebhookResponse object

```json
{"openapi":"3.1.1","info":{"title":"API IXC E-Docs - Integração x-api-key","version":"0.1.0"},"components":{"schemas":{"WebhookResponse":{"type":"object","additionalProperties":false,"required":["id","name","events","url","active","security_token_type"],"properties":{"id":{"$ref":"#/components/schemas/ObjectId"},"name":{"type":"string"},"events":{"type":"array","items":{"$ref":"#/components/schemas/WebhookEvent"}},"url":{"type":"string","format":"uri"},"active":{"type":"boolean"},"security_token_type":{"$ref":"#/components/schemas/WebhookSecurityTokenType"},"security_token":{"type":["string","null"],"description":"Token de segurança mascarado na leitura (`********`) quando configurado."},"company_id":{"oneOf":[{"$ref":"#/components/schemas/ObjectId"},{"type":"null"}]},"company":{"oneOf":[{"$ref":"#/components/schemas/WebhookCompany"},{"type":"null"}]},"created_at":{"type":"string","format":"date-time"},"updated_at":{"type":"string","format":"date-time"}}},"ObjectId":{"type":"string","description":"Identificador no formato ObjectId."},"WebhookEvent":{"type":"string","description":"Evento de status publicado para o documento fiscal.\n\nSemântica de cada valor:\n- `nfse_created`: documento criado e aguardando processamento.\n- `nfse_updated`: correção aplicada ao documento já reenfileirado.\n- `nfse_authorized`: documento autorizado no provedor.\n- `nfse_rejected`: documento rejeitado por regra fiscal.\n- `nfse_canceled`: documento cancelado após autorização.\n- `nfse_substituted`: documento anterior marcado como substituído por outra NFS-e autorizada.\n- `nfse_error`: falha técnica ou operacional no processamento da NFS-e.\n- `nfse_unsynced`: NFS-e sem sincronização após esgotar o fluxo assíncrono.\nRecomendação de integração:\n- Tratar eventos como idempotentes e possivelmente fora de ordem.\n- Usar `payload.occurred_at` como referência temporal para decidir aplicação do estado mais recente.","enum":["nfse_created","nfse_updated","nfse_authorized","nfse_rejected","nfse_canceled","nfse_substituted","nfse_error","nfse_unsynced"]},"WebhookSecurityTokenType":{"type":["string","null"],"description":"Controla qual header HTTP recebe o token de segurança do webhook, ou se o envio segue sem autenticação por token.","enum":["x-web-token","bearer",null]},"WebhookCompany":{"type":"object","additionalProperties":false,"properties":{"id":{"oneOf":[{"$ref":"#/components/schemas/ObjectId"},{"type":"null"}]},"name":{"type":["string","null"]},"tax_id":{"type":["string","null"]}}}}}}
```

## The WebhookCompany object

```json
{"openapi":"3.1.1","info":{"title":"API IXC E-Docs - Integração x-api-key","version":"0.1.0"},"components":{"schemas":{"WebhookCompany":{"type":"object","additionalProperties":false,"properties":{"id":{"oneOf":[{"$ref":"#/components/schemas/ObjectId"},{"type":"null"}]},"name":{"type":["string","null"]},"tax_id":{"type":["string","null"]}}},"ObjectId":{"type":"string","description":"Identificador no formato ObjectId."}}}}
```

## The CursorPaginateMeta object

```json
{"openapi":"3.1.1","info":{"title":"API IXC E-Docs - Integração x-api-key","version":"0.1.0"},"components":{"schemas":{"CursorPaginateMeta":{"type":"object","additionalProperties":false,"required":["limit","has_next_page","has_previous_page","start_cursor","end_cursor"],"properties":{"limit":{"type":"integer","minimum":10,"maximum":100},"has_next_page":{"type":"boolean"},"has_previous_page":{"type":"boolean"},"start_cursor":{"type":["string","null"]},"end_cursor":{"type":["string","null"]}}}}}}
```

## The ReferencePostalCodeResponse object

```json
{"openapi":"3.1.1","info":{"title":"API IXC E-Docs - Integração x-api-key","version":"0.1.0"},"components":{"schemas":{"ReferencePostalCodeResponse":{"type":"object","additionalProperties":false,"required":["street","neighborhood","municipality","state","postal_code","municipality_code"],"properties":{"street":{"type":"string","description":"Logradouro."},"neighborhood":{"type":"string","description":"Bairro."},"municipality":{"type":"string","description":"Município."},"state":{"type":"string","description":"UF.","minLength":2,"maxLength":2},"postal_code":{"type":"string","description":"CEP."},"municipality_code":{"type":"string","description":"Código IBGE.","minLength":7,"maxLength":7}}}}}}
```

## The PostalCodeReferenceItem object

```json
{"openapi":"3.1.1","info":{"title":"API IXC E-Docs - Integração x-api-key","version":"0.1.0"},"components":{"schemas":{"PostalCodeReferenceItem":{"type":"object","additionalProperties":false,"required":["id"],"properties":{"id":{"type":"string","description":"Identificador lógico do item (CEP)."},"postal_code":{"type":["string","null"],"description":"CEP."},"state":{"type":["string","null"],"description":"UF."},"municipality":{"type":["string","null"],"description":"Município."},"municipality_code":{"type":["string","null"],"description":"Código IBGE."},"neighborhood":{"type":["string","null"],"description":"Bairro."},"street":{"type":["string","null"],"description":"Logradouro."}}}}}}
```

## The PostalCodeReferenceListResponse object

```json
{"openapi":"3.1.1","info":{"title":"API IXC E-Docs - Integração x-api-key","version":"0.1.0"},"components":{"schemas":{"PostalCodeReferenceListResponse":{"type":"object","additionalProperties":false,"required":["items","paginate"],"properties":{"items":{"type":"array","items":{"$ref":"#/components/schemas/PostalCodeReferenceItem"}},"paginate":{"$ref":"#/components/schemas/CursorPaginateMeta"}}},"PostalCodeReferenceItem":{"type":"object","additionalProperties":false,"required":["id"],"properties":{"id":{"type":"string","description":"Identificador lógico do item (CEP)."},"postal_code":{"type":["string","null"],"description":"CEP."},"state":{"type":["string","null"],"description":"UF."},"municipality":{"type":["string","null"],"description":"Município."},"municipality_code":{"type":["string","null"],"description":"Código IBGE."},"neighborhood":{"type":["string","null"],"description":"Bairro."},"street":{"type":["string","null"],"description":"Logradouro."}}},"CursorPaginateMeta":{"type":"object","additionalProperties":false,"required":["limit","has_next_page","has_previous_page","start_cursor","end_cursor"],"properties":{"limit":{"type":"integer","minimum":10,"maximum":100},"has_next_page":{"type":"boolean"},"has_previous_page":{"type":"boolean"},"start_cursor":{"type":["string","null"]},"end_cursor":{"type":["string","null"]}}}}}}
```

## The ReferenceTaxIdAddress object

```json
{"openapi":"3.1.1","info":{"title":"API IXC E-Docs - Integração x-api-key","version":"0.1.0"},"components":{"schemas":{"ReferenceTaxIdAddress":{"type":"object","additionalProperties":false,"required":["street","neighborhood","city","state","postal_code","municipality_code","number"],"properties":{"street":{"type":"string"},"neighborhood":{"type":"string"},"city":{"type":"string"},"state":{"type":"string","minLength":2,"maxLength":2},"postal_code":{"type":"string"},"municipality_code":{"type":"string","minLength":7,"maxLength":7},"number":{"type":"string"},"complement":{"type":["string","null"]}}}}}}
```

## The ReferenceCompanyResponse object

```json
{"openapi":"3.1.1","info":{"title":"API IXC E-Docs - Integração x-api-key","version":"0.1.0"},"components":{"schemas":{"ReferenceCompanyResponse":{"type":"object","additionalProperties":false,"required":["name","legal_name","phone","email","tax_id","address"],"properties":{"name":{"type":"string"},"legal_name":{"type":"string"},"phone":{"type":"string"},"email":{"type":"string"},"tax_id":{"type":"string"},"address":{"$ref":"#/components/schemas/ReferenceTaxIdAddress"}}},"ReferenceTaxIdAddress":{"type":"object","additionalProperties":false,"required":["street","neighborhood","city","state","postal_code","municipality_code","number"],"properties":{"street":{"type":"string"},"neighborhood":{"type":"string"},"city":{"type":"string"},"state":{"type":"string","minLength":2,"maxLength":2},"postal_code":{"type":"string"},"municipality_code":{"type":"string","minLength":7,"maxLength":7},"number":{"type":"string"},"complement":{"type":["string","null"]}}}}}}
```

## The MunicipalityReferenceItem object

```json
{"openapi":"3.1.1","info":{"title":"API IXC E-Docs - Integração x-api-key","version":"0.1.0"},"components":{"schemas":{"MunicipalityReferenceItem":{"type":"object","additionalProperties":false,"required":["id"],"properties":{"id":{"type":"string","description":"Identificador lógico do item (código IBGE)."},"municipality":{"type":["string","null"],"description":"Nome do município."},"state":{"type":["string","null"],"description":"UF."},"municipality_code":{"type":["string","null"],"description":"Código IBGE."},"key":{"type":["string","null"],"description":"Chave normalizada usada na busca."}}}}}}
```

## The MunicipalityReferenceListResponse object

```json
{"openapi":"3.1.1","info":{"title":"API IXC E-Docs - Integração x-api-key","version":"0.1.0"},"components":{"schemas":{"MunicipalityReferenceListResponse":{"type":"object","additionalProperties":false,"required":["items","paginate"],"properties":{"items":{"type":"array","items":{"$ref":"#/components/schemas/MunicipalityReferenceItem"}},"paginate":{"$ref":"#/components/schemas/CursorPaginateMeta"}}},"MunicipalityReferenceItem":{"type":"object","additionalProperties":false,"required":["id"],"properties":{"id":{"type":"string","description":"Identificador lógico do item (código IBGE)."},"municipality":{"type":["string","null"],"description":"Nome do município."},"state":{"type":["string","null"],"description":"UF."},"municipality_code":{"type":["string","null"],"description":"Código IBGE."},"key":{"type":["string","null"],"description":"Chave normalizada usada na busca."}}},"CursorPaginateMeta":{"type":"object","additionalProperties":false,"required":["limit","has_next_page","has_previous_page","start_cursor","end_cursor"],"properties":{"limit":{"type":"integer","minimum":10,"maximum":100},"has_next_page":{"type":"boolean"},"has_previous_page":{"type":"boolean"},"start_cursor":{"type":["string","null"]},"end_cursor":{"type":["string","null"]}}}}}}
```

## The CnaeReferenceItem object

```json
{"openapi":"3.1.1","info":{"title":"API IXC E-Docs - Integração x-api-key","version":"0.1.0"},"components":{"schemas":{"CnaeReferenceItem":{"type":"object","additionalProperties":false,"required":["id"],"properties":{"id":{"type":"string","description":"Identificador lógico do item (código CNAE de 7 dígitos)."},"code":{"type":["string","null"],"description":"Código CNAE formatado."},"code_digits":{"type":["string","null"],"description":"Código CNAE sem formatação (7 dígitos)."},"description":{"type":["string","null"],"description":"Descrição oficial da subclasse CNAE."},"section":{"type":["string","null"],"description":"Seção CNAE."},"division":{"type":["string","null"],"description":"Divisão CNAE."},"group":{"type":["string","null"],"description":"Grupo CNAE."},"class":{"type":["string","null"],"description":"Classe CNAE."}}}}}}
```

## The CnaeReferenceListResponse object

```json
{"openapi":"3.1.1","info":{"title":"API IXC E-Docs - Integração x-api-key","version":"0.1.0"},"components":{"schemas":{"CnaeReferenceListResponse":{"type":"object","additionalProperties":false,"required":["items","paginate"],"properties":{"items":{"type":"array","items":{"$ref":"#/components/schemas/CnaeReferenceItem"}},"paginate":{"$ref":"#/components/schemas/CursorPaginateMeta"}}},"CnaeReferenceItem":{"type":"object","additionalProperties":false,"required":["id"],"properties":{"id":{"type":"string","description":"Identificador lógico do item (código CNAE de 7 dígitos)."},"code":{"type":["string","null"],"description":"Código CNAE formatado."},"code_digits":{"type":["string","null"],"description":"Código CNAE sem formatação (7 dígitos)."},"description":{"type":["string","null"],"description":"Descrição oficial da subclasse CNAE."},"section":{"type":["string","null"],"description":"Seção CNAE."},"division":{"type":["string","null"],"description":"Divisão CNAE."},"group":{"type":["string","null"],"description":"Grupo CNAE."},"class":{"type":["string","null"],"description":"Classe CNAE."}}},"CursorPaginateMeta":{"type":"object","additionalProperties":false,"required":["limit","has_next_page","has_previous_page","start_cursor","end_cursor"],"properties":{"limit":{"type":"integer","minimum":10,"maximum":100},"has_next_page":{"type":"boolean"},"has_previous_page":{"type":"boolean"},"start_cursor":{"type":["string","null"]},"end_cursor":{"type":["string","null"]}}}}}}
```

## The ServiceNationalCodeReferenceItem object

```json
{"openapi":"3.1.1","info":{"title":"API IXC E-Docs - Integração x-api-key","version":"0.1.0"},"components":{"schemas":{"ServiceNationalCodeReferenceItem":{"type":"object","additionalProperties":false,"required":["id"],"properties":{"id":{"type":"string","description":"Identificador lógico do item (código nacional do serviço com 6 dígitos)."},"code":{"type":["string","null"],"description":"Código nacional do serviço (`cTribNac`)."},"description":{"type":["string","null"],"description":"Descrição oficial do serviço usada no Ambiente Nacional."}}}}}}
```

## The ServiceNationalCodeReferenceListResponse object

```json
{"openapi":"3.1.1","info":{"title":"API IXC E-Docs - Integração x-api-key","version":"0.1.0"},"components":{"schemas":{"ServiceNationalCodeReferenceListResponse":{"type":"object","additionalProperties":false,"required":["items","paginate"],"properties":{"items":{"type":"array","items":{"$ref":"#/components/schemas/ServiceNationalCodeReferenceItem"}},"paginate":{"$ref":"#/components/schemas/CursorPaginateMeta"}}},"ServiceNationalCodeReferenceItem":{"type":"object","additionalProperties":false,"required":["id"],"properties":{"id":{"type":"string","description":"Identificador lógico do item (código nacional do serviço com 6 dígitos)."},"code":{"type":["string","null"],"description":"Código nacional do serviço (`cTribNac`)."},"description":{"type":["string","null"],"description":"Descrição oficial do serviço usada no Ambiente Nacional."}}},"CursorPaginateMeta":{"type":"object","additionalProperties":false,"required":["limit","has_next_page","has_previous_page","start_cursor","end_cursor"],"properties":{"limit":{"type":"integer","minimum":10,"maximum":100},"has_next_page":{"type":"boolean"},"has_previous_page":{"type":"boolean"},"start_cursor":{"type":["string","null"]},"end_cursor":{"type":["string","null"]}}}}}}
```

## The NbsCodeReferenceItem object

```json
{"openapi":"3.1.1","info":{"title":"API IXC E-Docs - Integração x-api-key","version":"0.1.0"},"components":{"schemas":{"NbsCodeReferenceItem":{"type":"object","additionalProperties":false,"required":["id"],"properties":{"id":{"type":"string","description":"Identificador lógico do item (código NBS com 9 dígitos)."},"code":{"type":["string","null"],"description":"Código NBS (`cNBS`)."},"description":{"type":["string","null"],"description":"Descrição oficial do código NBS."}}}}}}
```

## The NbsCodeReferenceListResponse object

```json
{"openapi":"3.1.1","info":{"title":"API IXC E-Docs - Integração x-api-key","version":"0.1.0"},"components":{"schemas":{"NbsCodeReferenceListResponse":{"type":"object","additionalProperties":false,"required":["items","paginate"],"properties":{"items":{"type":"array","items":{"$ref":"#/components/schemas/NbsCodeReferenceItem"}},"paginate":{"$ref":"#/components/schemas/CursorPaginateMeta"}}},"NbsCodeReferenceItem":{"type":"object","additionalProperties":false,"required":["id"],"properties":{"id":{"type":"string","description":"Identificador lógico do item (código NBS com 9 dígitos)."},"code":{"type":["string","null"],"description":"Código NBS (`cNBS`)."},"description":{"type":["string","null"],"description":"Descrição oficial do código NBS."}}},"CursorPaginateMeta":{"type":"object","additionalProperties":false,"required":["limit","has_next_page","has_previous_page","start_cursor","end_cursor"],"properties":{"limit":{"type":"integer","minimum":10,"maximum":100},"has_next_page":{"type":"boolean"},"has_previous_page":{"type":"boolean"},"start_cursor":{"type":["string","null"]},"end_cursor":{"type":["string","null"]}}}}}}
```

## The WebhookListResponse object

```json
{"openapi":"3.1.1","info":{"title":"API IXC E-Docs - Integração x-api-key","version":"0.1.0"},"components":{"schemas":{"WebhookListResponse":{"type":"object","additionalProperties":false,"required":["items","paginate"],"properties":{"items":{"type":"array","items":{"$ref":"#/components/schemas/WebhookResponse"}},"paginate":{"$ref":"#/components/schemas/CursorPaginateMeta"}}},"WebhookResponse":{"type":"object","additionalProperties":false,"required":["id","name","events","url","active","security_token_type"],"properties":{"id":{"$ref":"#/components/schemas/ObjectId"},"name":{"type":"string"},"events":{"type":"array","items":{"$ref":"#/components/schemas/WebhookEvent"}},"url":{"type":"string","format":"uri"},"active":{"type":"boolean"},"security_token_type":{"$ref":"#/components/schemas/WebhookSecurityTokenType"},"security_token":{"type":["string","null"],"description":"Token de segurança mascarado na leitura (`********`) quando configurado."},"company_id":{"oneOf":[{"$ref":"#/components/schemas/ObjectId"},{"type":"null"}]},"company":{"oneOf":[{"$ref":"#/components/schemas/WebhookCompany"},{"type":"null"}]},"created_at":{"type":"string","format":"date-time"},"updated_at":{"type":"string","format":"date-time"}}},"ObjectId":{"type":"string","description":"Identificador no formato ObjectId."},"WebhookEvent":{"type":"string","description":"Evento de status publicado para o documento fiscal.\n\nSemântica de cada valor:\n- `nfse_created`: documento criado e aguardando processamento.\n- `nfse_updated`: correção aplicada ao documento já reenfileirado.\n- `nfse_authorized`: documento autorizado no provedor.\n- `nfse_rejected`: documento rejeitado por regra fiscal.\n- `nfse_canceled`: documento cancelado após autorização.\n- `nfse_substituted`: documento anterior marcado como substituído por outra NFS-e autorizada.\n- `nfse_error`: falha técnica ou operacional no processamento da NFS-e.\n- `nfse_unsynced`: NFS-e sem sincronização após esgotar o fluxo assíncrono.\nRecomendação de integração:\n- Tratar eventos como idempotentes e possivelmente fora de ordem.\n- Usar `payload.occurred_at` como referência temporal para decidir aplicação do estado mais recente.","enum":["nfse_created","nfse_updated","nfse_authorized","nfse_rejected","nfse_canceled","nfse_substituted","nfse_error","nfse_unsynced"]},"WebhookSecurityTokenType":{"type":["string","null"],"description":"Controla qual header HTTP recebe o token de segurança do webhook, ou se o envio segue sem autenticação por token.","enum":["x-web-token","bearer",null]},"WebhookCompany":{"type":"object","additionalProperties":false,"properties":{"id":{"oneOf":[{"$ref":"#/components/schemas/ObjectId"},{"type":"null"}]},"name":{"type":["string","null"]},"tax_id":{"type":["string","null"]}}},"CursorPaginateMeta":{"type":"object","additionalProperties":false,"required":["limit","has_next_page","has_previous_page","start_cursor","end_cursor"],"properties":{"limit":{"type":"integer","minimum":10,"maximum":100},"has_next_page":{"type":"boolean"},"has_previous_page":{"type":"boolean"},"start_cursor":{"type":["string","null"]},"end_cursor":{"type":["string","null"]}}}}}}
```

## The WebhookUpdateResponse object

```json
{"openapi":"3.1.1","info":{"title":"API IXC E-Docs - Integração x-api-key","version":"0.1.0"},"components":{"schemas":{"WebhookUpdateResponse":{"type":"boolean","description":"`true` quando o webhook foi atualizado com sucesso."}}}}
```

## The WebhookDeliveryPayload object

```json
{"openapi":"3.1.1","info":{"title":"API IXC E-Docs - Integração x-api-key","version":"0.1.0"},"components":{"schemas":{"WebhookDeliveryPayload":{"oneOf":[{"$ref":"#/components/schemas/WebhookNfseRejectedDeliveryPayload"},{"$ref":"#/components/schemas/WebhookNfseNonRejectedDeliveryPayload"}],"description":"Conteúdo funcional do webhook.\n\nO campo `document_type` discrimina o formato de `document`:\n- `nfse`: payload de NFS-e (`WebhookNfsePayload`).\n\nRecomendação para idempotência:\n- dedupe por `webhook_id + document.id + event + occurred_at`.\n- para fora de ordem, considerar o evento mais recente por `document.id` usando `occurred_at`.\nChecklist de consumo:\n- persistir chave idempotente antes de efeitos externos;\n- descartar evento atrasado (timestamp menor que o último aplicado);\n- responder HTTP `2xx` para duplicados já processados."},"WebhookNfseRejectedDeliveryPayload":{"title":"Callback de NFS-e rejeitada","allOf":[{"$ref":"#/components/schemas/WebhookDeliveryPayloadBase"},{"type":"object","required":["event","document"],"properties":{"event":{"type":"string","const":"nfse_rejected"},"document":{"$ref":"#/components/schemas/WebhookNfseRejectedPayload"}}}]},"WebhookDeliveryPayloadBase":{"type":"object","additionalProperties":true,"description":"Envelope funcional do campo `payload`. Campos extras configurados com `target=payload` também podem aparecer no topo deste objeto sem alterar `document`.","required":["event","webhook_id","occurred_at","document_type","document"],"properties":{"event":{"$ref":"#/components/schemas/WebhookEvent"},"webhook_id":{"allOf":[{"$ref":"#/components/schemas/ObjectId"}],"description":"Identificador do webhook que originou o envio."},"occurred_at":{"type":"string","format":"date-time","description":"Timestamp do evento no domínio. Use este valor para ordenação por documento."},"document_type":{"type":"string","enum":["nfse"]},"document":{"$ref":"#/components/schemas/WebhookNfsePayload","description":"Snapshot do documento para aplicação idempotente do estado no sistema consumidor. O formato acompanha `document_type`."},"is_sandbox":{"type":"boolean","description":"Presente como `true` somente em callbacks originados pelo sandbox interno e-docs."},"environment":{"type":"string","enum":["production","homologation"],"description":"Ambiente fiscal da NFS-e no callback de sandbox interno, quando informado."},"provider":{"type":"string","description":"Provider fiscal da NFS-e no callback de sandbox interno, quando informado."}}},"WebhookEvent":{"type":"string","description":"Evento de status publicado para o documento fiscal.\n\nSemântica de cada valor:\n- `nfse_created`: documento criado e aguardando processamento.\n- `nfse_updated`: correção aplicada ao documento já reenfileirado.\n- `nfse_authorized`: documento autorizado no provedor.\n- `nfse_rejected`: documento rejeitado por regra fiscal.\n- `nfse_canceled`: documento cancelado após autorização.\n- `nfse_substituted`: documento anterior marcado como substituído por outra NFS-e autorizada.\n- `nfse_error`: falha técnica ou operacional no processamento da NFS-e.\n- `nfse_unsynced`: NFS-e sem sincronização após esgotar o fluxo assíncrono.\nRecomendação de integração:\n- Tratar eventos como idempotentes e possivelmente fora de ordem.\n- Usar `payload.occurred_at` como referência temporal para decidir aplicação do estado mais recente.","enum":["nfse_created","nfse_updated","nfse_authorized","nfse_rejected","nfse_canceled","nfse_substituted","nfse_error","nfse_unsynced"]},"ObjectId":{"type":"string","description":"Identificador no formato ObjectId."},"WebhookNfsePayload":{"type":"object","additionalProperties":false,"properties":{"id":{"$ref":"#/components/schemas/ObjectId"},"external_id":{"type":["string","null"]},"number":{"type":["string","null"]},"status":{"type":["string","null"],"description":"Status atual da NFS-e.\n\nObservação:\n- Quando a consulta (sincronização) entra em dead-letter, o status pode ser \"unsynced\".\n- Quando uma NFS-e autorizada é substituída por outra autorizada, o status da nota antiga passa a ser \"substituted\"."},"protocol":{"type":["string","null"]},"authorization":{"type":["string","null"],"description":"Código de verificação retornado pelo provider municipal. No Nacional, a chave fiscal fica em `access_key`."},"access_key":{"type":["string","null"],"description":"Chave de acesso da NFS-e (50 dígitos no padrão nacional, quando disponível no municipal)."},"error_reason":{"type":["string","null"],"description":"Motivo do erro técnico/funcional (quando status=error)."},"cancel_reason":{"type":["string","null"]},"rejection_reason":{"type":["string","null"]},"rejection_details":{"type":["array","null"],"description":"Detalhes estruturados da rejeição fiscal. Em `nfse_rejected`, o webhook sempre publica um array não vazio; quando o provedor retorna apenas `rejection_reason`, a API sintetiza um item com `code=null`, `message=<rejection_reason>` e `correction=null`. Se o provedor marcar a NFS-e como rejeitada sem nenhuma mensagem, a API publica um item com mensagem padrão operacional para preservar o contrato das integrações.","items":{"type":"object","additionalProperties":false,"required":["code","message","correction"],"properties":{"code":{"type":["string","null"]},"message":{"type":"string","minLength":1},"correction":{"type":["string","null"]}}}},"issuer_tax_id":{"type":["string","null"]},"customer_tax_id":{"type":["string","null"]},"batch_number":{"type":["integer","null"],"description":"**Uso desaconselhado.** (Discouraged) Correlação operacional legada sem canônico equivalente. Integrações novas não devem depender deste valor."},"rps_number":{"type":["integer","null"],"description":"**Uso desaconselhado.** (Discouraged) Correlação fiscal municipal legada sem canônico equivalente. Integrações novas não devem depender."},"rps_series":{"type":["string","null"],"description":"**Uso desaconselhado.** (Discouraged) Correlação fiscal municipal legada sem canônico equivalente. Integrações novas não devem depender."},"rps_type":{"type":["string","null"],"description":"**Uso desaconselhado.** (Discouraged) Correlação fiscal municipal legada sem canônico equivalente. Integrações novas não devem depender."},"dps_number":{"type":["integer","null"],"description":"**Uso desaconselhado.** (Discouraged) Correlação fiscal nacional legada sem canônico equivalente. Integrações novas não devem depender."},"dps_series":{"type":["string","null"],"description":"**Uso desaconselhado.** (Discouraged) Correlação fiscal nacional legada sem canônico equivalente. Integrações novas não devem depender."},"dps_type":{"type":["string","null"],"description":"**Uso desaconselhado.** (Discouraged) Correlação fiscal nacional legada sem canônico equivalente. Integrações novas não devem depender."},"total_amount":{"type":["number","null"]},"service_description":{"type":["string","null"],"description":"Descrição do serviço prestado (flat, espelha `nfse.service.description`)."},"emission_datetime":{"type":["string","null"],"format":"date-time","description":"Data/hora de emissão do documento (flat, espelha `nfse.emission_datetime`)."},"competence_datetime":{"type":["string","null"],"format":"date-time","description":"Data de competência do documento (flat, espelha `nfse.competence_datetime`)."},"xml_url":{"type":["string","null"],"description":"URL pública para download do XML autorizado, incluindo `download_token` na querystring."},"danfse_url":{"type":["string","null"],"description":"URL pública para download da DANFSe, incluindo `download_token` na querystring."},"pdf_url":{"type":["string","null"],"description":"**Compatibilidade.** (Compatibility) Alias permanente de `danfse_url` para integrações antigas\n(mesmo formato emitido em webhook). Mantido indefinidamente. Em código novo,\nprefira `danfse_url`.\n"},"authorized_at":{"type":["string","null"],"format":"date-time","description":"Data de autorização pela prefeitura."},"changes":{"type":"array","description":"Campos alterados (presente em `nfse_updated`). Cada item indica campo, valor anterior e novo valor. Não publica `service.national_code` nem `service.national_tax_code`.","items":{"type":"object","additionalProperties":false,"required":["field"],"properties":{"field":{"type":"string"},"from":{"description":"Valor anterior."},"to":{"description":"Novo valor."}}}}}},"WebhookNfseRejectedPayload":{"allOf":[{"$ref":"#/components/schemas/WebhookNfsePayload"},{"type":"object","required":["rejection_details"],"properties":{"rejection_details":{"$ref":"#/components/schemas/WebhookNfseRejectionDetails"}}}]},"WebhookNfseRejectionDetails":{"type":"array","minItems":1,"description":"Detalhes estruturados obrigatórios no callback `nfse_rejected`.","items":{"type":"object","additionalProperties":false,"required":["code","message","correction"],"properties":{"code":{"type":["string","null"]},"message":{"type":"string","minLength":1},"correction":{"type":["string","null"]}}}},"WebhookNfseNonRejectedDeliveryPayload":{"title":"Callback de NFS-e não rejeitada","allOf":[{"$ref":"#/components/schemas/WebhookDeliveryPayloadBase"},{"type":"object","required":["event"],"properties":{"event":{"type":"string","enum":["nfse_created","nfse_updated","nfse_authorized","nfse_canceled","nfse_substituted","nfse_error","nfse_unsynced"]}}}]}}}}
```

## The WebhookDeliveryPayloadBase object

```json
{"openapi":"3.1.1","info":{"title":"API IXC E-Docs - Integração x-api-key","version":"0.1.0"},"components":{"schemas":{"WebhookDeliveryPayloadBase":{"type":"object","additionalProperties":true,"description":"Envelope funcional do campo `payload`. Campos extras configurados com `target=payload` também podem aparecer no topo deste objeto sem alterar `document`.","required":["event","webhook_id","occurred_at","document_type","document"],"properties":{"event":{"$ref":"#/components/schemas/WebhookEvent"},"webhook_id":{"allOf":[{"$ref":"#/components/schemas/ObjectId"}],"description":"Identificador do webhook que originou o envio."},"occurred_at":{"type":"string","format":"date-time","description":"Timestamp do evento no domínio. Use este valor para ordenação por documento."},"document_type":{"type":"string","enum":["nfse"]},"document":{"$ref":"#/components/schemas/WebhookNfsePayload","description":"Snapshot do documento para aplicação idempotente do estado no sistema consumidor. O formato acompanha `document_type`."},"is_sandbox":{"type":"boolean","description":"Presente como `true` somente em callbacks originados pelo sandbox interno e-docs."},"environment":{"type":"string","enum":["production","homologation"],"description":"Ambiente fiscal da NFS-e no callback de sandbox interno, quando informado."},"provider":{"type":"string","description":"Provider fiscal da NFS-e no callback de sandbox interno, quando informado."}}},"WebhookEvent":{"type":"string","description":"Evento de status publicado para o documento fiscal.\n\nSemântica de cada valor:\n- `nfse_created`: documento criado e aguardando processamento.\n- `nfse_updated`: correção aplicada ao documento já reenfileirado.\n- `nfse_authorized`: documento autorizado no provedor.\n- `nfse_rejected`: documento rejeitado por regra fiscal.\n- `nfse_canceled`: documento cancelado após autorização.\n- `nfse_substituted`: documento anterior marcado como substituído por outra NFS-e autorizada.\n- `nfse_error`: falha técnica ou operacional no processamento da NFS-e.\n- `nfse_unsynced`: NFS-e sem sincronização após esgotar o fluxo assíncrono.\nRecomendação de integração:\n- Tratar eventos como idempotentes e possivelmente fora de ordem.\n- Usar `payload.occurred_at` como referência temporal para decidir aplicação do estado mais recente.","enum":["nfse_created","nfse_updated","nfse_authorized","nfse_rejected","nfse_canceled","nfse_substituted","nfse_error","nfse_unsynced"]},"ObjectId":{"type":"string","description":"Identificador no formato ObjectId."},"WebhookNfsePayload":{"type":"object","additionalProperties":false,"properties":{"id":{"$ref":"#/components/schemas/ObjectId"},"external_id":{"type":["string","null"]},"number":{"type":["string","null"]},"status":{"type":["string","null"],"description":"Status atual da NFS-e.\n\nObservação:\n- Quando a consulta (sincronização) entra em dead-letter, o status pode ser \"unsynced\".\n- Quando uma NFS-e autorizada é substituída por outra autorizada, o status da nota antiga passa a ser \"substituted\"."},"protocol":{"type":["string","null"]},"authorization":{"type":["string","null"],"description":"Código de verificação retornado pelo provider municipal. No Nacional, a chave fiscal fica em `access_key`."},"access_key":{"type":["string","null"],"description":"Chave de acesso da NFS-e (50 dígitos no padrão nacional, quando disponível no municipal)."},"error_reason":{"type":["string","null"],"description":"Motivo do erro técnico/funcional (quando status=error)."},"cancel_reason":{"type":["string","null"]},"rejection_reason":{"type":["string","null"]},"rejection_details":{"type":["array","null"],"description":"Detalhes estruturados da rejeição fiscal. Em `nfse_rejected`, o webhook sempre publica um array não vazio; quando o provedor retorna apenas `rejection_reason`, a API sintetiza um item com `code=null`, `message=<rejection_reason>` e `correction=null`. Se o provedor marcar a NFS-e como rejeitada sem nenhuma mensagem, a API publica um item com mensagem padrão operacional para preservar o contrato das integrações.","items":{"type":"object","additionalProperties":false,"required":["code","message","correction"],"properties":{"code":{"type":["string","null"]},"message":{"type":"string","minLength":1},"correction":{"type":["string","null"]}}}},"issuer_tax_id":{"type":["string","null"]},"customer_tax_id":{"type":["string","null"]},"batch_number":{"type":["integer","null"],"description":"**Uso desaconselhado.** (Discouraged) Correlação operacional legada sem canônico equivalente. Integrações novas não devem depender deste valor."},"rps_number":{"type":["integer","null"],"description":"**Uso desaconselhado.** (Discouraged) Correlação fiscal municipal legada sem canônico equivalente. Integrações novas não devem depender."},"rps_series":{"type":["string","null"],"description":"**Uso desaconselhado.** (Discouraged) Correlação fiscal municipal legada sem canônico equivalente. Integrações novas não devem depender."},"rps_type":{"type":["string","null"],"description":"**Uso desaconselhado.** (Discouraged) Correlação fiscal municipal legada sem canônico equivalente. Integrações novas não devem depender."},"dps_number":{"type":["integer","null"],"description":"**Uso desaconselhado.** (Discouraged) Correlação fiscal nacional legada sem canônico equivalente. Integrações novas não devem depender."},"dps_series":{"type":["string","null"],"description":"**Uso desaconselhado.** (Discouraged) Correlação fiscal nacional legada sem canônico equivalente. Integrações novas não devem depender."},"dps_type":{"type":["string","null"],"description":"**Uso desaconselhado.** (Discouraged) Correlação fiscal nacional legada sem canônico equivalente. Integrações novas não devem depender."},"total_amount":{"type":["number","null"]},"service_description":{"type":["string","null"],"description":"Descrição do serviço prestado (flat, espelha `nfse.service.description`)."},"emission_datetime":{"type":["string","null"],"format":"date-time","description":"Data/hora de emissão do documento (flat, espelha `nfse.emission_datetime`)."},"competence_datetime":{"type":["string","null"],"format":"date-time","description":"Data de competência do documento (flat, espelha `nfse.competence_datetime`)."},"xml_url":{"type":["string","null"],"description":"URL pública para download do XML autorizado, incluindo `download_token` na querystring."},"danfse_url":{"type":["string","null"],"description":"URL pública para download da DANFSe, incluindo `download_token` na querystring."},"pdf_url":{"type":["string","null"],"description":"**Compatibilidade.** (Compatibility) Alias permanente de `danfse_url` para integrações antigas\n(mesmo formato emitido em webhook). Mantido indefinidamente. Em código novo,\nprefira `danfse_url`.\n"},"authorized_at":{"type":["string","null"],"format":"date-time","description":"Data de autorização pela prefeitura."},"changes":{"type":"array","description":"Campos alterados (presente em `nfse_updated`). Cada item indica campo, valor anterior e novo valor. Não publica `service.national_code` nem `service.national_tax_code`.","items":{"type":"object","additionalProperties":false,"required":["field"],"properties":{"field":{"type":"string"},"from":{"description":"Valor anterior."},"to":{"description":"Novo valor."}}}}}}}}}
```

## The WebhookNfseRejectedDeliveryPayload object

```json
{"openapi":"3.1.1","info":{"title":"API IXC E-Docs - Integração x-api-key","version":"0.1.0"},"components":{"schemas":{"WebhookNfseRejectedDeliveryPayload":{"title":"Callback de NFS-e rejeitada","allOf":[{"$ref":"#/components/schemas/WebhookDeliveryPayloadBase"},{"type":"object","required":["event","document"],"properties":{"event":{"type":"string","const":"nfse_rejected"},"document":{"$ref":"#/components/schemas/WebhookNfseRejectedPayload"}}}]},"WebhookDeliveryPayloadBase":{"type":"object","additionalProperties":true,"description":"Envelope funcional do campo `payload`. Campos extras configurados com `target=payload` também podem aparecer no topo deste objeto sem alterar `document`.","required":["event","webhook_id","occurred_at","document_type","document"],"properties":{"event":{"$ref":"#/components/schemas/WebhookEvent"},"webhook_id":{"allOf":[{"$ref":"#/components/schemas/ObjectId"}],"description":"Identificador do webhook que originou o envio."},"occurred_at":{"type":"string","format":"date-time","description":"Timestamp do evento no domínio. Use este valor para ordenação por documento."},"document_type":{"type":"string","enum":["nfse"]},"document":{"$ref":"#/components/schemas/WebhookNfsePayload","description":"Snapshot do documento para aplicação idempotente do estado no sistema consumidor. O formato acompanha `document_type`."},"is_sandbox":{"type":"boolean","description":"Presente como `true` somente em callbacks originados pelo sandbox interno e-docs."},"environment":{"type":"string","enum":["production","homologation"],"description":"Ambiente fiscal da NFS-e no callback de sandbox interno, quando informado."},"provider":{"type":"string","description":"Provider fiscal da NFS-e no callback de sandbox interno, quando informado."}}},"WebhookEvent":{"type":"string","description":"Evento de status publicado para o documento fiscal.\n\nSemântica de cada valor:\n- `nfse_created`: documento criado e aguardando processamento.\n- `nfse_updated`: correção aplicada ao documento já reenfileirado.\n- `nfse_authorized`: documento autorizado no provedor.\n- `nfse_rejected`: documento rejeitado por regra fiscal.\n- `nfse_canceled`: documento cancelado após autorização.\n- `nfse_substituted`: documento anterior marcado como substituído por outra NFS-e autorizada.\n- `nfse_error`: falha técnica ou operacional no processamento da NFS-e.\n- `nfse_unsynced`: NFS-e sem sincronização após esgotar o fluxo assíncrono.\nRecomendação de integração:\n- Tratar eventos como idempotentes e possivelmente fora de ordem.\n- Usar `payload.occurred_at` como referência temporal para decidir aplicação do estado mais recente.","enum":["nfse_created","nfse_updated","nfse_authorized","nfse_rejected","nfse_canceled","nfse_substituted","nfse_error","nfse_unsynced"]},"ObjectId":{"type":"string","description":"Identificador no formato ObjectId."},"WebhookNfsePayload":{"type":"object","additionalProperties":false,"properties":{"id":{"$ref":"#/components/schemas/ObjectId"},"external_id":{"type":["string","null"]},"number":{"type":["string","null"]},"status":{"type":["string","null"],"description":"Status atual da NFS-e.\n\nObservação:\n- Quando a consulta (sincronização) entra em dead-letter, o status pode ser \"unsynced\".\n- Quando uma NFS-e autorizada é substituída por outra autorizada, o status da nota antiga passa a ser \"substituted\"."},"protocol":{"type":["string","null"]},"authorization":{"type":["string","null"],"description":"Código de verificação retornado pelo provider municipal. No Nacional, a chave fiscal fica em `access_key`."},"access_key":{"type":["string","null"],"description":"Chave de acesso da NFS-e (50 dígitos no padrão nacional, quando disponível no municipal)."},"error_reason":{"type":["string","null"],"description":"Motivo do erro técnico/funcional (quando status=error)."},"cancel_reason":{"type":["string","null"]},"rejection_reason":{"type":["string","null"]},"rejection_details":{"type":["array","null"],"description":"Detalhes estruturados da rejeição fiscal. Em `nfse_rejected`, o webhook sempre publica um array não vazio; quando o provedor retorna apenas `rejection_reason`, a API sintetiza um item com `code=null`, `message=<rejection_reason>` e `correction=null`. Se o provedor marcar a NFS-e como rejeitada sem nenhuma mensagem, a API publica um item com mensagem padrão operacional para preservar o contrato das integrações.","items":{"type":"object","additionalProperties":false,"required":["code","message","correction"],"properties":{"code":{"type":["string","null"]},"message":{"type":"string","minLength":1},"correction":{"type":["string","null"]}}}},"issuer_tax_id":{"type":["string","null"]},"customer_tax_id":{"type":["string","null"]},"batch_number":{"type":["integer","null"],"description":"**Uso desaconselhado.** (Discouraged) Correlação operacional legada sem canônico equivalente. Integrações novas não devem depender deste valor."},"rps_number":{"type":["integer","null"],"description":"**Uso desaconselhado.** (Discouraged) Correlação fiscal municipal legada sem canônico equivalente. Integrações novas não devem depender."},"rps_series":{"type":["string","null"],"description":"**Uso desaconselhado.** (Discouraged) Correlação fiscal municipal legada sem canônico equivalente. Integrações novas não devem depender."},"rps_type":{"type":["string","null"],"description":"**Uso desaconselhado.** (Discouraged) Correlação fiscal municipal legada sem canônico equivalente. Integrações novas não devem depender."},"dps_number":{"type":["integer","null"],"description":"**Uso desaconselhado.** (Discouraged) Correlação fiscal nacional legada sem canônico equivalente. Integrações novas não devem depender."},"dps_series":{"type":["string","null"],"description":"**Uso desaconselhado.** (Discouraged) Correlação fiscal nacional legada sem canônico equivalente. Integrações novas não devem depender."},"dps_type":{"type":["string","null"],"description":"**Uso desaconselhado.** (Discouraged) Correlação fiscal nacional legada sem canônico equivalente. Integrações novas não devem depender."},"total_amount":{"type":["number","null"]},"service_description":{"type":["string","null"],"description":"Descrição do serviço prestado (flat, espelha `nfse.service.description`)."},"emission_datetime":{"type":["string","null"],"format":"date-time","description":"Data/hora de emissão do documento (flat, espelha `nfse.emission_datetime`)."},"competence_datetime":{"type":["string","null"],"format":"date-time","description":"Data de competência do documento (flat, espelha `nfse.competence_datetime`)."},"xml_url":{"type":["string","null"],"description":"URL pública para download do XML autorizado, incluindo `download_token` na querystring."},"danfse_url":{"type":["string","null"],"description":"URL pública para download da DANFSe, incluindo `download_token` na querystring."},"pdf_url":{"type":["string","null"],"description":"**Compatibilidade.** (Compatibility) Alias permanente de `danfse_url` para integrações antigas\n(mesmo formato emitido em webhook). Mantido indefinidamente. Em código novo,\nprefira `danfse_url`.\n"},"authorized_at":{"type":["string","null"],"format":"date-time","description":"Data de autorização pela prefeitura."},"changes":{"type":"array","description":"Campos alterados (presente em `nfse_updated`). Cada item indica campo, valor anterior e novo valor. Não publica `service.national_code` nem `service.national_tax_code`.","items":{"type":"object","additionalProperties":false,"required":["field"],"properties":{"field":{"type":"string"},"from":{"description":"Valor anterior."},"to":{"description":"Novo valor."}}}}}},"WebhookNfseRejectedPayload":{"allOf":[{"$ref":"#/components/schemas/WebhookNfsePayload"},{"type":"object","required":["rejection_details"],"properties":{"rejection_details":{"$ref":"#/components/schemas/WebhookNfseRejectionDetails"}}}]},"WebhookNfseRejectionDetails":{"type":"array","minItems":1,"description":"Detalhes estruturados obrigatórios no callback `nfse_rejected`.","items":{"type":"object","additionalProperties":false,"required":["code","message","correction"],"properties":{"code":{"type":["string","null"]},"message":{"type":"string","minLength":1},"correction":{"type":["string","null"]}}}}}}}
```

## The WebhookNfseNonRejectedDeliveryPayload object

```json
{"openapi":"3.1.1","info":{"title":"API IXC E-Docs - Integração x-api-key","version":"0.1.0"},"components":{"schemas":{"WebhookNfseNonRejectedDeliveryPayload":{"title":"Callback de NFS-e não rejeitada","allOf":[{"$ref":"#/components/schemas/WebhookDeliveryPayloadBase"},{"type":"object","required":["event"],"properties":{"event":{"type":"string","enum":["nfse_created","nfse_updated","nfse_authorized","nfse_canceled","nfse_substituted","nfse_error","nfse_unsynced"]}}}]},"WebhookDeliveryPayloadBase":{"type":"object","additionalProperties":true,"description":"Envelope funcional do campo `payload`. Campos extras configurados com `target=payload` também podem aparecer no topo deste objeto sem alterar `document`.","required":["event","webhook_id","occurred_at","document_type","document"],"properties":{"event":{"$ref":"#/components/schemas/WebhookEvent"},"webhook_id":{"allOf":[{"$ref":"#/components/schemas/ObjectId"}],"description":"Identificador do webhook que originou o envio."},"occurred_at":{"type":"string","format":"date-time","description":"Timestamp do evento no domínio. Use este valor para ordenação por documento."},"document_type":{"type":"string","enum":["nfse"]},"document":{"$ref":"#/components/schemas/WebhookNfsePayload","description":"Snapshot do documento para aplicação idempotente do estado no sistema consumidor. O formato acompanha `document_type`."},"is_sandbox":{"type":"boolean","description":"Presente como `true` somente em callbacks originados pelo sandbox interno e-docs."},"environment":{"type":"string","enum":["production","homologation"],"description":"Ambiente fiscal da NFS-e no callback de sandbox interno, quando informado."},"provider":{"type":"string","description":"Provider fiscal da NFS-e no callback de sandbox interno, quando informado."}}},"WebhookEvent":{"type":"string","description":"Evento de status publicado para o documento fiscal.\n\nSemântica de cada valor:\n- `nfse_created`: documento criado e aguardando processamento.\n- `nfse_updated`: correção aplicada ao documento já reenfileirado.\n- `nfse_authorized`: documento autorizado no provedor.\n- `nfse_rejected`: documento rejeitado por regra fiscal.\n- `nfse_canceled`: documento cancelado após autorização.\n- `nfse_substituted`: documento anterior marcado como substituído por outra NFS-e autorizada.\n- `nfse_error`: falha técnica ou operacional no processamento da NFS-e.\n- `nfse_unsynced`: NFS-e sem sincronização após esgotar o fluxo assíncrono.\nRecomendação de integração:\n- Tratar eventos como idempotentes e possivelmente fora de ordem.\n- Usar `payload.occurred_at` como referência temporal para decidir aplicação do estado mais recente.","enum":["nfse_created","nfse_updated","nfse_authorized","nfse_rejected","nfse_canceled","nfse_substituted","nfse_error","nfse_unsynced"]},"ObjectId":{"type":"string","description":"Identificador no formato ObjectId."},"WebhookNfsePayload":{"type":"object","additionalProperties":false,"properties":{"id":{"$ref":"#/components/schemas/ObjectId"},"external_id":{"type":["string","null"]},"number":{"type":["string","null"]},"status":{"type":["string","null"],"description":"Status atual da NFS-e.\n\nObservação:\n- Quando a consulta (sincronização) entra em dead-letter, o status pode ser \"unsynced\".\n- Quando uma NFS-e autorizada é substituída por outra autorizada, o status da nota antiga passa a ser \"substituted\"."},"protocol":{"type":["string","null"]},"authorization":{"type":["string","null"],"description":"Código de verificação retornado pelo provider municipal. No Nacional, a chave fiscal fica em `access_key`."},"access_key":{"type":["string","null"],"description":"Chave de acesso da NFS-e (50 dígitos no padrão nacional, quando disponível no municipal)."},"error_reason":{"type":["string","null"],"description":"Motivo do erro técnico/funcional (quando status=error)."},"cancel_reason":{"type":["string","null"]},"rejection_reason":{"type":["string","null"]},"rejection_details":{"type":["array","null"],"description":"Detalhes estruturados da rejeição fiscal. Em `nfse_rejected`, o webhook sempre publica um array não vazio; quando o provedor retorna apenas `rejection_reason`, a API sintetiza um item com `code=null`, `message=<rejection_reason>` e `correction=null`. Se o provedor marcar a NFS-e como rejeitada sem nenhuma mensagem, a API publica um item com mensagem padrão operacional para preservar o contrato das integrações.","items":{"type":"object","additionalProperties":false,"required":["code","message","correction"],"properties":{"code":{"type":["string","null"]},"message":{"type":"string","minLength":1},"correction":{"type":["string","null"]}}}},"issuer_tax_id":{"type":["string","null"]},"customer_tax_id":{"type":["string","null"]},"batch_number":{"type":["integer","null"],"description":"**Uso desaconselhado.** (Discouraged) Correlação operacional legada sem canônico equivalente. Integrações novas não devem depender deste valor."},"rps_number":{"type":["integer","null"],"description":"**Uso desaconselhado.** (Discouraged) Correlação fiscal municipal legada sem canônico equivalente. Integrações novas não devem depender."},"rps_series":{"type":["string","null"],"description":"**Uso desaconselhado.** (Discouraged) Correlação fiscal municipal legada sem canônico equivalente. Integrações novas não devem depender."},"rps_type":{"type":["string","null"],"description":"**Uso desaconselhado.** (Discouraged) Correlação fiscal municipal legada sem canônico equivalente. Integrações novas não devem depender."},"dps_number":{"type":["integer","null"],"description":"**Uso desaconselhado.** (Discouraged) Correlação fiscal nacional legada sem canônico equivalente. Integrações novas não devem depender."},"dps_series":{"type":["string","null"],"description":"**Uso desaconselhado.** (Discouraged) Correlação fiscal nacional legada sem canônico equivalente. Integrações novas não devem depender."},"dps_type":{"type":["string","null"],"description":"**Uso desaconselhado.** (Discouraged) Correlação fiscal nacional legada sem canônico equivalente. Integrações novas não devem depender."},"total_amount":{"type":["number","null"]},"service_description":{"type":["string","null"],"description":"Descrição do serviço prestado (flat, espelha `nfse.service.description`)."},"emission_datetime":{"type":["string","null"],"format":"date-time","description":"Data/hora de emissão do documento (flat, espelha `nfse.emission_datetime`)."},"competence_datetime":{"type":["string","null"],"format":"date-time","description":"Data de competência do documento (flat, espelha `nfse.competence_datetime`)."},"xml_url":{"type":["string","null"],"description":"URL pública para download do XML autorizado, incluindo `download_token` na querystring."},"danfse_url":{"type":["string","null"],"description":"URL pública para download da DANFSe, incluindo `download_token` na querystring."},"pdf_url":{"type":["string","null"],"description":"**Compatibilidade.** (Compatibility) Alias permanente de `danfse_url` para integrações antigas\n(mesmo formato emitido em webhook). Mantido indefinidamente. Em código novo,\nprefira `danfse_url`.\n"},"authorized_at":{"type":["string","null"],"format":"date-time","description":"Data de autorização pela prefeitura."},"changes":{"type":"array","description":"Campos alterados (presente em `nfse_updated`). Cada item indica campo, valor anterior e novo valor. Não publica `service.national_code` nem `service.national_tax_code`.","items":{"type":"object","additionalProperties":false,"required":["field"],"properties":{"field":{"type":"string"},"from":{"description":"Valor anterior."},"to":{"description":"Novo valor."}}}}}}}}}
```

## The WebhookNfseRejectionDetails object

```json
{"openapi":"3.1.1","info":{"title":"API IXC E-Docs - Integração x-api-key","version":"0.1.0"},"components":{"schemas":{"WebhookNfseRejectionDetails":{"type":"array","minItems":1,"description":"Detalhes estruturados obrigatórios no callback `nfse_rejected`.","items":{"type":"object","additionalProperties":false,"required":["code","message","correction"],"properties":{"code":{"type":["string","null"]},"message":{"type":"string","minLength":1},"correction":{"type":["string","null"]}}}}}}}
```

## The WebhookNfseRejectedPayload object

```json
{"openapi":"3.1.1","info":{"title":"API IXC E-Docs - Integração x-api-key","version":"0.1.0"},"components":{"schemas":{"WebhookNfseRejectedPayload":{"allOf":[{"$ref":"#/components/schemas/WebhookNfsePayload"},{"type":"object","required":["rejection_details"],"properties":{"rejection_details":{"$ref":"#/components/schemas/WebhookNfseRejectionDetails"}}}]},"WebhookNfsePayload":{"type":"object","additionalProperties":false,"properties":{"id":{"$ref":"#/components/schemas/ObjectId"},"external_id":{"type":["string","null"]},"number":{"type":["string","null"]},"status":{"type":["string","null"],"description":"Status atual da NFS-e.\n\nObservação:\n- Quando a consulta (sincronização) entra em dead-letter, o status pode ser \"unsynced\".\n- Quando uma NFS-e autorizada é substituída por outra autorizada, o status da nota antiga passa a ser \"substituted\"."},"protocol":{"type":["string","null"]},"authorization":{"type":["string","null"],"description":"Código de verificação retornado pelo provider municipal. No Nacional, a chave fiscal fica em `access_key`."},"access_key":{"type":["string","null"],"description":"Chave de acesso da NFS-e (50 dígitos no padrão nacional, quando disponível no municipal)."},"error_reason":{"type":["string","null"],"description":"Motivo do erro técnico/funcional (quando status=error)."},"cancel_reason":{"type":["string","null"]},"rejection_reason":{"type":["string","null"]},"rejection_details":{"type":["array","null"],"description":"Detalhes estruturados da rejeição fiscal. Em `nfse_rejected`, o webhook sempre publica um array não vazio; quando o provedor retorna apenas `rejection_reason`, a API sintetiza um item com `code=null`, `message=<rejection_reason>` e `correction=null`. Se o provedor marcar a NFS-e como rejeitada sem nenhuma mensagem, a API publica um item com mensagem padrão operacional para preservar o contrato das integrações.","items":{"type":"object","additionalProperties":false,"required":["code","message","correction"],"properties":{"code":{"type":["string","null"]},"message":{"type":"string","minLength":1},"correction":{"type":["string","null"]}}}},"issuer_tax_id":{"type":["string","null"]},"customer_tax_id":{"type":["string","null"]},"batch_number":{"type":["integer","null"],"description":"**Uso desaconselhado.** (Discouraged) Correlação operacional legada sem canônico equivalente. Integrações novas não devem depender deste valor."},"rps_number":{"type":["integer","null"],"description":"**Uso desaconselhado.** (Discouraged) Correlação fiscal municipal legada sem canônico equivalente. Integrações novas não devem depender."},"rps_series":{"type":["string","null"],"description":"**Uso desaconselhado.** (Discouraged) Correlação fiscal municipal legada sem canônico equivalente. Integrações novas não devem depender."},"rps_type":{"type":["string","null"],"description":"**Uso desaconselhado.** (Discouraged) Correlação fiscal municipal legada sem canônico equivalente. Integrações novas não devem depender."},"dps_number":{"type":["integer","null"],"description":"**Uso desaconselhado.** (Discouraged) Correlação fiscal nacional legada sem canônico equivalente. Integrações novas não devem depender."},"dps_series":{"type":["string","null"],"description":"**Uso desaconselhado.** (Discouraged) Correlação fiscal nacional legada sem canônico equivalente. Integrações novas não devem depender."},"dps_type":{"type":["string","null"],"description":"**Uso desaconselhado.** (Discouraged) Correlação fiscal nacional legada sem canônico equivalente. Integrações novas não devem depender."},"total_amount":{"type":["number","null"]},"service_description":{"type":["string","null"],"description":"Descrição do serviço prestado (flat, espelha `nfse.service.description`)."},"emission_datetime":{"type":["string","null"],"format":"date-time","description":"Data/hora de emissão do documento (flat, espelha `nfse.emission_datetime`)."},"competence_datetime":{"type":["string","null"],"format":"date-time","description":"Data de competência do documento (flat, espelha `nfse.competence_datetime`)."},"xml_url":{"type":["string","null"],"description":"URL pública para download do XML autorizado, incluindo `download_token` na querystring."},"danfse_url":{"type":["string","null"],"description":"URL pública para download da DANFSe, incluindo `download_token` na querystring."},"pdf_url":{"type":["string","null"],"description":"**Compatibilidade.** (Compatibility) Alias permanente de `danfse_url` para integrações antigas\n(mesmo formato emitido em webhook). Mantido indefinidamente. Em código novo,\nprefira `danfse_url`.\n"},"authorized_at":{"type":["string","null"],"format":"date-time","description":"Data de autorização pela prefeitura."},"changes":{"type":"array","description":"Campos alterados (presente em `nfse_updated`). Cada item indica campo, valor anterior e novo valor. Não publica `service.national_code` nem `service.national_tax_code`.","items":{"type":"object","additionalProperties":false,"required":["field"],"properties":{"field":{"type":"string"},"from":{"description":"Valor anterior."},"to":{"description":"Novo valor."}}}}}},"ObjectId":{"type":"string","description":"Identificador no formato ObjectId."},"WebhookNfseRejectionDetails":{"type":"array","minItems":1,"description":"Detalhes estruturados obrigatórios no callback `nfse_rejected`.","items":{"type":"object","additionalProperties":false,"required":["code","message","correction"],"properties":{"code":{"type":["string","null"]},"message":{"type":"string","minLength":1},"correction":{"type":["string","null"]}}}}}}}
```

## The WebhookNfsePayload object

```json
{"openapi":"3.1.1","info":{"title":"API IXC E-Docs - Integração x-api-key","version":"0.1.0"},"components":{"schemas":{"WebhookNfsePayload":{"type":"object","additionalProperties":false,"properties":{"id":{"$ref":"#/components/schemas/ObjectId"},"external_id":{"type":["string","null"]},"number":{"type":["string","null"]},"status":{"type":["string","null"],"description":"Status atual da NFS-e.\n\nObservação:\n- Quando a consulta (sincronização) entra em dead-letter, o status pode ser \"unsynced\".\n- Quando uma NFS-e autorizada é substituída por outra autorizada, o status da nota antiga passa a ser \"substituted\"."},"protocol":{"type":["string","null"]},"authorization":{"type":["string","null"],"description":"Código de verificação retornado pelo provider municipal. No Nacional, a chave fiscal fica em `access_key`."},"access_key":{"type":["string","null"],"description":"Chave de acesso da NFS-e (50 dígitos no padrão nacional, quando disponível no municipal)."},"error_reason":{"type":["string","null"],"description":"Motivo do erro técnico/funcional (quando status=error)."},"cancel_reason":{"type":["string","null"]},"rejection_reason":{"type":["string","null"]},"rejection_details":{"type":["array","null"],"description":"Detalhes estruturados da rejeição fiscal. Em `nfse_rejected`, o webhook sempre publica um array não vazio; quando o provedor retorna apenas `rejection_reason`, a API sintetiza um item com `code=null`, `message=<rejection_reason>` e `correction=null`. Se o provedor marcar a NFS-e como rejeitada sem nenhuma mensagem, a API publica um item com mensagem padrão operacional para preservar o contrato das integrações.","items":{"type":"object","additionalProperties":false,"required":["code","message","correction"],"properties":{"code":{"type":["string","null"]},"message":{"type":"string","minLength":1},"correction":{"type":["string","null"]}}}},"issuer_tax_id":{"type":["string","null"]},"customer_tax_id":{"type":["string","null"]},"batch_number":{"type":["integer","null"],"description":"**Uso desaconselhado.** (Discouraged) Correlação operacional legada sem canônico equivalente. Integrações novas não devem depender deste valor."},"rps_number":{"type":["integer","null"],"description":"**Uso desaconselhado.** (Discouraged) Correlação fiscal municipal legada sem canônico equivalente. Integrações novas não devem depender."},"rps_series":{"type":["string","null"],"description":"**Uso desaconselhado.** (Discouraged) Correlação fiscal municipal legada sem canônico equivalente. Integrações novas não devem depender."},"rps_type":{"type":["string","null"],"description":"**Uso desaconselhado.** (Discouraged) Correlação fiscal municipal legada sem canônico equivalente. Integrações novas não devem depender."},"dps_number":{"type":["integer","null"],"description":"**Uso desaconselhado.** (Discouraged) Correlação fiscal nacional legada sem canônico equivalente. Integrações novas não devem depender."},"dps_series":{"type":["string","null"],"description":"**Uso desaconselhado.** (Discouraged) Correlação fiscal nacional legada sem canônico equivalente. Integrações novas não devem depender."},"dps_type":{"type":["string","null"],"description":"**Uso desaconselhado.** (Discouraged) Correlação fiscal nacional legada sem canônico equivalente. Integrações novas não devem depender."},"total_amount":{"type":["number","null"]},"service_description":{"type":["string","null"],"description":"Descrição do serviço prestado (flat, espelha `nfse.service.description`)."},"emission_datetime":{"type":["string","null"],"format":"date-time","description":"Data/hora de emissão do documento (flat, espelha `nfse.emission_datetime`)."},"competence_datetime":{"type":["string","null"],"format":"date-time","description":"Data de competência do documento (flat, espelha `nfse.competence_datetime`)."},"xml_url":{"type":["string","null"],"description":"URL pública para download do XML autorizado, incluindo `download_token` na querystring."},"danfse_url":{"type":["string","null"],"description":"URL pública para download da DANFSe, incluindo `download_token` na querystring."},"pdf_url":{"type":["string","null"],"description":"**Compatibilidade.** (Compatibility) Alias permanente de `danfse_url` para integrações antigas\n(mesmo formato emitido em webhook). Mantido indefinidamente. Em código novo,\nprefira `danfse_url`.\n"},"authorized_at":{"type":["string","null"],"format":"date-time","description":"Data de autorização pela prefeitura."},"changes":{"type":"array","description":"Campos alterados (presente em `nfse_updated`). Cada item indica campo, valor anterior e novo valor. Não publica `service.national_code` nem `service.national_tax_code`.","items":{"type":"object","additionalProperties":false,"required":["field"],"properties":{"field":{"type":"string"},"from":{"description":"Valor anterior."},"to":{"description":"Novo valor."}}}}}},"ObjectId":{"type":"string","description":"Identificador no formato ObjectId."}}}}
```

## The CertificateNotification object

```json
{"openapi":"3.1.1","info":{"title":"API IXC E-Docs - Integração x-api-key","version":"0.1.0"},"components":{"schemas":{"CertificateNotification":{"type":"object","additionalProperties":false,"required":["email"],"properties":{"email":{"type":"string","format":"email"}}}}}}
```

## The CertificateFileResponse object

```json
{"openapi":"3.1.1","info":{"title":"API IXC E-Docs - Integração x-api-key","version":"0.1.0"},"components":{"schemas":{"CertificateFileResponse":{"type":"object","additionalProperties":false,"properties":{"bucket":{"type":["string","null"]},"key":{"type":"string"},"name":{"type":["string","null"]},"region":{"type":["string","null"]},"size":{"type":["number","null"]},"uploaded_at":{"type":["string","null"],"format":"date-time"}}}}}}
```

## The CertificateCreateRequest object

```json
{"openapi":"3.1.1","info":{"title":"API IXC E-Docs - Integração x-api-key","version":"0.1.0"},"components":{"schemas":{"CertificateCreateRequest":{"type":"object","additionalProperties":false,"required":["file"],"properties":{"file":{"type":"string","format":"binary","description":"Arquivo do certificado (.pfx, .p12, .cer, .p7, .p7b)."},"password":{"type":"string","maxLength":256,"description":"Senha do certificado (obrigatória para PFX/P12)."},"notifications":{"type":"array","maxItems":5,"items":{"$ref":"#/components/schemas/CertificateNotification"}}}},"CertificateNotification":{"type":"object","additionalProperties":false,"required":["email"],"properties":{"email":{"type":"string","format":"email"}}}}}}
```

## The CertificateUpdateRequest object

```json
{"openapi":"3.1.1","info":{"title":"API IXC E-Docs - Integração x-api-key","version":"0.1.0"},"components":{"schemas":{"CertificateUpdateRequest":{"type":"object","additionalProperties":false,"properties":{"file":{"type":"string","format":"binary","description":"Arquivo opcional do certificado (.pfx, .p12, .cer, .p7, .p7b)."},"password":{"type":"string","maxLength":256,"description":"Senha do certificado (obrigatória quando um novo PFX/P12 exigir abertura)."},"notifications":{"type":"array","maxItems":5,"items":{"$ref":"#/components/schemas/CertificateNotification"}}}},"CertificateNotification":{"type":"object","additionalProperties":false,"required":["email"],"properties":{"email":{"type":"string","format":"email"}}}}}}
```

## The CertificateResponse object

```json
{"openapi":"3.1.1","info":{"title":"API IXC E-Docs - Integração x-api-key","version":"0.1.0"},"components":{"schemas":{"CertificateResponse":{"type":"object","additionalProperties":false,"required":["id","workspace_id","tax_id"],"properties":{"id":{"$ref":"#/components/schemas/ObjectId"},"workspace_id":{"$ref":"#/components/schemas/ObjectId"},"name":{"type":["string","null"]},"expiration_date":{"type":["string","null"],"format":"date-time"},"tax_id":{"type":["string","null"]},"hash":{"type":["string","null"]},"is_sandbox":{"type":"boolean","description":"Indica se o certificado é sandbox (self-signed gerado pela API)."},"file":{"oneOf":[{"$ref":"#/components/schemas/CertificateFileResponse"},{"type":"null"}]},"notifications":{"type":["array","null"],"items":{"$ref":"#/components/schemas/CertificateNotification"}},"created_at":{"type":["string","null"],"format":"date-time"},"updated_at":{"type":["string","null"],"format":"date-time"}}},"ObjectId":{"type":"string","description":"Identificador no formato ObjectId."},"CertificateFileResponse":{"type":"object","additionalProperties":false,"properties":{"bucket":{"type":["string","null"]},"key":{"type":"string"},"name":{"type":["string","null"]},"region":{"type":["string","null"]},"size":{"type":["number","null"]},"uploaded_at":{"type":["string","null"],"format":"date-time"}}},"CertificateNotification":{"type":"object","additionalProperties":false,"required":["email"],"properties":{"email":{"type":"string","format":"email"}}}}}}
```

## The CertificateListResponse object

```json
{"openapi":"3.1.1","info":{"title":"API IXC E-Docs - Integração x-api-key","version":"0.1.0"},"components":{"schemas":{"CertificateListResponse":{"type":"object","additionalProperties":false,"required":["items","paginate"],"properties":{"items":{"type":"array","items":{"$ref":"#/components/schemas/CertificateResponse"}},"paginate":{"$ref":"#/components/schemas/CursorPaginateMeta"}}},"CertificateResponse":{"type":"object","additionalProperties":false,"required":["id","workspace_id","tax_id"],"properties":{"id":{"$ref":"#/components/schemas/ObjectId"},"workspace_id":{"$ref":"#/components/schemas/ObjectId"},"name":{"type":["string","null"]},"expiration_date":{"type":["string","null"],"format":"date-time"},"tax_id":{"type":["string","null"]},"hash":{"type":["string","null"]},"is_sandbox":{"type":"boolean","description":"Indica se o certificado é sandbox (self-signed gerado pela API)."},"file":{"oneOf":[{"$ref":"#/components/schemas/CertificateFileResponse"},{"type":"null"}]},"notifications":{"type":["array","null"],"items":{"$ref":"#/components/schemas/CertificateNotification"}},"created_at":{"type":["string","null"],"format":"date-time"},"updated_at":{"type":["string","null"],"format":"date-time"}}},"ObjectId":{"type":"string","description":"Identificador no formato ObjectId."},"CertificateFileResponse":{"type":"object","additionalProperties":false,"properties":{"bucket":{"type":["string","null"]},"key":{"type":"string"},"name":{"type":["string","null"]},"region":{"type":["string","null"]},"size":{"type":["number","null"]},"uploaded_at":{"type":["string","null"],"format":"date-time"}}},"CertificateNotification":{"type":"object","additionalProperties":false,"required":["email"],"properties":{"email":{"type":"string","format":"email"}}},"CursorPaginateMeta":{"type":"object","additionalProperties":false,"required":["limit","has_next_page","has_previous_page","start_cursor","end_cursor"],"properties":{"limit":{"type":"integer","minimum":10,"maximum":100},"has_next_page":{"type":"boolean"},"has_previous_page":{"type":"boolean"},"start_cursor":{"type":["string","null"]},"end_cursor":{"type":["string","null"]}}}}}}
```


---

# Agent Instructions: Querying This Documentation

If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter:

```
GET https://ixc-soft.gitbook.io/e-docs/models.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
