Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

...

Awesome api app render macro
theme
authHeaderName
linksColor#0052cc
showInfotrue
allowSpecUrlLoadfalse
primaryColor#0052CC
schemaStyletable
methodGetColor#0065FF
authHeaderValue
methodPutColor#6554c0
generalThemeconfluence_light
allowTrytrue
layoutHeight800
allowAdvancedSearchfalse
codeBg#F4F5F7
methodHeadColor#ffab00
navHoverTextColor
showComponentstrue
allowServerSelectiontrue
textColor#172B4D
methodPatchColor#ffab00textColor#172B4D
navBgColor#FAFBFC
codeFg#172B4D
navTextColor#172B4D
fontSizedefault
sortEndpointsBymethod
usePathInNavBarfalse
navAccentColor#6554C0
methodDeleteColor#ff5630
headerColor#fff
allowAuthenticationfalseheaderColor#fff
bgColor#fff
allowSearchfalse
sortTagstruefalse
themelight
methodPostColor#36b37e
lightauthTypeNone
inlineCodeFg#6554C0
resourceContentTypejson
showHeaderfalse
allowSpecFileLoadfalse
inlineCodeBg#F4F5F7
renderStyleread
layoutcolumn
headingText
navItemSpacingdefault
infoDescriptionHeadingsInNavbartrue
specUrl
navHoverBgColor
resourceTypeCONTENT
openapi: 3.0.0
info:
  title: UAE FX API
  description: '## UAE Open Finance FX API Specification'
  version: v2.0-draft2
tags:
  - name: FX Quotes
    description: Operations to create foreign exchange quotes at a given LFI
  - name: Accounts
    description: Open an LFI account to complete an FX transaction
paths:
  /accounts:
    post:
      operationId: CreateAccount_unsignedRequest_CreateAccount_signedRequest
      parameters:
        - $ref: '#/components/parameters/Authorization'
        - $ref: '#/components/parameters/x-customer-user-agent'
        - $ref: '#/components/parameters/x-fapi-auth-date'
        - $ref: '#/components/parameters/x-fapi-customer-ip-address'
        - $ref: '#/components/parameters/x-fapi-interaction-id'
      description: >-
        Create an Account based on data shared from the LFI. The response
        provides

        an account identifier that can be used to retrieve the account details
        when

        the provisioning process is complete.


        Invoking this operation is driven by the User sharing with the TPP
        whether they

        already hold an account with a given LFI. There is no expectation that
        the TPP

        will automatically discover whether an account at this stage in the
        design as

        this could compromise data being provided by LFI with the quote.
      summary: Create an account
      responses:
        '201':
          description: >-
            The request has succeeded and a new resource has been created as a
            result.
          headers:
            x-fapi-interaction-id:
              required: false
              description: An RFC4122 UID used as a correlation ID.
              schema:
                type: string
          content:
            application/json; charset=utf-8:
              schema:
                $ref: '#/components/schemas/AECreateAccountResponseBody1'
              examples:
                ReadAccountOpeningAwaitingPartyDataUnsignedResponse:
                  $ref: >-
                    #/components/examples/ReadAccountOpeningAwaitingPartyDataUnsignedResponse
                ReadAccountOpeningCreatedUnsignedResponse:
                  $ref: >-
                    #/components/examples/ReadAccountOpeningCreatedUnsignedResponse
            application/json:
              schema:
                $ref: '#/components/schemas/AECreateAccountResponseBody1'
              examples:
                ReadAccountOpeningAwaitingPartyDataUnsignedResponse:
                  $ref: >-
                    #/components/examples/ReadAccountOpeningAwaitingPartyDataUnsignedResponse
                ReadAccountOpeningCreatedUnsignedResponse:
                  $ref: >-
                    #/components/examples/ReadAccountOpeningCreatedUnsignedResponse
            application/jwt:
              schema:
                type: object
                properties:
                  iss:
                    type: string
                    description: >-
                      [https://www.rfc-editor.org/rfc/rfc7519#section-4.1.1](https://www.rfc-editor.org/rfc/rfc7519#section-4.1.1)
                  exp:
                    type: number
                    description: >-
                      [https://www.rfc-editor.org/rfc/rfc7519#section-4.1.4](https://www.rfc-editor.org/rfc/rfc7519#section-4.1.4)
                  nbf:
                    type: number
                    description: >-
                      [https://www.rfc-editor.org/rfc/rfc7519#section-4.1.5](https://www.rfc-editor.org/rfc/rfc7519#section-4.1.5)
                  aud:
                    type: array
                    items:
                      type: string
                    description: >-
                      [https://www.rfc-editor.org/rfc/rfc7519#section-4.1.3](https://www.rfc-editor.org/rfc/rfc7519#section-4.1.3)
                  iat:
                    type: number
                    description: >-
                      [https://www.rfc-editor.org/rfc/rfc7519#section-4.1.6](https://www.rfc-editor.org/rfc/rfc7519#section-4.1.6)
                  message:
                    $ref: '#/components/schemas/AECreateAccountResponseBody1'
                required:
                  - iss
                  - exp
                  - nbf
                  - message
                additionalProperties: false
              examples:
                ReadAccountOpeningAwaitingPartyDataSignedResponse:
                  $ref: >-
                    #/components/examples/ReadAccountOpeningAwaitingPartyDataSignedResponse
                ReadAccountOpeningCreatedSignedResponse:
                  $ref: >-
                    #/components/examples/ReadAccountOpeningCreatedSignedResponse
        '400':
          description: The server could not understand the request due to invalid syntax.
          headers:
            x-fapi-interaction-id:
              required: true
              description: An RFC4122 UID used as a correlation id.
              schema:
                type: string
          content:
            application/json; charset=utf-8:
              schema:
                $ref: '#/components/schemas/AEErrorResponse'
            application/json:
              schema:
                $ref: '#/components/schemas/AEErrorResponse'
        '401':
          description: Unauthorized
          headers:
            x-fapi-interaction-id:
              required: true
              description: An RFC4122 UID used as a correlation id.
              schema:
                type: string
        '403':
          description: Forbidden
          headers:
            x-fapi-interaction-id:
              required: true
              description: An RFC4122 UID used as a correlation id.
              schema:
                type: string
          content:
            application/json; charset=utf-8:
              schema:
                $ref: '#/components/schemas/AEErrorResponse'
            application/json:
              schema:
                $ref: '#/components/schemas/AEErrorResponse'
        '404':
          description: Not found
          headers:
            x-fapi-interaction-id:
              required: true
              description: An RFC4122 UID used as a correlation id.
              schema:
                type: string
        '405':
          description: Method Not Allowed
          headers:
            x-fapi-interaction-id:
              required: true
              description: An RFC4122 UID used as a correlation id.
              schema:
                type: string
        '406':
          description: Not Acceptable
          headers:
            x-fapi-interaction-id:
              required: true
              description: An RFC4122 UID used as a correlation id.
              schema:
                type: string
        '415':
          description: Unsupported Media Type
          headers:
            x-fapi-interaction-id:
              required: true
              description: An RFC4122 UID used as a correlation id.
              schema:
                type: string
        '429':
          description: Too Many Requests
          headers:
            x-fapi-interaction-id:
              required: true
              description: An RFC4122 UID used as a correlation id.
              schema:
                type: string
            retry-after:
              required: true
              description: Number in seconds to wait
              schema:
                type: integer
                format: int64
        '500':
          description: Internal Server Error
          headers:
            x-fapi-interaction-id:
              required: true
              description: An RFC4122 UID used as a correlation id.
              schema:
                type: string
          content:
            application/json; charset=utf-8:
              schema:
                $ref: '#/components/schemas/AEErrorResponse'
            application/json:
              schema:
                $ref: '#/components/schemas/AEErrorResponse'
      tags:
        - Accounts
      requestBody:
        required: true
        content:
          application/json; charset=utf-8:
            schema:
              $ref: '#/components/schemas/AECreateAccountRequestBody1'
            examples:
              CreateAccountUnsignedRequest:
                $ref: '#/components/examples/CreateAccountUnsignedRequest'
          application/json:
            schema:
              $ref: '#/components/schemas/AECreateAccountRequestBody1'
            examples:
              CreateAccountUnsignedRequest:
                $ref: '#/components/examples/CreateAccountUnsignedRequest'
          application/jwt:
            schema:
              type: object
              properties:
                iss:
                  type: string
                  description: >-
                    [https://www.rfc-editor.org/rfc/rfc7519#section-4.1.1](https://www.rfc-editor.org/rfc/rfc7519#section-4.1.1)
                exp:
                  type: number
                  description: >-
                    [https://www.rfc-editor.org/rfc/rfc7519#section-4.1.4](https://www.rfc-editor.org/rfc/rfc7519#section-4.1.4)
                nbf:
                  type: number
                  description: >-
                    [https://www.rfc-editor.org/rfc/rfc7519#section-4.1.5](https://www.rfc-editor.org/rfc/rfc7519#section-4.1.5)
                aud:
                  type: array
                  items:
                    type: string
                  description: >-
                    [https://www.rfc-editor.org/rfc/rfc7519#section-4.1.3](https://www.rfc-editor.org/rfc/rfc7519#section-4.1.3)
                iat:
                  type: number
                  description: >-
                    [https://www.rfc-editor.org/rfc/rfc7519#section-4.1.6](https://www.rfc-editor.org/rfc/rfc7519#section-4.1.6)
                message:
                  $ref: '#/components/schemas/AECreateAccountRequestBody1'
              required:
                - iss
                - exp
                - nbf
                - message
              additionalProperties: false
            examples:
              CreateAccountSignedRequest:
                $ref: '#/components/examples/CreateAccountSignedRequest'
        description: >-
          Request body for creating a new account Signed request body for
          creating a new account
      security:
        - TPPOAuth2Security:
            - fx
  /accounts/{AccountId}:
    get:
      operationId: Account_read
      summary: Retrieve an account
      description: >-
        Retrieve an Account based on a given account identifier. The response
        provides 

        both the status of the account and, when opened, the account details
        required

        by the TPP to complete an FX transaction.
      parameters:
        - $ref: '#/components/parameters/Authorization'
        - $ref: '#/components/parameters/x-customer-user-agent'
        - $ref: '#/components/parameters/x-fapi-auth-date'
        - $ref: '#/components/parameters/x-fapi-customer-ip-address'
        - $ref: '#/components/parameters/x-fapi-interaction-id'
        - $ref: '#/components/parameters/AccountId'
      responses:
        '200':
          description: The request has succeeded.
          headers:
            x-fapi-interaction-id:
              required: false
              description: An RFC4122 UID used as a correlation ID.
              schema:
                type: string
          content:
            application/json; charset=utf-8:
              schema:
                $ref: '#/components/schemas/AEReadAccountResponseBody1'
              examples:
                ReadAccountOpeningAwaitingPartyDataUnsignedResponse:
                  $ref: >-
                    #/components/examples/ReadAccountOpeningAwaitingPartyDataUnsignedResponse
                ReadAccountOpeningCreatedUnsignedResponse:
                  $ref: >-
                    #/components/examples/ReadAccountOpeningCreatedUnsignedResponse
            application/json:
              schema:
                $ref: '#/components/schemas/AEReadAccountResponseBody1'
              examples:
                ReadAccountOpeningAwaitingPartyDataUnsignedResponse:
                  $ref: >-
                    #/components/examples/ReadAccountOpeningAwaitingPartyDataUnsignedResponse
                ReadAccountOpeningCreatedUnsignedResponse:
                  $ref: >-
                    #/components/examples/ReadAccountOpeningCreatedUnsignedResponse
            application/jwt:
              schema:
                type: object
                properties:
                  iss:
                    type: string
                    description: >-
                      [https://www.rfc-editor.org/rfc/rfc7519#section-4.1.1](https://www.rfc-editor.org/rfc/rfc7519#section-4.1.1)
                  exp:
                    type: number
                    description: >-
                      [https://www.rfc-editor.org/rfc/rfc7519#section-4.1.4](https://www.rfc-editor.org/rfc/rfc7519#section-4.1.4)
                  nbf:
                    type: number
                    description: >-
                      [https://www.rfc-editor.org/rfc/rfc7519#section-4.1.5](https://www.rfc-editor.org/rfc/rfc7519#section-4.1.5)
                  aud:
                    type: array
                    items:
                      type: string
                    description: >-
                      [https://www.rfc-editor.org/rfc/rfc7519#section-4.1.3](https://www.rfc-editor.org/rfc/rfc7519#section-4.1.3)
                  iat:
                    type: number
                    description: >-
                      [https://www.rfc-editor.org/rfc/rfc7519#section-4.1.6](https://www.rfc-editor.org/rfc/rfc7519#section-4.1.6)
                  message:
                    $ref: '#/components/schemas/AEReadAccountResponseBody1'
                required:
                  - iss
                  - exp
                  - nbf
                  - message
                additionalProperties: false
              examples:
                ReadAccountOpeningAwaitingPartyDataSignedResponse:
                  $ref: >-
                    #/components/examples/ReadAccountOpeningAwaitingPartyDataSignedResponse
                ReadAccountOpeningCreatedSignedResponse:
                  $ref: >-
                    #/components/examples/ReadAccountOpeningCreatedSignedResponse
        '400':
          description: The server could not understand the request due to invalid syntax.
          headers:
            x-fapi-interaction-id:
              required: true
              description: An RFC4122 UID used as a correlation id.
              schema:
                type: string
          content:
            application/json; charset=utf-8:
              schema:
                $ref: '#/components/schemas/AEErrorResponse'
            application/json:
              schema:
                $ref: '#/components/schemas/AEErrorResponse'
        '401':
          description: Unauthorized
          headers:
            x-fapi-interaction-id:
              required: true
              description: An RFC4122 UID used as a correlation id.
              schema:
                type: string
        '403':
          description: Forbidden
          headers:
            x-fapi-interaction-id:
              required: true
              description: An RFC4122 UID used as a correlation id.
              schema:
                type: string
          content:
            application/json; charset=utf-8:
              schema:
                $ref: '#/components/schemas/AEErrorResponse'
            application/json:
              schema:
                $ref: '#/components/schemas/AEErrorResponse'
        '404':
          description: Not found
          headers:
            x-fapi-interaction-id:
              required: true
              description: An RFC4122 UID used as a correlation id.
              schema:
                type: string
        '405':
          description: Method Not Allowed
          headers:
            x-fapi-interaction-id:
              required: true
              description: An RFC4122 UID used as a correlation id.
              schema:
                type: string
        '406':
          description: Not Acceptable
          headers:
            x-fapi-interaction-id:
              required: true
              description: An RFC4122 UID used as a correlation id.
              schema:
                type: string
        '415':
          description: Unsupported Media Type
          headers:
            x-fapi-interaction-id:
              required: true
              description: An RFC4122 UID used as a correlation id.
              schema:
                type: string
        '429':
          description: Too Many Requests
          headers:
            x-fapi-interaction-id:
              required: true
              description: An RFC4122 UID used as a correlation id.
              schema:
                type: string
            retry-after:
              required: true
              description: Number in seconds to wait
              schema:
                type: integer
                format: int64
        '500':
          description: Internal Server Error
          headers:
            x-fapi-interaction-id:
              required: true
              description: An RFC4122 UID used as a correlation id.
              schema:
                type: string
          content:
            application/json; charset=utf-8:
              schema:
                $ref: '#/components/schemas/AEErrorResponse'
            application/json:
              schema:
                $ref: '#/components/schemas/AEErrorResponse'
      tags:
        - Accounts
      security:
        - TPPOAuth2Security:
            - fx
  /fx-quotes:
    post:
      operationId: CreateFxQuote_unsignedRequest_CreateFxQuote_signedRequest
      parameters:
        - $ref: '#/components/parameters/Authorization'
        - $ref: '#/components/parameters/x-customer-user-agent'
        - $ref: '#/components/parameters/x-fapi-auth-date'
        - $ref: '#/components/parameters/x-fapi-customer-ip-address'
        - $ref: '#/components/parameters/x-fapi-interaction-id'
      description: >-
        Create an FX quote based on a given currency pair. The quote request
        must be 

        sent to all LFIs individually, with responses aggregated by the TPP to
        provide

        the User a choice of quotes across providers.


        The User may already have a relationship with a given LFI. The TPP can 

        therefore include party data in the request to help the LFI correlate
        the User

        with an existing account or relationship. Including party data is
        optional but

        will allow contractual or pre-agreed rates to be generated by the LFI to
        help

        provide an informed choice to the User.


        If a User selects a quote from an LFI that they do not have a
        relationship with

        the TPP will be able to use the Account Opening API to initiate the
        creation of

        a new account for User.
      summary: Create an FX quote
      responses:
        '201':
          description: >-
            The request has succeeded and a new resource has been created as a
            result.
          headers:
            x-fapi-interaction-id:
              required: false
              description: An RFC4122 UID used as a correlation ID.
              schema:
                type: string
          content:
            application/json; charset=utf-8:
              schema:
                $ref: '#/components/schemas/AECreateFxQuoteResponseBody1'
              examples:
                CreateFXQuoteUnsignedResponse:
                  $ref: '#/components/examples/CreateFXQuoteUnsignedResponse'
            application/json:
              schema:
                $ref: '#/components/schemas/AECreateFxQuoteResponseBody1'
              examples:
                CreateFXQuoteUnsignedResponse:
                  $ref: '#/components/examples/CreateFXQuoteUnsignedResponse'
            application/jwt:
              schema:
                type: object
                properties:
                  iss:
                    type: string
                    description: >-
                      [https://www.rfc-editor.org/rfc/rfc7519#section-4.1.1](https://www.rfc-editor.org/rfc/rfc7519#section-4.1.1)
                  exp:
                    type: number
                    description: >-
                      [https://www.rfc-editor.org/rfc/rfc7519#section-4.1.4](https://www.rfc-editor.org/rfc/rfc7519#section-4.1.4)
                  nbf:
                    type: number
                    description: >-
                      [https://www.rfc-editor.org/rfc/rfc7519#section-4.1.5](https://www.rfc-editor.org/rfc/rfc7519#section-4.1.5)
                  aud:
                    type: array
                    items:
                      type: string
                    description: >-
                      [https://www.rfc-editor.org/rfc/rfc7519#section-4.1.3](https://www.rfc-editor.org/rfc/rfc7519#section-4.1.3)
                  iat:
                    type: number
                    description: >-
                      [https://www.rfc-editor.org/rfc/rfc7519#section-4.1.6](https://www.rfc-editor.org/rfc/rfc7519#section-4.1.6)
                  message:
                    $ref: '#/components/schemas/AECreateFxQuoteResponseBody1'
                required:
                  - iss
                  - exp
                  - nbf
                  - message
                additionalProperties: false
              examples:
                CreateFXQuoteSignedResponse:
                  $ref: '#/components/examples/CreateFXQuoteSignedResponse'
        '400':
          description: The server could not understand the request due to invalid syntax.
          headers:
            x-fapi-interaction-id:
              required: true
              description: An RFC4122 UID used as a correlation id.
              schema:
                type: string
          content:
            application/json; charset=utf-8:
              schema:
                $ref: '#/components/schemas/AEErrorResponse'
            application/json:
              schema:
                $ref: '#/components/schemas/AEErrorResponse'
        '401':
          description: Unauthorized
          headers:
            x-fapi-interaction-id:
              required: true
              description: An RFC4122 UID used as a correlation id.
              schema:
                type: string
        '403':
          description: Forbidden
          headers:
            x-fapi-interaction-id:
              required: true
              description: An RFC4122 UID used as a correlation id.
              schema:
                type: string
          content:
            application/json; charset=utf-8:
              schema:
                $ref: '#/components/schemas/AEErrorResponse'
            application/json:
              schema:
                $ref: '#/components/schemas/AEErrorResponse'
        '404':
          description: Not found
          headers:
            x-fapi-interaction-id:
              required: true
              description: An RFC4122 UID used as a correlation id.
              schema:
                type: string
        '405':
          description: Method Not Allowed
          headers:
            x-fapi-interaction-id:
              required: true
              description: An RFC4122 UID used as a correlation id.
              schema:
                type: string
        '406':
          description: Not Acceptable
          headers:
            x-fapi-interaction-id:
              required: true
              description: An RFC4122 UID used as a correlation id.
              schema:
                type: string
        '415':
          description: Unsupported Media Type
          headers:
            x-fapi-interaction-id:
              required: true
              description: An RFC4122 UID used as a correlation id.
              schema:
                type: string
        '429':
          description: Too Many Requests
          headers:
            x-fapi-interaction-id:
              required: true
              description: An RFC4122 UID used as a correlation id.
              schema:
                type: string
            retry-after:
              required: true
              description: Number in seconds to wait
              schema:
                type: integer
                format: int64
        '500':
          description: Internal Server Error
          headers:
            x-fapi-interaction-id:
              required: true
              description: An RFC4122 UID used as a correlation id.
              schema:
                type: string
          content:
            application/json; charset=utf-8:
              schema:
                $ref: '#/components/schemas/AEErrorResponse'
            application/json:
              schema:
                $ref: '#/components/schemas/AEErrorResponse'
      tags:
        - FX Quotes
      requestBody:
        required: true
        content:
          application/json; charset=utf-8:
            schema:
              $ref: '#/components/schemas/AECreateFxQuoteRequestBody1'
            examples:
              CreateFXQuoteUnsignedRequest:
                $ref: '#/components/examples/CreateFXQuoteUnsignedRequest'
          application/json:
            schema:
              $ref: '#/components/schemas/AECreateFxQuoteRequestBody1'
            examples:
              CreateFXQuoteUnsignedRequest:
                $ref: '#/components/examples/CreateFXQuoteUnsignedRequest'
          application/jwt:
            schema:
              type: object
              properties:
                iss:
                  type: string
                  description: >-
                    [https://www.rfc-editor.org/rfc/rfc7519#section-4.1.1](https://www.rfc-editor.org/rfc/rfc7519#section-4.1.1)
                exp:
                  type: number
                  description: >-
                    [https://www.rfc-editor.org/rfc/rfc7519#section-4.1.4](https://www.rfc-editor.org/rfc/rfc7519#section-4.1.4)
                nbf:
                  type: number
                  description: >-
                    [https://www.rfc-editor.org/rfc/rfc7519#section-4.1.5](https://www.rfc-editor.org/rfc/rfc7519#section-4.1.5)
                aud:
                  type: array
                  items:
                    type: string
                  description: >-
                    [https://www.rfc-editor.org/rfc/rfc7519#section-4.1.3](https://www.rfc-editor.org/rfc/rfc7519#section-4.1.3)
                iat:
                  type: number
                  description: >-
                    [https://www.rfc-editor.org/rfc/rfc7519#section-4.1.6](https://www.rfc-editor.org/rfc/rfc7519#section-4.1.6)
                message:
                  $ref: '#/components/schemas/AECreateFxQuoteRequestBody1'
              required:
                - iss
                - exp
                - nbf
                - message
              additionalProperties: false
            examples:
              CreateFXQuoteSignedRequest:
                $ref: '#/components/examples/CreateFXQuoteSignedRequest'
        description: Unsigned FX Quote Request Signed FX Quote Request
      security:
        - TPPOAuth2Security:
            - fx
  /fx-quotes/{FxQuoteId}:
    get:
      operationId: FxQuote_read
      summary: Retrieve an FX quote
      description: >-
        Retrieve an FX quote based on a given quote identifier. The quote will
        include

        all the details submitted in the quote request together with the status
        of the

        quote.
      parameters:
        - $ref: '#/components/parameters/Authorization'
        - $ref: '#/components/parameters/x-customer-user-agent'
        - $ref: '#/components/parameters/x-fapi-auth-date'
        - $ref: '#/components/parameters/x-fapi-customer-ip-address'
        - $ref: '#/components/parameters/x-fapi-interaction-id'
        - $ref: '#/components/parameters/FxQuoteId'
      responses:
        '200':
          description: The request has succeeded.
          headers:
            x-fapi-interaction-id:
              required: false
              description: An RFC4122 UID used as a correlation ID.
              schema:
                type: string
          content:
            application/json; charset=utf-8:
              schema:
                $ref: '#/components/schemas/AEReadFxQuoteResponseBody1'
              examples:
                ReadFXQuoteUnsignedResponse:
                  $ref: '#/components/examples/ReadFXQuoteUnsignedResponse'
            application/json:
              schema:
                $ref: '#/components/schemas/AEReadFxQuoteResponseBody1'
              examples:
                ReadFXQuoteUnsignedResponse:
                  $ref: '#/components/examples/ReadFXQuoteUnsignedResponse'
            application/jwt:
              schema:
                type: object
                properties:
                  iss:
                    type: string
                    description: >-
                      [https://www.rfc-editor.org/rfc/rfc7519#section-4.1.1](https://www.rfc-editor.org/rfc/rfc7519#section-4.1.1)
                  exp:
                    type: number
                    description: >-
                      [https://www.rfc-editor.org/rfc/rfc7519#section-4.1.4](https://www.rfc-editor.org/rfc/rfc7519#section-4.1.4)
                  nbf:
                    type: number
                    description: >-
                      [https://www.rfc-editor.org/rfc/rfc7519#section-4.1.5](https://www.rfc-editor.org/rfc/rfc7519#section-4.1.5)
                  aud:
                    type: array
                    items:
                      type: string
                    description: >-
                      [https://www.rfc-editor.org/rfc/rfc7519#section-4.1.3](https://www.rfc-editor.org/rfc/rfc7519#section-4.1.3)
                  iat:
                    type: number
                    description: >-
                      [https://www.rfc-editor.org/rfc/rfc7519#section-4.1.6](https://www.rfc-editor.org/rfc/rfc7519#section-4.1.6)
                  message:
                    $ref: '#/components/schemas/AEReadFxQuoteResponseBody1'
                required:
                  - iss
                  - exp
                  - nbf
                  - message
                additionalProperties: false
              examples:
                ReadFXQuoteSignedResponse:
                  $ref: '#/components/examples/ReadFXQuoteSignedResponse'
        '400':
          description: The server could not understand the request due to invalid syntax.
          headers:
            x-fapi-interaction-id:
              required: true
              description: An RFC4122 UID used as a correlation id.
              schema:
                type: string
          content:
            application/json; charset=utf-8:
              schema:
                $ref: '#/components/schemas/AEErrorResponse'
            application/json:
              schema:
                $ref: '#/components/schemas/AEErrorResponse'
        '401':
          description: Unauthorized
          headers:
            x-fapi-interaction-id:
              required: true
              description: An RFC4122 UID used as a correlation id.
              schema:
                type: string
        '403':
          description: Forbidden
          headers:
            x-fapi-interaction-id:
              required: true
              description: An RFC4122 UID used as a correlation id.
              schema:
                type: string
          content:
            application/json; charset=utf-8:
              schema:
                $ref: '#/components/schemas/AEErrorResponse'
            application/json:
              schema:
                $ref: '#/components/schemas/AEErrorResponse'
        '404':
          description: Not found
          headers:
            x-fapi-interaction-id:
              required: true
              description: An RFC4122 UID used as a correlation id.
              schema:
                type: string
        '405':
          description: Method Not Allowed
          headers:
            x-fapi-interaction-id:
              required: true
              description: An RFC4122 UID used as a correlation id.
              schema:
                type: string
        '406':
          description: Not Acceptable
          headers:
            x-fapi-interaction-id:
              required: true
              description: An RFC4122 UID used as a correlation id.
              schema:
                type: string
        '415':
          description: Unsupported Media Type
          headers:
            x-fapi-interaction-id:
              required: true
              description: An RFC4122 UID used as a correlation id.
              schema:
                type: string
        '429':
          description: Too Many Requests
          headers:
            x-fapi-interaction-id:
              required: true
              description: An RFC4122 UID used as a correlation id.
              schema:
                type: string
            retry-after:
              required: true
              description: Number in seconds to wait
              schema:
                type: integer
                format: int64
        '500':
          description: Internal Server Error
          headers:
            x-fapi-interaction-id:
              required: true
              description: An RFC4122 UID used as a correlation id.
              schema:
                type: string
          content:
            application/json; charset=utf-8:
              schema:
                $ref: '#/components/schemas/AEErrorResponse'
            application/json:
              schema:
                $ref: '#/components/schemas/AEErrorResponse'
      tags:
        - FX Quotes
      security:
        - TPPOAuth2Security:
            - fx
    patch:
      operationId: FxQuote_unsignedRequest_FxQuote_signedRequest
      parameters:
        - $ref: '#/components/parameters/Authorization'
        - $ref: '#/components/parameters/x-customer-user-agent'
        - $ref: '#/components/parameters/x-fapi-auth-date'
        - $ref: '#/components/parameters/x-fapi-customer-ip-address'
        - $ref: '#/components/parameters/x-fapi-interaction-id'
        - $ref: '#/components/parameters/FxQuoteId'
      description: >-
        Update the status of a quote to Accepted as an indicator that the User
        has 

        accepted the quote and will proceed with the FX trade. Completion of the
        trade 

        is reliant on a funding account being available, which may require the
        creation 

        of a new account at the LFI to complete the trade. The TPP will invoke
        the 

        Account Opening API to initiate the creation of a new account for the
        User, 

        sending the party data they previously retrieved through Bank Data
        Sharing or

        that the User shared with the TPP manually.
            
        If the User does not have an account with the LFI they will indicate
        this to the 

        TPP, who will optionally invoke the Account Opening API to initiate the
        creation

        of a new account for the User, sending User agreed through an existing
        consent 

        to the LFI.
      summary: Update an FX quote status
      responses:
        '204':
          description: No content
          headers:
            x-fapi-interaction-id:
              required: false
              description: An RFC4122 UID used as a correlation ID.
              schema:
                type: string
        '400':
          description: The server could not understand the request due to invalid syntax.
          headers:
            x-fapi-interaction-id:
              required: true
              description: An RFC4122 UID used as a correlation id.
              schema:
                type: string
          content:
            application/json; charset=utf-8:
              schema:
                $ref: '#/components/schemas/AEErrorResponse'
            application/json:
              schema:
                $ref: '#/components/schemas/AEErrorResponse'
        '401':
          description: Unauthorized
          headers:
            x-fapi-interaction-id:
              required: true
              description: An RFC4122 UID used as a correlation id.
              schema:
                type: string
        '403':
          description: Forbidden
          headers:
            x-fapi-interaction-id:
              required: true
              description: An RFC4122 UID used as a correlation id.
              schema:
                type: string
          content:
            application/json; charset=utf-8:
              schema:
                $ref: '#/components/schemas/AEErrorResponse'
            application/json:
              schema:
                $ref: '#/components/schemas/AEErrorResponse'
        '404':
          description: Not found
          headers:
            x-fapi-interaction-id:
              required: true
              description: An RFC4122 UID used as a correlation id.
              schema:
                type: string
        '405':
          description: Method Not Allowed
          headers:
            x-fapi-interaction-id:
              required: true
              description: An RFC4122 UID used as a correlation id.
              schema:
                type: string
        '406':
          description: Not Acceptable
          headers:
            x-fapi-interaction-id:
              required: true
              description: An RFC4122 UID used as a correlation id.
              schema:
                type: string
        '415':
          description: Unsupported Media Type
          headers:
            x-fapi-interaction-id:
              required: true
              description: An RFC4122 UID used as a correlation id.
              schema:
                type: string
        '429':
          description: Too Many Requests
          headers:
            x-fapi-interaction-id:
              required: true
              description: An RFC4122 UID used as a correlation id.
              schema:
                type: string
            retry-after:
              required: true
              description: Number in seconds to wait
              schema:
                type: integer
                format: int64
        '500':
          description: Internal Server Error
          headers:
            x-fapi-interaction-id:
              required: true
              description: An RFC4122 UID used as a correlation id.
              schema:
                type: string
          content:
            application/json; charset=utf-8:
              schema:
                $ref: '#/components/schemas/AEErrorResponse'
            application/json:
              schema:
                $ref: '#/components/schemas/AEErrorResponse'
      tags:
        - FX Quotes
      requestBody:
        required: true
        content:
          application/json:
            schema:
              anyOf:
                - $ref: '#/components/schemas/AEUpdateFxQuoteRequestBody1'
                - type: object
                  properties:
                    iss:
                      type: string
                      description: >-
                        [https://www.rfc-editor.org/rfc/rfc7519#section-4.1.1](https://www.rfc-editor.org/rfc/rfc7519#section-4.1.1)
                    exp:
                      type: number
                      description: >-
                        [https://www.rfc-editor.org/rfc/rfc7519#section-4.1.4](https://www.rfc-editor.org/rfc/rfc7519#section-4.1.4)
                    nbf:
                      type: number
                      description: >-
                        [https://www.rfc-editor.org/rfc/rfc7519#section-4.1.5](https://www.rfc-editor.org/rfc/rfc7519#section-4.1.5)
                    aud:
                      type: array
                      items:
                        type: string
                      description: >-
                        [https://www.rfc-editor.org/rfc/rfc7519#section-4.1.3](https://www.rfc-editor.org/rfc/rfc7519#section-4.1.3)
                    iat:
                      type: number
                      description: >-
                        [https://www.rfc-editor.org/rfc/rfc7519#section-4.1.6](https://www.rfc-editor.org/rfc/rfc7519#section-4.1.6)
                    message:
                      $ref: '#/components/schemas/AEUpdateFxQuoteRequestBody1'
                  additionalProperties: false
        description: Unsigned FX Quote Request Signed FX Quote Request
      security:
        - TPPOAuth2Security:
            - fx
components:
  parameters:
    AccountId:
      name: AccountId
      in: path
      required: true
      description: Unique identifier for a given account opening instance
      schema:
        $ref: '#/components/schemas/AEAccountIdType'
    Authorization:
      name: authorization
      in: header
      required: true
      description: An Access Token as per https://tools.ietf.org/html/rfc6750
      schema:
        type: string
    FxQuoteId:
      name: FxQuoteId
      in: path
      required: true
      description: Unique identifier for a given FX quote
      schema:
        $ref: '#/components/schemas/FxQuoteIdType'
    x-customer-user-agent:
      name: x-customer-user-agent
      in: header
      required: false
      description: Indicates the user-agent that the User is using.
      schema:
        type: string
    x-fapi-auth-date:
      name: x-fapi-auth-date
      in: header
      required: false
      description: >-
        The time when the User last logged in with the TPP. 

        All dates in the HTTP headers are represented as RFC 7231 Full Dates. An
        example is below: 

        Sun, 10 Sep 2017 19:43:31 UTC
      schema:
        type: string
        pattern: >-
          ^(Mon|Tue|Wed|Thu|Fri|Sat|Sun), \d{2}
          (Jan|Feb|Mar|Apr|May|Jun|Jul|Aug|Sep|Oct|Nov|Dec) \d{4}
          \d{2}:\d{2}:\d{2} (GMT|UTC)$
    x-fapi-customer-ip-address:
      name: x-fapi-customer-ip-address
      in: header
      required: false
      description: The User's IP address if the User is currently logged in with the TPP.
      schema:
        type: string
    x-fapi-interaction-id:
      name: x-fapi-interaction-id
      in: header
      required: false
      description: An RFC4122 UID used as a correlation ID.
      schema:
        type: string
  schemas:
    AEAccount:
      type: object
      required:
        - AccountId
      properties:
        AccountId:
          $ref: '#/components/schemas/UAEAccountInformationAPI.AccountId'
        AccountHolderName:
          $ref: '#/components/schemas/UAEAccountInformationAPI.AccountHolderName'
        AccountHolderShortName:
          $ref: '#/components/schemas/UAEAccountInformationAPI.AccountHolderShortName'
        Status:
          $ref: '#/components/schemas/UAEAccountInformationAPI.AEAccountStatusCode'
        StatusUpdateDateTime:
          $ref: '#/components/schemas/UAEAccountInformationAPI.StatusUpdateDateTime'
        Currency:
          $ref: >-
            #/components/schemas/UAEAccountInformationAPI.ActiveOrHistoricCurrencyCode_0
        AccountType:
          $ref: >-
            #/components/schemas/UAEAccountInformationAPI.AEExternalAccountTypeCode
        AccountSubType:
          $ref: >-
            #/components/schemas/UAEAccountInformationAPI.AEExternalAccountSubTypeCode
        Description:
          $ref: '#/components/schemas/UAEAccountInformationAPI.Description_0'
        Nickname:
          $ref: '#/components/schemas/UAEAccountInformationAPI.Nickname'
        OpeningDate:
          $ref: '#/components/schemas/UAEAccountInformationAPI.OpeningDate'
        MaturityDate:
          $ref: '#/components/schemas/UAEAccountInformationAPI.MaturityDate'
        AccountIdentifiers:
          $ref: '#/components/schemas/AccountIdentifiers'
        Servicer:
          $ref: >-
            #/components/schemas/UAEAccountInformationAPI.AEBranchAndFinancialInstitutionIdentification5_0
        CreationDateTime:
          $ref: '#/components/schemas/CreationDateTime'
        OpeningStatus:
          $ref: '#/components/schemas/AEAccountOpeningStatusCodes'
        OpeningStatusUpdateDateTime:
          $ref: '#/components/schemas/OpeningStatusUpdateDateTime'
      description: >
        The account object, which includes the account properties and the status
        of the

        account opening process. The properties of the account share the same
        structure

        as the Bank Data Sharing API description, in an effort to maintain
        consistency 

        with other open finance APIs.
      additionalProperties: false
    AEAccountIdType:
      type: string
      minLength: 1
      maxLength: 40
      description: >-
        A unique and immutable identifier produced by the LFI to identify the
        account resource.This identifier has no meaning to the account owner
        (User 1).
    AEAccountOpeningDataSharingAudit:
      type: object
      required:
        - JSONPath
        - Action
      properties:
        JSONPath:
          type: string
          description: >-
            The JSONPath expression pointing to the data that has been changed
            in the original shared data payload.
        Action:
          type: string
          enum:
            - Added
            - Updated
            - Removed
          description: The action that was taken by the User
        OriginalValue:
          type: string
          description: >-
            The original value that was shared through Bank Data Sharing. Only
            applies if the Action is Updated or Removed.
      description: >-
        Provides an audit trail of changes made by a User to the data shared
        from the LFI through Bank Data Sharing.


        Each element in the array is a JSONPath expression that points to the
        data that has been changed and the original value supplied through data
        sharing.


        TPP must adhere to [RFC
        9535](https://datatracker.ietf.org/doc/html/rfc9535) when constructing
        JSON Path expressions. This value can be omitted when no changes are
        made by the User.
      example:
        JSONPath: $.party.PersonalInformation.Name
        Action: Updated
        OriginalValue: John Doe
      additionalProperties: false
    AEAccountOpeningLinks1:
      type: object
      required:
        - Self
      properties:
        Self:
          $ref: '#/components/schemas/Self'
        AccountOpeningRedirectUrl:
          type: string
          format: uri
          description: >-
            A redirect URL provided by the LFI to complete the FX trade. The TPP
            must redirect the User to this URL.

            The URL is optional as the LFI may have all required information
            through party data to complete account creation.
      additionalProperties: false
    AEAccountOpeningRequest:
      type: object
      required:
        - FxQuoteId
      properties:
        FxQuoteId:
          allOf:
            - $ref: '#/components/schemas/FxQuoteIdType'
          description: The unique identifier for the quote.
        Account:
          allOf:
            - $ref: '#/components/schemas/UAEAccountInformationAPI.AECashAccount6_1'
          description: >-
            Details of the bank account details shared from the LFI through a
            data sharing consent with the TPP.
        Party:
          $ref: '#/components/schemas/AEIdentityAssurance'
        DataSharingAudit:
          type: array
          items:
            $ref: '#/components/schemas/AEAccountOpeningDataSharingAudit'
          description: List of changes to account data shared with TPP made by User.
      description: >-
        Request body for creating a new account based on a quote and shared user
        data.


        PartyData is optional as LFI can support manual data entry by the User
        when they 

        use the LFI user interface.
      additionalProperties: false
    AEAccountOpeningStatusCodes:
      type: string
      enum:
        - AwaitingPartyData
        - Pending
        - Created
        - Rejected
      description: >
        The status of the opening of the account, based on progress at the LFI.


        The values are defined as follows:


        * AwaitingPartyData: The account is awaiting user data to be provided.

        * Pending: The account is pending opening, based on LFI processes being
        completed.

        * Created: The account has been successfully opened. The account details
        will be available in the response to the TPP.

        * Rejected: The account opening has been rejected by the LFI due to
        insufficient data or failure to validate the User data.
    AEActiveCurrencyAmount:
      type: object
      required:
        - Currency
        - Amount
      properties:
        Currency:
          $ref: '#/components/schemas/AEActiveOrHistoricCurrencyCode'
        Amount:
          $ref: '#/components/schemas/AEActiveOrHistoricAmount'
      description: >-
        The Currency and Amount relating to the Payment, Refund or Request to
        Pay
      additionalProperties: false
    AEActiveOrHistoricAmount:
      type: string
      pattern: ^\d{1,16}\.\d{2}$
      description: >-
        A number of monetary units specified in an active currency where the
        unit of currency is explicit and compliant with ISO 4217.
      example: '100.00'
    AEActiveOrHistoricCurrencyCode:
      type: string
      pattern: ^[A-Z]{3,3}$
      description: >-
        A 3 character alphabetic code allocated to a currency under an
        international currency identification scheme, as described in the latest
        edition of the international standard ISO 4217 'Codes for the
        representation of currencies and funds'.
      example: AED
    AEAddressAEAddressItem:
      type: array
      items:
        type: object
        properties:
          AddressType:
            $ref: '#/components/schemas/UAEPaymentAPI.AEAddressTypeCode'
          ShortAddress:
            $ref: '#/components/schemas/UAEPaymentAPI.AEShortAddress'
          UnitNumber:
            $ref: '#/components/schemas/UAEPaymentAPI.AEUnitNumber'
          FloorNumber:
            $ref: '#/components/schemas/UAEPaymentAPI.AEFloorNumber'
          BuildingNumber:
            $ref: '#/components/schemas/UAEPaymentAPI.AEBuildingNumber'
          StreetName:
            $ref: '#/components/schemas/UAEPaymentAPI.AEStreetName'
          SecondaryNumber:
            $ref: '#/components/schemas/UAEPaymentAPI.AESecondaryNumber'
          District:
            $ref: '#/components/schemas/UAEPaymentAPI.AEDistrict'
          PostalCode:
            $ref: '#/components/schemas/UAEPaymentAPI.AEPostalCode'
          POBox:
            $ref: '#/components/schemas/UAEPaymentAPI.AEPOBox'
          ZipCode:
            $ref: '#/components/schemas/UAEPaymentAPI.AEZipCode'
          City:
            $ref: '#/components/schemas/UAEPaymentAPI.AECity'
          Region:
            $ref: '#/components/schemas/UAEPaymentAPI.AERegion'
          Country:
            $ref: '#/components/schemas/UAEPaymentAPI.AECountryCode'
        required:
          - AddressType
          - Country
        additionalProperties: false
      minItems: 1
      description: >-
        (Array) Address information that locates and identifes a specific
        address, as defined by a national or international postal service."
    AECharges:
      type: object
      required:
        - ChargeBearer
        - Type
        - Amount
      properties:
        ChargeBearer:
          $ref: '#/components/schemas/UAEPaymentAPI.AEChargeBearerType1Code'
        Type:
          $ref: '#/components/schemas/UAEPaymentAPI.AEExternalPaymentChargeTypeCode'
        Amount:
          $ref: '#/components/schemas/AEActiveCurrencyAmount'
        Description:
          type: string
          minLength: 1
          maxLength: 140
          description: >-
            Description of the charge, for display to the User to help explain
            why the charge is levied.
      additionalProperties: false
    AECreateAccountRequestBody1:
      type: object
      required:
        - Data
      properties:
        Data:
          $ref: '#/components/schemas/AEAccountOpeningRequest'
      additionalProperties: false
    AECreateAccountResponseBody1:
      type: object
      required:
        - Data
        - Links
        - Meta
      properties:
        Data:
          $ref: '#/components/schemas/AEAccount'
        Links:
          $ref: '#/components/schemas/AEAccountOpeningLinks1'
        Meta:
          $ref: '#/components/schemas/Meta'
      additionalProperties: false
    AECreateFxQuoteRequestBody1:
      type: object
      required:
        - Data
      properties:
        Data:
          $ref: '#/components/schemas/AEFxQuoteRequestProperties'
      description: Request body for creating a new FX quote
      additionalProperties: false
    AECreateFxQuoteResponseBody1:
      type: object
      required:
        - Data
        - Links
        - Meta
      properties:
        Data:
          $ref: '#/components/schemas/AEFxQuoteProperties'
        Links:
          $ref: '#/components/schemas/LinksSelf'
        Meta:
          $ref: '#/components/schemas/Meta'
      additionalProperties: false
    AEError:
      type: object
      required:
        - Code
        - Message
      properties:
        Code:
          allOf:
            - $ref: '#/components/schemas/AEErrorCode'
          description: Low level textual error code, e.g., UAEOF.Field.Missing
        Message:
          type: string
          minLength: 1
          maxLength: 500
          description: >-
            A description of the error that occurred. e.g., 'A mandatory field
            isn't supplied' or 'RequestedExecutionDateTime must be in future'

            UAEOF doesn't standardise this field
        Path:
          type: string
          minLength: 1
          maxLength: 500
          description: >-
            Recommended but optional reference to the JSON Path of the field
            with error, e.g., Data.Initiation.InstructedAmount.Currency
        Url:
          type: string
          description: >-
            URL to help remediate the problem, or provide more information, or
            to API Reference, or help etc
      description: Error
      additionalProperties: false
    AEErrorCode:
      type: string
      enum:
        - AccessToken.Unauthorized
        - AccessToken.InvalidScope
        - Consent.Revoked
        - Consent.TransientAccountAccessFailure
        - Consent.AccountTemporarilyBlocked
        - Consent.PermanentAccountAccessFailure
        - Consent.Invalid
        - JWS.InvalidSignature
        - JWS.Malformed
        - JWS.InvalidClaim
        - JWS.InvalidHeader
        - GenericRecoverableError
        - GenericError
        - JWE.DecryptionError
        - JWE.InvalidHeader
        - Event.UnexpectedEvent
        - Body.InvalidFormat
        - Resource.InvalidResourceId
        - Resource.InvalidFormat
        - Consent.BusinessRuleViolation
    AEErrorResponse:
      type: object
      required:
        - Errors
      properties:
        Errors:
          type: array
          items:
            $ref: '#/components/schemas/AEError'
          minItems: 1
      description: >-
        An array of detail error codes, and messages, and URLs to documentation
        to help remediation.
      additionalProperties: false
    AEFxQuoteAEFxBalance:
      type: object
      required:
        - FxQuoteIdCreditDebitIndicator
        - BuyAmountType
        - SellAmountDateTime
        - Amount
UnitCurrency      properties:
    - QuotedCurrency   CreditDebitIndicator:
     - RateType    $ref: '#/components/schemas/UAEAccountInformationAPI.AECreditDebitCode_2'
   - ExchangeRate    Type:
    - UserIdentificationStatus     $ref: '#/components/schemas/UAEAccountInformationAPI.AEBalanceTypeCode'
  - ExpirationDateTime     DateTime:
   - Status      type: string
 - CreationDateTime        format: date-time
 StatusUpdateDateTime         propertiesdescription: >-
        FxQuoteId:    Indicates the date (and time) that the allOf:account balance was
          - $ref: '#/components/schemas/FxQuoteIdType'
          description: The unique identifier for the quote. checked.All dates in the JSON payloads are represented in ISO 8601
            date-time format. All BuyAmount:date-time fields in responses must include the
    allOf:        timezone. An example is below: 2017-04- $ref: '#/components/schemas/AETradeSideBuyAmount'05T10:43:07+00:00
        Amount:
      description: The amount of thetype: currencyobject
being bought.         SellAmountproperties:
          allOf  Amount:
             - $ref: '#/components/schemas/AETradeSideSellAmount' >-
           description:   The amount of the currency being sold. #/components/schemas/UAEAccountInformationAPI.AEActiveCurrencyAndAmount_SimpleType
            UnitCurrencyCurrency:
            allOf  $ref: >-
              - $ref: '#/components/schemas/AEActiveOrHistoricCurrencyCode'UAEAccountInformationAPI.ActiveOrHistoricCurrencyCode_1
          descriptionrequired:
>-            - CurrencyAmount
in which the rate of exchange is expressed in a currency   - Currency
        exchange. In thedescription: exampleAmount 1GBPof =money xxxCUR,of the unitcash currencybalance.
is GBP.         QuotedCurrencyadditionalProperties: false
         allOfCreditLine:
          type: array
- $ref: '#/components/schemas/AEActiveOrHistoricCurrencyCode'         items:
 description: >-          type: object
 Currency into which the base currency is converted, in a currency properties:
           exchange.   Included:
     RateType:           type: stringboolean
          enum:    Type:
        - Actual       type: string
    - Agreed           enum:
 - Indicative           description: Specifies the type used to- completeAvailable
the currency exchange.         ExchangeRate:       - Credit
  type: number           description: >-   - Emergency
        The factor used for conversion of an amount from one currency- toPre-Agreed
            another. This reflects the price at which- oneTemporary
currency was bought            Amount:
with another currency.         Charges:     type: object
    type: array           itemsproperties:
            $ref: '#/components/schemas/AECharges'     Amount:
     description: The charges associated with the request currency exchange.       $ref: >-
UserIdentificationStatus:           type: string           enum:#/components/schemas/UAEAccountInformationAPI.AEActiveCurrencyAndAmount_SimpleType
             - UserIdentified    Currency:
        - UserNotIdentified           $ref:  >-
AccountOpeningNotSupported           description: >-          #/components/schemas/UAEAccountInformationAPI.ActiveOrHistoricCurrencyCode_1
  Status of User identification based on supplied Party data. The     required:
       status code values are defined as follows:     - Amount
        * UserIdentified: The User has been identified by the LFI based- onCurrency
            the supplied Party data. additionalProperties: false
           * UserNotIdentifiedrequired:
The User has not been identified by the LFI      -   Included
   based on the supplied Party data. The User may be able to- openType
an             account at- theAmount
LFI when data requirements are fulfilled.       additionalProperties: false
     * AccountOpeningNotSupporteddescription: TheSet Userof haselements notused beento identifieddefine andthe balance details.
      additionalProperties: false
  the LFI doesAEFxFundingAccountProperties:
not support account opening based on thetype: suppliedobject
Party      properties:
      data.  CreditorAgent:
          $ref:  Please note that there is no status code associated with a User'#/components/schemas/AEFxQuoteCreditorAgent'
        Creditor:
          type: object
   logging into the LFI at this stage asproperties:
this will be completed after        Name:
          the quote has been acceptedtype: andstring
consent for the trade is granted         minLength: 1
  through Bank Service Initiation.         ExpirationDateTimemaxLength: 140
            allOfPostalAddress:
            -  $ref: '#/components/schemas/AEGulfStandardDateTime'AEFxQuoteAddressItem'
          additionalProperties: false
       description: The quote expiration data and time. CreditorAccount:
          $ref: '#/components/schemas/AEFxQuoteCreditorAccount'
        ContractIdentificationPaymentReference:
          type: string
          minLength: 1
          maxLength: 256140
          description: >-
            Unique andPayment unambiguous reference tofor the foreignremittance exchangeto contractfund the currency account
         agreed between the initiating party/creditor andfor completing the debtor agenttrade.
        Partydescription: >-
        Destination $ref: '#/components/schemas/AEIdentityAssurance'
        Status:account for funding the currency account to complete the
        trade.


 allOf:       Creditor Account properties may not be -available $ref: '#/components/schemas/AEFxQuoteStatusCodes'
 at quote if account
        description:opening >-is required so this is marked as optional.
     The statusadditionalProperties: offalse
the quote. The status codeAEFxQuote:
values are defined as   type: object
        followsrequired:
        - FxQuoteId
    * Pending: The quote has- beenBuyAmount
created at the LFI but the details  - SellAmount
        - haveUnitCurrency
yet to finalized by the LFI.   - QuotedCurrency
        - *RateType
Active: The quote has been finalized by the LFI- andExchangeRate
is available       - UserIdentificationStatus
    for the TPP to display- toExpirationDateTime
the User.       - Status
     * Accepted: The User- hasCreationDateTime
accepted the quote and the LFI has been - StatusUpdateDateTime
      properties:
   notified by the TPP.  FxQuoteId:
          allOf:
* Fulfilled: The quote has been fulfilled by the LFI through either - $ref: '#/components/schemas/FxQuoteIdType'
         deposit ofdescription: fundsThe orunique remittanceidentifier tofor athe given Creditorquote.
        BuyAmount:
    * Expired: The quote has expired and is no longer valid.allOf:
            - $ref: '#/components/schemas/AETradeSideBuyAmount'
 The LFI is responsible for updating the statue to Fulfilleddescription: andThe amount of the currency being bought.
      returning relevant informationSellAmount:
based on the finalized value.      allOf:
  FulfillmentAmount:          - type$ref: object'#/components/schemas/AETradeSideSellAmount'
          propertiesdescription: The amount of the currency being sold.
     BuyAmount:   UnitCurrency:
           allOf:
   
            - $ref: '#/components/schemas/AETradeSideBuyAmountAEActiveOrHistoricCurrencyCode'
              description: The>-
amount of the currency being bought.       Currency in which the rate of SellAmount:exchange is expressed in a currency
         allOf:   exchange. In the example 1GBP = xxxCUR, the unit currency is GBP.
  - $ref: '#/components/schemas/AETradeSideSellAmount'    QuotedCurrency:
          descriptionallOf:
The amount of the currency being sold.      - $ref: '#/components/schemas/AEActiveOrHistoricCurrencyCode'
    ExchangeRate:      description: >-
       type: number    Currency into which the base currency is converted, in a currency
description: >-           exchange.
     The factor used forRateType:
conversion of an amount from one currency to   type: string
          enum:
 another. This reflects the price at which one currency was  - Actual
            - boughtAgreed
with another currency.          - required:Indicative
          description: Specifies -the BuyAmounttype used to complete the currency exchange.
      - SellAmount ExchangeRate:
          type: - ExchangeRatenumber
          description: >-
            The fulfillment valuefactor used for conversion of thean quote,amount basedfrom theone finalcurrency executionto
of the           another. This tradereflects by the LFI.price at which one currency was bought
        This value is only providedwith whenanother thecurrency.
quote status is Fulfilled and    UserIdentificationStatus:
        the exchange ratetype: andstring
amount values differ from the original quote.    enum:
          Both the buy- andUserIdentified
sell side amounts are provided for ease of use.    - UserNotIdentified
     additionalProperties: false      - AccountOpeningNotSupported
 CreationDateTime:         description: >-
allOf:            Status -of $ref: '#/components/schemas/CreationDateTime'
     User identification based on supplied Party data. The
    description: The date and time when the  quotestatus wascode created.values are defined as follows:


  StatusUpdateDateTime:          * allOfUserIdentified: The User has been identified by the LFI based  on
 - $ref: '#/components/schemas/AEGulfStandardDateTime'          the description:supplied TheParty data.
and
time the  quote was last updated.      * additionalPropertiesUserNotIdentified: falseThe User has not been AEFxQuoteAddress:identified by the LFI
   type: array       items: based on the supplied Party data. The User type:may objectbe able to open an
    properties:        account at the AddressType:LFI when data requirements are Completed.

      $ref: '#/components/schemas/UAEPaymentAPI.AEAddressTypeCode'     * AccountOpeningNotSupported: The User has not ShortAddress:been identified and
          $ref: '#/components/schemas/UAEPaymentAPI.AEShortAddress'
          UnitNumber:
 the LFI does not support account opening based on the supplied Party
           $ref: '#/components/schemas/UAEPaymentAPI.AEUnitNumber' data.


        FloorNumber:    Please note that there is no status code associated $ref: '#/components/schemas/UAEPaymentAPI.AEFloorNumber'
with a User
         BuildingNumber:   logging into the LFI at this stage as this will $ref: '#/components/schemas/UAEPaymentAPI.AEBuildingNumber'be completed after
            the quote has been accepted and  StreetName:
 consent for the trade is granted
          $ref: '#/components/schemas/UAEPaymentAPI.AEStreetName'
    through Bank Service Initiation.
      SecondaryNumber:  Charges:
          $reftype: '#/components/schemas/UAEPaymentAPI.AESecondaryNumber'array
          Districtitems:
            $ref: '#/components/schemas/UAEPaymentAPI.AEDistrictAECharges'
          PostalCodedescription: The charges associated with the request currency exchange.
        FundingAccount:
          $ref: '#/components/schemas/UAEPaymentAPI.AEPostalCode'AEFxFundingAccountProperties'
        FundingAccountBalance:
          POBoxallOf:
            - $ref: '#/components/schemas/UAEPaymentAPI.AEPOBoxAEFxBalance'
          ZipCodedescription: >-
            $ref: '#/components/schemas/UAEPaymentAPI.AEZipCode'
          City:The balance of the funding account, if available. This will only be
            provided if the $ref: '#/components/schemas/UAEPaymentAPI.AECity'
 value of `UserIdentificationStatus` is
        Region:    `UserIdentified`.
        $refExpirationDateTime:
'#/components/schemas/UAEPaymentAPI.AERegion'          allOf:
Country:            - $ref: '#/components/schemas/UAEPaymentAPI.AECountryCodeAEGulfStandardDateTime'
        required:  description: The quote expiration data and time.
  - AddressType     ContractIdentification:
     - Country    type: string
   additionalProperties: false       minItemsminLength: 1
      description: >-   maxLength: 256
     (Array) Address information that locates anddescription: identifes>-
a specific         address, as definedUnique byand aunambiguous nationalreference orto internationalthe postalforeign service."exchange contract
   AEFxQuoteCreditorAccount:       type: object agreed between the initiating party/creditor and required:the debtor agent.
      - SchemeName Party:
       - Identification  $ref: '#/components/schemas/AEIdentityAssurance'
     - Name  Status:
    properties:      allOf:
  SchemeName:          - $ref: >-
            '#/components/schemas/UAEPaymentAPI.AECreditorExternalAccountIdentificationCodeAEFxQuoteStatusCodes'
          Identificationdescription: >-
         $ref: '#/components/schemas/UAEPaymentAPI.AEIdentification'
        Name:
     The status of the quote. The status code values are defined as
       $ref: '#/components/schemas/UAEPaymentAPI.AEName'    follows:


  TradingName:          * $refPending: '#/components/schemas/UAEPaymentAPI.AETradingName'
      description: >-
 The quote has been created at the LFI but the details
      Unambiguous identification of the account of thehave creditoryet to whichfinalized aby the LFI.

     credit entry will be posted.   * Active: The quote additionalProperties:has falsebeen finalized by the LFI AEFxQuoteCreditorAgent:and is available
    type: object       required:for the TPP to display to the User.

 - SchemeName         - Identification* Accepted: The User has accepted the properties:quote and the LFI has been
   SchemeName:         notified by type:the stringTPP.

         enum:   * Completed: The quote has been Completed by the LFI -through BICFIeither
            -deposit Otherof funds or remittance to a given Creditor.

  description: >-         * Expired: The quote Refershas toexpired theand Identificationis schemeno forlonger uniquelyvalid.
identifying
the
            Agent.The LFI is responsible for updating the statue to Completed and
    * BICFI: The BIC/SWIFT Code    returning relevant information based on the finalized value.
  * Other: The ID; A Country CodeFulfillmentAmount:
followed by a Bank Code (4 character    type: object
       code). The full listproperties:
of LFI names and 6 digits IDs are as follows:   BuyAmount:
     Identification:         allOf:
 type: string           description: The Agent is- the Country Code followed by a Bank Code"$ref: '#/components/schemas/AETradeSideBuyAmount'
              Namedescription: The amount of the currency being bought.
   type: string        SellAmount:
  minLength: 1           maxLengthallOf:
140           description: >-    - $ref: '#/components/schemas/AETradeSideSellAmount'
      Name by which an agent is known and whichdescription: is usually used toThe amount of the currency being sold.
            ExchangeRate:
identify that agent.         PostalAddress:   type: number
      $ref: '#/components/schemas/AEAddress'       description: >-
Refers to the Financial Institution.       additionalProperties: false    The AEFxQuoteProperties:factor used for conversion of an amount type:from objectone currency to
    required:         - FxQuoteId  another. This reflects the price at which -one BuyAmountcurrency was
       - SellAmount        bought -with UnitCurrencyanother currency.
       - QuotedCurrency  required:
      - RateType     - BuyAmount
  - ExchangeRate         - UserIdentificationStatusSellAmount
        - ExpirationDateTime   -  ExchangeRate
 properties:         FxQuoteIddescription: >-
         allOf:   The fulfillment value of the quote, based the completed execution -of
$ref: '#/components/schemas/FxQuoteIdType'           description:the Thetrade unique identifierby for the quoteLFI.


      BuyAmount:      This value is only provided allOf:when the quote status is Completed and
      - $ref: '#/components/schemas/AETradeSideBuyAmount'    the exchange rate and amount values differ description:from Thethe amountoriginal ofquote.
the
currency
being bought.         SellAmount:  Both the buy and sell side amounts are provided allOf:for ease of use.
         - $refadditionalProperties: '#/components/schemas/AETradeSideSellAmount'false
        CreationDateTime:
 description: The amount of the currency being sold.
        UnitCurrency:
          allOf:
            - $ref: '#/components/schemas/AEActiveOrHistoricCurrencyCodeCreationDateTime'
          description: >-The date and time when the  quote was created.
   Currency in which the rate ofStatusUpdateDateTime:
exchange is expressed in a currency     allOf:
       exchange. In the example 1GBP =- xxxCUR, the unit currency is GBP.$ref: '#/components/schemas/AEGulfStandardDateTime'
            QuotedCurrencydescription: The data and time the  quote was last updated.
allOf:      additionalProperties: false
     - $refAEFxQuoteAddressItem:
'#/components/schemas/AEActiveOrHistoricCurrencyCode'      type: array
   description: >-  items:
        type: object
Currency into which the base currency is converted, inproperties:
a currency         AddressType:
   exchange.         RateType$ref: '#/components/schemas/UAEPaymentAPI.AEAddressTypeCode'
          typeShortAddress:
 string           enum:$ref: '#/components/schemas/UAEPaymentAPI.AEShortAddress'
          UnitNumber:
 -    Actual       $ref: '#/components/schemas/UAEPaymentAPI.AEUnitNumber'
    - Agreed     FloorNumber:
       - Indicative    $ref: '#/components/schemas/UAEPaymentAPI.AEFloorNumber'
     description: Specifies the type used toBuildingNumber:
complete the currency exchange.         ExchangeRate$ref: '#/components/schemas/UAEPaymentAPI.AEBuildingNumber'
         type StreetName:
number           description $ref: >-'#/components/schemas/UAEPaymentAPI.AEStreetName'
          SecondaryNumber:
 The factor used for conversion of an amount from one currency to
$ref: '#/components/schemas/UAEPaymentAPI.AESecondaryNumber'
          District:
another. This reflects the price at which one currency was bought  $ref: '#/components/schemas/UAEPaymentAPI.AEDistrict'
         with anotherPostalCode:
currency.         Charges:           type: array$ref: '#/components/schemas/UAEPaymentAPI.AEPostalCode'
          itemsPOBox:
            $ref: '#/components/schemas/AEChargesUAEPaymentAPI.AEPOBox'
          descriptionZipCode:
The charges associated with the request currency exchange.     $ref: '#/components/schemas/UAEPaymentAPI.AEZipCode'
  UserIdentificationStatus:        City:
  type: string           enum$ref: '#/components/schemas/UAEPaymentAPI.AECity'
          Region:
- UserIdentified           $ref:  - UserNotIdentified'#/components/schemas/UAEPaymentAPI.AERegion'
          Country:
   - AccountOpeningNotSupported        $ref: '#/components/schemas/UAEPaymentAPI.AECountryCode'
 description: >-      required:
      Status of User identification based- onAddressType
supplied Party data. The       - Country
    status code values are defined as followsadditionalProperties: false
      minItems: 1
     * UserIdentifieddescription: The>-
User has been identified by the LFI based on(Array) Address information that locates and identifes a specific
    the supplied Party data. address, as defined by a national or international postal service."
   * UserNotIdentifiedAEFxQuoteCreditorAccount:
 The User has not been identifiedtype: byobject
the LFI     required:
       based on- theSchemeName
supplied Party data. The User may be able to- openIdentification
an        - Name
   account at the LFIproperties:
when data requirements are fulfilled.    SchemeName:
         * AccountOpeningNotSupported$ref: The>-
User has not been identified and       #/components/schemas/UAEPaymentAPI.AECreditorExternalAccountIdentificationCode
      the LFI doesIdentification:
not support account opening based on the supplied Party  $ref: '#/components/schemas/UAEPaymentAPI.AEIdentification'
        Name:
data.          $ref: '#/components/schemas/UAEPaymentAPI.AEName'
   Please note that there is noTradingName:
status code associated with a User     $ref: '#/components/schemas/UAEPaymentAPI.AETradingName'
      loggingdescription: into>-
the LFI at this stage as this will beUnambiguous completedidentification afterof the account of the creditor to which a
    the quote has been acceptedcredit andentry consentwill forbe theposted.
trade is granted    additionalProperties: false
    AEFxQuoteCreditorAgent:
  through Bank Service Initiation. type: object
      ExpirationDateTimerequired:
        - SchemeName
 allOf:       - Identification
    -  $refproperties:
'#/components/schemas/AEGulfStandardDateTime'             descriptionSchemeName:
The quote expiration data and time.       additionalPropertiestype: falsestring
    AEFxQuoteRemittanceInformation:       typeenum:
object       required:     - BICFI
  - CreditorAccount       properties:  - Other
     CreditorAgent:      description: >-
   $ref: '#/components/schemas/AEFxQuoteCreditorAgent'        Refers Creditor:to the Identification scheme for uniquely identifying the
   type: object        Agent.


properties:            * NameBICFI: The BIC/SWIFT Code

          type: string * Other: The ID; A Country Code followed by a Bank Code (4 character
minLength: 1           code). The full list maxLength:of 140LFI names and 6 digits IDs are as follows:
    PostalAddress:    Identification:
          $reftype: '#/components/schemas/AEFxQuoteAddress'string
          additionalPropertiesdescription: falseThe Agent is the Country Code followed by a CreditorAccount:Bank Code"
         $refName:
'#/components/schemas/AEFxQuoteCreditorAccount'       description: >-  type: string
     Provides remittance information for the quote,minLength: to1
allow the LFI to       maxLength: 140
calculate charges accurately.        description: >-
 The CreditorAccount is required as this will contain the destination  Name by which an agent is known accountand forwhich theis remittance.usually Allused otherto
values are optional.           If the quote does include a remittance element then this data isidentify that agent.
        PostalAddress:
          $ref: '#/components/schemas/AEAddressItem'
      description: Refers to the Financial omittedInstitution.
      additionalProperties: false
    AEFxQuoteRequestPropertiesAEFxQuoteProperties:
      type: object
      required:
        - TradeTypeFxQuoteId
        - BuyCurrencyBuyAmount
        - SellCurrencySellAmount
        - Amount
UnitCurrency
     properties:   - QuotedCurrency
    TradeType:    - RateType
     type: string  - ExchangeRate
       enum: -   UserIdentificationStatus
        - SpotExpirationDateTime
          descriptionproperties:
The trade type. Only Spot is currently supported.         BuyCurrencyFxQuoteId:
          allOf:
            - $ref: '#/components/schemas/AEActiveOrHistoricCurrencyCodeFxQuoteIdType'
          description: >- The unique identifier for the quote.
        BuyAmount:
   The buy currency, expressed as a ISO 4217allOf:
three-character currency           -  code.$ref: '#/components/schemas/AETradeSideBuyAmount'
          example: USDdescription: The amount of the currency being bought.
        SellCurrencySellAmount:
          allOf:
            - $ref: '#/components/schemas/AEActiveOrHistoricCurrencyCodeAETradeSideSellAmount'
          description: >-The amount of the currency being sold.
      The sell currency,UnitCurrency:
expressed as a ISO 4217 three-character currency    allOf:
        code.    - $ref: '#/components/schemas/AEActiveOrHistoricCurrencyCode'
    example: AED     description: >-
  Amount:          Currency type:in objectwhich the rate of exchange is expressed in a currency
 properties:           exchange. In Type:the example 1GBP = xxxCUR, the unit currency is GBP.
     type: string  QuotedCurrency:
            enumallOf:
 
              - Buy
$ref: '#/components/schemas/AEActiveOrHistoricCurrencyCode'
          description: >-
   - Sell        Currency into which the base Amount:currency is converted, in a currency
         $ref: '#/components/schemas/AEActiveCurrencyAmount'  exchange.
        requiredRateType:
          type: string
- Type         enum:
   - Amount           description: >- Actual
           The requested- currencyAgreed
amount, qualified with the correct currency       - Indicative
    code and a buy/sell indicator.  description: Specifies the type used to complete the  additionalProperties: falsecurrency exchange.
        ContractIdentificationExchangeRate:
          type: stringnumber
          minLengthdescription: 1>-
          maxLength: 256 The factor used for conversion of an amount from one description:currency >-to
            Uniqueanother. and unambiguous reference toThis reflects the foreignprice exchangeat contractwhich one currency was bought
        agreed between the initiating party/creditor and thewith debtoranother agentcurrency.
        PartyUserIdentificationStatus:
          $reftype: '#/components/schemas/AEIdentityAssurance'string
        RemittanceInformation:  enum:
        $ref: '#/components/schemas/AEFxQuoteRemittanceInformation'   - UserIdentified
  description: >-         A- foreignUserNotIdentified
exchange request based on a given currency pair.     - AccountOpeningNotSupported
     The buy or sell side isdescription: based>-
on the Amount property, which is qualified      Status of User withidentification thebased currencyon codesupplied andParty a buy/sell indicator.data. The
           Buy andstatus sellcode currencyvalues isare alsodefined provided separately for easy of reference.as follows:


       additionalProperties: false    * AEFxQuoteStatusCodesUserIdentified: The User has been identified by type:the stringLFI based on
    enum:        the -supplied PendingParty data.

      - Active     * UserNotIdentified: The User -has Acceptednot been identified by the LFI
   - Fulfilled        based -on Expiredthe supplied Party data. The AEGulfStandardDateTime:User may be able to open an
type: string       pattern: .+\+04:00$   account at the LFI format: date-time
    AEIdentityAssurance:when data requirements are Completed.

       type: object    * AccountOpeningNotSupported: The required:User has not been identified and
   - Claims       properties: the LFI does not support account opening based Verification:on the supplied Party
       $ref: '#/components/schemas/AEVerifiedClaimVerification'    data.


  Claims:          Please $ref: '#/components/schemas/AEVerifiedClaims'
      description: >-
note that there is no status code associated with a User
       Verified identity assurance data and claims.logging Datainto canthe collectedLFI fromat this stage as this will be completed after
LFIs under Data Sharing consent or provided manually by the TPP using the quote has been accepted and consent  data collected from for the User.trade is granted
    example:        through Claims:Bank Service Initiation.
        IdentityTypeCharges:
Person           GivenNametype: Johnarray
          Surnameitems:
Doe       additionalProperties: false     AEReadAccountResponseBody1$ref:  '#/components/schemas/AECharges'
    type: object       requireddescription: The charges associated with the request currency exchange.
- Data         - Links
        - Meta
      properties:
        DataFundingAccount:
          $ref: '#/components/schemas/AEAccountAEFxFundingAccountProperties'
        LinksFundingAccountBalance:
          $refallOf:
'#/components/schemas/AEAccountOpeningLinks1'         Meta:           - $ref: '#/components/schemas/MetaAEFxBalance'
      additionalProperties: false     AEReadFxQuoteResponseBody1description: >-
     type: object      The required:balance of the funding account, if available. This will -only Databe
        - Links   provided if the value of `UserIdentificationStatus` -is
Meta       properties:     `UserIdentified`.
   Data:     ExpirationDateTime:
     $ref: '#/components/schemas/AEFxQuote'    allOf:
    Links:          - $ref: '#/components/schemas/LinksSelfAEGulfStandardDateTime'
          Metadescription: The quote expiration data and time.
    $ref: '#/components/schemas/Meta'
        additionalProperties: false
    AETradeSideBuyAmountAEFxQuoteRemittanceInformation:
      type: object
      required:
        - Currency
CreditorAccount
       - Amount
      properties:
        CurrencyCreditorAgent:
          $ref: '#/components/schemas/AEActiveOrHistoricCurrencyCodeAEFxQuoteCreditorAgent'
        AmountCreditor:
          $reftype: '#/components/schemas/AEActiveOrHistoricAmount'object
      description: >-   properties:
     The Currency and Amount relating to the Payment, Refund orName:
Request to         Pay    type: string
 additionalProperties: false     AETradeSideSellAmount:       typeminLength: object1
      required:        maxLength: -140
 Currency         - Amount PostalAddress:
     properties:         Currency:$ref: '#/components/schemas/AEFxQuoteAddressItem'
          $refadditionalProperties: '#/components/schemas/AEActiveOrHistoricCurrencyCode'false
        AmountCreditorAccount:
          $ref: '#/components/schemas/AEActiveOrHistoricAmountAEFxQuoteCreditorAccount'
      description: >-
        Provides Theremittance Currencyinformation andfor Amountthe relatingquote, to allow the Payment,LFI to
Refund or Request to     calculate charges accurately.

Pay
      additionalProperties: false The CreditorAccount is required AEUpdateFxQuoteRequestBody1:as this will contain the destination
 type: object      account properties:for the remittance. All other values are optional.

Data:
        If the type:quote objectdoes include a remittance element then this data is
  properties:      omitted.
      statusadditionalProperties: false
      AEFxQuoteRequestProperties:
      type: stringobject
      required:
       enum: - TradeType
        - BuyCurrency
    - Accepted   - SellCurrency
      additionalProperties: false - Amount
    additionalProperties: false properties:
   AEVerifiedBusinessClaims:     TradeType:
  type: object       requiredtype: string
       - IdentityType  enum:
      - BusinessName     - Spot
  - TradeLicenceNumber       propertiesdescription: The trade type. Only Spot is currently supported.
IdentityType:           typeBuyCurrency:
string           enumallOf:
            - Business
$ref: '#/components/schemas/AEActiveOrHistoricCurrencyCode'
       BusinessName:   description:  >-
     type: string      The buy currency, expressed as minLength:a 1ISO 4217 three-character currency
       maxLength: 256    code.
      description: Name of the business requesting the quote.example: USD
         TradeLicenceNumberSellCurrency:
          typeallOf:
string           description: Trade- License Number of the business requesting the quote.$ref: '#/components/schemas/AEActiveOrHistoricCurrencyCode'
          description: Claims>-
related to a business entity that holds a Trade License Number.  The sell currency, expressed as additionalProperties:a falseISO 4217 three-character currency
 AEVerifiedClaimVerification:       type: object   code.
   required:       example: AED
- TrustFramework       propertiesAmount:
         TrustFramework type: object
          $refproperties: '#/components/schemas/UAEAccountInformationAPI.TrustFrameworkCode'
            AssuranceLevelType:
          type: string   type: string
      description: >-       enum:
     Determines the assurance level associated with the User in the  - Buy
         respective VerifiedClaims. The value range depends on the- respectiveSell
            TrustFrameworkAmount:
value.              Assurance Level$ref: '#/components/schemas/AEActiveCurrencyAmount'
           [https://bitbucket.org/openid/ekyc-ida/wiki/identifiers](https://bitbucket.org/openid/ekyc-ida/wiki/identifiers)required:
        AssuranceProcess:    -  Type
    $ref: '#/components/schemas/UAEAccountInformationAPI.AssuranceProcess'        - Time:Amount
          description: >-
            RepresentingThe therequested datecurrency andamount, timequalified whenwith the identitycorrect verificationcurrency
            processcode tookand place. All dates in the JSON payloads are representeda buy/sell indicator.
          additionalProperties: false
     in ISO 8601 date-time format. All date-time fields in responses mustContractIdentification:
          type: string
       include the timezone. An example is below: 2017-04-05T10:43:07+00:00 minLength: 1
        VerificationProcess:           typemaxLength: string256
          description: >-
            Unique and unambiguous reference to the identityforeign verificationexchange processcontract
as performed           agreed  bybetween the OP. Used for identifying and retrieving details in case ofinitiating party/creditor and the debtor agent.
        Party:
       disputes or audits. Presence of this element might be required for$ref: '#/components/schemas/AEIdentityAssurance'
        RemittanceInformation:
         certain trust frameworks.$ref: '#/components/schemas/AEFxQuoteRemittanceInformation'
      description: >-
        A foreign exchange request based on a given currency pair. 


        The buy or sell side is based on the Amount property, which is qualified
        with the currency code and a buy/sell indicator.


        Buy and sell currency is also provided separately for easy of reference.
      additionalProperties: false
    AEFxQuoteStatusCodes:
      type: string
      enum:
        - Pending
        - Active
        - Accepted
        - Completed
        - Expired
    AEGulfStandardDateTime:
      type: string
      pattern: .+\+04:00$
      format: date-time
    AEIdentityAssurance:
      type: object
      required:
        - Claims
      properties:
        Verification:
          $ref: '#/components/schemas/AEVerifiedClaimVerification'
        Claims:
          $ref: '#/components/schemas/AEVerifiedClaims'
      description: >-
        Verified identity assurance data and claims. Data can collected from
        LFIs under Data Sharing consent or provided manually by the TPP using
        data collected from the User.
      example:
        Claims:
          IdentityType: Person
          GivenName: John
          Surname: Doe
      additionalProperties: false
    AEReadAccountResponseBody1:
      type: object
      required:
        - Data
        - Links
        - Meta
      properties:
        Data:
          $ref: '#/components/schemas/AEAccount'
        Links:
          $ref: '#/components/schemas/AEAccountOpeningLinks1'
        Meta:
          $ref: '#/components/schemas/Meta'
      additionalProperties: false
    AEReadFxQuoteResponseBody1:
      type: object
      required:
        - Data
        - Links
        - Meta
      properties:
        Data:
          $ref: '#/components/schemas/AEFxQuote'
        Links:
          $ref: '#/components/schemas/LinksSelf'
        Meta:
          $ref: '#/components/schemas/Meta'
      additionalProperties: false
    AETradeSideBuyAmount:
      type: object
      required:
        - Currency
        - Amount
      properties:
        Currency:
          $ref: '#/components/schemas/AEActiveOrHistoricCurrencyCode'
        Amount:
          $ref: '#/components/schemas/AEActiveOrHistoricAmount'
      description: >-
        The Currency and Amount relating to the Payment, Refund or Request to
        Pay
      additionalProperties: false
    AETradeSideSellAmount:
      type: object
      required:
        - Currency
        - Amount
      properties:
        Currency:
          $ref: '#/components/schemas/AEActiveOrHistoricCurrencyCode'
        Amount:
          $ref: '#/components/schemas/AEActiveOrHistoricAmount'
      description: >-
        The Currency and Amount relating to the Payment, Refund or Request to
        Pay
      additionalProperties: false
    AEUpdateFxQuoteRequestBody1:
      type: object
      properties:
        Data:
          type: object
          properties:
            status:
              type: string
              enum:
                - Accepted
          additionalProperties: false
      additionalProperties: false
    AEVerifiedBusinessClaims:
      type: object
      required:
        - IdentityType
        - BusinessName
        - TradeLicenceNumber
      properties:
        IdentityType:
          type: string
          enum:
            - Business
        BusinessName:
          type: string
          minLength: 1
          maxLength: 256
          description: Name of the business requesting the quote.
        TradeLicenceNumber:
          type: string
          description: Trade License Number of the business requesting the quote.
      description: Claims related to a business entity that holds a Trade License Number.
      additionalProperties: false
    AEVerifiedClaimVerification:
      type: object
      required:
        - TrustFramework
      properties:
        TrustFramework:
          $ref: '#/components/schemas/UAEAccountInformationAPI.TrustFrameworkCode'
        AssuranceLevel:
          type: string
          description: >-
            Determines the assurance level associated with the User in the
            respective VerifiedClaims. The value range depends on the respective
            TrustFramework value.

            Assurance Level:
            [https://bitbucket.org/openid/ekyc-ida/wiki/identifiers](https://bitbucket.org/openid/ekyc-ida/wiki/identifiers)
        AssuranceProcess:
          $ref: '#/components/schemas/UAEAccountInformationAPI.AssuranceProcess'
        Time:
          description: >-
            Representing the date and time when the identity verification
            process took place. All dates in the JSON payloads are represented
            in ISO 8601 date-time format. All date-time fields in responses must
            include the timezone. An example is below: 2017-04-05T10:43:07+00:00
        VerificationProcess:
          type: string
          description: >-
            Unique reference to the identity verification process as performed
            by the OP. Used for identifying and retrieving details in case of
            disputes or audits. Presence of this element might be required for
            certain trust frameworks.
        Evidence:
          description: >-
            The type of evidence allowed for providing verification.

            OpenID Connect for Identity Assurance 1.0:
            [https://openid.net/specs/openid-connect-4-identity-assurance-1_0.html#name-evidence-element](https://openid.net/specs/openid-connect-4-identity-assurance-1_0.html#name-evidence-element)
      description: >-
        Verification

        [https://openid.net/specs/openid-connect-4-identity-assurance-1_0.html#name-verification-element](https://openid.net/specs/openid-connect-4-identity-assurance-1_0.html#name-verification-element)
      additionalProperties: false
    AEVerifiedClaims:
      oneOf:
        - $ref: '#/components/schemas/AEVerifiedPersonClaims'
        - $ref: '#/components/schemas/AEVerifiedBusinessClaims'
      discriminator:
        propertyName: IdentityType
        mapping:
          Person: '#/components/schemas/AEVerifiedPersonClaims'
          Business: '#/components/schemas/AEVerifiedBusinessClaims'
    AEVerifiedPersonClaims:
      type: object
      required:
        - IdentityType
      properties:
        IdentityType:
          type: string
          enum:
            - Person
        FullName:
          type: string
          description: >-
            The full name of the person. Can be provided as an alternative to
            `GivenName` and `Surname` where only the full name is captured.
        GivenName:
          type: string
          description: >-
            Given name of the Party. Given name (also called forename) is used
            to differentiate from the surname or family name.
        Surname:
          type: string
          description: Surname of the Party
        MiddleName:
          type: string
          description: Middle name of the Party
        Nickname:
          type: string
          description: Nickname of the Party
        EmiratesId:
          type: string
          description: Emirates ID number of the Party
        EmiratesIdExpiryDate:
          type: string
          format: date
          description: Emirates ID card expiry date
        DateOfBirth:
          type: string
          format: date
          description: Date of birth of the Party
        SourceOfIncome:
          type: string
        Salary:
          type: number
        Nationality:
          type: string
        EvidenceResidentialAddress:
          description$ref: >-
            #/components/schemas/UAEAccountInformationAPI.AEPartyIdentityAddressClaim
  The  type of evidence allowed forMobileNumber:
providing verification.         type: string
   OpenID Connect for Identity Assurance 1.0Email:
          type:  [https://openid.net/specs/openid-connect-4-identity-assurance-1_0.html#name-evidence-element](https://openid.net/specs/openid-connect-4-identity-assurance-1_0.html#name-evidence-element)string
        descriptionMaritalStatus:
 >-         Verificationtype: string
        [https://openid.net/specs/openid-connect-4-identity-assurance-1_0.html#name-verification-element](https://openid.net/specs/openid-connect-4-identity-assurance-1_0.html#name-verification-element)Salutation:
       additionalProperties: false  type: string
 AEVerifiedClaims:       oneOfLanguage:
         - $reftype: '#/components/schemas/AEVerifiedPersonClaims' string
        EmployerName:
 - $ref: '#/components/schemas/AEVerifiedBusinessClaims'       discriminatortype: string
        propertyNameEmploymentSinceDate:
 IdentityType         mappingtype: string
          Personformat: '#/components/schemas/AEVerifiedPersonClaims' date
        PowerofAttorney:
    Business: '#/components/schemas/AEVerifiedBusinessClaims'     AEVerifiedPersonClaimstype: boolean
        typeSalaryTransfer:
 object         requiredtype: boolean
       - IdentityType Profession:
          propertiestype: string
        IdentityTypeUpdatedAt:
          type: string
          enumformat: time
      additionalProperties: false
   - PersonAccountIdentifiers:
        FullNametype: array
      items:
  type: string     type: object
    description: >-   properties:
         The fullSchemeName:
name of the person. Can be provided as an alternative to  $ref: >-
         `GivenName` and `Surname` where only the full name is captured. #/components/schemas/UAEAccountInformationAPI.AEExternalAccountIdentificationCode
          Identification:
 GivenName:           type$ref: string'#/components/schemas/UAEAccountInformationAPI.Identification_0'
          descriptionName:
>-             Given name of the Party. Given name (also called forename) is used$ref: '#/components/schemas/UAEAccountInformationAPI.Name_0'
        required:
          - SchemeName
    to differentiate from the surname or family- name.Identification
        SurnameadditionalProperties: false
    CreationDateTime:
      type: string
      pattern: .+\+04:00$
  description: Surname of the Partyformat: date-time
       MiddleNamedescription: The resource creation date and time.
    typeFxQuoteIdType:
string      type: string
   description: Middle name of theminLength: Party1
      maxLength: 128
Nickname:    LinksSelf:
      type: stringobject
      required:
   description: Nickname of the Party - Self
      EmiratesIdproperties:
          typeSelf:
string           description$ref: Emirates ID number of the Party
        EmiratesIdExpiryDate:'#/components/schemas/Self'
      description: Links relevant to the resource
      additionalProperties: false
    typeMeta: string
          formattype: date
   object
      description: EmiratesMetadata IDrelevant cardto expirythe dateresource
      additionalProperties: false
DateOfBirth:    OpeningStatusUpdateDateTime:
      type: string
      pattern: .+\+04:00$
  format: date   format: date-time
      description: DateThe ofdate birthand oftime the Partyopening status was last updated.
    SourceOfIncomeSelf:
 
        type: string
        Salaryformat: uri
      description: A link type:to numberthe current resource
      Nationality:
  UAEAccountInformationAPI.AEAccountStatusCode:
       type: string
        ResidentialAddressenum:
          $ref: >- Active
        - Inactive
 #/components/schemas/UAEAccountInformationAPI.AEPartyIdentityAddressClaim       - Dormant
MobileNumber:        - Unclaimed
 type: string      - Deceased
 Email:       - Suspended
  type: string     - Closed
  MaritalStatus:           typedescription: string>-
        Salutation:Specifies the status of account resource in code form.


type: string       *  LanguageActive: The account exist and is in an active state.

type:
string        * EmployerNameInactive: The account is deemed not active by the LFI. Please refer type:to
string        the
EmploymentSinceDate:
        [CBUAE
 type: string      Website](https://rulebook.centralbank.ae/en/rulebook/dormant-accounts-regulation)

   format: date    for qualification of Inactive status.
PowerofAttorney:

        * typeDormant: booleanPlease refer to the [CBUAE
    SalaryTransfer:    Website](https://rulebook.centralbank.ae/en/rulebook/dormant-accounts-regulation)

     type: boolean  for the definition of Dormant status.

Profession:
        *  typeUnclaimed: stringPlease refer to the [CBUAE
    UpdatedAt:    Website](https://rulebook.centralbank.ae/en/rulebook/dormant-accounts-regulation)

     type: string  for the definition of Unclaimed status.


 format: time      * additionalPropertiesDeceased: falseThe account holder has passed away.
AccountIdentifiers:

     type: array  * Suspended: The account has items:been temporarily deactivated by the LFI for
  type: object     reasons such as

properties:        suspicious activities or SchemeName:non-compliance with regulations. The account
        $ref:holder >-might

        be unable to access  #/components/schemas/UAEAccountInformationAPI.AEExternalAccountIdentificationCode
    funds or perform transactions until the bank's
     Identification:   requirements

        $ref: '#/components/schemas/UAEAccountInformationAPI.Identification_0'
    are met, and the suspension is lifted.


   Name:     * Closed: The account is closed
   $ref: '#/components/schemas/UAEAccountInformationAPI.NameAEActiveCurrencyAndAmount_0'SimpleType:
        requiredtype: string
      pattern: ^\\d{1,13}$|^\\d{1,13}\\.\\d{1,5}$
 - SchemeName    description: >-
     - Identification  A number of monetary units specified in additionalProperties:an falseactive currency where the
 CreationDateTime:       type:unit stringof currency is explicit and compliant with pattern:ISO 4217.+\+04:00$
      format: date-timeUAEAccountInformationAPI.AEBalanceTypeCode:
      descriptiontype: Thestring
resource creation date and time.  enum:
  FxQuoteIdType:      - type:ClosingAvailable
string       minLength: 1- ClosingBooked
     maxLength: 128  - ClosingCleared
 LinksSelf:       type:- objectExpected
      required:  - ForwardAvailable
     - Self  - Information
   properties:     - InterimAvailable
  Self:      - InterimBooked
   $ref: '#/components/schemas/Self'    - InterimCleared
 description: Links relevant to the resource  - OpeningAvailable
   additionalProperties: false    - Meta:OpeningBooked
      type: object - OpeningCleared
    description: Metadata relevant to the- resourcePreviouslyClosedBooked
      additionalPropertiesdescription: false>-
    OpeningStatusUpdateDateTime:    The type of type: string
balance for the account.

    pattern: .+\+04:00$   Encoded with allowable values formatof:
date-time
      description: The date* and'ClosingAvailable' time- theend openingof statusday wasbalance lastspecifying updated.the amount
   Self:     available to type:User string1 to withdraw or use.

 format: uri      * description: A link to the current resource
    UAEAccountInformationAPI.AEAccountStatusCode:'ClosingBooked' - end of day balance including value of payments for
       type: stringcheques or payments which have not been enum:cleared yet.

      - Active * 'ClosingCleared' - end of day balance including -value Inactiveof payments for
      - Dormant cheques or payments which have been cleared.

- Unclaimed       * 'Expected' - Deceasedintra day balance including value of payments for cheques
- Suspended       or payments -which Closedhave been cleared.

   description: >-    * 'ForwardAvailable' - intraday balance Specifiesspecifying the statusamount ofavailable
account resource in code form.    to User 1 to withdraw or use *considering Active:forward Thedated accountpayments existor andother
is in an active state.    intraday payments or cheques that will be *clearing Inactive:to Thethe account.
is deemed not active
by the LFI. Please refer to   * 'Information' - TBC.

 the       * 'InterimAvailable' - [CBUAEintraday balance specifying the amount available
   Website](https://rulebook.centralbank.ae/en/rulebook/dormant-accounts-regulation)     to User 1 to withdraw foror qualificationuse of(most Inactiveprobably status.
real-time.'InterimBooked' -
        intraday balance *including Dormant:value Pleaseof referpayments tofor thecheques [CBUAEor payments
       Website](https://rulebook.centralbank.ae/en/rulebook/dormant-accounts-regulation)

     which have not been cleared yet.

  for the definition of Dormant status. * 'InterimCleared' - intraday balance including value of payments for
* Unclaimed: Please refer to the [CBUAE  cheques or payments which have been cleared Website](https://rulebook.centralbank.ae/en/rulebook/dormant-accounts-regulation)(probably real-time).

        * for'OpeningAvailable' the- definitionstart of day Unclaimedbalance status.specifying the amount
        *available Deceased:to TheUser account1 holderto haswithdraw passedor awayuse.


        * Suspended: The account has been temporarily deactivated by the LFI for'OpeningBooked' - start of day balance including value of payments for
        cheques or payments which reasonshave not suchbeen ascleared yet.

       suspicious activities* or'OpeningCleared' non-compliance withstart regulations.of Theday accountbalance including value of payments
    holder might   for cheques or payments which have been cleared.
be
unable to access funds or perform transactions until the* bank'PreviouslyClosedBooked's -TBC.


     requirements   Note: LFIs support different types for presenting areaccount metbalance, andso
the suspension is lifted.     this list is used to support *different Closed:LFI Thesystems accountin isUAE.
closed
    UAEAccountInformationAPI.AEBranchAndFinancialInstitutionIdentification5_0:
      type: object
      required:
        - SchemeName
        - Identification
      properties:
        SchemeName:
          $ref: >-
            #/components/schemas/UAEAccountInformationAPI.AEExternalFinancialInstitutionIdentificationCode
        Identification:
          $ref: '#/components/schemas/UAEAccountInformationAPI.Identification_1'
      description: >-
        Party that manages the account on behalf of the account owner, that is
        manages the registration and booking of entries on the account,
        calculates balances on the account and provides information about the
        account.
      additionalProperties: false
    UAEAccountInformationAPI.AECashAccount6_1:
      type: object
      properties:
        SchemeName:
          $ref: >-
            #/components/schemas/UAEAccountInformationAPI.AEExternalAccountIdentificationCode
        Identification:
          $ref: '#/components/schemas/UAEAccountInformationAPI.Identification_0'
        Name:
          $ref: '#/components/schemas/UAEAccountInformationAPI.Name_0'
      description: >-
        Account details of the Debtor in case the transaction is a Credit
        transaction.


        These are optional because there are situations where this cannot be
        populated for the following Credit transactions

        - cash deposits (no creditor account/agent)

        - cheques and DDs may not have this information at least during the
        process of clearing and sometimes (e.g. for agency banks) may not be
 . for agency banks) may not be
        reconciled ever

        - some corner situations with international payments

        - for refunds with card payments  (instead merchant information fields
        should be populated)
      additionalProperties: false
    UAEAccountInformationAPI.AECreditDebitCode_2:
      type: string
      enum:
        - Credit
        - Debit
      reconcileddescription: ever>-
        Indicates -whether somethe cornerbalance situationsof withthe internationalaccount paymentsis a credit or a debit
    - for refunds with cardbalance. paymentsEncoded with (insteadallowable merchant information fields
  values: 'Credit', 'Debit' Usage: A zero
     should be populated) balance is considered to be a additionalProperties:credit falsebalance.
    UAEAccountInformationAPI.AEExternalAccountIdentificationCode:
      type: string
      enum:
        - IBAN
        - AccountNumber
      description: >-
        Name of the identification scheme for the account. Encoded with
        allowable values published in an external list.
    UAEAccountInformationAPI.AEExternalAccountSubTypeCode:
      type: string
      description: >-
        Specifies the sub type of account (product family group). Examples
        values include: CurrentAccount, Savings
      x-namespaced-enum:
        - CurrentAccount
        - Savings
    UAEAccountInformationAPI.AEExternalAccountTypeCode:
      type: string
      enum:
        - Retail
        - SME
        - Corporate
      description: Specifies the type of account (Retail, SME or Corporate).
    UAEAccountInformationAPI.AEExternalFinancialInstitutionIdentificationCode:
      type: string
      enum:
        - BICFI
        - Other
      description: >-
        * /accounts resource

        The name of the identification scheme for the LFI as the account
        services provider. Encoded with allowable value as published in an
        external list.


        * /beneficiaries resource

        Refers to the Financial Institution that manages the account on behalf
        of the Beneficiary party, managing registration, booking of entries on
        the account, calculating balances on the account and providing
        information about the account. This is the servicing Financial
        Institution of the Beneficiary account.


        * /scheduled-payments resource

        Refers to the identification scheme for uniquely identifying the
        Creditor Agent.


        * /standing-orders resource

        Refers to the identification scheme for uniquely identifying the
        Creditor Agent.


        * /transactions resource

        Refers to the identification scheme for uniquely identifying the
        Creditor Agent.
    UAEAccountInformationAPI.AEPartyIdentityAddressClaim:
      type: object
      required:
        - Formatted
        - StreetAddress
        - Locality
        - Region
        - PostalCode
        - Country
      properties:
        Formatted:
          type: string
          description: The address number and street claim that has been verified.
        StreetAddress:
          type: string
          description: The address street claim that has been verified.
        Locality:
          type: string
          description: >-
            The address locality (village, town, city etc) claim that has been
            verified.
        Region:
          type: string
          description: The address region claim that has been verified.
        PostalCode:
          $ref: '#/components/schemas/UAEAccountInformationAPI.PostalCode'
        Country:
          $ref: '#/components/schemas/UAEAccountInformationAPI.CountryCode'
      description: >-
        Address object as per OpenID Connect Core 1.0 Address Claim

        [https://openid.net/specs/openid-connect-core-1_0.html#AddressClaim](https://openid.net/specs/openid-connect-core-1_0.html#AddressClaim)
      additionalProperties: false
    UAEAccountInformationAPI.AccountHolderName:
      type: string
      description: >-
        * /accounts resource

        The Account Holder Name is the name or names of the Account owner(s)
        represented at the account level


        * /accounts/{AccountId} resource

        The Account Holder Name is the name or names of the Account owner(s)
        represented at the account level


        * /beneficiaries resource

        The Account Holder Name is the name or names of the Beneficiary account
        owner(s) represented at the account level, as displayed by the Creditor
        Agent's online channels and as provided by the Beneficiary to the User 1
        when adding the Beneficiary in the Beneficiary list.

        Note, the Account Holder Name is not the product name or the nickname of
        the account.


        * /scheduled-payments resource

        The Account Holder Name is the name or names of the Beneficiary account
        owner(s) represented at the account level, as displayed by the Creditor
        Agent's online channels and as provided by the Beneficiary to the User 1
        when adding the Beneficiary in the Beneficiary list.

        Note, the Account Holder Name is not the product name or the nickname of
        the account.


        * /standing-orders resource

        The Account Holder Name is the name or names of the Beneficiary account
        owner(s) represented at the account level, as displayed by the Creditor
        Agent's online channels and as provided by the Beneficiary to the User 1
        when adding the Beneficiary in the Beneficiary list.

        Note, the Account Holder Name is not the product name or the nickname of
        the account.
    UAEAccountInformationAPI.AccountHolderShortName:
      type: string
      description: |-
        * /accounts resource
        The Account holder nick name

        * /accounts/{AccountId} resource
        The Account holder nick name

        * /beneficiaries resource
        The Beneficiary account holder nick name

        * /scheduled-payments resource
        The Beneficiary account holder nick name

        * /standing-orders resource
        The Beneficiary account holder nick name
    UAEAccountInformationAPI.AccountId:
      type: string
      minLength: 1
      maxLength: 40
      description: >-
        A unique and immutable identifier produced by the LFI to identify the
        account resource.This identifier has no meaning to the account owner
        (User 1).
    UAEAccountInformationAPI.ActiveOrHistoricCurrencyCode_0:
      type: string
      pattern: ^[A-Z]{3,3}$
      description: >-
        Identification of the currency in which the account is held. A code
        allocated to a currency under an international currency identification
        scheme, as described in the latest edition of the international standard
        ISO 4217 'Codes for the representation of currencies and funds'.
    UAEAccountInformationAPI.ActiveOrHistoricCurrencyCode_1:
      type: string
      pattern: ^[A-Z]{3,3}$
      description: >-
        A 3 character alphabetic code allocated to a currency under an
        international currency identification scheme, as described in the latest
        edition of the international standard ISO 4217 'Codes for the
        representation of currencies and funds'.
    UAEAccountInformationAPI.AssuranceDetails:
      type: object
      required:
        - AssuranceType
        - AssuranceClassification
        - EvidenceRef
      properties:
        AssuranceType:
          type: string
          description: >-
            String denoting which part of the assurance_process the evidence
            fulfils
        AssuranceClassification:
          type: string
          description: >-
            String reflecting how the evidence has been classified or measured
            as required by the TrustFramework
        EvidenceRef:
          type: array
          items:
            $ref: '#/components/schemas/UAEAccountInformationAPI.EvidenceRef'
      description: Denoting the details about how the evidence complies with the policy
      additionalProperties: false
    UAEAccountInformationAPI.AssuranceProcess:
      type: object
      required:
        - Policy
        - Procedure
        - AssuranceDetails
      properties:
        Policy:
          type: string
          description: Representing the standard or policy that was followed.
        Procedure:
          type: string
          description: Representing a specific procedure from the policy that was followed.
        AssuranceDetails:
          type: array
          items:
            $ref: '#/components/schemas/UAEAccountInformationAPI.AssuranceDetails'
      description: >-
        Determines the assurance process that was followed. This reflects how
        the evidence meets the requirements of the TrustFramework and
        AssuranceLevel. The factual record of the evidence and the procedures
        followed are recorded in the evidence element, this element is used to
        cross reference the evidence to the AssuranceLevel followed

        OpenID Connect for Identity Assurance 1.0:
        [https://openid.net/specs/openid-connect-4-identity-assurance-1_0.html#name-verification-element](https://openid.net/specs/openid-connect-4-identity-assurance-1_0.html#name-verification-element)
      additionalProperties: false
    UAEAccountInformationAPI.CountryCode:
      type: object
      required:
        - CountryCode
      properties:
        CountryCode:
          type: string
          pattern: ^[A-Z]{2,2}$
          description: Nation with its own government, occupying a particular territory.
      additionalProperties: false
    UAEAccountInformationAPI.Description_0:
      type: string
      minLength: 1
      maxLength: 35
      description: Specifies the description of the account sub-type.
    UAEAccountInformationAPI.EvidenceMetadata:
      type: object
      required:
        - EvidenceClassification
      properties:
        EvidenceClassification:
          type: string
      description: >-
        Object indicating any meta data about the evidence that is required by
        the AssuranceProcess in order to demonstrate compliance with the
        TrustFramework. It has the following sub-elements
      additionalProperties: false
    UAEAccountInformationAPI.EvidenceRef:
      type: object
      required:
        - Txn
        - EvidenceMetadata
      properties:
        Txn:
          type: string
          description: Identifier referring to the txn used in the CheckDetails.
        EvidenceMetadata:
          $ref: '#/components/schemas/UAEAccountInformationAPI.EvidenceMetadata'
      description: Evidence being referred to
      additionalProperties: false
    UAEAccountInformationAPI.Identification_0:
      type: string
      minLength: 1
      maxLength: 400
      description: >-
        Identification for the account assigned by the LFI based on the Account
        Scheme Name. This identification is known by the User 1 account owner.
        For IBAN, refer to the ISO Standard 13616.
    UAEAccountInformationAPI.Identification_1:
      type: string
      minLength: 1
      maxLength: 35
      description: >-
        * /accounts resource

        Unique and unambiguous identification of the LFI as the account
        servicing institution for the Open Banking Services.


        * /beneficiaries resource

        Unique and unambiguous identification of the Creditor Agency as the
        servicing institution of the Beneficiary.


        * /scheduled-payments resource

        Unique and unambiguous identification of the LFI as the account
        servicing institution for the Open Banking Services.


        * /standing-orders resource

        Unique and unambiguous identification of the LFI as the account
        servicing institution for the Open Banking Services.


        * /transactions resource

        Unique and unambiguous identification of the LFI as the account
        servicing institution for the Open Banking Services.


        *  Notes:

        Based on the value of the field **SchemeName**, this entry may be :

        * BICFI: The BIC/SWIFT Code

        * Other: The ID; A Country Code followed by a Bank Code (4 character
        code).
    UAEAccountInformationAPI.MaturityDate:
      type: string
      format: date-time
      description: >-
        * Fixed Term Savings Account

        MaturityDate is the date on which the savings mature and the balance can
        be withdrawn by the User without penalty


        * All dates in the JSON payloads are represented in ISO 8601 date-time
        format. All date-time fields in responses must include the timezone. An
        example is: 2017-04-05T10:43:07+00:00
    UAEAccountInformationAPI.Name_0:
      type: string
      minLength: 1
      maxLength: 70
      description: >-
        The account name is the name or names of the User 1 account owner(s)
        represented at an account level, as displayed by the LFI's online
        channels. Note: The account name is not the product name or the nickname
        of the account.
    UAEAccountInformationAPI.Nickname:
      type: string
      minLength: 1
      maxLength: 70
      description: >-
        The nickname of the account, assigned by User 1 to provide an additional
        and easier means of identification of the account at the LFI.
    UAEAccountInformationAPI.OpeningDate:
      type: string
      format: date-time
      description: >-
        Date on which the account and its related basic services by LFI started
        to be operational for User 1. All dates in the JSON payloads are
        represented in ISO 8601 date-time format. All date-time fields in
        responses must include the timezone. An example is below:
        2017-04-05T10:43:07+00:00
    UAEAccountInformationAPI.PostalCode:
      type: object
      required:
        - PostalCode
      properties:
        PostalCode:
          type: string
          minLength: 5
          maxLength: 5
          description: >-
            Identifier consisting of a group of letters and/or numbers that is
            added to a postal address to assist the sorting of mail.
      additionalProperties: false
    UAEAccountInformationAPI.StatusUpdateDateTime:
      type: string
      format: date-time
      description: >-
        Date and time at which the account resource status was updated. All
        dates in the JSON payloads are represented in ISO 8601 date-time format.

        All date-time fields in responses must include the timezone. An example
        is below:

        2017-04-05T10:43:07+00:00
    UAEAccountInformationAPI.TrustFrameworkCode:
      type: string
      enum:
        - Undefined
      description: >-
        Identifies the trust framework used for verification. This consists of a
        set of rules and standards and sets out requirements so that
        organisations know what ‘good’ identity verification looks like.

        Trust Frameworks:
        [https://bitbucket.org/openid/ekyc-ida/wiki/identifiers](https://bitbucket.org/openid/ekyc-ida/wiki/identifiers)
    UAEPaymentAPI.AEAddressTypeCode:
      type: string
      enum:
        - Business
        - Correspondence
        - Residential
      description: Specifies the nature of the Address.
    UAEPaymentAPI.AEBuildingNumber:
      type: string
      minLength: 1
      maxLength: 10
      description: Identifies the building number.
    UAEPaymentAPI.AEChargeBearerType1Code:
      type: string
      enum:
        - BorneByCreditor
        - BorneByDebtor
        - Shared
      description: >-
        Specifies which party/parties will bear the charges associated with the
        processing of the payment transaction.
    UAEPaymentAPI.AECity:
      type: string
      minLength: 1
      maxLength: 35
      description: Identifies the name of the city or town where the address is situated.
    UAEPaymentAPI.AECountryCode:
      type: string
      pattern: ^[A-Z]{2,2}$
      description: >-
        Indicates the country code in which the address is located (References
        ISO 3166-1 alpha-2).
    UAEPaymentAPI.AECreditorExternalAccountIdentificationCode:
      type: string
      enum:
        - IBAN
        - AccountNumber
      description: >-
        Name of the identification scheme, in a coded form as published in an
        external list.
    UAEPaymentAPI.AEDistrict:
      type: string
      minLength: 1
      maxLength: 35
      description: Identifies the district of a city.
    UAEPaymentAPI.AEExternalPaymentChargeTypeCode:
      type: string
      enum:
        - VAT
        - Fees
      description: Charge type, in a coded form.
    UAEPaymentAPI.AEFloorNumber:
      type: string
      minLength: 1
      maxLength: 10
      description: Identifies the building floor number.
    UAEPaymentAPI.AEIdentification:
      type: string
      minLength: 1
      description: >-
        Identification for the account assigned by the LFI based on the Account
        Scheme Name.

        This identification is known by the User account owner.
    UAEPaymentAPI.AEName:
      type: object
      properties:
        en:
          type: string
          maxLength: 70
          description: English value of the string
        ar:
          type: string
          maxLength: 70
          description: Arabic value of the string
      description: >-
        The Account Holder Name is the name or names of the Account owner(s)
        represented at the account level
      additionalProperties: false
    UAEPaymentAPI.AEPOBox:
      type: string
      minLength: 1
      maxLength: 10
      description: Identifies the POBox.
    UAEPaymentAPI.AEPostalCode:
      type: string
      minLength: 1
      maxLength: 10
      description: >-
        Identifies the postal code; a unique code assigned to a specific
        geographic area for efficient mail sorting and delivery purposes.
    UAEPaymentAPI.AERegion:
      type: string
      minLength: 1
      maxLength: 35
      description: Identifies the region.
    UAEPaymentAPI.AESecondaryNumber:
      type: string
      minLength: 4
      maxLength: 4
      description: 4 numbers representing the accurate location coordinates of the address
    UAEPaymentAPI.AEShortAddress:
      type: string
      minLength: 1
      maxLength: 8
      description: >-
        A short address consists of four letters: region code, branch code,
        division code, unique code and a four-digit number for the building.
    UAEPaymentAPI.AEStreetName:
      type: string
      minLength: 1
      maxLength: 70
      description: Identifies the street name or road.
    UAEPaymentAPI.AETradingName:
      type: object
      properties:
        en:
          type: string
          maxLength: 70
          description: English value of the string
        ar:
          type: string
          maxLength: 70
          description: Arabic value of the string
      description: |-
        The Trading Brand Name (if applicable) for the Creditor.
        Applicable to Payments.
      additionalProperties: false
    UAEPaymentAPI.AEUnitNumber:
      type: string
      minLength: 1
      maxLength: 10
      description: Identifies the unit or apartment number.
    UAEPaymentAPI.AEZipCode:
      type: string
      minLength: 1
      maxLength: 10
      description: >-
        Identifies the ZIP code; a unique code assigned to a specific geographic
        area for efficient mail sorting and delivery purposes.
  examples:
    CreateFXQuoteUnsignedRequest:
      summary: Create FX Quote Example - Unsigned Request
      description: >-
        Create an FX Quote for a AED to USD trade. The trade is a spot trade
        with a buy amount of 100 USD.
      value:
        Data:
          TradeType: Spot
          BuyCurrency: USD
          SellCurrency: AED
          Amount:
            Type: Buy
            Amount:
              Currency: USD
              Amount: '100.00'
          ContractIdentification: 54c2d2bd-92de-4dcd-8eb7-f48527a2f0a5
          Party:
            Claims:
              IdentityType: Person
              GivenName: Hamad
              Surname: Ali
              EmiratesId: 7841-1234-1234567-1
    CreateFXQuoteSignedRequest:
      summary: Create FX Quote Example - Signed Request
      description: >-
        Create an FX Quote for a AED to USD trade. The trade is a spot trade
        with a buy amount of 100 USD.
      value:
        iss: https://lfi.openfinanceapihub.ae
        exp: 1738848508
        nbf: 1738844908
        message:
          Data:
            TradeType: Spot
            BuyCurrency: USD
            SellCurrency: AED
            Amount:
              Type: Buy
              Amount:
                Currency: USD
                Amount: '100.00'
            ContractIdentification: 54c2d2bd-92de-4dcd-8eb7-f48527a2f0a5
            Party:
              Claims:
                IdentityType: Person
                GivenName: Hamad
                Surname: Ali
                EmiratesId: 7841-1234-1234567-1
    CreateFXQuoteUnsignedResponse:
      summary: Create FX Quote Example - Unsigned Response
      description: Quote response for a spot trade with a buy amount of 100 USD.
      value:
        Data:
          FxQuoteId: 1d747c7b-7285-43e2-bb26-f7d6f195177e
          BuyAmount:
            Currency: USD
            Amount: '100.00'
          SellAmount:
            Currency: AED
            Amount: '367.25'
          UnitCurrency: AED
          QuotedCurrency: USD
          RateType: Actual
          ExchangeRate: 0.272294
          ExpirationDateTime: '2025-08-24T14:15:22.001+04:00'
          UserIdentificationStatus: UserIdentified
        Links:
          Self: >-
            https://lfi.openfinanceapihub.ae/open-finance/fx/v2.0-draft2/fx-quotes/1d747c7b-7285-43e2-bb26-f7d6f195177e
        Meta: {}
    CreateFXQuoteSignedResponse:
      summary: Create FX Quote Example - Signed Response
      description: Quote response for a spot trade with a buy amount of 100 USD.
      value:
        iss: https://lfi.openfinanceapihub.ae
        exp: 1738848508
        nbf: 1738844908
        message:
          Data:
            FxQuoteId: 1d747c7b-7285-43e2-bb26-f7d6f195177e
            BuyAmount:
              Currency: USD
              Amount: '100.00'
            SellAmount:
              Currency: AED
              Amount: '367.25'
            UnitCurrency: AED
            QuotedCurrency: USD
            RateType: Actual
            ExchangeRate: 0.272294
            ExpirationDateTime: '2025-08-24T14:15:22.001+04:00'
            UserIdentificationStatus: UserIdentified
          Links:
            Self: >-
              https://lfi.openfinanceapihub.ae/open-finance/fx/v2.0-draft2/fx-quotes/1d747c7b-7285-43e2-bb26-f7d6f195177e
          Meta: {}
    ReadFXQuoteUnsignedResponse:
      summary: Read FX Quote Example - Unsigned Response
      description: Quote response for a spot trade with a buy amount of 100 USD.
      value:
        Data:
          FxQuoteId: 1d747c7b-7285-43e2-bb26-f7d6f195177e
          BuyAmount:
            Currency: USD
            Amount: '100.00'
          SellAmount:
            Currency: AED
            Amount: '367.25'
          UnitCurrency: AED
          QuotedCurrency: USD
          RateType: Actual
          ExchangeRate: 0.272294
          ExpirationDateTime: '2025-08-24T14:15:22.001+04:00'
          UserIdentificationStatus: UserIdentified
          Party:
            Claims:
              IdentityType: Person
              GivenName: Hamad
              Surname: Ali
              EmiratesId: 7841-1234-1234567-1
          Status: Pending
          CreationDateTime: '2025-08-24T14:05:22.001+04:00'
          StatusUpdateDateTime: '2025-08-24T14:05:22.001+04:00'
        Links:
          Self: >-
            https://lfi.openfinanceapihub.ae/open-finance/fx/v2.0-draft2/fx-quotes/1d747c7b-7285-43e2-bb26-f7d6f195177e
        Meta: {}
    ReadFXQuoteSignedResponse:
      summary: Read FX Quote Example - Signed Response
      description: Quote response for a spot trade with a buy amount of 100 USD.
      value:
        iss: https://lfi.openfinanceapihub.ae
        exp: 1738848508
        nbf: 1738844908
        message:
          Data:
            FxQuoteId: 1d747c7b-7285-43e2-bb26-f7d6f195177e
            BuyAmount:
              Currency: USD
              Amount: '100.00'
            SellAmount:
              Currency: AED
              Amount: '367.25'
            UnitCurrency: AED
            QuotedCurrency: USD
            RateType: Actual
            ExchangeRate: 0.272294
            ExpirationDateTime: '2025-08-24T14:15:22.001+04:00'
            UserIdentificationStatus: UserIdentified
            Party:
              Claims:
                IdentityType: Person
                GivenName: Hamad
                Surname: Ali
                EmiratesId: 7841-1234-1234567-1
            Status: Pending
            CreationDateTime: '2025-08-24T14:05:22.001+04:00'
            StatusUpdateDateTime: '2025-08-24T14:05:22.001+04:00'
          Links:
            Self: >-
              https://lfi.openfinanceapihub.ae/open-finance/fx/v2.0-draft2/fx-quotes/1d747c7b-7285-43e2-bb26-f7d6f195177e
          Meta: {}
    CreateAccountUnsignedRequest:
      summary: Create Account Opening Example - Unsigned Request
      description: >-
        Create an account opening request for a new account with party data
        provided through data sharing.
      value:
        Data:
          FxQuoteId: 1d747c7b-7285-43e2-bb26-f7d6f195177e
          Party:
            Claims:
              IdentityType: Person
              GivenName: Hamad
              Surname: Ali
              EmiratesId: 7841-1234-1234567-1
    CreateAccountSignedRequest:
      summary: Create Account Opening Example - Signed Request
      description: >-
        Create an account opening request for a new account with party data
        provided through data sharing.
      value:
        iss: https://lfi.openfinanceapihub.ae
        exp: 1738848508
        nbf: 1738844908
        message:
          Data:
            FxQuoteId: 1d747c7b-7285-43e2-bb26-f7d6f195177e
            Party:
              Claims:
                IdentityType: Person
                GivenName: Hamad
                Surname: Ali
                EmiratesId: 7841-1234-1234567-1
    ReadAccountOpeningAwaitingPartyDataUnsignedResponse:
      summary: Read Account Opening Example - AwaitingPartyData - Unsigned Response
      description: The account opening is pending the User providing additional data.
      value:
        Data:
          AccountId: 7a79d7f0-4054-4ee8-bce2-ef696f1a7a31
          OpeningStatus: AwaitingPartyData
          OpeningStatusUpdateDateTime: '2021-01-01T00:00:00+04:00'
        Links:
          Self: >-
            https://lfi.openfinanceapihub.ae/accounts/7a79d7f0-4054-4ee8-bce2-ef696f1a7a31
          AccountOpeningRedirectUrl: >-
            https://lfi.example.ae/accounts?account-id=7a79d7f0-4054-4ee8-bce2-ef696f1a7a31
        Meta: {}
    ReadAccountOpeningAwaitingPartyDataSignedResponse:
      summary: Read Account Opening Example - AwaitingPartyData - Signed Response
      description: The account opening is pending the User providing additional data.
      value:
        iss: https://lfi.openfinanceapihub.ae
        exp: 1738848508
        nbf: 1738844908
        message:
          Data:
            AccountId: 7a79d7f0-4054-4ee8-bce2-ef696f1a7a31
            OpeningStatus: AwaitingPartyData
            OpeningStatusUpdateDateTime: '2021-01-01T00:00:00+04:00'
          Links:
            Self: >-
              https://lfi.openfinanceapihub.ae/accounts/7a79d7f0-4054-4ee8-bce2-ef696f1a7a31
            AccountOpeningRedirectUrl: >-
              https://lfi.example.ae/accounts?account-id=7a79d7f0-4054-4ee8-bce2-ef696f1a7a31
          Meta: {}
    ReadAccountOpeningCreatedUnsignedResponse:
      summary: Read Account Opening Example - Created - Unsigned Response
      description: >-
        The account has been successfully opened and account details are
        available for use.
      value:
        Data:
          AccountId: 7a79d7f0-4054-4ee8-bce2-ef696f1a7a31
          AccountHolderName: Hamad Ali
          AccountIdentifiers:
            - SchemeName: IBAN
              Identification: AE460090000000123456789
          OpeningStatus: Created
          OpeningStatusUpdateDateTime: '2021-01-01T01:00:00+04:00'
        Links:
          Self: >-
            https://lfi.openfinanceapihub.ae/accounts/7a79d7f0-4054-4ee8-bce2-ef696f1a7a31
        Meta: {}
    ReadAccountOpeningCreatedSignedResponse:
      summary: Read Account Opening Example - Created - Signed Response
      description: >-
        The account has been successfully opened and account details are
        available for use.
      value:
        iss: https://lfi.openfinanceapihub.ae
        exp: 1738848508
        nbf: 1738844908
        message:
          Data:
            AccountId: 7a79d7f0-4054-4ee8-bce2-ef696f1a7a31
            AccountHolderName: Hamad Ali
            AccountIdentifiers:
              - SchemeName: IBAN
                Identification: AE460090000000123456789
            OpeningStatus: Created
            OpeningStatusUpdateDateTime: '2021-01-01T01:00:00+04:00'
          Links:
            Self: >-
              https://lfi.openfinanceapihub.ae/accounts/7a79d7f0-4054-4ee8-bce2-ef696f1a7a31
          Meta: {}
  securitySchemes:
    TPPOAuth2Security:
      type: oauth2
      description: >-
        TPP confidential client authorization with the LFI to stage a consent.
        **Please refer to [OpenID FAPI Security Profile 1.0 -Part 2
        Advanced](https://openid.net/specs/openid-financial-api-part-2-1_0.html#authorization-server)
        - 5.2.2 point 14 - shall authenticate the confidential client using one
        of the following methods private_key_jwt and [OpenID Connect Core
        1.0](https://openid.net/specs/openid-connect-core-1_0.html#ClientAuthentication)
        9. Client Authentication private_key_jwt**
      flows:
        clientCredentials:
          tokenUrl: https://authserver.example/token
          scopes:
            fx: >-
              Ability to get FX quotes and dynamically open account for funding
              deposit
servers:
  - url: /open-finance/fx/v2.0-draft2
    description: ''
    variables: {}

...