# Folha Pagamento | 2025 ~

##### **Tipo Envio: Balancete - Folha**

---

##### **Chave Unicidade**

 \[ Exercício - Código Unidade Gestora - CPF Servidor - Código Cargo - Número Matrícula - Mês - Código Operação - Código Vantagem Desconto - Tipo - Código Agrupamento - Código Unidade Orçamentária \]

---

##### **Objeto Raiz**

<figure class="wp-block-table is-style-stripes" id="bkmrk-campo-informacoes"><table class="has-fixed-layout" style="width: 100%;"><thead><tr><td style="width: 12.1549%;">**Campo**</td><td style="width: 87.8451%;">**Informações**</td></tr></thead><tbody><tr><td style="width: 12.1549%;">`timestamp`</td><td style="width: 87.8451%;">Campo utilizado para **ordenar** a validação das informações enviadas. Caso sejam enviados **múltiplos payloads** do mesmo tipo, a ordenação ocorrerá da **<span style="color: rgb(186, 55, 42);">data mais antiga para a mais recente</span>**</td></tr><tr><td style="width: 12.1549%;">`elementos`</td><td style="width: 87.8451%;">–</td></tr></tbody></table>

</figure>---

##### **Item**  


<figure class="wp-block-table is-style-stripes" id="bkmrk-campo-chave-informacoes"><table class="has-fixed-layout" style="width: 100%; height: 391.547px;"><thead><tr style="height: 29.7969px;"><td style="width: 24.6722%; height: 29.7969px;">**Campo**</td><td class="has-text-align-left align-center" data-align="left" style="width: 6.91299%; height: 29.7969px;">**Chave**</td><td style="width: 68.4148%; height: 29.7969px;">**Informações**</td></tr></thead><tbody><tr style="height: 30.6094px;"><td style="width: 24.6722%; height: 30.6094px;">`cpfServidor`</td><td class="has-text-align-left align-center" data-align="left" style="width: 6.91299%; height: 30.6094px;">✅</td><td style="width: 68.4148%; height: 30.6094px;">–</td></tr><tr style="height: 30.6094px;"><td style="width: 24.6722%; height: 30.6094px;">`codigoCargo`</td><td class="has-text-align-left align-center" data-align="left" style="width: 6.91299%; height: 30.6094px;">✅</td><td style="width: 68.4148%; height: 30.6094px;">–</td></tr><tr style="height: 30.6094px;"><td style="width: 24.6722%; height: 30.6094px;">`numeroMatricula`</td><td class="has-text-align-left align-center" data-align="left" style="width: 6.91299%; height: 30.6094px;">✅</td><td style="width: 68.4148%; height: 30.6094px;">–</td></tr><tr style="height: 30.6094px;"><td style="width: 24.6722%; height: 30.6094px;">`mes`</td><td class="has-text-align-left align-center" data-align="left" style="width: 6.91299%; height: 30.6094px;">✅</td><td style="width: 68.4148%; height: 30.6094px;">–</td></tr><tr style="height: 35.3906px;"><td style="width: 24.6722%; height: 35.3906px;">`tipoLancamento`</td><td class="has-text-align-left align-center" data-align="left" style="width: 6.91299%; height: 35.3906px;">✅</td><td style="width: 68.4148%; height: 35.3906px;">**[Tabela Tipo Lançamento Folha Pagamento](https://docs.tcepb.tc.br/books/tabelas-de-dominio/page/tipo-lancamento-folha-pagamento)**</td></tr><tr style="height: 30.6094px;"><td style="width: 24.6722%; height: 30.6094px;">`codigoVantagemDesconto`</td><td class="has-text-align-left align-center" data-align="left" style="width: 6.91299%; height: 30.6094px;">✅</td><td style="width: 68.4148%; height: 30.6094px;">–</td></tr><tr style="height: 35.3906px;"><td style="width: 24.6722%; height: 35.3906px;">`tipoFolha`</td><td class="has-text-align-left align-center" data-align="left" style="width: 6.91299%; height: 35.3906px;">✅</td><td style="width: 68.4148%; height: 35.3906px;">**[Tabela Tipo Folha](https://docs.tcepb.tc.br/books/tabelas-de-dominio/page/tipo-folha)**</td></tr><tr style="height: 30.6094px;"><td style="width: 24.6722%; height: 30.6094px;">`codigoAgrupamento`</td><td class="has-text-align-left align-center" data-align="left" style="width: 6.91299%; height: 30.6094px;">✅</td><td style="width: 68.4148%; height: 30.6094px;">–</td></tr><tr style="height: 30.6094px;"><td style="width: 24.6722%; height: 30.6094px;">`codigoUnidadeOrcamentaria`</td><td class="has-text-align-left align-center" data-align="left" style="width: 6.91299%; height: 30.6094px;">✅</td><td style="width: 68.4148%; height: 30.6094px;">–</td></tr><tr style="height: 30.1094px;"><td style="width: 24.6722%; height: 30.1094px;">`valor`</td><td class="has-text-align-left align-center" data-align="left" style="width: 6.91299%; height: 30.1094px;">–</td><td style="width: 68.4148%; height: 30.1094px;">–</td></tr><tr style="height: 46.5938px;"><td style="width: 24.6722%; height: 46.5938px;">`action`</td><td class="has-text-align-left align-center" data-align="left" style="width: 6.91299%; height: 46.5938px;">–</td><td style="width: 68.4148%; height: 46.5938px;">Define a operação a ser realizada com a informação, seja ela **criação, atualização ou exclusão**</td></tr></tbody></table>

</figure>---

##### **Schema**

```
{
  "$schema": "https://json-schema.org/draft/2020-12/schema",
  "title": "Lista de Folha Pagamento",
  "description": "Lista de objetos representando a entidade Folha Pagamento",
  "type": "object",
  "properties": {
    "timestamp": {
      "type": "string",
      "pattern": "^(\\d{4})-(0[1-9]|1[0-2])-(0[1-9]|[12]\\d|3[01])T([01]\\d|2[0-3]):([0-5]\\d):([0-5]\\d)\\.\\d{3,6}$",
      "examples": ["2025-09-11T15:30:00.123456"]
    },
    "elementos": {
      "type": "array",
      "uniqueItems": true,
      "items": {
        "title": "Folha de Pagamento",
        "description": "Representação do schema para envio da entidade Folha Pagamento",
        "type": "object",
        "properties": {
          "cpfServidor": {
            "type": "string",
            "minLength": 11,
            "maxLength": 11,
            "pattern": "^[0-9]+$"
          },
          "codigoCargo": {
            "type": "string",
            "minLength": 8,
            "maxLength": 8,
            "pattern": "^[0-9]+$"
          },
          "numeroMatricula": {
            "type": "string",
            "minLength": 15,
            "maxLength": 15
          },
          "mes": {
            "type": "string",
            "minLength": 2,
            "maxLength": 2,
            "pattern": "^(0[1-9]|1[0-2])$"
          },
          "tipoLancamento": {
            "type": "string",
            "minLength": 1,
            "maxLength": 1,
            "pattern": "^[0-9]+$"
          },
          "codigoVantagemDesconto": {
            "type": "string",
            "minLength": 10,
            "maxLength": 10,
            "pattern": "^[0-9]+$"
          },
          "tipoFolha": {
            "type": "string",
            "minLength": 1,
            "maxLength": 1,
            "pattern": "^[0-9]+$"
          },
          "valor": {
            "type": "number",
            "minimum": 0
          },
          "codigoAgrupamento": {
            "type": "string",
            "minLength": 10,
            "maxLength": 10,
            "pattern": "^[A-Z0-9]+$"
          },
          "codigoUnidadeOrcamentaria": {
            "type": "string",
            "minLength": 5,
            "maxLength": 5,
            "pattern": "^[0-9]+$"
          },
          "action": {
            "type": "string",
            "enum": [
              "CREATE",
              "UPDATE",
              "DELETE"
            ]
          }
        },
        "required": [
          "cpfServidor",
          "codigoCargo",
          "numeroMatricula",
          "mes",
          "codigoOperacao",
          "codigoVantagemDesconto",
          "tipoFolha",
          "valor",
          "codigoAgrupamento",
          "codigoUnidadeOrcamentaria",
          "action"
        ],
        "additionalProperties": false
      }
    }
  },
  "required": [
    "timestamp",
    "elementos"
  ],
  "additionalProperties": false
}

```

---

##### **Exemplo de Payload**

```
{
  "timestamp": "2025-09-11T15:30:00.123456",
  "elementos": [
    {
      "cpfServidor": "12345678901",
      "codigoCargo": "00000001",
      "numeroMatricula": "000000001234567",
      "mes": "01",
      "tipoLancamento": "1",
      "codigoVantagemDesconto": "000001",
      "tipoFolha": "0",
      "valor": 1500.50,
      "codigoAgrupamento": "0900000001",
      "codigoUnidadeOrcamentaria": "12345",
      "action": "CREATE"
    },
    {
      "cpfServidor": "98765432109",
      "codigoCargo": "00000002",
      "numeroMatricula": "000000009876543",
      "mes": "12",
      "tipoLancamento": "0",
      "codigoVantagemDesconto": "000002",
      "tipoFolha": "1",
      "valor": 250.75,
      "codigoAgrupamento": "0900000002",
      "codigoUnidadeOrcamentaria": "54321",
      "action": "UPDATE"
    }
  ]
}

```

---

### Regras

<table id="bkmrk-regra-folha" style="width: 100%; height: 168.656px;"><thead><tr style="height: 29.7969px;"><td style="width: 57.925%; height: 29.7969px;">ID</td><td style="width: 42.075%; height: 29.7969px;">Regra</td></tr></thead><tbody><tr style="height: 45.4688px;"><td style="width: 57.925%; height: 45.4688px;">**FOLHA\_PAGAMENTO\_DUPLICIDADE\_NAO\_PERMITIDA**</td><td style="width: 42.075%; height: 45.4688px;">Não é permitido cadastrar registros duplicados pela chave de unicidade</td></tr><tr><td style="width: 57.925%;">**FOLHA\_PAGAMENTO\_MES\_INVALIDO**</td><td style="width: 42.075%;">O mês da folha não pode ser maior que o do envio</td></tr><tr><td style="width: 57.925%;">**FOLHA\_PAGAMENTO\_MATRICULA\_CADASTRADA**</td><td style="width: 42.075%;">A matrícula deve ter sido cadastrada para a unidade gestora</td></tr><tr style="height: 29.7969px;"><td style="width: 57.925%; height: 29.7969px;">**FOLHA\_PAGAMENTO\_UNIDADE\_ORCAMENTARIA\_CADASTRADA**</td><td style="width: 42.075%; height: 29.7969px;">A unidade orçamentária deve ter sido cadastrado para a Unidade Gestora no exercício</td></tr><tr style="height: 33.7969px;"><td style="width: 57.925%; height: 33.7969px;">**FOLHA\_PAGAMENTO\_CODIGO\_AGRUPAMENTO\_CADASTRADO**</td><td style="width: 42.075%; height: 33.7969px;">O código agrupamento deve ter sido cadastrado para a Unidade Gestora no exercício</td></tr><tr style="height: 29.7969px;"><td style="width: 57.925%; height: 29.7969px;">**FOLHA\_PAGAMENTO\_CODIGO\_VANTAGEM\_DESCONTO\_CADASTRADO**</td><td style="width: 42.075%; height: 29.7969px;">O código vantagem desconto deve ter sido cadastrado para a Unidade Gestora no exercício</td></tr><tr><td style="width: 57.925%;">**FOLHA\_PAGAMENTO\_TIPO\_LANCAMENTO\_INVALIDO**</td><td style="width: 42.075%;">O Tipo lançamento deve ser válido conforme a **[Tabela Tipo Lançamento Folha Pagamento](https://docs.tcepb.tc.br/books/tabelas-de-dominio/page/tipo-lancamento-folha-pagamento)**</td></tr><tr><td style="width: 57.925%;">**FOLHA\_PAGAMENTO\_TIPO\_FOLHA\_INVALIDO**</td><td style="width: 42.075%;">O Tipo folha deve ser válido conforme a **[Tabela Tipo Folha](https://docs.tcepb.tc.br/books/tabelas-de-dominio/page/tipo-folha)**</td></tr><tr><td style="width: 57.925%;">**FOLHA\_PAGAMENTO\_MATRICULA\_SITUACAO\_INVALIDA**</td><td style="width: 42.075%;">Se a última situação da matrícula for **2 (Óbito)**, não é permitida sua inclusão na **folha**.</td></tr></tbody></table>