> ## Documentation Index
> Fetch the complete documentation index at: https://bmpdocs.moneyp.com.br/llms.txt
> Use this file to discover all available pages before exploring further.

# Eventos

O sistema de callback do FGTS é uma solução automatizada para monitoramento em tempo real de cancelamentos de propostas.

Os callbacks do FGTS podem ser enviados via parâmetros na URL ou via eventos no corpo da requisição.

## Parâmetros de URL e situações de propostas

Os callbacks de proposta são enviados pela URL, neste formato:

```json theme={null}
www.url-de-exemplo.com.br?proposta={PROPOSTA}&situacao={SITUACAO}&identificador={IDENTIFICADOR}
```

Ao serem enviados, serão substituídos os valores `{PROPOSTA}`, `{SITUACAO}` e `{IDENTIFICADOR}` por valores reais, descritos na tabela abaixo.

### Tabela de parâmetros dos callbacks de proposta

| **Parâmetro**     | **Descrição**                                                                                  |
| ----------------- | ---------------------------------------------------------------------------------------------- |
| **Proposta**      | Guid único gerado no response durante a inclusão da proposta.                                  |
| **Situação**      | ID da situação da proposta em nosso sistema (conforme tabela abaixo).                          |
| **Identificador** | Caso seja enviado, esse campo representa o código da operação enviado na inclusão da proposta. |

### Tabela de identificação de status de proposta

| **ID** | **Descrição**      | **Objetivo**                                                                                                                                           |
| ------ | ------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------ |
| **2**  | Aprovada           | Proposta foi criada e está aguardando a assinatura.                                                                                                    |
| **4**  | Cancelada          | Proposta foi cancelada automaticamente ou pelo integrador.                                                                                             |
| **5**  | Pendente           | Proposta foi marcada como pendente e necessita de intervenção do integrador para ser solicitada a averbação novamente.                                 |
| **6**  | Finalizada         | Foi solicitada a averbação na Caixa Econômica Federal (CEF).                                                                                           |
| **8**  | Liberada           | Proposta averbada com sucesso e liberada para ser feito o desembolso.                                                                                  |
| **9**  | Paga               | Foi realizado o desembolso da proposta.                                                                                                                |
| **10** | Cedida             | Proposta foi adicionada em uma remessa de cessão e cedida ao fundo.                                                                                    |
| **11** | Pendente Pagamento | Proposta pendente de pagamento por inconsistência em dados bancários, exigindo intervenção do integrador para corrigir e retornar à fila de pagamento. |

<Note>
  Caso o callback seja parametrizado com o método POST, além dos dados enviados na URL, o parceiro receberá no corpo da requisição:

  * **Status 9**: `00 - Crédito ou débito efetivado`;
  * **Status 11**: `AB - Descrição da ocorrência`.
</Note>

<Warning>
  Caso ocorra algum problema durante o recebimento do callback de proposta, o sistema realizará até 3 tentativas de envio.
</Warning>

## Tabela de eventos do split

| **ID** | **Descrição**                         |
| ------ | ------------------------------------- |
| 100    | Alteração de Status do Split          |
| 101    | Liberado                              |
| 102    | Pago                                  |
| 103    | Pagamento do Split Pendente Pagamento |

<Warning>Caso ocorra algum problema durante o recebimento do callback de proposta, o sistema realizará até 3 tentativas de envio.</Warning>

<Note>
  Além dos dados já enviados na consulta (*query*), como guid da Proposta, Status e Identificador, os callbacks de **Pago "9"** e **Pendente pagamento "11"** possuem um *body* com o campo **"Descrição da ocorrência"**, que informa o motivo da pendência do pagamento quando for um **status "11"** e quando for **status "9"** retorna com o texto **"Crédito ou débito efetivado"**.
</Note>

Caso o callback seja enviado com o método POST, além dos dados enviados na Query, o parceiro receberá no corpo da requisição:

**Status 09:**

```json theme={null}
{
    "descricaoOcorrencia": "09-Crédito ou Débito efetivado"
}
```

**Status 11:**

```json theme={null}
{
    "descricaoOcorrencia": "AB-Conta de destistino não localizada ou inválida."
}
```

## Eventos FGTS

Os eventos de notificação por callback do FGTS são:

### Boleto Registrado

Esse callback é enviado quando é solicitado o cancelamento de uma proposta e enviamos um boleto híbrido referente ao cancelamento.

```json theme={null}
{
    "NumCodigoBarras": "27496981100000010000001090000000005902301160",
    "NumLinhaDigitavel": "27490001019000000000159023011600698110000001000",
    "PixCopiaCola": "00020101021226970014br.gov.bcb.pix2575qr-h.cornerpix.com.br/11581339/v2/cobv/e8fb8e99-6f1c-448e-b1b3-f5c45004a6d85204000053039865802BR5914BMP MONEY PLUS6009SAO PAULO62070503***63045155",
    "QRCode": "iVBORw0KGgoAAAANSUhEUgAAAhIAAAISAQAAAACxRhsSAAAEw0lEQVR4nO2dW4rrOBCG/xob+tGBLKCXouzsMEuaHdhLyQIG5MeATM1DqXTp7nNOw0lEJvx6SNtu5UOGou5SRPGnY/vrjxEAGWSQQQYZZJBBBhlkVIbkMQObfYjIBYdgO5X/ng6RCwC57D7/cud1kEHG12O2P2EFgP0MhHgSAFPCdooqwJwATEmASQU4ZsU+JQCA3G8dZJDxHcbu2nF7T1DVmyBcZwDLTRA0AeE6Q1f/ninf+6+DDDK+w5DLPvvHchNgf1P922VSLv7x6HWQQUY75i+",
    "VlrBoleto": 10.00,
    "DtVencimento": "2024-08-17 00:00:00",
    "NumeroBoleto": "59",
    "CodigoBoleto": "7af52ad6-2ef1-4678-a070-29c59e95b0e1",
    "CodigoProposta": "7e2c86b3-bf71-4ce2-a0b3-7d4f198c3c71",
    "CodigoOperacao": "732af968-96e9-4c9f-9ee1-5fade313ffbb",
    "Detalhes": null,
    "ContextoEvento": 7,
    "TipoEvento": 5,
    "NomeEvento": "Boleto Registrado",
    "DtEvento": "2024-08-16 11:29:19"
}
```

| Campo               | Tipo     | Descrição                                                                              |
| ------------------- | -------- | -------------------------------------------------------------------------------------- |
| `NumCodigoBarras`   | String   | Número do código de barras.                                                            |
| `NumLinhaDigitavel` | String   | Linha digital do boleto.                                                               |
| `PixCopiaCola`      | String   | Pix copia e cola.                                                                      |
| `QRCode`            | String   | QR code pix copia e cola (base64).                                                     |
| `VlrBoleto`         | Decimal  | Valor do boleto.                                                                       |
| `DtVencimento`      | Datetime | Data de vencimento do boleto.                                                          |
| `NumeroBoleto`      | String   | Número do boleto.                                                                      |
| `CodigoBoleto`      | Guid     | Identificador do boleto.                                                               |
| `CodigoProposta`    | Guid     | Identificador da proposta.                                                             |
| `CodigoOperacao`    | Guid     | Identificador da operação.                                                             |
| `Detalhes`          | String   | Neste caso não retornam informações, apenas o contexto e tipo de evento (sempre NULL). |
| `ContextoEvento`    | String   | Identificador do contexto do evento (7 - FGTS callback).                               |
| `TipoEvento`        | String   | Identificador do tipo do evento = 5.                                                   |
| `NomeEvento`        | String   | Descrição do nome do evento.                                                           |
| `DtEvento`          | Datetime | Data do evento.                                                                        |

### Cancelamento efetivado

Esse callback é enviado quando o parceiro gera um boleto de cancelamento e o cliente realiza o pagamento do boleto. Dessa forma, o cancelamento é executado com sucesso.

```json theme={null}
{
  "CodigoProposta": "87456806-1652-48c1-92f3-e75b820104ca",
  "CodigoOperacao": null,
  "Detalhes": null,
  "ContextoEvento": 7,
  "TipoEvento": 1,
  "NomeEvento": "Cancelamento Efetivado",
  "MotivoCancelamento": "Valor da alienação/cessão superior ao valor disponível para o trabalhador.",
  "DtEvento": "2024-09-11T12:34:14.4274789-03:00"
}
```

| Campo            | Tipo     | Descrição                                                |
| ---------------- | -------- | -------------------------------------------------------- |
| `CodigoProposta` | Guid     | Identificador da proposta.                               |
| `CodigoOperacao` | Guid     | Identificador da operação.                               |
| `Detalhes`       | String   | Campo referente às informações do cancelamento.          |
| `ContextoEvento` | String   | Identificador do contexto do evento (7 - FGTS callback). |
| `TipoEvento`     | String   | Identificador do tipo do evento = 1.                     |
| `NomeEvento`     | String   | Descrição do nome do evento.                             |
| `DtEvento`       | Datetime | Data do evento.                                          |

### Pagamento parcial

Esse callback é enviado quando o cliente realiza o pagamento parcial do valor do boleto.

```json theme={null}
{
    "CodigoProposta": "7e2c86b3-bf71-4ce2-a0b3-7d4f198c3c71",
    "CodigoOperacao": "37a7bb3d-71b0-4dc6-8424-7d036537113b",
    "Detalhes": "Pagamento parcial de 5.00 realizado.",
    "ContextoEvento": 7,
    "TipoEvento": 4,
    "NomeEvento": "Pagamento Parcial Realizado",
    "DtEvento": "2024-08-16T12:36:50.7216804-03:00"
}
```

| Campo            | Tipo     | Descrição                                                |
| ---------------- | -------- | -------------------------------------------------------- |
| `CodigoProposta` | Guid     | Identificador da proposta.                               |
| `CodigoOperacao` | Guid     | Identificador da operação.                               |
| `Detalhes`       | String   | Campo referente às informações do cancelamento.          |
| `ContextoEvento` | String   | Identificador do contexto do evento (7 - FGTS callback). |
| `TipoEvento`     | String   | Identificador do tipo do evento = 1.                     |
| `NomeEvento`     | String   | Descrição do nome do evento.                             |
| `DtEvento`       | Datetime | Data do evento.                                          |

### Pagamento não realizado

Esse callback é enviado quando o parceiro gera um boleto de cancelamento, mas o cliente não realiza o pagamento do boleto.

```json theme={null}
{
  "CodigoProposta": "99c5aa15-ef5c-4fd1-bb50-e82797ddabcc",
  "CodigoOperacao": null,
  "Detalhes": null,
  "ContextoEvento": 7,
  "TipoEvento": 3,
  "NomeEvento": "Pagamento Não Realizado",
  "DtEvento": "2024-08-21T01:00:15.9484515-03:00"
}
```

| Campo            | Tipo     | Descrição                                                |
| ---------------- | -------- | -------------------------------------------------------- |
| `CodigoProposta` | Guid     | Identificador da proposta.                               |
| `CodigoOperacao` | Guid     | Identificador da operação.                               |
| `Detalhes`       | String   | Campo referente às informações do cancelamento.          |
| `ContextoEvento` | String   | Identificador do contexto do evento (7 - FGTS callback). |
| `TipoEvento`     | String   | Identificador do tipo do evento = 1.                     |
| `NomeEvento`     | String   | Descrição do nome do evento.                             |
| `DtEvento`       | Datetime | Data do evento.                                          |

### Cancelamento não efetivado

Esse callback é enviado após o envio do call-back do “Pagamento não Realizado”. Informando que o cancelamento da operação não foi efetivado.

```json theme={null}
{
    "CodigoProposta": "7e2c86b3-bf71-4ce2-a0b3-7d4f198c3c71",
    "CodigoOperacao": "4745ed52-eb36-44d4-895c-f0d6a9383066",
    "Detalhes": "Pagamento parcial de 5.00 realizado.",
    "ContextoEvento": 7,
    "TipoEvento": 2,
    "NomeEvento": "Cancelamento Não Efetivado",
    "DtEvento": "2024-08-16T12:36:51.160533-03:00"
}
```

| Campo            | Tipo     | Descrição                                                |
| ---------------- | -------- | -------------------------------------------------------- |
| `CodigoProposta` | Guid     | Identificador da proposta.                               |
| `CodigoOperacao` | Guid     | Identificador da operação.                               |
| `Detalhes`       | String   | Campo referente às informações do cancelamento.          |
| `ContextoEvento` | String   | Identificador do contexto do evento (7 - FGTS callback). |
| `TipoEvento`     | String   | Identificador do tipo do evento = 1.                     |
| `NomeEvento`     | String   | Descrição do nome do evento.                             |
| `DtEvento`       | Datetime | Data do evento.                                          |

<Warning>Caso ocorra algum problema durante o recebimento do callback do FGTS, o sistema não realizará novas tentativas de envio.</Warning>

## Eventos Liquidação Antecipada

Os eventos de notificação por callback referente a Liquidação Antecipada:

<Warning>Para os calbacks serem enviados, deve ser parametrizada a url de callback com o time de implantação.
Caso não tenha a parametrização, não será enviado o callback com as informações do PIX cobrança.</Warning>

### Registro de Cobrança

Este exemplo de corpo de callback fornece informações sobre a emissão de cobrança via PIX.

```json theme={null}
{
  "TipoEvento": 8,
  "NomeEvento": "Registro de Cobrança",
  "NroProposta": 49401165,
  "DtEvento": "2025-05-06",
  "AcrescimoAbatimento": null,
  "LancamentoParcela": null,
  "ProrrogacaoVencimento": null,
  "GeracaoBoleto": null,
  "CancelamentoBoleto": null,
  "GeracaoCobranca": {
    "CodigoLiquidacao": "f079c5f2-1473-4c2e-aa19-c49a0c789691",
    "CodigoBoleto": null,
    "NroBoleto": null,
    "Emv": null, //código do pix copia e cola
    "Imagem": null, //imagem do qr code
    "Parcelas": [
      1
    ]
  },
  "CancelamentoCobranca": null
}
```

| Campo                   | Tipo        | Descrição                                      |
| ----------------------- | ----------- | ---------------------------------------------- |
| `TipoEvento`            | Int         | Identificador numérico do tipo de evento.      |
| `NomeEvento`            | String      | Nome do evento.                                |
| `NroProposta`           | Int         | Número da proposta associada.                  |
| `DtEvento`              | String      | Data em que o evento ocorreu.                  |
| `AcrescimoAbatimento`   | Object      | Informações sobre acréscimos ou abatimentos.   |
| `LancamentoParcela`     | Object      | Informações sobre o lançamento de parcelas.    |
| `ProrrogacaoVencimento` | Object      | Informações sobre a prorrogação do vencimento. |
| `GeracaoBoleto`         | Object      | Informações sobre a geração do boleto.         |
| `CancelamentoBoleto`    | Object      | Informações sobre o cancelamento do boleto.    |
| `GeracaoCobranca`       | Object      | Informações sobre a geração de cobrança.       |
| `CodigoLiquidacao`      | String      | Código de liquidação.                          |
| `CodigoBoleto`          | String      | Código do boleto.                              |
| `NroBoleto`             | Int         | Número do boleto.                              |
| `Emv`                   | String      | Código do PIX (copia e cola).                  |
| `Imagem`                | String      | Imagem do QR Code.                             |
| `Parcelas`              | Array\[Int] | Lista de parcelas associadas à cobrança.       |
| `CancelamentoCobranca`  | Object      | Informações sobre o cancelamento da cobrança.  |

### Liquidação

Este exemplo de corpo de callback é enviado ao parceiro quando todas as parcelas foram pagas (liquidação da agenda).

```json theme={null}
{
  "TipoEvento": 7,
  "NomeEvento": "Liquidação de Agenda",
  "NroProposta": 4521938,
  "DtEvento": "2025-01-27",
  "AcrescimoAbatimento": null,
  "LancamentoParcela": null,
  "ProrrogacaoVencimento": null,
  "GeracaoBoleto": null,
  "CancelamentoBoleto": null
}
```

| Campo                   | Tipo   | Descrição                                      |
| ----------------------- | ------ | ---------------------------------------------- |
| `TipoEvento`            | Int    | Identificador numérico do tipo de evento.      |
| `NomeEvento`            | String | Nome do evento.                                |
| `NroProposta`           | Int    | Número da proposta associada.                  |
| `DtEvento`              | String | Data em que o evento ocorreu.                  |
| `AcrescimoAbatimento`   | Object | Informações sobre acréscimos ou abatimentos.   |
| `LancamentoParcela`     | Object | Informações sobre o lançamento de parcelas.    |
| `ProrrogacaoVencimento` | Object | Informações sobre a prorrogação do vencimento. |
| `GeracaoBoleto`         | Object | Informações sobre a geração do boleto.         |
| `CancelamentoBoleto`    | Object | Informações sobre o cancelamento do boleto.    |

### Cancelamento de Cobrança

Esse é um exemplo de callback de cancelamento cobrança, ele
atualmente é disparado ao cancelar pix. Os dados incluem:

* Número de proposta;
* Data de cancelamento;
* Número do pix;
* Parcelas afetadas;
* Código do pix cancelado;
* Além de outros dados.

```json theme={null}
{
  "TipoEvento":9,
  "NomeEvento":"Cancelamento de Cobrança",
  "NroProposta":5224880,
  "DtEvento":"2025-12-08",
  "AcrescimoAbatimento":null,
  "LancamentoParcela":null,
  "ProrrogacaoVencimento":null,
  "GeracaoBoleto":null,
  "CancelamentoBoleto":null,
  "GeracaoCobranca":null,
  "CancelamentoCobranca":{"CodigoLiquidacao":"77409e9c-baa5-49b6-9b88-b5ddf852d375",
  "CodigoBoleto":null,
  "NroBoleto":null,
  "Emv":"00020101021226850014BR.GOV.BCB.PIX2563qrh.moneyp.com.br/pix/v2/cobv/3affd944dc7082ce55ebf3cb27e8cac25204000053039865802BR5906moneyp6
009Sao Paulo62070503***6304753F",
  "Parcelas":[3]},
  "EstornoLancamento":null
}
```
