Configurações de retenção e situação tributária de PIS/COFINS

Configure PIS/COFINS na emissão de NFS-e

As regras da NT-007 alteram o preenchimento de PIS e COFINS para clientes do Regime Normal na emissão de NFS-e.

Desde 30/06/2026, utilize pisCofinsTaxStatus, operationPis e operationCofins conforme a situação tributária da operação. O campo pisCofinsRetentionType é calculado pelo Asaas e não deve ser enviado pela integração.

📘

Antes de configurar

Para determinar se estas configurações se aplicam à sua integração, verifique primeiro se a conta é Optante pelo Simples Nacional.

Essa informação pode ser consultada através do atributo simplesNacional no endpoint Recuperar informações fiscais.

Caso o valor retornado seja false e o cliente realize a emissão de notas fiscais de serviço pelo Portal Nacional, as configurações de situação tributária e alíquotas de PIS/COFINS detalhadas neste guia tornam-se obrigatórias.

Clientes do Simples Nacional não precisam alterar o payload por causa da NT-007.

🚧

Atenção

A definição correta da situação tributária de PIS/COFINS depende do enquadramento fiscal da empresa, do serviço prestado e da orientação contábil aplicável.

Em caso de dúvida sobre qual CST utilizar, valide a informação com a contabilidade responsável antes de alterar a integração.

Como configurar

%%{init: {"flowchart": {"nodeSpacing": 18,"rankSpacing": 24,"diagramPadding": 4,"padding": 7}}}%%
flowchart TD
    A["Recuperar informações fiscais"] --> B{"simplesNacional é true?"}

    B --> Sim(("Sim"))
    B --> Nao(("Não"))

    Sim --> C["Manter regras do Simples Nacional"]
    Nao --> D["Validar o CST aplicável"]

    D --> E["Definir pisCofinsTaxStatus"]
    E --> F["Informar operationPis e operationCofins"]
    F --> G["Informar retenções, se houver"]

    C --> H["Emitir a NFS-e"]
    G --> H
    H --> I["Acompanhar por Webhook"]

    classDef inicio fill:#DBEAFE,stroke:#2563EB,color:#1E3A8A,stroke-width:3px
    classDef decisao fill:#FEF3C7,stroke:#D97706,color:#78350F,stroke-width:3px
    classDef validacao fill:#E0F2FE,stroke:#0284C7,color:#0C4A6E,stroke-width:2px
    classDef sucesso fill:#DCFCE7,stroke:#16A34A,color:#14532D,stroke-width:3px

    classDef respostaSim fill:#22C55E,stroke:#15803D,color:#FFFFFF,stroke-width:3px
    classDef respostaNao fill:#EF4444,stroke:#B91C1C,color:#FFFFFF,stroke-width:3px

    class A inicio
    class B decisao
    class C,D,E,F,G,H validacao
    class I sucesso

    class Sim respostaSim
    class Nao respostaNao

    linkStyle default stroke:#94A3B8,stroke-width:2px
    linkStyle 1 stroke:#22C55E,stroke-width:4px
    linkStyle 2 stroke:#EF4444,stroke-width:4px

Campos de PIS/COFINS

CampoFunção
pisCofinsTaxStatusDefine a situação tributária de PIS/COFINS
operationPisAlíquota de PIS da operação
operationCofinsAlíquota de COFINS da operação
pisPercentual de PIS retido
cofinsPercentual de COFINS retido
csllPercentual de CSLL retido
pisCofinsRetentionTypeTipo de retenção calculado pelo Asaas
❗️

Importante

O campo pisCofinsRetentionType não deve ser utilizado como campo controlado pela integração.

O tipo de retenção passa a ser calculado automaticamente pelo Asaas com base nos percentuais informados em pis, cofins e csll.

Utilize o valor retornado pela API apenas para consulta, conciliação ou exibição interna.

Diferencie alíquota de operação e retenção

Os campos possuem finalidades diferentes:

GrupoCamposFinalidade
Alíquota de operaçãooperationPis, operationCofinsInforma como PIS e COFINS incidem na operação
Retençãopis, cofins, csllInforma os percentuais retidos, quando aplicável

pisCofinsTaxStatus determina quais valores podem ser enviados em operationPis e operationCofins.

Os percentuais de retenção não substituem as alíquotas de operação.

Valores de pisCofinsTaxStatus

Utilize a situação tributária correspondente à operação.

ValorCódigoDescrição
NONE00Nenhum
STANDARD_TAXABLE_OPERATION01Operação Tributável com Alíquota Básica
DIFFERENTIATED_RATE_TAXABLE_OPERATION02Operação Tributável com Alíquota Diferenciada
TAXABLE_PER_MEASURE_UNIT_OPERATION03Operação Tributável com Alíquota por Unidade de Medida de Produto
MONOPHASIC_RESALE_ZERO_RATE_OPERATION04Operação Tributável monofásica - Revenda a Alíquota Zero
TAX_SUBSTITUTION_OPERATION05Operação Tributável por Substituição Tributária
ZERO_RATE_TAXABLE_OPERATION06Operação Tributável a Alíquota Zero
EXEMPT_CONTRIBUTION_OPERATION07Operação Isenta da Contribuição
NON_TAXABLE_OPERATION08Operação sem Incidência da Contribuição
TAX_SUSPENSION_OPERATION09Operação com Suspensão da Contribuição
OTHER_OUTPUT_OPERATION49Outras Operações de Saída
CREDITABLE_EXCLUSIVE_TAXED_DOMESTIC_REVENUE_OPERATION50Operação com Direito a Crédito - Vinculada Exclusivamente a Receita Tributada no Mercado Interno
CREDITABLE_EXCLUSIVE_NON_TAXED_DOMESTIC_REVENUE_OPERATION51Operação com Direito a Crédito - Vinculada Exclusivamente a Receita Não-Tributada no Mercado Interno
CREDITABLE_EXPORT_REVENUE_OPERATION52Operação com Direito a Crédito - Vinculada Exclusivamente a Receita de Exportação
CREDITABLE_TAXED_AND_NON_TAXED_DOMESTIC_REVENUE_OPERATION53Operação com Direito a Crédito - Vinculada a Receitas Tributadas e Não-Tributadas no Mercado Interno
CREDITABLE_TAXED_DOMESTIC_AND_EXPORT_REVENUE_OPERATION54Operação com Direito a Crédito - Vinculada a Receitas Tributadas no Mercado Interno e de Exportação
CREDITABLE_NON_TAXED_DOMESTIC_AND_EXPORT_REVENUE_OPERATION55Operação com Direito a Crédito - Vinculada a Receitas Não Tributadas no Mercado Interno e de Exportação
CREDITABLE_TAXED_AND_NON_TAXED_DOMESTIC_AND_EXPORT_REVENUE_OPERATION56Operação com Direito a Crédito - Vinculada a Receitas Tributadas e Não-Tributadas no Mercado Interno e de Exportação
PRESUMED_CREDIT_EXCLUSIVE_TAXED_DOMESTIC_REVENUE_OPERATION60Crédito Presumido - Operação de Aquisição Vinculada Exclusivamente a Receita Tributada no Mercado Interno
PRESUMED_CREDIT_EXCLUSIVE_NON_TAXED_DOMESTIC_REVENUE_OPERATION61Crédito Presumido - Operação de Aquisição Vinculada Exclusivamente a Receita Não-Tributada no Mercado Interno
PRESUMED_CREDIT_EXCLUSIVE_EXPORT_REVENUE_OPERATION62Crédito Presumido - Operação de Aquisição Vinculada Exclusivamente a Receita de Exportação
PRESUMED_CREDIT_TAXED_AND_NON_TAXED_DOMESTIC_REVENUE_OPERATION63Crédito Presumido - Operação de Aquisição Vinculada a Receitas Tributadas e Não-Tributadas no Mercado Interno
PRESUMED_CREDIT_TAXED_DOMESTIC_AND_EXPORT_REVENUE_OPERATION64Crédito Presumido - Operação de Aquisição Vinculada a Receitas Tributadas no Mercado Interno e de Exportação
PRESUMED_CREDIT_NON_TAXED_DOMESTIC_AND_EXPORT_REVENUE_OPERATION65Crédito Presumido - Operação de Aquisição Vinculada a Receitas Não-Tributadas no Mercado Interno e de Exportação
PRESUMED_CREDIT_TAXED_AND_NON_TAXED_DOMESTIC_AND_EXPORT_REVENUE_OPERATION66Crédito Presumido - Operação de Aquisição Vinculada a Receitas Tributadas e Não-Tributadas no Mercado Interno e de Exportação
PRESUMED_CREDIT_OTHER_OPERATION67Crédito Presumido - Outras Operações
ACQUISITION_WITHOUT_CREDIT_RIGHT_OPERATION70Operação de Aquisição sem Direito a Crédito
ACQUISITION_WITH_EXEMPTION_OPERATION71Operação de Aquisição com Isenção
ACQUISITION_WITH_SUSPENSION_OPERATION72Operação de Aquisição com Suspensão
ACQUISITION_ZERO_RATE_OPERATION73Operação de Aquisição a Alíquota Zero
ACQUISITION_WITHOUT_CONTRIBUTION_OPERATION74Operação de Aquisição sem Incidência da Contribuição
ACQUISITION_BY_TAX_SUBSTITUTION_OPERATION75Operação de Aquisição por Substituição Tributária
OTHER_INPUT_OPERATION98Outras Operações de Entrada
OTHER_OPERATION99Outras Operações
🚧

Valor descontinuado

O enum TAXABLE_CONTRIBUTION_OPERATION está descontinuado e não deve ser utilizado em novas integrações.

Quando a situação aplicável for o CST 07, utilize EXEMPT_CONTRIBUTION_OPERATION, correspondente a 07 - Operação Isenta da Contribuição.

Preencha operationPis e operationCofins

A NT-007 define regras específicas para algumas situações tributárias:

pisCofinsTaxStatusoperationPis e operationCofins
NONEnull
STANDARD_TAXABLE_OPERATIONMaior que 0
DIFFERENTIATED_RATE_TAXABLE_OPERATIONMaior que 0
ZERO_RATE_TAXABLE_OPERATION0
EXEMPT_CONTRIBUTION_OPERATIONnull
NON_TAXABLE_OPERATIONnull
TAX_SUSPENSION_OPERATIONnull

Para os demais valores, não há uma restrição específica de operationPis e operationCofins definida pela NT-007. Preencha conforme a situação fiscal da operação.

Informe retenções, quando aplicável

Utilize:

  • pis;
  • cofins;
  • csll.

O Asaas calcula pisCofinsRetentionType a partir desses percentuais.

Percentuais informadosRetenção
pis, cofins e csll maiores que zeroPIS, COFINS e CSLL
pis e cofins maiores que zero e csll nulo ou zeroPIS e COFINS
Apenas pis maior que zeroPIS
Todos nulos ou zeroSem retenção
📘

Importante

A retenção não deve ser definida manualmente por pisCofinsRetentionType.

Informe os percentuais de retenção aplicáveis e utilize o valor retornado pela API para conciliação.

Exemplos

Operação tributável com alíquota básica

{
  "taxes": {
    "pisCofinsTaxStatus": "STANDARD_TAXABLE_OPERATION",
    "operationPis": 0.65,
    "operationCofins": 3.00,
    "pis": 0.65,
    "cofins": 3.00,
    "csll": 1.00
  }
}

operationPis e operationCofins representam as alíquotas da operação. pis, cofins e csll representam as retenções.

Operação tributável com alíquota zero

{
  "taxes": {
    "pisCofinsTaxStatus": "ZERO_RATE_TAXABLE_OPERATION",
    "operationPis": 0,
    "operationCofins": 0,
    "pis": null,
    "cofins": null,
    "csll": null
  }
}

Para ZERO_RATE_TAXABLE_OPERATION, envie operationPis e operationCofins como 0.

Operação isenta

{
  "taxes": {
    "pisCofinsTaxStatus": "EXEMPT_CONTRIBUTION_OPERATION",
    "operationPis": null,
    "operationCofins": null,
    "pis": null,
    "cofins": null,
    "csll": null
  }
}

Para EXEMPT_CONTRIBUTION_OPERATION, envie operationPis e operationCofins como null.

Situação tributária não definida

{
  "taxes": {
    "pisCofinsTaxStatus": "NONE",
    "operationPis": null,
    "operationCofins": null,
    "pis": null,
    "cofins": null,
    "csll": null
  }
}
❗️

Atenção

Se sua operação possui retenção de PIS/COFINS, evite utilizar pisCofinsTaxStatus como NONE sem validação contábil.

Com NONE, os campos operationPis e operationCofins devem ser nulos, o que pode fazer com que as informações de operação de PIS/COFINS não sejam apresentadas na nota fiscal conforme esperado.

Considere a normalização do CST

Nas situações:

  • TAXABLE_PER_MEASURE_UNIT_OPERATION;
  • MONOPHASIC_RESALE_ZERO_RATE_OPERATION;
  • TAX_SUBSTITUTION_OPERATION;

o Asaas pode retornar pisCofinsTaxStatus como NONE quando todos os percentuais de PIS e COFINS estiverem zerados ou nulos.

Prepare o parser para considerar que o valor retornado pode ser diferente do enviado nesses cenários.

Erros comuns

SituaçãoComo tratar
pisCofinsTaxStatus ausente para cliente impactado pela NT-007Informe a situação tributária
operationPis ou operationCofins deveria ser nullRemova a alíquota para o CST utilizado
operationPis ou operationCofins deveria ser 0Envie zero para o CST utilizado
Alíquota obrigatória ausenteInforme valor maior que zero
TAXABLE_CONTRIBUTION_OPERATION utilizadoMigre para EXEMPT_CONTRIBUTION_OPERATION quando o CST aplicável for 07
pisCofinsRetentionType enviadoRemova o campo do payload

Exemplo quando a situação tributária obrigatória não é informada:

{
  "errors": [
    {
      "description": "A Situação tributária do PIS/COFINS é obrigatória"
    }
  ]
}

Onde aplicar

As regras devem ser consideradas ao enviar ou atualizar dados fiscais de NFS-e, incluindo:

POST /v3/invoices
PUT /v3/invoices/{id}

Também se aplicam à configuração de emissão automática de notas fiscais para assinaturas:

POST /v3/subscriptions/{id}/invoiceSettings
PUT /v3/subscriptions/{id}/invoiceSettings

Consulte os contratos completos na API Reference:

Valide a emissão

Depois de enviar a NFS-e, acompanhe o resultado por Webhooks em vez de consultar o status repetidamente.

Trate principalmente:

  • INVOICE_AUTHORIZED, quando a nota for emitida;
  • INVOICE_ERROR, quando houver erro de emissão.

Consulte os eventos para notas fiscais.

Exemplo executável

Para um exemplo específico dessa configuração, consulte:

Configurar retenção e situação tributária de PIS/COFINS

Próximos passos


Did this page help you?