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

# Get Open reconciliation exceptions

> Retrieve a list of Open reconciliation exceptions with pagination support. Use query parameters `startingAfter` and `limit` to navigate results.



## OpenAPI

````yaml https://sandbox-api.borderless.xyz/v1/api-json get /v1/reconciliation/exceptions
openapi: 3.0.0
info:
  title: Borderless API
  description: The Borderless API documentation.
  version: '1.0'
  contact: {}
servers:
  - url: https://sandbox-api.borderless.xyz
security: []
tags: []
paths:
  /v1/reconciliation/exceptions:
    get:
      tags:
        - Reconciliation
      summary: Get Open reconciliation exceptions
      description: >-
        Retrieve a list of Open reconciliation exceptions with pagination
        support. Use query parameters `startingAfter` and `limit` to navigate
        results.
      operationId: ReconciliationController_getExceptions
      parameters:
        - name: status
          required: false
          in: query
          schema:
            type: array
            items:
              $ref: '#/components/schemas/ReconciliationStatus'
        - name: pfiName
          required: false
          in: query
          schema:
            $ref: '#/components/schemas/PFIName'
        - name: type
          required: false
          in: query
          schema:
            $ref: '#/components/schemas/ReconciliationRunType'
        - name: cadence
          required: false
          in: query
          schema:
            $ref: '#/components/schemas/ReconciliationCadence'
        - name: runId
          required: false
          in: query
          description: Open exceptions this run found, whichever run first opened them
          schema:
            type: string
        - name: from
          required: false
          in: query
          description: Exceptions opened on or after this time
          schema:
            format: date-time
            type: string
        - name: to
          required: false
          in: query
          description: Exceptions opened on or before this time
          schema:
            format: date-time
            type: string
        - name: age
          required: false
          in: query
          schema:
            $ref: '#/components/schemas/ReconciliationExceptionAge'
        - name: wasRegressed
          required: false
          in: query
          description: Only transactions that matched in an earlier run and no longer do
          schema:
            type: boolean
        - name: search
          required: false
          in: query
          description: >-
            Case-insensitive match on the transaction id or the provider's
            transaction id
          schema:
            type: string
        - name: startingAfter
          required: false
          in: query
          description: >-
            The last row's `openedAt` in milliseconds and its `transactionId`,
            joined by a colon: `<openedAt>:<transactionId>`.
          schema:
            type: string
        - name: limit
          required: false
          in: query
          description: Response page limit. Min 1, Max 100, Default value is 10.
          schema:
            type: number
      responses:
        '200':
          description: List of Open reconciliation exceptions and `hasMore` flag.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/PaginatedReconciliationExceptionEntity'
      security:
        - bearer: []
components:
  schemas:
    ReconciliationStatus:
      type: string
      enum:
        - Matched
        - Mismatched
        - Missing
        - PfiError
    PFIName:
      type: string
      enum:
        - Bridge
        - Koywe
        - Kotanipay
        - Hercle
        - Bitso
        - Yellowcard
        - TraceFinance
        - HoneyCoin
        - BlindPay
        - Finity
        - Infinia
        - Walapay
        - Abra
        - Yativo
        - Capa
        - Bivo
        - Cobre
        - Avenia
        - Brale
        - BVNK
        - CoinsPH
        - Iron
        - Enigma
        - Kira
        - TripleAStablecoin
        - TripleALocalCurrencyPayout
        - Onmeta
        - Alfred
        - Tazapay
        - Demo
        - CrissCross
        - Pockyt
    ReconciliationRunType:
      type: string
      enum:
        - Daily
        - Weekly
        - Monthly
        - Quarterly
        - Manual
        - Import
    ReconciliationCadence:
      type: string
      enum:
        - Daily
        - Weekly
        - Monthly
        - Manual
        - Import
    ReconciliationExceptionAge:
      type: string
      enum:
        - Recent
        - Watch
        - Aging
        - Critical
    PaginatedReconciliationExceptionEntity:
      type: object
      properties:
        hasMore:
          type: boolean
        data:
          type: array
          items:
            $ref: '#/components/schemas/ReconciliationExceptionEntity'
      required:
        - hasMore
        - data
    ReconciliationExceptionEntity:
      type: object
      properties:
        id:
          type: string
        status:
          allOf:
            - $ref: '#/components/schemas/ReconciliationStatus'
        discrepancyType:
          allOf:
            - $ref: '#/components/schemas/DiscrepancyType'
        details:
          nullable: true
          type: object
          allOf:
            - $ref: '#/components/schemas/ReconciliationDetailsEntity'
        checkedAt:
          format: date-time
          type: string
        transactionId:
          type: string
        externalTransactionId:
          type: string
          nullable: true
        organizationId:
          type: string
        pfiName:
          allOf:
            - $ref: '#/components/schemas/PFIName'
        runId:
          type: string
          nullable: true
        type:
          nullable: true
          allOf:
            - $ref: '#/components/schemas/ReconciliationRunType'
        cadence:
          nullable: true
          allOf:
            - $ref: '#/components/schemas/ReconciliationCadence'
        createdAt:
          format: date-time
          type: string
        updatedAt:
          format: date-time
          type: string
        wasRegressed:
          type: boolean
          description: >-
            True when the transaction's latest run did not match while an
            earlier run matched it fully.
        transaction:
          $ref: '#/components/schemas/TransactionSummaryEntity'
        openedAt:
          format: date-time
          type: string
          description: >-
            When the exception opened: the first check with one of the requested
            statuses after the transaction's last run in which every leg matched
        openedByRunId:
          type: string
          nullable: true
          description: Run whose check opened the exception
        openedByRunType:
          nullable: true
          allOf:
            - $ref: '#/components/schemas/ReconciliationRunType'
        age:
          allOf:
            - $ref: '#/components/schemas/ReconciliationExceptionAge'
      required:
        - id
        - status
        - discrepancyType
        - details
        - checkedAt
        - transactionId
        - externalTransactionId
        - organizationId
        - pfiName
        - runId
        - type
        - cadence
        - createdAt
        - updatedAt
        - wasRegressed
        - transaction
        - openedAt
        - openedByRunId
        - openedByRunType
        - age
    DiscrepancyType:
      type: string
      enum:
        - None
        - AmountMismatch
        - StatusMismatch
        - AmountAndStatusMismatch
        - NotFoundInPfi
        - NotFoundInBorderless
    ReconciliationDetailsEntity:
      type: object
      properties:
        borderless:
          $ref: '#/components/schemas/ReconciliationBorderlessRecordEntity'
        pfi:
          nullable: true
          description: null when the provider had no record or its report could not be read
          type: object
          allOf:
            - $ref: '#/components/schemas/ReconciliationProviderRecordEntity'
        diffs:
          description: What the comparison found, in words
          type: array
          items:
            type: string
        hold:
          type: string
          description: Why an automatic correction was held back
      required:
        - borderless
        - pfi
        - diffs
    TransactionSummaryEntity:
      type: object
      properties:
        id:
          type: string
        type:
          allOf:
            - $ref: '#/components/schemas/TransactionType'
        amount:
          type: string
          example: '5.00'
          description: The amount the transaction's source sent
        asset:
          nullable: true
          description: The source's asset; null when the source is fiat
          allOf:
            - $ref: '#/components/schemas/AssetId'
        fiat:
          nullable: true
          description: The source's fiat currency; null when the source is an asset
          allOf:
            - $ref: '#/components/schemas/FiatCurrencyId'
        createdAt:
          format: date-time
          type: string
      required:
        - id
        - type
        - amount
        - asset
        - fiat
        - createdAt
    ReconciliationBorderlessRecordEntity:
      type: object
      properties:
        externalId:
          type: string
          nullable: true
          description: The provider's id for the transaction, as Borderless recorded it
        externalStatus:
          type: string
          nullable: true
          description: The provider's status, as Borderless last recorded it
        externalType:
          type: string
          nullable: true
        sourceAmount:
          type: string
        destinationAmount:
          type: string
          nullable: true
      required:
        - externalId
        - externalStatus
        - sourceAmount
        - destinationAmount
    ReconciliationProviderRecordEntity:
      type: object
      properties:
        externalId:
          type: string
        status:
          type: string
          description: Raw status string from the provider
        normalizedStatus:
          allOf:
            - $ref: '#/components/schemas/TransactionStatus'
        sourceAmount:
          type: string
        destinationAmount:
          type: string
        sourceCurrency:
          type: string
        destinationCurrency:
          type: string
        type:
          nullable: true
          allOf:
            - $ref: '#/components/schemas/TransactionType'
        rawData:
          type: object
          additionalProperties: true
          description: The provider's own payload; omitted for dashboard users
      required:
        - externalId
        - status
    TransactionType:
      type: string
      enum:
        - Deposit
        - Withdrawal
        - Exchange
    AssetId:
      type: string
      enum:
        - POL
        - USDT_POLYGON
        - USDC_POLYGON
        - SBC_POLYGON
        - ETH
        - USDT_ETHEREUM
        - USDC_ETHEREUM
        - PYUSD_ETHEREUM
        - DAI_ETHEREUM
        - EURC_ETHEREUM
        - SBC_ETHEREUM
        - TRX
        - USDT_TRON
        - SBC_TRON
        - ETH_BASE
        - USDC_BASE
        - USDB_BASE
        - USDB_ETHEREUM
        - EURC_BASE
        - SBC_BASE
        - ETH_OPTIMISM
        - USDT_OPTIMISM
        - USDC_OPTIMISM
        - BTC
        - CELO
        - CUSD_CELO
        - USDC_CELO
        - SBC_CELO
        - SOL
        - USDC_SOLANA
        - USDT_SOLANA
        - PYUSD_SOLANA
        - USDP_SOLANA
        - EURC_SOLANA
        - SBC_SOLANA
    FiatCurrencyId:
      type: string
      enum:
        - USD
        - EUR
        - BRL
        - ARS
        - MXN
        - COP
        - CLP
        - PEN
        - PYG
        - DOP
        - UYU
        - BOB
        - CRC
        - GTQ
        - BWP
        - CDF
        - GHS
        - KES
        - MWK
        - NGN
        - RWF
        - ZAR
        - TZS
        - UGX
        - ZMW
        - XOF
        - XAF
        - AUD
        - BDT
        - CAD
        - INR
        - JPY
        - NPR
        - PKR
        - PHP
        - SGD
        - GBP
        - CNY
        - HKD
        - CNH
        - IDR
        - MYR
        - KRW
        - LKR
        - THB
        - TRY
        - VND
        - CZK
        - HUF
        - DKK
        - NOK
        - PLN
        - RON
        - RSD
        - SEK
        - CHF
        - AED
        - SAR
        - QAR
        - ILS
        - EGP
        - JOD
        - HNL
        - JMD
        - NZD
        - DZD
        - GMD
        - GNF
        - HTG
        - MAD
        - TND
      description: Fiat currency identifier (e.g. USD, EUR)
    TransactionStatus:
      type: string
      enum:
        - Submitted
        - Verifying
        - Orchestrating
        - Pending
        - Processing
        - AwaitingDocuments
        - Completed
        - Failed
        - Cancelled
        - Refunded
  securitySchemes:
    bearer:
      scheme: bearer
      bearerFormat: JWT
      type: http

````

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