---
title: "Emissão de NFS-e em São Paulo: Valor Total Recebido e documentos de reembolso"
description: "Cenários de emissão de NFS-e em São Paulo com IBS/CBS após os manuais 3.3.7 a 3.3.9: total com documentos de reembolso, paidAmount, multa e juros, Valor Inicial Cobrado e recusas E1003/E1004."
source_url: https://nfe.io/docs/documentacao/nota-fiscal-servico-eletronica/duvidas/cenarios-de-emissao/cenarios-sao-paulo-valor-total-recebido/
product: documentacao
last_updated: 2026-10-05
tags: ["nfse", "emissao", "cenarios", "referencia", "sao-paulo", "reforma-tributaria"]
---

# Emissão de NFS-e em São Paulo: Valor Total Recebido e documentos de reembolso

Desde **01/10/2026** (manual 3.3.9 da Prefeitura de São Paulo), nas notas **com IBS e CBS** (`ibsCbs.classCode` informado):

- o **valor da nota** deve ser o **total recebido**, inclusive o que é repassado a terceiros;
- o **Valor Total Recebido** não é mais aceito separado: a prefeitura o preenche com o valor da nota;
- os repasses saem da base de cálculo por **documentos de reembolso** (`ibsCbs.thirdPartyReimbursements.documents`).

Cada cenário abaixo é o **payload base** da [matriz de cenários](./matriz-de-cenarios.md) com o grupo `ibsCbs` e os campos do eixo. O código de serviço, o NBS e o indicador de operação são de exemplo: use os da sua operação.

:::tip Formato recomendado
Informe o **total da nota em `servicesAmount`** e os repasses em `ibsCbs.thirdPartyReimbursements.documents`, **sem `paidAmount`** (primeiro cenário). O `paidAmount` nas notas com IBS e CBS é um formato de transição e pode deixar de ser considerado, com aviso prévio.
:::

## O que acontece com o `paidAmount` (notas com IBS e CBS)

| Situação | O que a NFE.io faz com o `paidAmount` | Campo que vira o valor da NFS-e (`ValorFinalCobrado`) |
|---|---|---|
| `paidAmount` não informado | — | Valor do serviço ¹ |
| `paidAmount` menor ou igual ao valor do serviço ¹ | Ignora | Valor do serviço ¹ |
| `paidAmount` acima do valor do serviço ¹, mas não acima da receita própria ² (só multa e juros) | **Transfere** para o valor da nota | **`paidAmount`** |
| `paidAmount` acima da receita própria ², **sem** documentos de reembolso | Ignora | Valor do serviço ¹ |
| `paidAmount` acima da receita própria ², **com** documentos cuja soma de `amount` é **exatamente** a diferença | **Transfere** para o valor da nota | **`paidAmount`** |
| `paidAmount` acima da receita própria ², **com** documentos que **não fecham** a diferença | Recusa antes do envio, com `[E1003]` | — |

¹ **Valor do serviço** = o primeiro campo informado entre `serviceAmountDetails.finalChargedAmount`, `serviceAmountDetails.initialChargedAmount` e `servicesAmount`.

² **Receita própria** = `serviceAmountDetails.finalChargedAmount`, quando informado (já inclui multa e juros); sem ele, o valor do serviço ¹ + `serviceAmountDetails.fineAmount` + `serviceAmountDetails.interestAmount`.

Nas notas **sem** IBS e CBS (sem `ibsCbs.classCode`), nada muda: o `paidAmount` continua indo como Valor Total Recebido.

### Total com documentos de reembolso (recomendado)

Agência de publicidade que recebe R$ 1.000,00, dos quais R$ 800,00 são repasse a um veículo de mídia. O total vai em `servicesAmount`, e o repasse em um documento do tipo `AdAgencyMediaReimbursement`, identificado pela chave da NFS-e do veículo.

**Resultado:** NFS-e de **R$ 1.000,00**, com base de cálculo de **R$ 200,00**.

```json
{
  "borrower": {
    "type": "LegalEntity",
    "name": "EMPRESA TOMADORA EXEMPLO LTDA",
    "federalTaxNumber": 11222333000181,
    "email": "contato@exemplo.com.br",
    "address": {
      "country": "BRA",
      "postalCode": "01311-000",
      "street": "Avenida Paulista",
      "number": "1000",
      "district": "Bela Vista",
      "city": {
        "code": "3550308",
        "name": "São Paulo"
      },
      "state": "SP"
    }
  },
  "cityServiceCode": "6394",
  "description": "Serviço de propaganda e publicidade com repasse de mídia (cenário exemplo).",
  "servicesAmount": 1000.0,
  "nbsCode": "114062000",
  "ibsCbs": {
    "operationIndicator": "100301",
    "classCode": "000001",
    "thirdPartyReimbursements": {
      "documents": [
        {
          "otherNationalDfe": {
            "dfeType": "1",
            "dfeKey": "35503081211444777000161000000000123426101234567890"
          },
          "supplier": {
            "type": "LegalEntity",
            "name": "VEICULO DE MIDIA EXEMPLO LTDA",
            "federalTaxNumber": 11444777000161
          },
          "issueDate": "2026-10-01",
          "accrualOn": "2026-10-01",
          "reimbursementType": "AdAgencyMediaReimbursement",
          "amount": 800.0
        }
      ]
    }
  }
}
```

Um documento por comprovante de repasse, até 100 por nota. Cada `amount` deve ser menor ou igual ao valor do serviço prestado (erros 625 e 1646 da prefeitura).

### Valor recebido em `paidAmount` com documentos de reembolso (transição)

O mesmo caso, com a receita própria em `servicesAmount` e o total em `paidAmount`. A diferença (R$ 800,00) precisa ser **exatamente** a soma dos documentos.

**Resultado:** o valor do `paidAmount` é transferido para o valor da nota: NFS-e de **R$ 1.000,00**, com base de cálculo de **R$ 200,00**.

```json
{
  "borrower": {
    "type": "LegalEntity",
    "name": "EMPRESA TOMADORA EXEMPLO LTDA",
    "federalTaxNumber": 11222333000181,
    "email": "contato@exemplo.com.br",
    "address": {
      "country": "BRA",
      "postalCode": "01311-000",
      "street": "Avenida Paulista",
      "number": "1000",
      "district": "Bela Vista",
      "city": {
        "code": "3550308",
        "name": "São Paulo"
      },
      "state": "SP"
    }
  },
  "cityServiceCode": "6394",
  "description": "Serviço de propaganda e publicidade com repasse de mídia (cenário exemplo).",
  "servicesAmount": 200.0,
  "paidAmount": 1000.0,
  "nbsCode": "114062000",
  "ibsCbs": {
    "operationIndicator": "100301",
    "classCode": "000001",
    "thirdPartyReimbursements": {
      "documents": [
        {
          "otherNationalDfe": {
            "dfeType": "1",
            "dfeKey": "35503081211444777000161000000000123426101234567890"
          },
          "supplier": {
            "type": "LegalEntity",
            "name": "VEICULO DE MIDIA EXEMPLO LTDA",
            "federalTaxNumber": 11444777000161
          },
          "issueDate": "2026-10-01",
          "accrualOn": "2026-10-01",
          "reimbursementType": "AdAgencyMediaReimbursement",
          "amount": 800.0
        }
      ]
    }
  }
}
```

Se a soma dos documentos fosse R$ 500,00, a nota seria recusada antes do envio:

```text
[E1003] Desde 01/10/2026 a Prefeitura de São Paulo preenche o Valor Total Recebido com o valor da nota e não aceita mais o paidAmount separado no leiaute com IBS/CBS. O valor da nota passa a ser o total recebido (R$ 1.000,00). A diferença de R$ 800,00 em relação ao valor do serviço, com multa e juros (R$ 200,00), precisa ser informada como reembolso, repasse ou ressarcimento a terceiros em ibsCbs.thirdPartyReimbursements.documents, com os documentos que comprovam o repasse. Os documentos enviados somam R$ 500,00; faltam R$ 300,00. Depois, reenvie a nota.
```

Quando a soma passa da diferença, a mensagem diz quanto **sobra**, o que reduziria a base de cálculo abaixo do valor do serviço.

### Valor recebido em `paidAmount` sem documentos de reembolso

`paidAmount` acima do valor do serviço, sem `thirdPartyReimbursements`.

**Resultado:** o `paidAmount` é **ignorado**. A NFS-e sai com o valor do serviço (**R$ 200,00**), como a prefeitura já emite desde 01/10/2026, sem recusa. A nota **não** reflete o total recebido: para isso, use o cenário recomendado.

```json
{
  "borrower": {
    "type": "LegalEntity",
    "name": "EMPRESA TOMADORA EXEMPLO LTDA",
    "federalTaxNumber": 11222333000181,
    "email": "contato@exemplo.com.br",
    "address": {
      "country": "BRA",
      "postalCode": "01311-000",
      "street": "Avenida Paulista",
      "number": "1000",
      "district": "Bela Vista",
      "city": {
        "code": "3550308",
        "name": "São Paulo"
      },
      "state": "SP"
    }
  },
  "cityServiceCode": "6394",
  "description": "Serviço de propaganda e publicidade (cenário exemplo).",
  "servicesAmount": 200.0,
  "paidAmount": 1000.0,
  "nbsCode": "114062000",
  "ibsCbs": {
    "operationIndicator": "100301",
    "classCode": "000001"
  }
}
```

### Multa e juros no valor recebido

Serviço de R$ 1.000,00 pago com atraso: multa de R$ 7,00 e juros de R$ 3,00, total de R$ 1.010,00. Multa e juros fazem parte da receita própria e **não** precisam de documento de reembolso.

**Resultado:** o `paidAmount` é transferido para o valor da nota: NFS-e de **R$ 1.010,00**.

```json
{
  "borrower": {
    "type": "LegalEntity",
    "name": "EMPRESA TOMADORA EXEMPLO LTDA",
    "federalTaxNumber": 11222333000181,
    "email": "contato@exemplo.com.br",
    "address": {
      "country": "BRA",
      "postalCode": "01311-000",
      "street": "Avenida Paulista",
      "number": "1000",
      "district": "Bela Vista",
      "city": {
        "code": "3550308",
        "name": "São Paulo"
      },
      "state": "SP"
    }
  },
  "cityServiceCode": "4444",
  "description": "Serviço de consultoria pago com atraso (cenário exemplo).",
  "servicesAmount": 1000.0,
  "paidAmount": 1010.0,
  "serviceAmountDetails": {
    "fineAmount": 7.0,
    "interestAmount": 3.0
  },
  "nbsCode": "101010100",
  "ibsCbs": {
    "operationIndicator": "050101",
    "classCode": "000001"
  }
}
```

:::note
Com `serviceAmountDetails.finalChargedAmount` informado, ele já é a receita própria (inclui multa e juros), e a multa e os juros não são somados de novo. Nesse caso, o que o `paidAmount` passar do `finalChargedAmount` é tratado como repasse: só vai para o valor da nota com documentos de reembolso que somem exatamente essa diferença. Sem documentos, o `paidAmount` é ignorado e a nota sai com o `finalChargedAmount`.
:::

### Valor Inicial Cobrado (erro 640)

A prefeitura não aceita mais o campo Valor Inicial Cobrado (erro 640). Quem informa `serviceAmountDetails.initialChargedAmount` sem `finalChargedAmount` não precisa mudar a integração.

**Resultado:** o valor do `initialChargedAmount` é enviado como valor final cobrado: NFS-e de **R$ 1.000,00**.

```json
{
  "borrower": {
    "type": "LegalEntity",
    "name": "EMPRESA TOMADORA EXEMPLO LTDA",
    "federalTaxNumber": 11222333000181,
    "email": "contato@exemplo.com.br",
    "address": {
      "country": "BRA",
      "postalCode": "01311-000",
      "street": "Avenida Paulista",
      "number": "1000",
      "district": "Bela Vista",
      "city": {
        "code": "3550308",
        "name": "São Paulo"
      },
      "state": "SP"
    }
  },
  "cityServiceCode": "4444",
  "description": "Serviço de consultoria (cenário exemplo).",
  "servicesAmount": 1000.0,
  "serviceAmountDetails": {
    "initialChargedAmount": 1000.0
  },
  "nbsCode": "101010100",
  "ibsCbs": {
    "operationIndicator": "050101",
    "classCode": "000001"
  }
}
```

### Outros reembolsos (tipo 99) com documento não fiscal

Administração de vale-refeição: R$ 1.000,00 recebidos, dos quais R$ 950,00 são repasse a estabelecimentos credenciados. O tipo `OtherReimbursement` **exige** `reimbursementTypeText` (até 150 caracteres). O comprovante é um documento não fiscal (`otherDoc`).

**Resultado:** NFS-e de **R$ 1.000,00**, com base de cálculo de **R$ 50,00**.

```json
{
  "borrower": {
    "type": "LegalEntity",
    "name": "EMPRESA TOMADORA EXEMPLO LTDA",
    "federalTaxNumber": 11222333000181,
    "email": "contato@exemplo.com.br",
    "address": {
      "country": "BRA",
      "postalCode": "01311-000",
      "street": "Avenida Paulista",
      "number": "1000",
      "district": "Bela Vista",
      "city": {
        "code": "3550308",
        "name": "São Paulo"
      },
      "state": "SP"
    }
  },
  "cityServiceCode": "3205",
  "description": "Administração de vale-refeição (cenário exemplo).",
  "servicesAmount": 1000.0,
  "nbsCode": "117011200",
  "ibsCbs": {
    "operationIndicator": "100301",
    "classCode": "000001",
    "thirdPartyReimbursements": {
      "documents": [
        {
          "otherDoc": {
            "docNumber": "REPASSE-2026-10-001",
            "docDescription": "Relatório de repasse aos estabelecimentos credenciados"
          },
          "supplier": {
            "type": "LegalEntity",
            "name": "ESTABELECIMENTO CREDENCIADO EXEMPLO LTDA",
            "federalTaxNumber": 11444777000161
          },
          "issueDate": "2026-10-01",
          "accrualOn": "2026-10-01",
          "reimbursementType": "OtherReimbursement",
          "reimbursementTypeText": "Repasse a estabelecimentos credenciados",
          "amount": 950.0
        }
      ]
    }
  }
}
```

A descrição (`reimbursementTypeText`) só é enviada à prefeitura no tipo `OtherReimbursement`. Nos demais tipos, ela é ignorada (erros 624 e 1645 da prefeitura).

### Documento de reembolso incompleto

Todo documento precisa de **identificação** (`otherNationalDfe`, `otherFiscalDoc` ou `otherDoc`), `issueDate`, `reimbursementType` válido e `amount` maior que zero; no tipo `OtherReimbursement`, também `reimbursementTypeText`. Sem algum deles, a nota é recusada antes do envio, com o campo indicado:

```text
[E1004] Documentos de reembolso incompletos em ibsCbs.thirdPartyReimbursements.documents: documento 1: informe otherNationalDfe, otherFiscalDoc ou otherDoc. Corrija e reenvie a nota.
```

## Identificação do documento de reembolso

| Grupo | Quando usar | Campos |
|---|---|---|
| `otherNationalDfe` | NFS-e, NF-e ou CT-e do ambiente nacional | `dfeType` (`1` = NFS-e, `2` = NF-e, `3` = CT-e, `9` = outro), `dfeKey` (chave de acesso) e, só no tipo `9`, `dfeTypeText` |
| `otherFiscalDoc` | Documento fiscal fora do ambiente nacional, **só com competência anterior a 31/12/2025** (erro 622) | `issuerCityCode` (IBGE), `fiscalDocNumber`, `fiscalDocDescription` |
| `otherDoc` | Documento não fiscal | `docNumber`, `docDescription` |

## Tipos de reembolso

| `reimbursementType` | Uso |
|---|---|
| `RealEstateBrokerPassThrough` | Repasse de corretagem na intermediação de imóveis |
| `TravelAgencySupplierPassThrough` | Repasse a fornecedor por agência de turismo |
| `AdAgencyExternalProductionReimbursement` | Reembolso de produção externa por agência de publicidade |
| `AdAgencyMediaReimbursement` | Reembolso de mídia por agência de publicidade |
| `OtherReimbursement` | Outros reembolsos ou ressarcimentos (exige `reimbursementTypeText`) |

## Veja também

- [NFS-e de São Paulo: Valor Total Recebido e mudanças dos manuais 3.3.7, 3.3.8 e 3.3.9](../../../reforma-tributaria/conceitos-funcionais/nota-fiscal-de-servico/sao-paulo-valor-total-recebido-manual-3-3-9.md) — detalhamento completo, tributos federais, caracteres e perguntas frequentes
- [Resumo das mudanças de São Paulo](../../../reforma-tributaria/conceitos-funcionais/nota-fiscal-de-servico/sao-paulo-resumo-valor-total-recebido.md)
- [Reforma Tributária (IBS/CBS)](./reforma-tributaria-ibs-cbs.md)
- [Matriz de cenários de emissão](./matriz-de-cenarios.md)
