---
updatedAt: 2026-04-23T18:12:51.000Z
agentTools:
  siteIndex: https://developers.pismo.io/llms.txt
  projectIndex: https://developers.pismo.io/pismo-docs/llms.txt
---

# Close infraction report

Closes an infraction report.

Only the counterparty participant can close an infraction report. 

The operation is idempotent. If you try to close the report again with the same parameters, you will get the same response as the first time.

On PSP timeout, a `202 Accepted` response is returned and the process continues asynchronously, eventually emitting a success or failure event.

This endpoint generates a <a href="https://developers.pismo.io/events/docs/pix-dict-infraction-status-change-1" >Pix infraction status changed</a> event.


# OpenAPI definition

```json
{
  "openapi": "3.1.0",
  "info": {
    "title": "Instant payments - Pix management",
    "description": "API responsible for providing Pix operations (related to DICT) via integrating with external providers",
    "contact": {
      "name": "API Support",
      "url": "https://developers.pismo.io/support/"
    },
    "license": {
      "name": "Copyright Pismo"
    },
    "version": "0.0.1"
  },
  "servers": [
    {
      "url": "https://sandbox.pismolabs.io/pix-dict",
      "description": "Sandbox API server for testing."
    }
  ],
  "tags": [
    {
      "name": "Infraction reports",
      "description": "Manage Pix transaction infraction reports endpoints"
    }
  ],
  "components": {
    "securitySchemes": {
      "BearerAuth": {
        "type": "http",
        "scheme": "bearer",
        "bearerFormat": "JWT"
      }
    },
    "parameters": {
      "AuthHeader": {
        "in": "header",
        "name": "Authorization",
        "required": true,
        "description": "Account token - token encoded with a Pismo account ID. Tokens can expire quickly, which can result in a <b>401 Unauthorized</b> message.",
        "schema": {
          "type": "string",
          "example": "Bearer eyJhbGci...IUzUx"
        }
      },
      "InfractionReportIDV2path": {
        "name": "id",
        "in": "path",
        "description": "Infraction report ID",
        "required": true,
        "schema": {
          "type": "string",
          "format": "uuid"
        }
      }
    },
    "headers": {
      "XCidResponseHeader": {
        "description": "Request tracking identifier.",
        "schema": {
          "type": "string"
        }
      }
    },
    "schemas": {
      "AccountNumber": {
        "type": "string",
        "description": "Account number.",
        "maxLength": 20,
        "example": "98765432"
      },
      "AnalysisDetails": {
        "type": "string",
        "description": "Analysis details",
        "maxLength": 2000,
        "example": "Details about the analysis"
      },
      "AnalysisResult": {
        "type": "string",
        "description": "Analysis results",
        "enum": [
          "AGREED",
          "DISAGREED",
          "PARTIALLY_ACCEPTED",
          "TOTALLY_ACCEPTED",
          "REJECTED"
        ],
        "example": "AGREED"
      },
      "BacenResponseTime": {
        "type": "string",
        "description": "Banco Central do Brasil (Central Bank of Brazil) response datetime. A RFC 3339 date-time value. For example -  `2023-04-12T23:20:50.52Z`.",
        "format": "date-time",
        "example": "2020-08-13T13:49:03Z"
      },
      "Branch": {
        "type": "string",
        "description": "Bank-assigned branch ID or ISPB (Identifcador do Sistema de Pagamento Brazil) number - the Brazilian Payment System identifier, an 8-digit value.",
        "example": "011"
      },
      "ContactInformation": {
        "type": "object",
        "required": [
          "phone",
          "email"
        ],
        "properties": {
          "phone": {
            "type": "string",
            "maxLength": 16,
            "description": "Contact phone number",
            "example": "551154874551"
          },
          "email": {
            "type": "string",
            "description": "Contact email",
            "maxLength": 77,
            "example": "polly_ester@email.com"
          }
        }
      },
      "CorrelationID": {
        "type": "string",
        "format": "uuid",
        "description": "The correlation identifier is used to link related API requests and events. The Pismo engineering team can use this to track everything related to a call. If one is not passed, it is automatically generated and returned to the client in a response header.\n",
        "example": "ea8bc045-9ff7-439f-a318-2e6f974707a5"
      },
      "CreationDatetime": {
        "type": "string",
        "description": "Creation datetime. A RFC 3339 date-time value. For example -  `2023-04-12T23:20:50.52Z`.",
        "format": "date-time",
        "example": "2020-08-13T13:49:03Z"
      },
      "CreditedParticipant": {
        "type": "string",
        "description": "Credited participant's ISPB (Identifcador do Sistema de Pagamento Brazil) number - the Brazilian Payment System identifier, an 8-digit value.",
        "maxLength": 8,
        "example": "99999011"
      },
      "DebitedParticipant": {
        "type": "string",
        "description": "Debited participant's ISPB (Identifcador do Sistema de Pagamento Brazil) number - the Brazilian Payment System identifier, an 8-digit value.",
        "maxLength": 8,
        "example": "99999011"
      },
      "EndToEndID": {
        "type": "string",
        "description": "This field is a Brazil Central Bank (BCB) requirement to track all steps of Pix transactions. \nBasically, there are two steps to a Pix transaction:\n    1. Initialize a transaction \n    2. Confirm a transaction\nThe end_to_end_id is sent to the BCB in both steps in order to identify all transaction information. \n",
        "example": "132cca0f6a816dd5be409256b3662343"
      },
      "InfractionAnalysisDetails": {
        "type": "string",
        "description": "Infraction's analysis details, which can guide the payer to next steps.",
        "example": "Details about infraction analysis",
        "maxLength": 2000
      },
      "InfractionAnalysisResult": {
        "type": "string",
        "description": "Infraction analysis result",
        "example": "AGREED",
        "enum": [
          "AGREED",
          "DISAGREED"
        ]
      },
      "InfractionCloseRequest": {
        "required": [
          "analysis_result"
        ],
        "type": "object",
        "properties": {
          "analysis_result": {
            "$ref": "#/components/schemas/InfractionAnalysisResult"
          },
          "fraud_type": {
            "$ref": "#/components/schemas/InfractionFraudType"
          },
          "analysis_details": {
            "$ref": "#/components/schemas/InfractionAnalysisDetails"
          }
        }
      },
      "InfractionFraudType": {
        "type": "string",
        "description": "Verified fraud type. **REQUIRED** if `analysis_result` = `AGREED`.",
        "example": "APPLICATION_FRAUD",
        "enum": [
          "APPLICATION_FRAUD",
          "MULE_ACCOUNT",
          "SCAMMER_ACCOUNT",
          "OTHER"
        ]
      },
      "InfractionReportedBy": {
        "type": "string",
        "description": "Who filed the infraction report",
        "enum": [
          "DEBITED_PARTICIPANT",
          "CREDITED_PARTICIPANT"
        ],
        "example": "DEBITED_PARTICIPANT"
      },
      "InfractionReportID": {
        "type": "string",
        "format": "uuid",
        "maxLength": 36,
        "description": "Infraction report ID (UUID)",
        "example": "cfdff46e-5d58-45b8-b7aa-591a65f74444"
      },
      "InfractionStatus": {
        "type": "string",
        "description": "Infraction status",
        "example": "CLOSED",
        "enum": [
          "OPEN",
          "ACKNOWLEDGED",
          "CLOSED",
          "CANCELLED"
        ]
      },
      "infractionType": {
        "type": "string",
        "description": "Infraction type: \n  * `FRAUD` - Payer or payee requested. \n  * `REFUND_REQUEST` - Initiated only by payer's payment service provider (PSP). Used to mark a key as fraudulent and asks for a refund.\n  * `REFUND_CANCELLED` - Initiated only by payee's PSP.   To indicate that a refund done thru an infraction process was a fraud and needs to be returned,\n",
        "example": "FRAUD",
        "enum": [
          "FRAUD",
          "REFUND_REQUEST",
          "REFUND_CANCELLED"
        ]
      },
      "Key": {
        "type": "string",
        "description": "Value, based on a key's type, used to encrypt Pix key.",
        "maxLength": 77,
        "example": "al_fresco@bourdain.com"
      },
      "LastModifiedDatetime": {
        "type": "string",
        "format": "date-time",
        "description": "Last modified datetime. A RFC 3339 date-time value. For example -  `2023-04-12T23:20:50.52Z`.",
        "example": "2020-08-13T13:49:03Z"
      },
      "message.DetailMessage": {
        "type": "object",
        "properties": {
          "external": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/message.ExternalMessage"
            }
          },
          "parameters": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/message.ParameterMessage"
            }
          },
          "payload": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/message.PayloadMessage"
            }
          }
        }
      },
      "message.ExternalMessage": {
        "required": [
          "code",
          "message"
        ],
        "type": "object",
        "properties": {
          "code": {
            "type": "string",
            "description": "Error code",
            "example": "PBE315"
          },
          "message": {
            "type": "string",
            "description": "Error message",
            "example": "Generic error"
          }
        }
      },
      "message.Message": {
        "type": "object",
        "properties": {
          "code": {
            "type": "string",
            "description": "Error code",
            "example": "EPDA0001"
          },
          "details": {
            "$ref": "#/components/schemas/message.DetailMessage"
          },
          "message": {
            "type": "string",
            "description": "Error message",
            "example": "User not found"
          }
        }
      },
      "message.ParameterMessage": {
        "type": "object",
        "required": [
          "field",
          "message"
        ],
        "properties": {
          "field": {
            "type": "string",
            "description": "Parameter in error",
            "example": "query parameter"
          },
          "message": {
            "type": "string",
            "description": "Error message",
            "example": "Generic error"
          }
        }
      },
      "message.PayloadMessage": {
        "type": "object",
        "required": [
          "field",
          "message"
        ],
        "properties": {
          "field": {
            "type": "string",
            "description": "Field in error",
            "example": "Entity.field"
          },
          "message": {
            "type": "string",
            "description": "Error messsage",
            "example": "Generic error"
          }
        }
      },
      "presenter.InfractionData": {
        "type": "object",
        "required": [
          "credited_participant",
          "debited_participant",
          "infracting_account_data",
          "reported_by",
          "tax_id_number",
          "transaction_date"
        ],
        "properties": {
          "credited_participant": {
            "$ref": "#/components/schemas/CreditedParticipant"
          },
          "debited_participant": {
            "$ref": "#/components/schemas/DebitedParticipant"
          },
          "infracting_account_data": {
            "$ref": "#/components/schemas/presenter.InfractingAccountData"
          },
          "reported_by": {
            "$ref": "#/components/schemas/InfractionReportedBy"
          },
          "tax_id_number": {
            "$ref": "#/components/schemas/TaxIdNumber"
          },
          "transaction_date": {
            "type": "string",
            "description": "Transaction date time. RFC 3339 date-time value. For example -  `2023-04-12T23:20:50.52Z`.",
            "format": "date-time",
            "example": "2020-01-17T10:00:00Z"
          },
          "key": {
            "$ref": "#/components/schemas/Key"
          }
        }
      },
      "presenter.InfractionReportResponse": {
        "type": "object",
        "required": [
          "creation_date",
          "credited_participant",
          "debited_participant",
          "end_to_end_id",
          "infraction_report_id",
          "infraction_type",
          "last_modified",
          "reported_by",
          "status",
          "transaction_id"
        ],
        "properties": {
          "creation_date": {
            "$ref": "#/components/schemas/CreationDatetime"
          },
          "credited_participant": {
            "$ref": "#/components/schemas/CreditedParticipant"
          },
          "debited_participant": {
            "$ref": "#/components/schemas/DebitedParticipant"
          },
          "end_to_end_id": {
            "$ref": "#/components/schemas/EndToEndID"
          },
          "infraction_report_id": {
            "$ref": "#/components/schemas/InfractionReportID"
          },
          "infraction_type": {
            "$ref": "#/components/schemas/infractionType"
          },
          "last_modified": {
            "$ref": "#/components/schemas/LastModifiedDatetime"
          },
          "reported_by": {
            "$ref": "#/components/schemas/InfractionReportedBy"
          },
          "status": {
            "$ref": "#/components/schemas/InfractionStatus"
          },
          "transaction_id": {
            "$ref": "#/components/schemas/TransactionID"
          },
          "analysis_details": {
            "$ref": "#/components/schemas/AnalysisDetails"
          },
          "analysis_result": {
            "$ref": "#/components/schemas/AnalysisResult"
          },
          "bacen_response_time": {
            "$ref": "#/components/schemas/BacenResponseTime"
          },
          "correlation_id": {
            "$ref": "#/components/schemas/CorrelationID"
          },
          "infraction_data": {
            "$ref": "#/components/schemas/presenter.InfractionData"
          },
          "report_details": {
            "$ref": "#/components/schemas/ReportDetails"
          },
          "transaction_result": {
            "$ref": "#/components/schemas/TransactionResult"
          },
          "transaction_type": {
            "$ref": "#/components/schemas/TransactionType"
          },
          "contact_information": {
            "$ref": "#/components/schemas/ContactInformation"
          }
        }
      },
      "presenter.InfractingAccountData": {
        "type": "object",
        "required": [
          "account_number"
        ],
        "properties": {
          "account_number": {
            "$ref": "#/components/schemas/AccountNumber"
          },
          "branch": {
            "$ref": "#/components/schemas/Branch"
          }
        }
      },
      "ReportDetails": {
        "type": "string",
        "description": "Details about report",
        "maxLength": 2000,
        "example": "Details that can help the receiving participant to analyze the suspected violation"
      },
      "TaxIdNumber": {
        "type": "string",
        "description": "A government document number, such as a Social Security number (US) or Cadastro de Pessoas Físicas number (Brazil). Must be numeric with 11-14 digits.",
        "minLength": 11,
        "maxLength": 14,
        "example": "123412341234"
      },
      "TransactionID": {
        "type": "string",
        "description": "Transaction ID",
        "example": "E9999901012341234123412345678900"
      },
      "TransactionResult": {
        "type": "string",
        "description": "Transaction result",
        "enum": [
          "SETTLED",
          "REJECTED_PAYEE",
          "REJECTED_PAYER"
        ],
        "example": "SETTLED"
      },
      "TransactionType": {
        "type": "string",
        "description": "Transaction type:\n  * `SPI` -  Transaction was created in the Central Bank system. \n  * `INTERNAL` - Transaction was created internally in the Pismo system.\n",
        "enum": [
          "SPI",
          "INTERNAL"
        ],
        "example": "SPI"
      }
    },
    "responses": {
      "202InfractionAccepted": {
        "description": "Accepted",
        "headers": {
          "x-cid": {
            "$ref": "#/components/headers/XCidResponseHeader"
          }
        },
        "content": {
          "application/json": {
            "schema": {
              "$ref": "#/components/schemas/message.Message"
            },
            "examples": {
              "Creation request accepted and will processed async": {
                "value": {
                  "code": "EPDA0148",
                  "message": "Infraction registration will continue asynchronously"
                }
              },
              "Cancellation request accepted and will processed async": {
                "value": {
                  "code": "EPDA0149",
                  "message": "Infraction cancel will continue asynchronously"
                }
              },
              "Close request accepted and will processed async": {
                "value": {
                  "code": "EPDA0149",
                  "message": "Infraction close will continue asynchronously"
                }
              }
            }
          }
        }
      },
      "401Unauthorized": {
        "description": "Unauthorized",
        "headers": {
          "x-cid": {
            "$ref": "#/components/headers/XCidResponseHeader"
          }
        },
        "content": {
          "application/json": {
            "schema": {
              "$ref": "#/components/schemas/message.Message"
            },
            "examples": {
              "Provider service error": {
                "value": {
                  "code": "EPDG0013",
                  "message": "Unauthorized access to the provider service"
                }
              }
            }
          }
        }
      },
      "403Forbidden": {
        "description": "Forbidden",
        "headers": {
          "x-cid": {
            "$ref": "#/components/headers/XCidResponseHeader"
          }
        },
        "content": {
          "application/json": {
            "schema": {
              "$ref": "#/components/schemas/message.Message"
            },
            "examples": {
              "EPDA0009": {
                "summary": "Missing required header 'x-tenant'",
                "value": {
                  "code": "EPDA0009",
                  "message": "Missing required header 'x-tenant'"
                }
              },
              "EPDA0010": {
                "summary": "Missing required header 'x-account-id'",
                "value": {
                  "code": "EPDA0010",
                  "message": "Missing required header 'x-account-id'"
                }
              },
              "EPDA0152": {
                "summary": "Missing required param 'id'",
                "value": {
                  "code": "EPDA0152",
                  "message": "Missing required param 'id'"
                }
              }
            }
          }
        }
      },
      "429TooManyRequests": {
        "description": "Too many requests",
        "headers": {
          "x-cid": {
            "$ref": "#/components/headers/XCidResponseHeader"
          }
        },
        "content": {
          "application/json": {
            "schema": {
              "$ref": "#/components/schemas/message.Message"
            }
          }
        }
      },
      "502BadGateway": {
        "description": "Bad Gateway",
        "headers": {
          "x-cid": {
            "$ref": "#/components/headers/XCidResponseHeader"
          }
        },
        "content": {
          "application/json": {
            "schema": {
              "$ref": "#/components/schemas/message.Message"
            },
            "examples": {
              "Provider authentication service error": {
                "value": {
                  "code": "EPDG0020",
                  "message": "Provider authentication service is unable to complete the request"
                }
              }
            }
          }
        }
      },
      "504GatewayTimeout2": {
        "description": "Gateway Timeout",
        "headers": {
          "x-cid": {
            "$ref": "#/components/headers/XCidResponseHeader"
          }
        },
        "content": {
          "application/json": {
            "schema": {
              "$ref": "#/components/schemas/message.Message"
            },
            "examples": {
              "Service timeout": {
                "value": {
                  "code": "EPDA0000",
                  "message": "Timeout while executing the request"
                }
              },
              "Provider timeout": {
                "value": {
                  "code": "EPDG0000",
                  "message": "Timeout while executing the request"
                }
              }
            }
          }
        }
      }
    }
  },
  "security": [
    {
      "BearerAuth": []
    }
  ],
  "x-readme": {
    "explorer-enabled": true,
    "proxy-enabled": true,
    "samples-enabled": true
  },
  "paths": {
    "/v2/pix/infraction-reports/{id}/close": {
      "post": {
        "summary": "Close infraction report",
        "description": "Closes an infraction report.\n\nOnly the counterparty participant can close an infraction report. \n\nThe operation is idempotent. If you try to close the report again with the same parameters, you will get the same response as the first time.\n\nOn PSP timeout, a `202 Accepted` response is returned and the process continues asynchronously, eventually emitting a success or failure event.\n\nThis endpoint generates a <a href=\"https://developers.pismo.io/events/docs/pix-dict-infraction-status-change-1\" >Pix infraction status changed</a> event.\n",
        "operationId": "post-v2-pix-infraction-close",
        "tags": [
          "Infraction reports"
        ],
        "parameters": [
          {
            "$ref": "#/components/parameters/AuthHeader"
          },
          {
            "$ref": "#/components/parameters/InfractionReportIDV2path"
          }
        ],
        "requestBody": {
          "required": true,
          "description": "Infraction report close",
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/InfractionCloseRequest"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "OK",
            "headers": {
              "x-cid": {
                "$ref": "#/components/headers/XCidResponseHeader"
              }
            },
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/presenter.InfractionReportResponse"
                }
              }
            }
          },
          "202": {
            "$ref": "#/components/responses/202InfractionAccepted"
          },
          "400": {
            "description": "Bad Request",
            "headers": {
              "x-cid": {
                "$ref": "#/components/headers/XCidResponseHeader"
              }
            },
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/message.Message"
                },
                "examples": {
                  "Tenant not found": {
                    "value": {
                      "code": "EPDA0001",
                      "message": "Missing x-tenant header."
                    }
                  },
                  "Invalid request infractionId": {
                    "value": {
                      "code": "EPDA0070",
                      "message": "Invalid request infraction report id"
                    }
                  },
                  "Invalid binding": {
                    "value": {
                      "code": "EPDA0002",
                      "message": "Failed to unmarshal request body"
                    }
                  },
                  "Rest marshal error": {
                    "value": {
                      "code": "ECM0005",
                      "message": "Failed to marshal request"
                    }
                  },
                  "Validate errors": {
                    "value": {
                      "code": "EPDA0003",
                      "message": "There are invalid fields when trying to validate request body.",
                      "details": {
                        "payload": [
                          {
                            "field": "InfractionClose.analysis_result",
                            "message": "Field validation for 'analysis_result' failed on the 'oneof' tag"
                          }
                        ]
                      }
                    }
                  },
                  "Rest bad request": {
                    "value": {
                      "code": "ECM0002",
                      "message": "Bad request while accessing an external resource"
                    }
                  },
                  "Rest unknown response status": {
                    "value": {
                      "code": "ECM0003",
                      "message": "Received response status %d was not expected"
                    }
                  }
                }
              }
            }
          },
          "401": {
            "$ref": "#/components/responses/401Unauthorized"
          },
          "403": {
            "$ref": "#/components/responses/403Forbidden"
          },
          "404": {
            "description": "Resource Not Found",
            "headers": {
              "x-cid": {
                "$ref": "#/components/headers/XCidResponseHeader"
              }
            },
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/message.Message"
                },
                "examples": {
                  "Infraction not found": {
                    "value": {
                      "code": "EPDA0049",
                      "message": "Infraction report not found"
                    }
                  }
                }
              }
            }
          },
          "429": {
            "$ref": "#/components/responses/429TooManyRequests"
          },
          "500": {
            "description": "Internal Server Error",
            "headers": {
              "x-cid": {
                "$ref": "#/components/headers/XCidResponseHeader"
              }
            },
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/message.Message"
                },
                "examples": {
                  "Provider service communication error": {
                    "value": {
                      "code": "EPDA0029",
                      "message": "Internal errors while attempting to communicate with the provider service"
                    }
                  },
                  "Invalid client error": {
                    "value": {
                      "code": "EPDG0005",
                      "message": "Invalid Pix provider '{provider_name}'"
                    }
                  },
                  "Failed marshalling object": {
                    "value": {
                      "code": "EPDG0006",
                      "message": "Failed to marshal JSON object"
                    }
                  },
                  "Failed unmarshalling object": {
                    "value": {
                      "code": "EPDG0007",
                      "message": "Failed to unmarshal JSON object"
                    }
                  },
                  "Error reading response data": {
                    "value": {
                      "code": "EPDG0010",
                      "message": "I/O error while reading response data: '{details}'"
                    }
                  },
                  "Provider service error": {
                    "value": {
                      "code": "EPDG0016",
                      "message": "Provider service returned an internal error while trying to access the resource",
                      "details": {
                        "external": [
                          {
                            "code": "PBE315",
                            "message": "Generic error"
                          }
                        ]
                      }
                    }
                  }
                }
              }
            }
          },
          "502": {
            "$ref": "#/components/responses/502BadGateway"
          },
          "503": {
            "description": "Service Unavailable",
            "headers": {
              "x-cid": {
                "$ref": "#/components/headers/XCidResponseHeader"
              }
            },
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/message.Message"
                },
                "examples": {
                  "Provider service unavailable": {
                    "value": {
                      "code": "EPDG0017",
                      "message": "Provider service resource is unavailable"
                    }
                  },
                  "Provider authentication service unavailable": {
                    "value": {
                      "code": "EPDG0021",
                      "message": "Provider authentication service is unavailable"
                    }
                  }
                }
              }
            }
          },
          "504": {
            "$ref": "#/components/responses/504GatewayTimeout2"
          }
        },
        "security": [
          {
            "BearerAuth": []
          }
        ],
        "x-codegen-request-body-name": "request"
      }
    }
  }
}
```