Pular para o conteúdo principal

Notificação de infração

O conjunto de endpoints a seguir é responsável pela gestão de Notificação de infração


Criar notificação de infração​

Endpoint para criar uma notificação de infração para reportar situações fraudulentas ou irregulares relacionadas a transações Pix.

Responsabilidades do PSP Indireto:
  • O PSP Indireto atua como intermediário, redirecionando a requisição para o DICT - A notificação é processada pelo DICT e comunicada aos PSPs envolvidos - O PSP Indireto deve garantir a autenticação e autorização adequadas
Casos de Uso:
  • Solicitação de Devolução: Quando o objetivo da notificação de infração for solicitação de devolução, quem deve criar a notificação é o PSP do pagador da transação original.
  • Cancelamento de Devolução: Para o cancelamento de devolução, quem deve criar é o PSP do recebedor da transação original.
  • Fraude: Reportar transações fraudulentas identificadas pelo PSP - Scam: Reportar tentativas de golpe ou engano - Outros: Outras situações irregulares que necessitam de investigação
Integração com DICT: Este endpoint redireciona automaticamente para o DICT, seguindo os padrões estabelecidos pelo Banco Central para notificações de infração em chaves Pix.

POST /dict/infraction-reports
Requer autorização para o escopo: infraction.ind.write


Requisição

{
"infractionReport": {
"contactInformation": {
"email": "[email protected]",
"phone": "+5561988887777"
},
"reason": "REFUND_REQUEST",
"reportDetails": "Transação feita através de QR Code falso em boleto",
"situationType": "SCAM",
"transactionId": "E9999901012341234123412345678900"
}
}

Respostas

As respostas abaixo representam Sucesso(200) e Falhas/erros do consumo.

{
"responseTime": 0,
"correlationId": "abcdef01-2345-6789-0123-456789012345",
"infractionReport": {
"transactionId": "E9999901012341234123412345678900",
"reason": "REFUND_REQUEST",
"situationType": "SCAM",
"contactInformation": {
"email": "[email protected]",
"phone": "+5561988887777"
},
"reportDetails": "Transação feita através de QR Code falso em boleto",
"id": "91d65e98-97c0-4b0f-b577-73625da1f9fc",
"status": "OPEN",
"reporterParticipant": "99999010",
"counterpartyParticipant": "99999011",
"creationTime": "2020-01-17T10:00:00.000Z",
"lastModified": "2020-01-17T10:00:00.000Z"
}
}

Listar notificações de infração​

Endpoint para obter a lista de notificações de infração em que o participante é parte.

Responsabilidades do PSP Indireto:
  • O PSP Indireto redireciona a consulta para o DICT - A listagem retorna apenas notificações relacionadas ao participante - Filtros e paginação são aplicados pelo DICT
Ordenação: Lista de notificações é ordenada de forma crescente pelo campo LastModified.

Filtros Disponíveis:
  • Status: Filtra por status da notificação (open, waiting_resolution, confirmed, cancelled, completed).
  • Período: Filtra por data de modificação (modifiedAfter, modifiedBefore).
  • Tipo: Filtra por tipo de notificação.
  • Participação: Filtra por papel do participante (isReporter, isClaimer).
Integração com DICT: Este endpoint redireciona automaticamente para o DICT, seguindo os padrões estabelecidos pelo Banco Central para consulta de notificações de infração.

GET /dict/infraction-reports
Requer autorização para o escopo: infraction.ind.read


Requisição

Este endpoint permite o uso de query params em sua execução. O exemplo de código abaixo ilustra como consumir o endpoint com alguns dos parâmetros disponíveis, que são opcionais.

/dict/infraction-reports?isReporter=false&status=OPEN

Respostas

As respostas abaixo representam Sucesso(200) e Falhas/erros do consumo.

{
"correlationId": "abcdef01-2345-6789-0123-456789012345",
"hasMoreELements": true,
"infractionReports": [
{
"analysisDetails": "Valor bloqueado. Para mais informações, contactar central antifraude em 11 3000-00000, informando ID 9999.",
"analysisResult": "AGREED",
"contactInformation": {
"email": "[email protected]",
"phone": "+5561988887777"
},
"counterpartyParticipant": "99999011",
"creationTime": "2020-01-17T10:00:00.000Z",
"fraudMarkerId": "91d65e98-97c0-4b0f-b577-73625da1f9fc",
"id": "91d65e98-97c0-4b0f-b577-73625da1f9fc",
"lastModified": "2020-01-17T10:00:00.000Z",
"reason": "REFUND_REQUEST",
"reportDetails": "Transação feita através de QR Code falso em boleto",
"reporterParticipant": "99999010",
"situationType": "SCAM",
"status": "CLOSED",
"transactionId": "E9999901012341234123412345678900"
}
],
"responseTime": 0
}

Consultar notificação de Infração​

Endpoint para obter detalhes de uma notificação de infração específica.

Responsabilidades do PSP Indireto:
  • O PSP Indireto redireciona a consulta para o DICT - A consulta retorna apenas notificações relacionadas ao participante - Detalhes completos da notificação são fornecidos pelo DICT
Informações Retornadas:
  • Dados da notificação (ID, status, motivo, detalhes)
  • Informações de contato do reportador
  • Participantes envolvidos (reportador e contraparte)
  • Timestamps de criação e modificação
  • ID da transação relacionada
Integração com DICT: Este endpoint redireciona automaticamente para o DICT, seguindo os padrões estabelecidos pelo Banco Central para consulta de notificações de infração.

GET /dict/infraction-reports/:infractionReportId
Requer autorização para o escopo: infraction.ind.read


Requisição

A requisição enviada para esse endpoint não precisa de um body, apenas os cabeçalhos de autorização OAuth, parâmetros e o certificado da conta.

Respostas

As respostas abaixo representam Sucesso(200) e Falhas/erros do consumo.

{
"correlationId": "abcdef01-2345-6789-0123-456789012345",
"infractionReport": {
"contactInformation": {
"email": "[email protected]",
"phone": "+5561988887777"
},
"counterpartyParticipant": "99999011",
"creationTime": "2020-01-17T10:00:00.000Z",
"id": "91d65e98-97c0-4b0f-b577-73625da1f9fc",
"lastModified": "2020-01-17T10:00:00.000Z",
"reason": "REFUND_REQUEST",
"reportDetails": "Transação feita através de QR Code falso em boleto",
"reporterParticipant": "99999010",
"situationType": "SCAM",
"status": "ACKNOWLEDGED",
"transactionId": "E9999901012341234123412345678900"
},
"responseTime": 0
}

Receber notificação de infração​

Endpoint para notificar recebimento da notificação pelo participante contraparte.

Idempotência

A operação é idempotente. Caso a notificação já tenha sido recebida e esteja ainda com status ACKNOWLEDGED, será retornada resposta equivalente à primeira requisição.

POST /dict/infraction-reports/:infractionReportId/acknowledge
Requer autorização para o escopo: infraction.ind.write


Requisição

A requisição enviada para esse endpoint não precisa de um body, apenas os cabeçalhos de autorização OAuth, parâmetros e o certificado da conta.

Respostas

As respostas abaixo representam Sucesso(200) e Falhas/erros do consumo.

{
"correlationId": "abcdef01-2345-6789-0123-456789012345",
"infractionReport": {
"contactInformation": {
"email": "[email protected]",
"phone": "+5561988887777"
},
"counterpartyParticipant": "99999011",
"creationTime": "2020-01-17T10:00:00.000Z",
"id": "91d65e98-97c0-4b0f-b577-73625da1f9fc",
"lastModified": "2020-01-17T10:00:00.000Z",
"reason": "REFUND_REQUEST",
"reportDetails": "Transação feita através de QR Code falso em boleto",
"reporterParticipant": "99999010",
"situationType": "SCAM",
"status": "CLOSED",
"transactionId": "E9999901012341234123412345678900"
},
"responseTime": 0
}

Cancelar notificação de Infração​

Endpoint para cancelar a notificação de infração. Só pode ser realizada pelo participante que criou a notificação.

O cancelamento de uma notificação de infração fechada com concordância cancelará também a marcação de fraude associada.

Idempotência

A operação é idempotente. Caso a notificação já tenha sido cancelada com os mesmos parâmetros, será retornada resposta equivalente à primeira requisição.

POST /dict/infraction-reports/:infractionReportId/cancel
Requer autorização para o escopo: infraction.ind.write


Requisição

A requisição enviada para esse endpoint não precisa de um body, apenas os cabeçalhos de autorização OAuth, parâmetros e o certificado da conta.

Respostas

As respostas abaixo representam Sucesso(200) e Falhas/erros do consumo.

{
"correlationId": "abcdef01-2345-6789-0123-456789012345",
"infractionReport": {
"contactInformation": {
"email": "[email protected]",
"phone": "+5561988887777"
},
"counterpartyParticipant": "99999011",
"creationTime": "2020-01-17T10:00:00.000Z",
"id": "91d65e98-97c0-4b0f-b577-73625da1f9fc",
"lastModified": "2020-01-17T10:00:00.000Z",
"reason": "REFUND_REQUEST",
"reportDetails": "Transação feita através de QR Code falso em boleto",
"reporterParticipant": "99999010",
"situationType": "SCAM",
"status": "CANCELLED",
"transactionId": "E9999901012341234123412345678900"
},
"responseTime": 0
}

Fechar notificação de Infração​

Endpoint para fechar a notificação de infração.

A notificação deve ser fechada pelo participante contraparte. Para fechamento, o status deve ser ACKNOWLEDGED.

Caso o fechamento seja com o resultado de análise AGREED, será gerada automaticamente uma marcação de fraude. O id da marcação constará no campo FraudMarkerId da resposta. Nestes casos, o participante deve obrigatoriamente informar o campo 'FraudType'. Os valores válidos são APPLICATION_FRAUD, MULE_ACCOUNT, SCAMMER_ACCOUNT e OTHER.

ATENÇÃO: o tipo UNKNOWN não é válido para a API v2. Ele é usado apenas como valor descritivo nas notificações de infração criadas ainda na API v1, quando o tipo de fraude não fazia parte dos dados na notificação.

A marcação de fraude gerada pode ser cancelada pelo participante contraparte, responsável pelo fechamento da notificação de infração.

Idempotência

A operação é idempotente. Caso a notificação já tenha sido fechado com os mesmos parâmetros, será retornada resposta equivalente à primeira requisição.

POST /dict/infraction-reports/:infractionReportId/close
Requer autorização para o escopo: infraction.ind.write


Requisição

{
"analysisDetails": "Valor bloqueado. Para mais informações, contactar central antifraude em 11 3000-00000, informando ID 9999.",
"analysisResult": "AGREED",
"fraudType": "SCAMMER_ACCOUNT",
"infractionReportId": "91d65e98-97c0-4b0f-b577-73625da1f9fc",
"participant": "12345678"
}

Respostas

As respostas abaixo representam Sucesso(200) e Falhas/erros do consumo.

{
"correlationId": "abcdef01-2345-6789-0123-456789012345",
"infractionReport": {
"analysisDetails": "Valor bloqueado. Para mais informações, contactar central antifraude em 11 3000-00000, informando ID 9999.",
"analysisResult": "AGREED",
"contactInformation": {
"email": "[email protected]",
"phone": "+5561988887777"
},
"counterpartyParticipant": "99999011",
"creationTime": "2020-01-17T10:00:00.000Z",
"fraudMarkerId": "91d65e98-97c0-4b0f-b577-73625da1f9fc",
"id": "91d65e98-97c0-4b0f-b577-73625da1f9fc",
"lastModified": "2020-01-17T10:00:00.000Z",
"reason": "REFUND_REQUEST",
"reportDetails": "Transação feita através de QR Code falso em boleto",
"reporterParticipant": "99999010",
"situationType": "SCAM",
"status": "CLOSED",
"transactionId": "E9999901012341234123412345678900"
},
"responseTime": 0
}