Fipto AISP/PISP API

Endpoints for AISP/PISP.

Business capability
Payment Initiation Management BC-1340.10

Operations 12

GET /aisp-pisp List all AISP/PISPs #
POST /companies/{company_id}/aisp-pisp Create a new API user for an AISP/PISP. #
GET /companies/{company_id}/aisp-pisp List all AISP/PISP access of a company #
GET /companies/{company_id}/aisp-pisp/{aisp_pisp_id} Get specific AISP/PISP access of a company #
DELETE /companies/{company_id}/aisp-pisp/{aisp_pisp_id} Delete the access for a company to an AISP/PISP. #
POST /companies/{company_id}/aisp-pisp/wallets/{wallet_id}/payouts Initiate payout as an AISP/PISP #
GET /companies/{company_id}/aisp-pisp/wallets List wallets. #
GET /companies/{company_id}/aisp-pisp/wallets/{wallet_id} Get a wallet from an AISP/PISP. #
GET /companies/{company_id}/aisp-pisp/transactions Get transactions for an AISP PISP #
GET /companies/{company_id}/aisp-pisp/transactions/{transaction_id} Get a transaction for an AISP PISP #
GET /companies/{company_id}/aisp-pisp/beneficiaries List beneficiaries for an AISP/PISP #
GET /companies/{company_id}/aisp-pisp/beneficiaries/{beneficiary_id} Get a beneficiary for an AISP/PISP #

Work with this as data

Every API here is available over the APIs.io API and to AI agents over MCP.

MCP server

One button, every client — Claude, Cursor, VS Code and the rest.

https://apis.io/mcp

Tools for apis

7 MCP tools reach this
  • find_apisBrowse and filter every API in the catalog.
  • get_api_artifactsOne API's artifacts, grouped by type.
  • get_openapiThe primary OpenAPI for this API.
  • find_similar_apisAPIs that look like this one.
  • apis_io_searchSTART HERE — APIs, providers and tags for one query, each with its total.
  • resolveTurn a domain, URL or GitHub org into the provider it belongs to.
  • find_cohortsEvery scored population of providers in the catalog.
All 92 tools →

Call it yourself

curl for this page
This API
curl "https://apis.io/api/v1/apis/fipto-aisp-pisp-api"
All apis
curl "https://apis.io/api/v1/apis?limit=25"

Discovery needs no key. Ratings and market analysis are Pro.

Get an API key

Free tier, no form to fill in. Signing in shares your email address with us — we store it to create your key and to recognise you if you sign in with another provider. See our Privacy Policy and Terms.

A second provider on the same verified email joins the account you already have.

OpenAPI Specification

fipto-aisp-pisp-api-openapi.yml Raw ↑
openapi: 3.2.0
info:
  title: Fipto - OpenAPI 3.0 AISP/PISP API
  version: 4.3.0
  description: This is a REST API specifications based on OpenAPI 3.0 for Fipto solution.
  contact:
    url: https://www.fipto.com/
servers:
- url: https://api.fipto.app
  description: The API server on production
tags:
- name: AISP/PISP
  description: Endpoints for AISP/PISP.
paths:
  /aisp-pisp:
    get:
      summary: List all AISP/PISPs
      tags:
      - AISP/PISP
      operationId: listAISPPISP
      responses:
        '200':
          description: List of all AISP/PISPs
          content:
            application/json:
              schema:
                allOf:
                - $ref: '#/components/schemas/meta'
                - type: object
                  properties:
                    data:
                      type: array
                      items:
                        $ref: '#/components/schemas/aisp_pisp_data'
  /companies/{company_id}/aisp-pisp:
    post:
      summary: Create a new API user for an AISP/PISP.
      tags:
      - AISP/PISP
      operationId: createCompanyAISPPISP
      parameters:
      - $ref: '#/components/parameters/company_id'
      requestBody:
        content:
          application/json:
            schema:
              type: object
              required:
              - data
              properties:
                data:
                  allOf:
                  - $ref: '#/components/schemas/create_company_aisp_pisp_data'
      responses:
        '201':
          description: AISP/PISP user successfully created.
          content:
            application/json:
              schema:
                allOf:
                - $ref: '#/components/schemas/meta'
                - type: object
                  properties:
                    data:
                      $ref: '#/components/schemas/aisp_pisp_company_data'
    get:
      summary: List all AISP/PISP access of a company
      tags:
      - AISP/PISP
      operationId: listCompanyAISPPISP
      parameters:
      - $ref: '#/components/parameters/company_id'
      responses:
        '200':
          description: List of all AISP/PISP access of a company
          content:
            application/json:
              schema:
                allOf:
                - $ref: '#/components/schemas/meta'
                - type: object
                  properties:
                    data:
                      type: array
                      items:
                        $ref: '#/components/schemas/aisp_pisp_company_data'
  /companies/{company_id}/aisp-pisp/{aisp_pisp_id}:
    get:
      summary: Get specific AISP/PISP access of a company
      tags:
      - AISP/PISP
      operationId: getCompanyAISPPISP
      parameters:
      - $ref: '#/components/parameters/company_id'
      - $ref: '#/components/parameters/aisp_pisp_id'
      responses:
        '200':
          description: Get specific AISP/PISP access of a company
          content:
            application/json:
              schema:
                allOf:
                - $ref: '#/components/schemas/meta'
                - type: object
                  properties:
                    data:
                      $ref: '#/components/schemas/aisp_pisp_company_data'
    delete:
      summary: Delete the access for a company to an AISP/PISP.
      tags:
      - AISP/PISP
      operationId: deleteCompanyAISPPISP
      parameters:
      - $ref: '#/components/parameters/company_id'
      - $ref: '#/components/parameters/aisp_pisp_id'
      responses:
        '204':
          description: Access to the AISP/PISP successfully deleted.
  /companies/{company_id}/aisp-pisp/wallets/{wallet_id}/payouts:
    post:
      summary: Initiate payout as an AISP/PISP
      description: Initiate a payment from your wallet to a specified beneficiary. We will process the payment and send it to the beneficiary.
      operationId: initiatePayoutAISPPISP
      tags:
      - AISP/PISP
      parameters:
      - $ref: '#/components/parameters/company_id'
      - $ref: '#/components/parameters/wallet_id'
      requestBody:
        content:
          application/json:
            schema:
              type: object
              required:
              - data
              properties:
                data:
                  $ref: '#/components/schemas/aisp_pisp_payout_initiate_raw_data'
      responses:
        '202':
          description: Payout Accepted.
          content:
            application/json:
              schema:
                allOf:
                - $ref: '#/components/schemas/meta'
                - type: object
                  properties:
                    data:
                      $ref: '#/components/schemas/aisp_pisp_payout_data'
  /companies/{company_id}/aisp-pisp/wallets:
    get:
      summary: List wallets.
      description: Retrieve all wallets linked to a company from a AISP/PISP.
      operationId: listWalletAISPPISP
      tags:
      - AISP/PISP
      parameters:
      - $ref: '#/components/parameters/company_id'
      - $ref: '#/components/parameters/page_number'
      - $ref: '#/components/parameters/page_size_optional'
      - name: sort
        in: query
        required: false
        schema:
          $ref: '#/components/schemas/sort_wallets_list'
      - $ref: '#/components/parameters/assets'
      responses:
        '200':
          description: Retrieve a wallet.
          content:
            application/json:
              schema:
                allOf:
                - $ref: '#/components/schemas/meta'
                - $ref: '#/components/schemas/pagination'
                - type: object
                  properties:
                    data:
                      type: array
                      items:
                        $ref: '#/components/schemas/wallet_data'
  /companies/{company_id}/aisp-pisp/wallets/{wallet_id}:
    get:
      summary: Get a wallet from an AISP/PISP.
      description: Retrieve a specific wallet by its unique identifier from AISP/PISP.
      operationId: getWalletAISPPISP
      tags:
      - AISP/PISP
      parameters:
      - $ref: '#/components/parameters/company_id'
      - $ref: '#/components/parameters/wallet_id'
      responses:
        '200':
          description: Retrieve a wallet.
          content:
            application/json:
              schema:
                allOf:
                - $ref: '#/components/schemas/meta'
                - type: object
                  properties:
                    data:
                      $ref: '#/components/schemas/wallet_data'
  /companies/{company_id}/aisp-pisp/transactions:
    get:
      summary: Get transactions for an AISP PISP
      description: Retrieve the list of all transactions in your company for an AISP PISP, with the ability to apply filters based on the wallet, transaction type, and pagination.
      operationId: searchTransactionsAISPPISPByCompanyId
      tags:
      - AISP/PISP
      parameters:
      - $ref: '#/components/parameters/company_id'
      - $ref: '#/components/parameters/page_number'
      - $ref: '#/components/parameters/page_size'
      - name: sort
        in: query
        required: false
        schema:
          $ref: '#/components/schemas/sort_transaction_list'
      - $ref: '#/components/parameters/filter_transaction_types'
      - $ref: '#/components/parameters/filter_wallet_id'
      responses:
        '200':
          description: Retrieve list of transactions.
          content:
            application/json:
              schema:
                allOf:
                - $ref: '#/components/schemas/meta'
                - $ref: '#/components/schemas/pagination'
                - type: object
                  properties:
                    data:
                      type: array
                      items:
                        $ref: '#/components/schemas/transaction_data'
  /companies/{company_id}/aisp-pisp/transactions/{transaction_id}:
    get:
      summary: Get a transaction for an AISP PISP
      description: Retrieve a specific transaction by its unique identifier for an AISP PISP.
      operationId: getTransactionAISPPISP
      tags:
      - AISP/PISP
      parameters:
      - $ref: '#/components/parameters/company_id'
      - $ref: '#/components/parameters/transaction_id'
      responses:
        '200':
          description: Retrieve a transaction for an AISP/PISP.
          content:
            application/json:
              schema:
                allOf:
                - $ref: '#/components/schemas/meta'
                - type: object
                  properties:
                    data:
                      $ref: '#/components/schemas/transaction_data'
  /companies/{company_id}/aisp-pisp/beneficiaries:
    get:
      summary: List beneficiaries for an AISP/PISP
      operationId: listBeneficiariesAISPPISP
      description: Retrieve all beneficiaries for an AISP/PISP.
      tags:
      - AISP/PISP
      parameters:
      - $ref: '#/components/parameters/company_id'
      - $ref: '#/components/parameters/page_number'
      - $ref: '#/components/parameters/page_size'
      - $ref: '#/components/parameters/sort'
      responses:
        '200':
          description: List of all beneficiaries.
          content:
            application/json:
              schema:
                allOf:
                - $ref: '#/components/schemas/meta'
                - $ref: '#/components/schemas/pagination'
                - type: object
                  properties:
                    data:
                      type: array
                      items:
                        $ref: '#/components/schemas/beneficiary_data'
  /companies/{company_id}/aisp-pisp/beneficiaries/{beneficiary_id}:
    get:
      summary: Get a beneficiary for an AISP/PISP
      operationId: getBeneficiaryAISPPISP
      description: Retrieve a specific beneficiary by its unique identifier for an AISP/PISP.
      tags:
      - AISP/PISP
      parameters:
      - $ref: '#/components/parameters/company_id'
      - $ref: '#/components/parameters/beneficiary_id'
      responses:
        '200':
          description: Retrieve a beneficiary.
          content:
            application/json:
              schema:
                allOf:
                - $ref: '#/components/schemas/meta'
                - type: object
                  properties:
                    data:
                      $ref: '#/components/schemas/beneficiary_data'
components:
  schemas:
    request_id:
      type: string
      pattern: '[0-9]-[0-9a-fA-F]{8}-[0-9a-fA-F]{24}'
      description: Request identifier.
    beneficiary_info_legal:
      description: Data about Beneficiary of type Legal.
      allOf:
      - $ref: '#/components/schemas/beneficiary_info_base'
      - type: object
        required:
        - type
        - name
        - address
        properties:
          type:
            type: string
            enum:
            - company
          name:
            type: string
            description: The company name.
            allOf:
            - $ref: '#/components/schemas/company_name'
            minLength: 1
            maxLength: 70
          address:
            allOf:
            - $ref: '#/components/schemas/address'
            - $ref: '#/components/schemas/address_required_constraint_all_fields'
          date_of_formation:
            type: string
            format: date
            description: Date the legal entity was incorporated (YYYY-MM-DD). Maps to CPN `BENEFICIARY_DATE_OF_FORMATION`.
            example: '2012-04-02'
          country_of_formation_code:
            description: ISO 3166-1 alpha-2 country of incorporation. Maps to CPN `BENEFICIARY_COUNTRY_OF_FORMATION`.
            allOf:
            - $ref: '#/components/schemas/country_code'
    sanitized_string:
      type: string
      description: Allow alphanumeric, +, -, _, &, (, ), °,  space, single quote, comma, and all accented characters.
      pattern: ^[a-zA-Z0-9À-ɏ\s+'()_&,°-]*$
    beneficiary_travel_rule_custodial:
      description: Custodial travel rule information.
      type: object
      oneOf:
      - properties:
          vasp_name:
            $ref: '#/components/schemas/vasp_name'
          vasp_did:
            type: string
            pattern: ^did:[a-zA-Z0-9]*:.*$
            example: did:ethr:0x123456789abcdef
        required:
        - vasp_did
      - properties:
          vasp_name:
            $ref: '#/components/schemas/vasp_name'
          vasp_website:
            type: string
            format: url
        required:
        - vasp_website
        - vasp_name
    beneficiary_info_base:
      description: Shared CPN requirement fields for natural and legal beneficiaries. Not used directly; merged via allOf.
      type: object
      properties:
        phone_number:
          type: string
          description: Contact phone number for the beneficiary, in E.164 form. Maps to CPN `BENEFICIARY_PHONE_NUMBER`.
          pattern: ^\+?[1-9]\d{1,14}$
          example: '+442012345678'
        email:
          type: string
          format: email
          description: Contact email for the beneficiary. Maps to CPN `BENEFICIARY_EMAIL`.
          example: maria.gomez@example.com
        national_identification_number:
          type: string
          description: National identification document number (CURP/RFC for MX, CPF/CNPJ for BR, NRIC for SG, etc.). Maps to CPN `BENEFICIARY_NATIONAL_IDENTIFICATION_NUMBER` and `RECIPIENT_ID_NUMBER`.
          example: '98765432100'
        national_identification_expiration_date:
          type: string
          format: date
          description: Expiry date of the national-identification document (YYYY-MM-DD).
          example: '2031-08-15'
    bank_identifier:
      description: The bank's identification code, which can be either a BIC (Bank Identifier Code) for international transfers or a routing number for domestic transfers. This identifies the financial institution where the beneficiary's account is held.
      type: string
      example: BPPCFRTT
    transaction_wallet_info:
      description: Wallet information in a transaction.
      type: object
      required:
      - wallet_id
      - wallet_name
      properties:
        wallet_id:
          $ref: '#/components/schemas/uuid'
        wallet_name:
          type: string
          description: The name of the wallet.
          example: My wallet
    beneficiary_wallet_details_fiat:
      description: Data about Wallet Details of type fiat for beneficiary creation.
      allOf:
      - $ref: '#/components/schemas/wallet_details_common'
      - $ref: '#/components/schemas/account_identifiers'
    open_trade:
      description: Data from open trade transfer
      type: object
      required:
      - amount
      - asset
      properties:
        asset:
          $ref: '#/components/schemas/asset'
        amount:
          $ref: '#/components/schemas/positive_amount'
    beneficiary_wallet_details_digital:
      description: Data about Wallet Details of type digital.
      allOf:
      - $ref: '#/components/schemas/wallet_details_common'
      - type: object
        required:
        - address
        properties:
          address:
            $ref: '#/components/schemas/wallet_address'
          travel_rule:
            $ref: '#/components/schemas/beneficiary_travel_rule'
          travel_rule_status:
            readOnly: true
            allOf:
            - $ref: '#/components/schemas/travel_rule_status'
    payin_fiat_source:
      description: Source of a payin in fiat currency.
      type: object
      properties:
        iban:
          type: string
          description: The IBAN of the bank account that initiated the payment.
        bic:
          type: string
          description: The BIC of the bank account that initiated the payment.
        name:
          type: string
          description: The name of the bank account that initiated the payment.
        physical_address:
          type: string
          description: The physical address of the bank account that initiated the payment.
        country:
          type: string
          description: The country of the bank account that initiated the payment.
    approval_group:
      description: An approver group whose authorization rule is still awaiting a sign-off.
      type: object
      required:
      - id
      - name
      properties:
        id:
          $ref: '#/components/schemas/uuid'
        name:
          type: string
    wallet_raw_data:
      description: Wallet data without id
      allOf:
      - $ref: '#/components/schemas/data_default'
      - type: object
        required:
        - type
        properties:
          type:
            type: string
            default: wallet
          attributes:
            required:
            - name
            - asset
            properties:
              name:
                description: The name given to the wallet.
                type: string
                allOf:
                - $ref: '#/components/schemas/sanitized_string'
                minLength: 1
                maxLength: 80
              asset:
                $ref: '#/components/schemas/asset'
    available_balance:
      type: string
      description: The current available balance of assets for the wallet.
    forecasted_balance:
      type: string
      description: The forecasted balance of assets for the wallet.
    transaction_conversion_status_public:
      type: string
      enum:
      - confirmed
      - completed
      - returned
      - insufficient funds
      example: confirmed
      description: Status of the conversion transaction.
    address_required_constraint_all_fields:
      type: object
      description: Constraint on address component to ensure all fields are set.
      required:
      - street_address
      - zip_code
      - city
      - country_code
    wallet_details_common:
      description: Minimal info in common about Wallet Details.
      type: object
      required:
      - asset
      properties:
        asset:
          $ref: '#/components/schemas/asset'
    pagination:
      description: Information about the pagination of the request
      type: object
      required:
      - meta
      properties:
        meta:
          type: object
          required:
          - total_results
          - query_parameters
          properties:
            total_results:
              description: The total number of results
              type: number
              example: 100
            query_parameters:
              allOf:
              - $ref: '#/components/schemas/query_parameters'
              required:
              - page_number
              - page_size
              - sort
              properties:
                page_number:
                  type: number
                  example: 1
                page_size:
                  type: number
                  example: 100
                sort:
                  type: string
                  example: created_at
    aisp_pisp_data:
      description: AISP/PISP information.
      allOf:
      - $ref: '#/components/schemas/data_default'
      - $ref: '#/components/schemas/object_id'
      - type: object
        properties:
          type:
            type: string
            enum:
            - aisp_pisp
          attributes:
            required:
            - name
            properties:
              name:
                description: Name of the AISP/PISP.
                type: string
    sort:
      type: string
      default: created_at
      example: created_at
      description: The sort field used to filter data.
    transfer_data:
      description: Transfer data.
      allOf:
      - $ref: '#/components/schemas/data_default'
      - type: object
        required:
        - type
        - id
        properties:
          type:
            type: string
            enum:
            - transfer
          id:
            $ref: '#/components/schemas/uuid'
          attributes:
            required:
            - source_company_name
            - destination_company_name
            - source_wallet_id
            - destination_wallet_id
            - asset_code
            - amount
            - transaction_id
            - created_at
            properties:
              operation_id:
                $ref: '#/components/schemas/uuid'
              batch_id:
                $ref: '#/components/schemas/uuid'
              source_company_name:
                type: string
              destination_company_name:
                type: string
              asset_code:
                $ref: '#/components/schemas/asset'
              amount:
                $ref: '#/components/schemas/positive_amount'
              valuations:
                $ref: '#/components/schemas/valuations'
              transaction_id:
                $ref: '#/components/schemas/uuid'
              source_wallet_id:
                $ref: '#/components/schemas/uuid'
              destination_wallet_id:
                $ref: '#/components/schemas/uuid'
              created_at:
                $ref: '#/components/schemas/created_at'
              created_by:
                $ref: '#/components/schemas/created_by'
              reference:
                $ref: '#/components/schemas/fiat_reference'
              signature:
                $ref: '#/components/schemas/signature'
    positive_integer:
      type: integer
      example: 10000
      maximum: 2147483647
      minimum: 0
      description: Strictly positive int32.
    beneficiary_raw_data:
      description: Beneficiary information without id.
      allOf:
      - $ref: '#/components/schemas/data_default'
      - type: object
        properties:
          type:
            type: string
            default: beneficiary
          attributes:
            required:
            - description
            - wallet_details
            - beneficiary_info
            properties:
              description:
                allOf:
                - $ref: '#/components/schemas/sanitized_string_with_dot'
                minLength: 1
                maxLength: 80
                description: Description of the beneficiary that you want to add (e.g. "external wallet account").
              wallet_details:
                $ref: '#/components/schemas/wallet_details_beneficiary'
              beneficiary_info:
                oneOf:
                - $ref: '#/components/schemas/beneficiary_info_natural'
                - $ref: '#/components/schemas/beneficiary_info_legal'
                - $ref: '#/components/schemas/beneficiary_is_self'
                discriminator:
                  propertyName: type
                  mapping:
                    individual: '#/components/schemas/beneficiary_info_natural'
                    company: '#/components/schemas/beneficiary_info_legal'
                    self: '#/components/schemas/beneficiary_is_self'
    object_id:
      description: Unique id of object
      type: object
      properties:
        id:
          readOnly: true
          allOf:
          - $ref: '#/components/schemas/uuid'
    meta:
      description: Metadata of the request
      type: object
      required:
      - meta
      properties:
        meta:
          type: object
          required:
          - request_id
          properties:
            request_id:
              oneOf:
              - $ref: '#/components/schemas/uuid'
              - $ref: '#/components/schemas/request_id'
            query_parameters:
              $ref: '#/components/schemas/query_parameters'
    query_parameters:
      description: Information about the parameters in the request. All query string parameters provided (or implicit/with default value) will be returned
      type: object
    sanitized_string_with_dot:
      type: string
      description: Allow alphanumeric, +, -, _, &, (, ), °, .,  space, single quote, comma, and all accented characters.
      pattern: ^[a-zA-Z0-9À-ɏ\s+'()_&,°.-]*$
    asset_value:
      type: string
      description: The estimated value of the asset (based on the quote asset).
    fiat_reference:
      type: string
      pattern: ^[a-zA-Z0-9-.&/\s]*$
      minLength: 6
      maxLength: 35
      description: Payment reference used in fiat transactions to convey information about the payment being made. Allow alphanumeric, -, ., &, /, space and all accented characters. The minimum length must be 6 characters without counting the spaces.
    payout_data:
      description: Payout data.
      allOf:
      - $ref: '#/components/schemas/data_default'
      - type: object
        required:
        - type
        - id
        properties:
          type:
            type: string
            enum:
            - payout
          id:
            $ref: '#/components/schemas/uuid'
          attributes:
            properties:
              operation_id:
                $ref: '#/components/schemas/uuid'
              source:
                $ref: '#/components/schemas/transaction_wallet_info'
              destination:
                $ref: '#/components/schemas/transaction_beneficiary_info'
              amount:
                $ref: '#/components/schemas/positive_amount'
              valuations:
                $ref: '#/components/schemas/valuations'
              transaction_id:
                $ref: '#/components/schemas/uuid'
              created_at:
                $ref: '#/components/schemas/created_at'
              asset_code:
                $ref: '#/components/schemas/asset'
              created_by:
                $ref: '#/components/schemas/created_by'
              reference:
                $ref: '#/components/schemas/fiat_reference'
              signature:
                $ref: '#/components/schemas/signature'
              blockchain_data:
                $ref: '#/components/schemas/blockchain_data'
              open_trade:
                $ref: '#/components/schemas/open_trade'
    sort_transaction_list:
      description: Possible sort for the list transaction.
      allOf:
      - $ref: '#/components/schemas/sort'
      enum:
      - created_at
      - amount
      - status
    company_name:
      type: string
      description: Allow alphanumeric, +, -, _, &, (, ), ., space, single quote, comma, and all accented characters.
      pattern: ^[a-zA-Z0-9À-ɏ\s+'()_&,.\-]*$
      maxLength: 100
    sort_wallets_list:
      description: Possible sort for the list wallet.
      allOf:
      - $ref: '#/components/schemas/sort'
      enum:
      - created_at
      - name
      - asset_code
      - value
    wallet_data:
      description: Wallet information with id
      allOf:
      - $ref: '#/components/schemas/wallet_raw_data'
      - type: object
        required:
        - id
        properties:
          id:
            $ref: '#/components/schemas/uuid'
          attributes:
            required:
            - balances
            properties:
              subtype:
                $ref: '#/components/schemas/wallet_subtype'
              balances:
                type: object
                required:
                - available
                - forecasted
                properties:
                  available:
                    $ref: '#/components/schemas/available_balance'
                  forecasted:
                    $ref: '#/components/schemas/forecasted_balance'
    beneficiary_travel_rule:
      description: Travel rule data linked to a beneficiary
      oneOf:
      - $ref: '#/components/schemas/beneficiary_travel_rule_custodial'
      - $ref: '#/components/schemas/travel_rule_non_custodial'
      - type: object
        readOnly: true
        additionalProperties: false
    public_transfer_data:
      description: Public transfer data.
      allOf:
      - $ref: '#/components/schemas/transfer_data'
      - type: object
        properties:
          caller_can_approve:
            type: boolean
            readOnly: true
            description: Whether the requesting user may approve the pending action on this transaction.
          pending_action_initiated_by:
            allOf:
            - $ref: '#/components/schemas/uuid'
            readOnly: true
            description: User ID that initiated the pending action, if any.
          approval_progress:
            allOf:
            - $ref: '#/components/schemas/approval_progress'
            readOnly: true
            description: AND multi-rule approval progress for the pending action, if any.
          attributes:
            required:
            - status
            properties:
              status:
                $ref: '#/components/schemas/transfer_status_public'
    transaction_data:
      description: Transaction data.
      oneOf:
      - $ref: '#/components/schemas/public_payin_data'
      - $ref: '#/components/schemas/public_payout_data'
      - $ref: '#/components/schemas/public_conversion_data'
      - $ref: '#/components/schemas/public_payment_link_transaction_data'
      - $ref: '#/components/schemas/public_transfer_data'
    transaction_type:
      description: Type of transaction.
      type: string
      enum:
      - payin
      - payout
      - conversion
      - payment_link
      - transfer
      - internal_transfer
    payin_destination:
      description: Destination of a payin
      type: object
      allOf:
      - $ref: '#/components/schemas/transaction_wallet_info'
      properties:
        wallet_details_id:
          $ref: '#/components/schemas/uuid'
        wallet_details_name:
          type: string
          description: The name of the wallet details.
        wallet_details_address:
          $ref: '#/components/schemas/wallet_address'
        wallet_details_tag:
          type: string
          description: The tag associated with a wallet details on the blockchain.
        wallet_details_iban:
          type: string
          description: The IBAN associated with a wallet details.
    payment_link_transaction_data:
      description: Payment-link data.
      allOf:
      - $ref: '#/components/schemas/data_default'
      - type: object
        required:
        - type
        - id
        properties:
          type:
            type: string
            enum:
            - payment_link
          id:
            $ref: '#/components/schemas/uuid'
          attributes:
            properties:
              asset_code:
                $ref: '#/components/schemas/asset'
              amount:
                $ref: '#/components/schemas/positive_amount'
              created_at:
                $ref: '#/components/schemas/created_at'
              destination:
                $ref: '#/components/schemas/payin_destination'
              transaction_id:
                $ref: '#/components/schemas/uuid'
    approval_progress:
      description: 'AND multi-rule approval progress for the pending action on an entity,

        embedded in detail responses. Present only when a pending action exists;

        a freshly-initiated action reports 0 of N.

        '
      type: object
      required:
      - approvals_received
      - approvals_required
      - pending_approver_groups
      properties:
        approvals_received:
          type: integer
        approvals_required:
          type: integer
        pending_approver_groups:
          type: array
          items:
            $ref: '#/components/schemas/approval_group'
    aisp_pisp_payout_initiate_raw_data:
      description: AISP/PISP Payout data to initiate a payout.
      allOf:
      - $ref: '#/components/schemas/data_default'
      - type: object
        properties:
          type:
            type: string
            enum:
            - payout
          attributes:
            type: object
            required:
            - beneficiary_id
            - amount
            - reference
            properties:
              beneficiary_id:
                $ref: '#/components/schemas/uuid'
              amount:
                $ref: '#/components/schemas/positive_amount'
              reference:
                $ref: '#/components/schemas/fiat_reference'
    asset:
      description: The symbol/ticker of the crypto asset.
      type: string
      example: BTC
    beneficiary_corridor:
      type: string
      readOnly: true
      description: The beneficiary's payout corridor — the discriminator used on typed create. `digital` for crypto wallets; for fiat, the destination currency (e.g. `EUR`, `USD`, `COP`) or a `<CURRENCY>_<IDENTIFIER>` key for the multi-form rails (BRL PIX, HKD FPS). Read-only.
      enum:
      - digital
      - EUR
      - USD
      - COP
      - MXN
      - NGN
      - SGD
      - CNY
   

# --- truncated at 32 KB (58 KB total) ---
# Full source: https://raw.githubusercontent.com/api-evangelist/fipto/refs/heads/main/openapi/fipto-aisp-pisp-api-openapi.yml