Finix Settlements API

{'$ref': 'api-descriptions/tags/settlements.md'}

OpenAPI Specification

finix-settlements-api-openapi.yml Raw ↑
openapi: 3.0.2
info:
  title: Finix Authorizations Settlements API
  description:
    $ref: api-descriptions/main.md
  contact:
    name: Finix
    url: https://finix.com
    email: support@finixpayments.com
  version: '2022-02-01'
servers:
- description: Sandbox server to be used for testing and development
  url: https://finix.sandbox-payments-api.com
security:
- BasicAuth: []
tags:
- name: Settlements
  description:
    $ref: api-descriptions/tags/settlements.md
paths:
  /identities/{identity_id}/settlements:
    parameters:
    - description: 'ID of the `Identity` for the merchant you want to settle. '
      required: true
      in: path
      name: identity_id
      schema:
        type: string
    post:
      description: "Close the currently accruing `settlement`. \n\nFinix, by default, creates accruing `settlements` then closes them based on your payout configurations. Use this endpoint to manually close the currently accruing settlement.\n\nThe closed `Settlement` will not accrue any further transactions and gets immediately submitted for approval.\n- This endpoint is only available to Finix Core customers. If you have any questions, please contact the [Finix Support Team.](mailto:support@finixpayments.com)\n- Any refunded `Transfers` get included in `Settlements` as a deduction.\n- **PENDING** `Transfers` don't get included in `Settlements`. \n- The `total_amount` minus the `total_fee` equals the `net_amount`. The `net_amount` is the amount in cents that gets deposited into the seller's bank account.\n\nRelated Guides: [Accruing Settlements](/guides/payouts/accruing-settlements/#closing-an-accruing-settlement)"
      summary: Close Current Active Settlement
      operationId: createIdentitySettlement
      requestBody:
        $ref: '#/components/requestBodies/CreateIdentitySettlementRequest'
      responses:
        '201':
          $ref: '#/components/responses/Settlement'
        '400':
          $ref: '#/components/responses/ErrorUnprocessableEntity'
        '401':
          $ref: '#/components/responses/ErrorUnauthorized'
        '403':
          $ref: '#/components/responses/ErrorForbidden403'
        '404':
          $ref: '#/components/responses/ErrorNotFound'
        '406':
          $ref: '#/components/responses/Error406NotAcceptable'
        '422':
          $ref: '#/components/responses/ErrorMerchantIdentityDisabled'
      x-internal: false
      x-java-method-name: create
      x-codeSamples:
      - lang: cURL
        label: curl
        source:
          $ref: xcode/curl/settlements/closesettlement.md
      tags:
      - Settlements
      x-python-method-name: create
  /settlements:
    get:
      tags:
      - Settlements
      description: 'Retrieve a list of `Settlements`.

        '
      summary: List All Settlements
      operationId: listSettlements
      parameters:
      - $ref: '#/components/parameters/QueryCreatedAtGteFilter'
      - $ref: '#/components/parameters/QueryCreatedAtLteFilter'
      - $ref: '#/components/parameters/QueryAmountFilter'
      - $ref: '#/components/parameters/QueryAmountGtFilter'
      - $ref: '#/components/parameters/QueryAmountGteFilter'
      - $ref: '#/components/parameters/QueryAmountLtFilter'
      - $ref: '#/components/parameters/QueryAmountLteFilter'
      - $ref: '#/components/parameters/QueryStatus'
      - schema:
          type: string
        in: query
        name: transfer_id
        description: 'Filter by a `transfer_id` a `Settlement` has accrued. Please note this filter is only available for non-versioned requests, or requests using `-H ''Finix-Version: 2018-01-01''`. We''re actively working on making this filter available for later versions. For more details, see [Versioning](/guides/developers/versioning/).'
      - schema:
          type: string
        in: query
        name: funding_transfer_id
        description: Filter by a `funding_transfer` a `Settlement` has created.
      responses:
        '200':
          $ref: '#/components/responses/SettlementsList'
        '401':
          $ref: '#/components/responses/ErrorUnauthorized'
        '403':
          $ref: '#/components/responses/ErrorForbidden403'
        '406':
          $ref: '#/components/responses/Error406NotAcceptable'
      x-java-method-name: list
      x-group-parameters: true
      x-codeSamples:
      - lang: cURL
        label: curl
        source: "curl \"https://finix.sandbox-payments-api.com/settlements/\" \\\n  -H \"Finix-Version: 2022-02-01\" \\\n  -u USsRhsHYZGBPnQw8CByJyEQW:8a14c2f9-d94b-4c72-8f5c-a62908e5b30e\n"
      x-python-method-name: list
      x-returns-list: true
  /settlements/{settlement_id}:
    parameters:
    - description: ID of `Settlement` object.
      required: true
      in: path
      name: settlement_id
      schema:
        type: string
    get:
      tags:
      - Settlements
      description: Retreive the details of a `Settlement`.
      summary: Fetch a Settlement
      operationId: getSettlement
      responses:
        '200':
          $ref: '#/components/responses/Settlement'
        '401':
          $ref: '#/components/responses/ErrorUnauthorized'
        '403':
          $ref: '#/components/responses/ErrorForbidden403'
        '404':
          $ref: '#/components/responses/ErrorNotFound'
        '406':
          $ref: '#/components/responses/Error406NotAcceptable'
      x-java-method-name: get
      x-codeSamples:
      - lang: cURL
        label: curl
        source: "curl \"https://finix.sandbox-payments-api.com/settlements/STvUfBLbCUsun2KFoTuxR2j1\" \\\n  -H \"Finix-Version: 2022-02-01\" \\\n  -u USsRhsHYZGBPnQw8CByJyEQW:8a14c2f9-d94b-4c72-8f5c-a62908e5b30e\n"
      x-python-method-name: get
    put:
      summary: Close a Settlement
      operationId: closesettlements
      responses:
        '201':
          $ref: '#/components/responses/Settlement'
        '401':
          $ref: '#/components/responses/ErrorUnauthorized'
        '403':
          $ref: '#/components/responses/ErrorForbidden403'
        '404':
          $ref: '#/components/responses/ErrorUnauthorized'
        '406':
          $ref: '#/components/responses/Error406NotAcceptable'
      description: "Close an accruing `settlement`.\n\nFinix, by default, creates accruing `settlements` then closes them based on your payout configurations. Use this endpoint to manually close a specific `settlement`.\n\nThe closed `Settlement` will not accrue any further transactions and gets immediately submitted for approval.\n- This endpoint is only available to Finix Core customers. If you have any questions, please contact the [Finix Support Team](mailto:support@finixpayments.com).\n- Any refunded `Transfers` get included in `Settlements` as a deduction. \n- **PENDING** `Transfers` don't get included in `Settlements`.\n- The `total_amount` minus the `total_fee` equals the `net_amount`. The `net_amount` is the amount in cents that gets deposited into the seller's bank account."
      requestBody:
        $ref: '#/components/requestBodies/CloseSettlement'
      x-java-method-name: put
      tags:
      - Settlements
      parameters:
      - schema:
          type: string
          default: '2018-01-01'
          example: '2022-02-01'
        in: header
        name: Finix-Version
        description: Specify the API version of your request. For more details, see [Versioning.](/guides/developers/versioning/)
      x-python-method-name: put
  /settlements/{settlement_id}/funding_transfers:
    parameters:
    - description: ID of `Settlement` object.
      required: true
      in: path
      name: settlement_id
      schema:
        type: string
    get:
      tags:
      - Settlements
      description: List the funding `Transfers` that were created when a `Settlement` was approved that have `type` **CREDIT** or **DEBIT**.
      summary: List Settlement Funding Transfers
      operationId: listSettlementFundingTransfers
      responses:
        '200':
          $ref: '#/components/responses/TransfersList'
        '401':
          $ref: '#/components/responses/ErrorUnauthorized'
        '403':
          $ref: '#/components/responses/ErrorForbidden403'
        '404':
          $ref: '#/components/responses/ErrorNotFound'
        '406':
          $ref: '#/components/responses/Error406NotAcceptable'
      x-java-method-name: listFundingTransfers
      x-group-parameters: true
      parameters:
      - $ref: '#/components/parameters/QueryLimit'
      x-codeSamples:
      - lang: cURL
        label: curl
        source: "curl \"https://finix.sandbox-payments-api.com/settlements/STivxR2KrnVdD75TQtitnsG8/funding_transfers\" \\\n  -H \"Finix-Version: 2022-02-01\" \\\n  -u USsRhsHYZGBPnQw8CByJyEQW:8a14c2f9-d94b-4c72-8f5c-a62908e5b30e\n"
      x-python-method-name: list_funding_transfers
      x-returns-list: true
  /settlements/{settlement_id}/transfers:
    parameters:
    - description: ID of `Settlement` object.
      required: true
      in: path
      name: settlement_id
      schema:
        type: string
    delete:
      tags:
      - Settlements
      description: 'Remove a `Transfer` that makes up a `Settlement`.


        As long as the `Settlement` hasn''t been funded, you can remove the `Transfer` or an array of `Transfers`, along with its corresponding `fee` from the encompassing `Settlement`.

        - Funding `transfers` can''t be deleted.



        > Per the JSON API for deleting a resource, our API doesn''t have a response body when removing a `Transfer` from a `Settlement`.'
      summary: Delete Settlement Transfers
      operationId: removeSettlementTransfers
      responses:
        '204':
          $ref: '#/components/responses/NoContent'
        '401':
          $ref: '#/components/responses/ErrorUnauthorized'
        '403':
          $ref: '#/components/responses/ErrorForbidden403'
        '404':
          $ref: '#/components/responses/ErrorNotFound'
        '406':
          $ref: '#/components/responses/Error406NotAcceptable'
        '422':
          $ref: '#/components/responses/Error422InvalidField'
      x-internal: false
      x-java-method-name: removeTransfersFromSettlement
      x-codeSamples:
      - lang: cURL
        label: curl
        source:
          $ref: xcode/curl/settlements/deletesettlement.md
      requestBody:
        $ref: '#/components/requestBodies/RemoveSettlementTransfer'
      x-python-method-name: remove_transfers_from_settlement
    get:
      description: Retrieve a list of every `Transfer` in a `Settlement` that has `type` **DEBIT** or **REFUND**.
      summary: List all Transfers in a Settlement
      operationId: listSettlementTransfers
      responses:
        '200':
          $ref: '#/components/responses/TransfersList'
        '401':
          $ref: '#/components/responses/ErrorUnauthorized'
        '403':
          $ref: '#/components/responses/ErrorForbidden403'
        '404':
          $ref: '#/components/responses/ErrorNotFound'
        '406':
          $ref: '#/components/responses/Error406NotAcceptable'
      x-internal: false
      x-java-method-name: listTransfersBySettlementId
      x-group-parameters: true
      tags:
      - Settlements
      parameters:
      - $ref: '#/components/parameters/QueryLimit'
      x-codeSamples:
      - lang: cURL
        label: curl
        source: "curl \"https://finix.sandbox-payments-api.com/settlements/STivxR2KrnVdD75TQtitnsG8/transfers\" \\\n  -H \"Finix-Version: 2022-02-01\" \\\n  -u USsRhsHYZGBPnQw8CByJyEQW:8a14c2f9-d94b-4c72-8f5c-a62908e5b30e\n"
      x-python-method-name: list_transfers_by_settlement_id
      x-returns-list: true
components:
  parameters:
    QueryAmountLtFilter:
      description: Filter by an amount less than.
      in: query
      name: amount.lt
      schema:
        type: integer
      style: form
    QueryCreatedAtLteFilter:
      description: Filter where `created_at` is before the given date.
      in: query
      name: created_at.lte
      schema:
        type: string
        example: '2022-09-27T11:21:23'
      style: form
    QueryLimit:
      description: The numbers of items to return.
      example: 10
      in: query
      name: limit
      schema:
        type: integer
      style: form
    QueryCreatedAtGteFilter:
      description: Filter where `created_at` is after the given date.
      in: query
      name: created_at.gte
      schema:
        type: string
        example: '2022-09-27T11:21:23'
      style: form
    QueryAmountGteFilter:
      description: Filter by an amount greater than or equal.
      in: query
      name: amount.gte
      schema:
        type: integer
      style: form
    QueryAmountGtFilter:
      description: Filter by an amount greater than.
      in: query
      name: amount.gt
      schema:
        type: integer
      style: form
    QueryStatus:
      name: status
      in: query
      required: false
      schema:
        type: string
        enum:
        - PENDING
        - AWAITING_APPROVAL
        - APPROVED
      description: Filter by the status of the `Settlement`. Available values include:<ul><li>**PENDING**<li>**STAGED**<li>**AWAITING_APPROVAL**<li>**APPROVED**.</ul> Merchants only receive payouts when `Settlements` are **APPROVED**. For more information, see [Payouts](/docs/guides/payouts/payouts/).
    QueryAmountLteFilter:
      description: Filter by an amount less than or equal.
      in: query
      name: amount.lte
      schema:
        type: integer
      style: form
    QueryAmountFilter:
      description: Filter by an amount equal to the given value.
      in: query
      name: amount
      schema:
        type: integer
      style: form
  headers:
    x-request-id:
      description: A unique ID for this specific API request attempt.
      schema:
        type: string
    date:
      schema:
        type: string
    finix-apiuser-role:
      schema:
        type: string
        enum:
        - ROLE_ADMIN
        - ROLE_PLATFORM
        - ROLE_PARTNER
        - ROLE_MERCHANT
  schemas:
    Error422InvalidFieldList:
      type: object
      description: Invalid field
      title: ''
      properties:
        total:
          type: integer
        _embedded:
          type: object
          properties:
            errors:
              type: array
              items:
                type: object
                properties:
                  code:
                    type: string
                    enum:
                    - INVALID_FIELD
                  field:
                    type: string
                  logref:
                    $ref: '#/components/schemas/LogRef'
                  message:
                    type: string
                  _links:
                    type: object
                    properties:
                      source:
                        type: object
                        properties:
                          href:
                            type: string
    ErrorGeneric:
      type: object
      properties:
        total:
          type: integer
        _embedded:
          type: object
          properties:
            errors:
              type: array
              items:
                type: object
                additionalProperties: true
                properties:
                  code:
                    type: string
                    enum:
                    - FORBIDDEN
                  logref:
                    $ref: '#/components/schemas/LogRef'
                  message:
                    type: string
                  _links:
                    type: object
                    properties:
                      source:
                        type: object
                        properties:
                          href:
                            type: string
    Amount:
      type: integer
      title: Amount
      description: The total amount that will be debited in cents (e.g. 100 cents to debit $1.00).
      format: int64
    FailureMessage:
      title: FailureMessage
      x-stoplight:
        id: cgilf858039yi
      type: string
      description: A human-readable description of why the transaction was declined. This will also include a suggestion on how to complete the payment.
      nullable: true
    Error403ForbiddenList:
      type: object
      properties:
        total:
          type: integer
        _embedded:
          type: object
          properties:
            errors:
              type: array
              items:
                type: object
                additionalProperties: true
                properties:
                  code:
                    type: string
                    enum:
                    - FORBIDDEN
                  logref:
                    $ref: '#/components/schemas/LogRef'
                  message:
                    type: string
                  _links:
                    type: object
                    properties:
                      source:
                        type: object
                        properties:
                          href:
                            type: string
      description: ''
      title: ''
    Messages:
      title: Messages
      type: array
      description: Message field that provides additional details. This field is typically **null**.
      nullable: true
      items:
        type: string
    Raw:
      title: Raw
      description: Raw response from the processor.
      x-examples: {}
      type: object
      nullable: true
    UpdatedAt:
      type: string
      title: UpdatedAt
      format: date-time
      description: Timestamp of when the object was last updated.
    PageCursor:
      title: PageCursor
      x-stoplight:
        id: 8v9on8n2939z2
      type: object
      properties:
        limit:
          type: integer
          description: The number of entries to return.
        next_cursor:
          type: string
          description: The cursor to use for the next page of results.
          nullable: true
      description: Details the page that's returned.
    FeeType:
      title: FeeType
      type: string
      enum:
      - APPLICATION_FEE
      - ACH_BASIS_POINTS
      - ACH_FIXED
      - CARD_BASIS_POINTS
      - CARD_FIXED
      - CARD_INTERCHANGE
      - VISA_BASIS_POINTS
      - VISA_FIXED
      - VISA_INTERCHANGE
      - VISA_ASSESSMENT_BASIS_POINTS
      - VISA_ACQUIRER_PROCESSING_FIXED
      - VISA_CREDIT_VOUCHER_FIXED
      - VISA_BASE_II_SYSTEM_FILE_TRANSMISSION_FIXED
      - VISA_BASE_II_CREDIT_VOUCHER_FIXED
      - VISA_KILOBYTE_ACCESS_FIXED
      - DISCOVER_BASIS_POINTS
      - DISCOVER_FIXED
      - DISCOVER_INTERCHANGE
      - DISCOVER_ASSESSMENT_BASIS_POINTS
      - DISCOVER_DATA_USAGE_FIXED
      - DISCOVER_NETWORK_AUTHORIZATION_FIXED
      - DINERS_CLUB_BASIS_POINTS
      - DINERS_CLUB_FIXED
      - DINERS_CLUB_INTERCHANGE
      - MASTERCARD_BASIS_POINTS
      - MASTERCARD_FIXED
      - MASTERCARD_INTERCHANGE
      - MASTERCARD_ASSESSMENT_UNDER_1K_BASIS_POINTS
      - MASTERCARD_ASSESSMENT_OVER_1K_BASIS_POINTS
      - MASTERCARD_ACQUIRER_FEE_BASIS_POINTS
      - JCB_BASIS_POINTS
      - JCB_FIXED
      - JCB_INTERCHANGE
      - AMERICAN_EXPRESS_BASIS_POINTS
      - AMERICAN_EXPRESS_FIXED
      - AMERICAN_EXPRESS_INTERCHANGE
      - AMERICAN_EXPRESS_ASSESSMENT_BASIS_POINTS
      - DISPUTE_INQUIRY_FIXED_FEE
      - DISPUTE_FIXED_FEE
      - QUALIFIED_TIER_BASIS_POINTS_FEE
      - QUALIFIED_TIER_FIXED_FEE
      - CUSTOM
      - ACH_DEBIT_RETURN_FIXED_FEE
      - ACH_CREDIT_RETURN_FIXED_FEE
      - ANCILLARY_FIXED_FEE_PRIMARY
      - ANCILLARY_FIXED_FEE_SECONDARY
      - SETTLEMENT_V2_TRANSFER
      description: Details the type of fee if the `Transfer` includes a `fee`.
    CardPresentDetails:
      title: CardPresentDetails
      x-stoplight:
        id: jbenxkas8ukf2
      type: object
      description: Details needed to process card present transactions.
      nullable: true
      properties:
        approval_code:
          type: string
          description: Unique ID used to identify the approval of the `Transfer`.
          nullable: true
        brand:
          type: string
          description: The brand of the card saved in the `Payment Instrument`.
          nullable: true
        emv_data:
          type: object
          description: Encrypted card data used to process the transaction.
          nullable: true
          properties:
            application_identifier:
              type: string
              description: ID of the EMV application processing the transaction.
            application_label:
              type: string
              description: EMV card label.
            application_preferred_name:
              type: string
              description: Alternate EMV application name (if provided).
              nullable: true
            application_transaction_counter:
              type: string
              description: Transaction number for the EMV application.
            cryptogram:
              type: string
              description: Encrypted card infromation used to process the transaction.
            issuer_code_table_index:
              type: string
              description: The alphabet code table (according to ISO 8859) used by the EMV application (if provided).
              nullable: true
            pin_verified:
              type: boolean
              description: Details if the cardholder's PIN number was verified.
            tags:
              $ref: '#/components/schemas/Tags'
        entry_mode:
          type: string
          description: Details how the card was entered to process the transaction.
          nullable: true
        masked_account_number:
          type: string
          description: Last four digits of the bank account number.
          nullable: true
        name:
          type: string
          description: The name of the bank account or card owner.
          nullable: true
        payment_type:
          type: string
          description: The type of `Payment Instrument` used in the transaction (or the original payment).
    AdditionalPurchaseData:
      title: AdditionalPurchaseData
      x-stoplight:
        id: e98e7635f242c
      type: object
      description: Additional information about the purchase. Used for [Level 2 and Level 3 Processing](/guides/payments/modify/level-2-and-level-3-processing/).
      properties:
        customer_reference_number:
          type: string
          description: The customer reference for the purchase (max 17 characters).
          maxLength: 17
        customs_duty_amount:
          type: integer
          description: The duty in cents on the total purchase amount for the order
        destination_country_code:
          type: string
          description: The ISO country code of the order destination.
        destination_postal_code:
          type: string
          description: The postal code of the order destination (10 characters)
          maxLength: 10
        discount_amount:
          type: integer
          description: The amount in cents of the discount for the order.
        invoice_reference_number:
          type: string
          description: The order's invoice number (max 15 characters)
          maxLength: 15
        item_data:
          type: array
          description: Additional information about the transaction. Used for Level 2 and Level 3 Processing.
          items:
            type: object
            properties:
              amount_excluding_sales_tax:
                type: integer
                description: '- Total cost of the line item in cents, excluding tax.

                  - Must align with `sales_tax` so `amount_excluding_sales_tax` + `sales_tax` = `amount_including_sales_tax`.'
              amount_including_sales_tax:
                type: integer
                description: '- Total cost of the line item in cents, including tax.

                  - Must align with `sales_tax` so `amount_excluding_sales_tax` + `sales_tax` = `amount_including_sales_tax`.'
              commodity_code:
                type: string
                description: A commodity code is a numeric code representing a particular product or service as defined by the National Institute of Governmental Purchasing. The code can be 3, 5, 7, or 11 digits in length. The longer the code the more granular the description of the product/service. (max 12 characters).
                maxLength: 12
              cost_per_unit:
                type: integer
                description: The price in cents of one unit of the item purchased
              item_description:
                type: string
                description: Required when `item_data` is supplied (max 25 characters)
                maxLength: 25
              item_discount_amount:
                type: integer
                description: 'Item discount amount in cents

                  '
              merchant_product_code:
                type: string
                description: Merchant defined product code (max 12 characters).
                maxLength: 12
              quantity:
                type: integer
                description: The number of items purchased. Must be greater than 0.
                minimum: 1
                maximum: 99
              unit_of_measure:
                type: string
                description: The unit of measure of the purchased item (max 3 characters).
                maxLength: 3
        order_date:
          type: object
          properties:
            day:
              type: integer
              description: Day of purchase (between 1 and 31)
            month:
              type: integer
              description: Month of purchase (between 1 and 12)
            year:
              type: integer
              description: Year of purchase (4-digit)
              minimum: 1990
        sales_tax:
          type: integer
          description: "- Total aggregate tax amount in cents for the entire purchase. Field is automatically calculated if you pass in the itemized tax amounts. \n- For non-taxable transactions either set `sales_tax` to 0 or omit from payload and also set `tax_exempt` to **True**.\n- Request must align so `amount_excluding_sales_tax` + `sales_tax` = `amount_including_sales_tax`."
        ship_from_postal_code:
          type: string
          description: The postal code from where order is shipped (10 characters)
          maxLength: 10
        shipping_amount:
          type: integer
          description: 'The shipping cost in cents for the order.

            '
        tax_exempt:
          type: boolean
          description: '- For tax exempt purchases set to **True**.

            - If set to **True**, request can''t include `sales_tax`.'
      required:
      - customer_reference_number
      - sales_tax
    SettlementsList:
      type: object
      description: ''
      properties:
        page:
          $ref: '#/components/schemas/PageCursor'
        _embedded:
          type: object
          description: List of `Settlement` objects.
          properties:
            settlements:
              type: array
              minItems: 0
              uniqueItems: true
              description: '`Settlements` resource.'
              items:
                $ref: '#/components/schemas/Settlement'
        _links:
          $ref: '#/components/schemas/ListLinks'
    Transfer:
      type: object
      x-examples: {}
      properties:
        id:
          type: string
          description: The ID of the `Transfer` resource.
        created_at:
          $ref: '#/components/schemas/CreatedAt'
        updated_at:
          $ref: '#/components/schemas/UpdatedAt'
        additional_buyer_charges:
          $ref: '#/components/schemas/AdditionalBuyerCharges'
        additional_healthcare_data:
          $ref: '#/components/schemas/AdditionalHealthcareData'
        additional_purchase_data:
          $ref: '#/components/schemas/AdditionalPurchaseData'
        address_verification:
          type: string
          description: Details the results of the Address Verification checks.
          nullable: true
        amount:
          $ref: '#/components/schemas/Amount'
        amount_requested:
          type: integer
          description: Details the `amount` that was requested to get debited from the `source` when the transaction was created.
        application:
          type: string
          description: The ID of the `Application` the `Transfer` was created under.
        card_present_details:
          $ref: '#/components/schemas/CardPresentDetails'
        currency:
          $ref: '#/components/schemas/Currency'
        destination:
          type: string
          description: The ID of the destination.
          nullable: true
        device:
          type: string
          description: The ID of the `Device` resource the `Transfer` was created under.
        externally_funded:
          type: string
          description: Details if the `Transfer` will be settled externally by card processors.
        failure_code:
          $ref: '#/components/schemas/FailureCode'
        failure_message:
          $ref: '#/components/schemas/FailureMessage'
        fee:
          type: integer
          format: int64
          description: "The minimum amount of the `Transfer` you'd like to collect as your fee in cents. Defaults to zero (must be less than or equal to the `amount`).\n- If the fees applied by the 'Fee Profile' are ***higher*** than the value passed in 'fee', 'fee' will not be applied and have no effect.\n- If the fees applied by the 'Fee Profile' are ***lower*** than the value passed in 'fee', an additional fee is be applied, in addition to the fees generated by the `Fee Profile`.\n    - The additional fee is equal to the difference between the value passed in 'fee' and the fees generated by the `Fee Profile`.\nfraud_session_id:"
        fee_type:
          $ref: '#/components/schemas/FeeType'
        idempotency_id:
          $ref: '#/components/schemas/IdempotencyId'
        merchant:
          type: string
          description: The ID of the `Merchant` resource the `Transfer` was created under.
          example: MUxxxxxxxxxxxxxxxxxxxxxxx
        merchant_identity:
          type: string
          example: IDxxxxxxxxxxxxxxxxxxxxxxxx
          description: The ID of `Identity` resource used by the `Merchant` the `Transfer` was created under.
        parent_transfer:
          type: string
          description: '- ID of the original parent `Transfer` where the transaction occurred.

            - Only appears for `Transfers:type` **REVERSAL** and **FEE**.'
          nullable: true
        parent_transfer_trace_id:
          type: string
          description: '- `trace_id` of the original parent `Transfer` where the transaction occurred.

            - Only appears for `Transfers:type` **REVERSAL** and **FEE**.'
          nullable: true
        messages:
          $ref: '#/components/schemas/Messages'
        raw:
          $ref: '#/components/schemas/Raw'
        ready_to_settle_at:
          type: string
          format: date-time
          description: Timestamp of when the `Transfer` is ready to be settled at.
          nullable: true
        security_code_verification:
          type: string
          description: Details the results of the Security Code Verification checks.
          nullable: true
        source:
          type: string
          description: The ID of the `Payment Instrument` that will be debited and performing the `Transfer`.
          nullable: true
        split_transfers:
          type: string
          description: '- The ID of the `split_transfer` resources moving funds from the primary `Transfer` to the specified `Merchants.`

            - Only used for Split Transactions. For more information, see [Split Transactions](/docs/guides/payments/modify/split-transactions/).'
          nullable: true
        state:
          type: string
          enum:
          - CANCELED
          - PENDING
          - FAILED
          - SUCCEEDED
          - UNKNOWN
          description: The stauts of the `Transfer`.
        statement_descriptor:
          type: string
          description: <li>The description of the seller that appears on the buyer's bank or card statement.</li><li><kbd>statement_descriptors</kbd> for `Transfers` in <strong>live</strong> enviroments will have a <kbd>FI *</kbd> prefix.
          nullable: true
        subtype:
          type: string
          enum:
          - API
          - APPLICATION_FEE
          - DISPUTE
          - MERCHANT_CREDIT
          - MERCHANT_CREDIT_ADJUSTMENT
          - MERCHANT_DEBIT
          - MERCHANT_DEBIT_ADJUSTMENT
          - PLATFORM_CREDIT
      

# --- truncated at 32 KB (89 KB total) ---
# Full source: https://raw.githubusercontent.com/api-evangelist/finix/refs/heads/main/openapi/finix-settlements-api-openapi.yml