> ## Documentation Index
> Fetch the complete documentation index at: https://docs.lerian.studio/llms.txt
> Use this file to discover all available pages before exploring further.

# Create a Funds Recovery Request

> Use this endpoint to create a new funds recovery request for a Pix transaction suspected of fraud.

**Notes:**
- The rootTransactionId must be a valid 32-character Pix End-to-End ID
- situationType indicates the type of fraud situation (SCAM, ACCOUNT_TAKEOVER, COERCION, FRAUDULENT_ACCESS, OTHER, UNKNOWN)
- Contact information (email and phone) is required for communication during the recovery process



## OpenAPI

````yaml /pt/openapi/v3-current/indirect-pix.yaml post /v1/dict/funds-recoveries
openapi: 3.1.0
info:
  description: >-
    API for Pix Indirect via BTG. It covers DICT keys and claims; MED infraction
    reports, fraud markers, refund requests, and funds recoveries; DICT
    statistics and reconciliation; Pix transfers, refunds, and schedules; static
    QR codes and QR code decoding; immediate and due-date collections; Pix
    Automático for the payer; transaction reports and TemposTransacoes
    statistics; and inbound and outbound webhook records.
  title: Pix BTG API
  version: 1.12.0
servers:
  - url: https://api.example.com
    description: >-
      Replace the example host with the URL provided during environment
      onboarding.
security:
  - BearerAuth: []
paths:
  /v1/dict/funds-recoveries:
    post:
      tags:
        - Funds Recovery
      summary: Create a Funds Recovery Request
      description: >-
        Use this endpoint to create a new funds recovery request for a Pix
        transaction suspected of fraud.


        **Notes:**

        - The rootTransactionId must be a valid 32-character Pix End-to-End ID

        - situationType indicates the type of fraud situation (SCAM,
        ACCOUNT_TAKEOVER, COERCION, FRAUDULENT_ACCESS, OTHER, UNKNOWN)

        - Contact information (email and phone) is required for communication
        during the recovery process
      operationId: dict-create-funds-recovery
      parameters:
        - description: Account ID (UUID) from X-Account-Id header
          in: header
          name: X-Account-Id
          schema:
            description: Account ID (UUID) from X-Account-Id header
            format: uuid
            type: string
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/CreateFundsRecoveryInput'
        required: true
      responses:
        '201':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/CreateFundsRecoveryOutput'
          description: Created
        '400':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/LegacyErrorBody'
          description: Bad Request
        '500':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/LegacyErrorBody'
          description: Internal Server Error
        default:
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/LegacyErrorBody'
          description: Error
components:
  schemas:
    CreateFundsRecoveryInput:
      additionalProperties: false
      properties:
        contactInformation:
          $ref: '#/components/schemas/ContactInformation'
          description: Contact information of the person reporting the fraud
        reportDetails:
          description: Detailed description of the fraud incident (max 2000 characters)
          examples:
            - Customer reported receiving a call from fake bank employee
          maxLength: 2000
          type: string
        rootTransactionId:
          description: Pix End-to-End transaction ID (32 characters)
          examples:
            - E12345678202411241430ABCDEFGHIJK
          minLength: 1
          type: string
        situationType:
          description: Type of fraud situation
          enum:
            - SCAM
            - ACCOUNT_TAKEOVER
            - COERCION
            - FRAUDULENT_ACCESS
            - OTHER
            - UNKNOWN
          examples:
            - SCAM
          minLength: 1
          type: string
        trackingGraphParameters:
          $ref: '#/components/schemas/TrackingGraphParametersInput'
          description: Optional parameters for tracking graph generation
      required:
        - rootTransactionId
        - situationType
        - contactInformation
      type: object
    CreateFundsRecoveryOutput:
      additionalProperties: false
      properties:
        bacenFundsRecoveryId:
          description: BACEN/BTG funds recovery external identifier
          examples:
            - 91d65e98-97c0-4b0f-b577-73625da1f9fc
          type: string
        contactInformation:
          $ref: '#/components/schemas/ContactInformation'
          description: Contact information of the person reporting the fraud
        createdAt:
          description: Creation timestamp (ISO 8601 UTC)
          examples:
            - '2023-11-07T05:31:56Z'
          format: date-time
          type: string
        id:
          description: Unique identifier for the funds recovery (UUID)
          examples:
            - 550e8400-e29b-41d4-a716-446655440000
          type: string
        reportDetails:
          description: Detailed description of the fraud incident
          examples:
            - Customer reported receiving a call from fake bank employee
          type: string
        reporterParticipant:
          description: >-
            ISPB of the PSP reporting the fraud (8 uppercase alphanumeric
            characters)
          examples:
            - '12345678'
          type: string
        rootTransactionId:
          description: Pix End-to-End transaction ID (32 characters)
          examples:
            - E12345678202411241430ABCDEFGHIJK
          type: string
        situationType:
          description: Type of fraud situation
          enum:
            - SCAM
            - ACCOUNT_TAKEOVER
            - COERCION
            - FRAUDULENT_ACCESS
            - OTHER
            - UNKNOWN
          examples:
            - SCAM
          type: string
        status:
          description: Current status of the funds recovery
          enum:
            - CREATED
            - TRACKED
            - AWAITING_ANALYSIS
            - ANALYSED
            - REFUNDING
            - COMPLETED
            - CANCELLED
          examples:
            - CREATED
          type: string
        trackingGraph:
          $ref: '#/components/schemas/TrackingGraphOutput'
          description: >-
            Tracking graph generated during creation (when
            trackingGraphParameters provided)
        updatedAt:
          description: Last update timestamp (ISO 8601 UTC)
          examples:
            - '2023-11-07T05:31:56Z'
          format: date-time
          type: string
      required:
        - id
        - bacenFundsRecoveryId
        - rootTransactionId
        - situationType
        - status
        - reporterParticipant
        - createdAt
        - updatedAt
      type: object
    LegacyErrorBody:
      additionalProperties: false
      properties:
        fields:
          additionalProperties:
            type: string
          type: object
        headers:
          additionalProperties:
            type: string
          type: object
        message:
          type: string
        paths:
          additionalProperties:
            type: string
          type: object
        queryParams:
          additionalProperties:
            type: string
          type: object
        raw:
          type: string
        code:
          type: string
        title:
          type: string
      required:
        - code
        - title
        - message
      type: object
    ContactInformation:
      additionalProperties: true
      properties:
        email:
          description: Email address of the customer reporting the fraud
          examples:
            - customer@example.com
          minLength: 1
          type: string
        phone:
          description: Phone number of the customer (E.164 format recommended)
          examples:
            - '+5511999999999'
          minLength: 1
          type: string
      required:
        - email
        - phone
      type: object
    TrackingGraphParametersInput:
      additionalProperties: true
      properties:
        hopWindow:
          description: Time window for hop analysis
          examples:
            - PT24H
          type: string
        maxHops:
          description: 'Maximum number of hops: 1 to 2; BTG default 2'
          examples:
            - 2
          format: int64
          type: integer
        maxTransactions:
          description: >-
            Maximum number of transactions: at least 1; BTG enforces the upper
            bound and reports it in PIX-0295
          examples:
            - 5
          format: int64
          type: integer
        minTransactionAmount:
          description: >-
            Minimum transaction amount to include: 1 to 10 digits, a dot and 2
            decimal places, e.g. 200.00
          examples:
            - '200.00'
          type: string
      type: object
    TrackingGraphOutput:
      additionalProperties: false
      properties:
        accounts:
          description: Accounts involved in the transaction graph
          items:
            $ref: '#/components/schemas/TrackingGraphAccountOutput'
          type: array
        creationTime:
          description: Graph creation timestamp
          examples:
            - '2023-11-07T05:31:56Z'
          format: date-time
          type: string
        fundsRecoveryId:
          description: Funds recovery identifier
          examples:
            - 550e8400-e29b-41d4-a716-446655440000
          type: string
        parameters:
          $ref: '#/components/schemas/TrackingGraphParametersOutput'
          description: Parameters used for graph generation
        persons:
          description: Persons involved in the transaction graph
          items:
            $ref: '#/components/schemas/TrackingGraphPersonOutput'
          type: array
        rootTransactionId:
          description: Root transaction ID
          examples:
            - E12345678202411241430ABCDEFGHIJK
          type: string
        transactions:
          description: Transactions in the graph
          items:
            $ref: '#/components/schemas/TrackingGraphTxOutput'
          type: array
      required:
        - fundsRecoveryId
        - rootTransactionId
        - parameters
        - persons
        - accounts
        - transactions
        - creationTime
      type: object
    TrackingGraphAccountOutput:
      additionalProperties: false
      properties:
        id:
          description: Identifier of the account node in the graph
          examples:
            - 1
          format: int64
          type: integer
        openingDate:
          description: Date the account was opened
          examples:
            - '2020-01-15'
          type: string
        ownerId:
          description: Identifier of the owning person node
          examples:
            - 1
          format: int64
          type: integer
        participant:
          description: ISPB of the participant institution (8 digits)
          examples:
            - '12345678'
          type: string
      required:
        - id
        - ownerId
        - participant
        - openingDate
      type: object
    TrackingGraphParametersOutput:
      additionalProperties: false
      properties:
        hopWindow:
          description: Time window for hop analysis
          examples:
            - PT24H
          type: string
        maxHops:
          description: Maximum number of hops followed
          examples:
            - 2
          format: int64
          type: integer
        maxTransactions:
          description: Maximum number of transactions included in the graph
          examples:
            - 5
          format: int64
          type: integer
        minTransactionAmount:
          description: Minimum transaction amount included in the graph
          examples:
            - '200.00'
          type: string
      required:
        - minTransactionAmount
        - maxTransactions
        - hopWindow
        - maxHops
      type: object
    TrackingGraphPersonOutput:
      additionalProperties: false
      properties:
        entityCreationDate:
          description: Date the person entity was created
          examples:
            - '2020-01-15'
          type: string
        id:
          description: Identifier of the person node in the graph
          examples:
            - 1
          format: int64
          type: integer
        type:
          description: Person type (NATURAL_PERSON or LEGAL_PERSON)
          examples:
            - NATURAL_PERSON
          type: string
      required:
        - id
        - type
      type: object
    TrackingGraphTxOutput:
      additionalProperties: false
      properties:
        amount:
          description: Transaction amount in BRL
          examples:
            - 1000.5
          format: double
          type: number
        creditorAccountId:
          description: Identifier of the creditor account node
          examples:
            - 2
          format: int64
          type: integer
        debtorAccountId:
          description: Identifier of the debtor account node
          examples:
            - 1
          format: int64
          type: integer
        id:
          description: Transaction End-to-End identifier
          examples:
            - E12345678202411241430ABCDEFGHIJK
          type: string
        refundableAmount:
          description: Refundable amount in BRL
          examples:
            - 1000.5
          format: double
          type: number
        settlementTime:
          description: Settlement timestamp (ISO 8601 UTC)
          examples:
            - '2023-11-07T05:31:56Z'
          type: string
        transactionDepth:
          description: >-
            Depth of the transaction in the DICT tracking graph (root = 1). Set
            by DICT.
          examples:
            - 1
          format: int64
          type: integer
      required:
        - id
        - debtorAccountId
        - creditorAccountId
        - amount
        - refundableAmount
        - settlementTime
      type: object
  securitySchemes:
    BearerAuth:
      bearerFormat: JWT
      description: JWT bearer token issued by the identity provider.
      scheme: bearer
      type: http

````

This documentation is built and hosted on [Mintlify](https://mintlify.com), a developer documentation platform.