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

# Find Payment Exceptions

> Find Payment Exceptions



## OpenAPI

````yaml get /api/v1/csp/payments/{payment_id}/exceptions
openapi: 3.1.0
info:
  title: Paylias API
  description: >-
    Paylias is a network that enables developers to orchestrate money movement
    between different financial institutions with ease and speed. The Paylias
    API makes it simple for financial platforms to issue virtual addresses,
    manage connections and exchange value by sending and receiving money. Our
    API is based upon REST principles, returns JSON responses, and uses standard
    HTTP response codes.
  version: 0.1.0
  contact: {}
servers:
  - url: https://sandbox.api.paylias.xyz/gateway
security: []
tags:
  - name: API Authentication
    description: >-
      For server-to-server communication, Paylias supports authentication
      through JWT tokens as well as API keys. All APIs that are that deal with
      the `Organization` resource are authenticated using JWT tokens, while the
      rest of the system uses API Keys to authenticate


      To use a JWT token, set the Authorization header to `Bearer`. To use an
      API key, set a header called `X-PAYLIAS-API-KEY` and use the API key as
      the value.


      ## JWT token


      When making requests to Paylias from a browser, you can use JSON Web
      Tokens (JWT). This requires the credentials of a user that has admin
      access. The validity of JWT tokens issued by Paylias is 7 days.


      ## API key


      Longer lasting access tokens can be generated with fine grained
      permissions using the Create API key endpoint. These access tokens can be
      rotated, revoked and updated through the browser as well. API Keys are
      linked to a Namespace to allow finer access controls when dealing with API
      requests using long lived tokens. While account admins can take actions on
      API keys from the dashboard, the `X-Partner-ID` header must be set to the
      id of the Namespace for which the API key was originally issued against.
  - name: Organizations
    description: >-
      In the Paylias network, an `Organization` represents a legal entity,
      specifically a financial institution. It stands at the top of the system's
      hierarchy, overseeing sub-entities like `api keys`, `webhooks`, and
      `partners`.


      Given its financial nature, the Paylias network has certain verification
      processes to fulfill. When users join the Paylias dashboard, they
      initially receive an account in a sandboxed environment. This phase allows
      for familiarization without impacting the main system. Full access is
      granted once a member of the Paylias team validates and completes all
      necessary formalities for the user.


      For efficient management, users can either use the dashboard or APIs, with
      the latter requiring a valid JWT Token for secure interactions.
  - name: Namespace
    description: >-
      A `namespace` is a logical collection of payment addresses that are issued
      by an `organization`. Payment addresses issued inside a `namespace` will
      share a common `domain`. The domain helps identify organizations, country
      of issuance and other specifics around the brand, rewards and
      configurations.
  - name: Accounts
  - name: Validation
  - name: API Keys
    description: >-
      Longer lasting access tokens can be generated with fine grained
      permissions using the Create API key endpoint. These access tokens can be
      rotated, revoked and updated through the browser as well. API Keys are
      linked to a Namespace to allow finer access controls when dealing with API
      requests using long lived tokens. While account admins can take actions on
      API keys from the dashboard, the `X-Partner-ID` header must be set to the
      id of the Namespace for which the API key was originally issued against.
  - name: Webhooks
    description: >-
      Webhooks allow applications to communicate in real-time. When an event
      occurs, a webhook will deliver the event data to the application
      determined by the target endpoint. A webhook can be setup to be notified
      of all event types or specific ones. This allows your application to react
      to events, which is more efficient than polling an API to determine if an
      event has occurred.


      In the Paylias network, webhooks are used to communicate events related to
      Links and Payments.


      Similar to API Keys, Webhooks are created against a Namespace and thus
      require the `X-Partner-ID` header to be set in all requests


      ## Event types


      Here are the event types that we capture and send. This may not be a
      comprehensive list as we are continuing to add events to our system.


      | **Event Identifier** | **Description** |

      | --- | --- |

      | `link.create.resp` | A link request has been processed |

      | `link.propose.req` | A link request has been proposed |

      | `link_established` | A link has been established |

      | `link_update_resp` | A link has been updated |
  - name: Customers
  - name: Payments
  - name: Submissions
  - name: Admissions
  - name: Admission Tasks
  - name: Transactions
  - name: Settlements
    description: Settlement batches, partner merkle artefacts, and settlement net positions
  - name: Exceptions
paths:
  /api/v1/csp/payments/{payment_id}/exceptions:
    get:
      tags:
        - Exceptions
      summary: Find Payment Exceptions
      description: Find Payment Exceptions
      operationId: findPaymentExceptions
      parameters:
        - $ref: '#/components/parameters/OrganizationIdHeader'
        - $ref: '#/components/parameters/PartnerIdHeader'
        - $ref: '#/components/parameters/PaymentIdParam'
      responses:
        '200':
          $ref: '#/components/responses/ListPaymentExceptionsResponse'
        '400':
          $ref: '#/components/responses/BadRequest'
        '401':
          $ref: '#/components/responses/Unauthorized'
        '404':
          $ref: '#/components/responses/NotFound'
      security:
        - apiKey: []
components:
  parameters:
    OrganizationIdHeader:
      name: x-org-id
      in: header
      required: true
      schema:
        type: string
        default: ''
      description: The Organization ID header used for authorization
    PartnerIdHeader:
      name: x-partner-id
      in: header
      required: true
      schema:
        type: string
        default: ''
      description: The Partner ID header used for authorization
    PaymentIdParam:
      name: payment_id
      in: path
      required: true
      schema:
        type: string
        example: pay_123456789
      description: The unique identifier for the payment
  responses:
    ListPaymentExceptionsResponse:
      description: Response containing a list of payment exceptions
      headers:
        Content-Length:
          $ref: '#/components/headers/ContentLengthHeader'
        Date:
          $ref: '#/components/headers/DateHeader'
        X-Csp-Version:
          $ref: '#/components/headers/CspVersionHeader'
        X-Partner-Id:
          $ref: '#/components/headers/PartnerIdHeader'
        X-Org-Id:
          $ref: '#/components/headers/OrgIdHeader'
      content:
        application/json:
          schema:
            allOf:
              - $ref: '#/components/schemas/StandardResponse'
              - type: object
                properties:
                  data:
                    type: object
                    properties:
                      count:
                        type: integer
                        example: 1
                        description: Total number of exceptions
                      exceptions:
                        type: array
                        description: List of payment exceptions
                        items:
                          $ref: '#/components/schemas/PaymentException'
          examples:
            success:
              value:
                ok: true
                data:
                  count: 1
                  exceptions:
                    - token: pexc_cvk3rfk20or8munut4g0
                      payment_id: pay_123456789
                      organization_id: org_ct239n420or249k5bo90
                      partner_id: part_ct23b6420or249k5boag
                      record_type: PaymentSubmission
                      exception_code: O001
                      exception_message: Debtor party payment address is missing
                      blame: debtor_party
                      relationships:
                        payment:
                          amount:
                            currency: USD
                            total: '10000'
                          beneficiary_party:
                            billing:
                              country: US
                            email: ziyad.parekh@gmail.com
                            first_name: Ziyad
                            last_name: Parekh
                            payment_address: ziyad@safepay-platinum
                            phone: '+923008277879'
                            type: Payee_Individual
                          debtor_party:
                            billing:
                              country: US
                            email: johnc@stripe.com
                            first_name: John
                            last_name: Collison
                            payment_address: john@stripe-platinum
                            phone: '+16462442945'
                            type: Payer_Individual
                          device: {}
                          expires_at: 1743276991
                          initiated_at: 1743273391
                          location: {}
                          organization_id: org_ct239n420or249k5bo90
                          partner_id: part_ct23b6420or249k5boag
                          payment_id: pay_123456789
                          reference: INV0001
    BadRequest:
      description: Bad request
      headers:
        Content-Length:
          $ref: '#/components/headers/ContentLengthHeader'
        Date:
          $ref: '#/components/headers/DateHeader'
        X-Csp-Version:
          $ref: '#/components/headers/CspVersionHeader'
      content:
        application/json:
          schema:
            allOf:
              - $ref: '#/components/schemas/ErrorResponse'
              - type: object
                properties:
                  code:
                    example: error.bad_request
                  message:
                    example: Invalid request parameters
    Unauthorized:
      description: Unauthorized
      headers:
        Content-Length:
          $ref: '#/components/headers/ContentLengthHeader'
        Date:
          $ref: '#/components/headers/DateHeader'
        X-Csp-Version:
          $ref: '#/components/headers/CspVersionHeader'
      content:
        application/json:
          schema:
            allOf:
              - $ref: '#/components/schemas/ErrorResponse'
              - type: object
                properties:
                  code:
                    example: error.unauthorized
                  message:
                    example: Authentication required
    NotFound:
      description: Resource not found
      headers:
        Content-Length:
          $ref: '#/components/headers/ContentLengthHeader'
        Date:
          $ref: '#/components/headers/DateHeader'
        X-Csp-Version:
          $ref: '#/components/headers/CspVersionHeader'
      content:
        application/json:
          schema:
            allOf:
              - $ref: '#/components/schemas/ErrorResponse'
              - type: object
                properties:
                  code:
                    example: error.not_found
                  message:
                    example: Requested resource not found
  headers:
    ContentLengthHeader:
      schema:
        type: string
        example: '256'
    DateHeader:
      schema:
        type: string
        example: Sat, 12 Aug 2023 08:55:04 GMT
    CspVersionHeader:
      schema:
        type: string
        example: gateway-csp/v1.0.0
    PartnerIdHeader:
      schema:
        type: string
        example: part_123456789
    OrgIdHeader:
      schema:
        type: string
        example: org_123456789
  schemas:
    StandardResponse:
      type: object
      description: Standard response structure for successful operations
      properties:
        ok:
          type: boolean
          example: true
          description: Indicates if the operation was successful
        data:
          type: object
          description: Contains the response data
    PaymentException:
      type: object
      description: Exception raised during a payment process
      properties:
        token:
          type: string
          description: Unique identifier for the exception
          example: pexc_cvk3rfk20or8munut4g0
        payment_id:
          type: string
          description: Identifier of the payment associated with the exception
          example: pay_123456789
        record_type:
          type: string
          description: The record type that triggered the exception
          example: RT_PaymentSubmission
        exception_code:
          type: string
          description: Unique code identifying the exception type
          example: O001
        exception_message:
          type: string
          description: Human-readable explanation of the error
          example: Debtor party payment address is missing
        blame:
          type: string
          description: Indicates which party caused the exception
          example: debtor_party
        relationships:
          $ref: '#/components/schemas/Relationship'
    ErrorResponse:
      type: object
      description: Standard error response structure
      properties:
        code:
          type: string
          description: Error code identifying the type of error
        message:
          type: string
          description: Human-readable error message
    Relationship:
      type: object
      description: Contains related resources
      properties:
        payment:
          $ref: '#/components/schemas/Payment'
    Payment:
      type: object
      description: Payment information
      properties:
        amount:
          $ref: '#/components/schemas/Amount'
        beneficiary_party:
          $ref: '#/components/schemas/Party'
        debtor_party:
          $ref: '#/components/schemas/Party'
        device:
          type: object
          description: Device information
        expires_at:
          type: string
          format: date-time
          example: '2023-08-13T08:55:04Z'
          description: Expiration time of the payment
        initiated_at:
          type: string
          format: date-time
          example: '2023-08-12T08:55:04Z'
          description: Initiation time of the payment
        location:
          type: object
          description: Location information
        organization_id:
          type: string
          example: org_d09gv1s20or2svojjmt0
          description: ID of the organization
        partner_id:
          type: string
          example: part_123456789
          description: ID of the partner
        payment_id:
          type: string
          example: pay_123456789
          description: Payment identifier
        reference:
          type: string
          example: INV001
          description: Reference for the payment
        payment_type:
          type: string
          enum:
            - Type_Pull
            - Type_Push
          example: Type_Pull
          description: The type of payment to initiate
    Amount:
      type: object
      description: Amount information
      properties:
        currency:
          type: string
          example: USD
          description: Currency code
        total:
          type: string
          example: '100.00'
          description: Total amount
    Party:
      type: object
      description: Party information for payments
      properties:
        billing:
          type: object
          properties:
            country:
              type: string
              example: US
              description: Country code
        email:
          type: string
          example: john@example.com
          description: Email of the party
        first_name:
          type: string
          example: John
          description: First name of the party
        last_name:
          type: string
          example: Doe
          description: Last name of the party
        payment_address:
          type: string
          example: john@safepay
          description: Payment address of the party
        phone:
          type: string
          example: '+1234567890'
          description: Phone number of the party
        type:
          type: string
          example: individual
          description: Type of the party
  securitySchemes:
    apiKey:
      type: apiKey
      name: X-PAYLIAS-API-KEY
      in: header

````