...
Awesome api app render macro | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
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 based data shared from LFI 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 based on a given account identifier 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 based on a given currency pair 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 based on a given quote identifier 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 based on a given quote identifier to change the status to Accepted 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). 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: type: object properties: JSONPath: type: string description: >- The JSONPath expression pointing to the data that has been changed in the request payload. OriginalValue: type: string description: The original value that was shared through Bank Data Sharing. required: - JSONPath - OriginalValue additionalProperties: false 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. 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 AEAddress: 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 AEFxQuote: type: object required: - FxQuoteId - BuyAmount - SellAmount - UnitCurrency - QuotedCurrency - RateType - ExchangeRate - UserIdentificationStatus - ExpirationDateTime - Status - CreationDateTime - StatusUpdateDateTime properties: FxQuoteId: allOf: - $ref: '#/components/schemas/FxQuoteIdType' description: The unique identifier for the quote. BuyAmount: allOf: - $ref: '#/components/schemas/AETradeSideBuyAmount' description: The amount of the currency being bought. SellAmount: allOf: - $ref: '#/components/schemas/AETradeSideSellAmount' description: The amount of the currency being sold. UnitCurrency: allOf: - $ref: '#/components/schemas/AEActiveOrHistoricCurrencyCode' description: >- Currency in which the rate of exchange is expressed in a currency exchange. In the example 1GBP = xxxCUR, the unit currency is GBP. QuotedCurrency: allOf: - $ref: '#/components/schemas/AEActiveOrHistoricCurrencyCode' description: >- Currency into which the base currency is converted, in a currency exchange. RateType: type: string enum: - Actual - Agreed - Indicative description: Specifies the type used to complete the currency exchange. ExchangeRate: type: number description: >- The factor used for conversion of an amount from one currency to another. This reflects the price at which one currency was bought with another currency. Charges: type: array items: $ref: '#/components/schemas/AECharges' description: The charges associated with the request currency exchange. UserIdentificationStatus: type: string enum: - UserIdentified - UserNotIdentified - AccountOpeningNotSupported description: >- Status of User identification based on supplied Party data. The status code values are defined as follows: * UserIdentified: The User has been identified by the LFI based on the supplied Party data. * UserNotIdentified: The User has not been identified by the LFI based on the supplied Party data. The User may be able to open an account at the LFI when data requirements are fulfilled. * AccountOpeningNotSupported: The User has not been identified and the LFI does not support account opening based on the supplied Party data. Please note that there is no status code associated with a User logging into the LFI at this stage as this will be completed after the quote has been accepted and consent for the trade is granted through Bank Service Initiation. ExpirationDateTime: allOf: - $ref: '#/components/schemas/AEGulfStandardDateTime' description: The quote expiration data and time. ContractIdentification: type: string minLength: 1 maxLength: 256 description: >- Unique and unambiguous reference to the foreign exchange contract agreed between the initiating party/creditor and the debtor agent. Party: $ref: '#/components/schemas/AEIdentityAssurance' Status: allOf: - $ref: '#/components/schemas/AEFxQuoteStatusCodes' description: >- The status of the quote. The status code values are defined as follows: * Pending: The quote has been created at the LFI but the details have yet to finalized by the LFI. * Active: The quote has been finalized by the LFI and is available for the TPP to display to the User. * Accepted: The User has accepted the quote and the LFI has been notified by the TPP. * Fulfilled: The quote has been fulfilled by the LFI through either deposit of funds or remittance to a given Creditor. * Expired: The quote has expired and is no longer valid. The LFI is responsible for updating the statue to Fulfilled and returning relevant information based on the finalized value. FulfillmentAmount: type: object properties: BuyAmount: allOf: - $ref: '#/components/schemas/AETradeSideBuyAmount' description: The amount of the currency being bought. SellAmount: allOf: - $ref: '#/components/schemas/AETradeSideSellAmount' description: The amount of the currency being sold. ExchangeRate: type: number description: >- The factor used for conversion of an amount from one currency to another. This reflects the price at which one currency was bought with another currency. required: - BuyAmount - SellAmount - ExchangeRate description: >- The fulfillment value of the quote, based the final execution of the trade by the LFI. This value is only provided when the quote status is Fulfilled and the exchange rate and amount values differ from the original quote. Both the buy and sell side amounts are provided for ease of use. additionalProperties: false CreationDateTime: allOf: - $ref: '#/components/schemas/CreationDateTime' description: The date and time when the quote was created. StatusUpdateDateTime: allOf: - $ref: '#/components/schemas/AEGulfStandardDateTime' description: The data and time the quote was last updated. additionalProperties: false AEFxQuoteAddress: 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." AEFxQuoteCreditorAccount: type: object required: - SchemeName - Identification - Name properties: SchemeName: $ref: >- #/components/schemas/UAEPaymentAPI.AECreditorExternalAccountIdentificationCode Identification: $ref: '#/components/schemas/UAEPaymentAPI.AEIdentification' Name: $ref: '#/components/schemas/UAEPaymentAPI.AEName' TradingName: $ref: '#/components/schemas/UAEPaymentAPI.AETradingName' description: >- Unambiguous identification of the account of the creditor to which a credit entry will be posted. additionalProperties: false AEFxQuoteCreditorAgent: type: object required: - SchemeName - Identification properties: SchemeName: type: string enum: - BICFI - Other description: >- Refers to the Identification scheme for uniquely identifying the Agent. * BICFI: The BIC/SWIFT Code * Other: The ID; A Country Code followed by a Bank Code (4 character code). The full list of LFI names and 6 digits IDs are as follows: Identification: type: string description: The Agent is the Country Code followed by a Bank Code" Name: type: string minLength: 1 maxLength: 140 description: >- Name by which an agent is known and which is usually used to identify that agent. PostalAddress: $ref: '#/components/schemas/AEAddress' description: Refers to the Financial Institution. additionalProperties: false AEFxQuoteProperties: type: object required: - FxQuoteId - BuyAmount - SellAmount - UnitCurrency - QuotedCurrency - RateType - ExchangeRate - UserIdentificationStatus - ExpirationDateTime properties: FxQuoteId: allOf: - $ref: '#/components/schemas/FxQuoteIdType' description: The unique identifier for the quote. BuyAmount: allOf: - $ref: '#/components/schemas/AETradeSideBuyAmount' description: The amount of the currency being bought. SellAmount: allOf: - $ref: '#/components/schemas/AETradeSideSellAmount' description: The amount of the currency being sold. UnitCurrency: allOf: - $ref: '#/components/schemas/AEActiveOrHistoricCurrencyCode' description: >- Currency in which the rate of exchange is expressed in a currency exchange. In the example 1GBP = xxxCUR, the unit currency is GBP. QuotedCurrency: allOf: - $ref: '#/components/schemas/AEActiveOrHistoricCurrencyCode' description: >- Currency into which the base currency is converted, in a currency exchange. RateType: type: string enum: - Actual - Agreed - Indicative description: Specifies the type used to complete the currency exchange. ExchangeRate: type: number description: >- The factor used for conversion of an amount from one currency to another. This reflects the price at which one currency was bought with another currency. Charges: type: array items: $ref: '#/components/schemas/AECharges' description: The charges associated with the request currency exchange. UserIdentificationStatus: type: string enum: - UserIdentified - UserNotIdentified - AccountOpeningNotSupported description: >- Status of User identification based on supplied Party data. The status code values are defined as follows: * UserIdentified: The User has been identified by the LFI based on the supplied Party data. * UserNotIdentified: The User has not been identified by the LFI based on the supplied Party data. The User may be able to open an account at the LFI when data requirements are fulfilled. * AccountOpeningNotSupported: The User has not been identified and the LFI does not support account opening based on the supplied Party data. Please note that there is no status code associated with a User logging into the LFI at this stage as this will be completed after the quote has been accepted and consent for the trade is granted through Bank Service Initiation. ExpirationDateTime: allOf: - $ref: '#/components/schemas/AEGulfStandardDateTime' description: The quote expiration data and time. additionalProperties: false AEFxQuoteRemittanceInformation: type: object required: - CreditorAccount properties: CreditorAgent: $ref: '#/components/schemas/AEFxQuoteCreditorAgent' Creditor: type: object properties: Name: type: string minLength: 1 maxLength: 140 PostalAddress: $ref: '#/components/schemas/AEFxQuoteAddress' additionalProperties: false CreditorAccount: $ref: '#/components/schemas/AEFxQuoteCreditorAccount' description: >- Provides remittance information for the quote, to allow the LFI to calculate charges accurately. The CreditorAccount is required as this will contain the destination account for the remittance. All other values are optional. If the quote does include a remittance element then this data is omitted. additionalProperties: false AEFxQuoteRequestProperties: type: object required: - TradeType - BuyCurrency - SellCurrency - Amount properties: TradeType: type: string enum: - Spot description: The trade type. Only Spot is currently supported. BuyCurrency: allOf: - $ref: '#/components/schemas/AEActiveOrHistoricCurrencyCode' description: >- The buy currency, expressed as a ISO 4217 three-character currency code. example: USD SellCurrency: allOf: - $ref: '#/components/schemas/AEActiveOrHistoricCurrencyCode' description: >- The sell currency, expressed as a ISO 4217 three-character currency code. example: AED Amount: type: object properties: Type: type: string enum: - Buy - Sell Amount: $ref: '#/components/schemas/AEActiveCurrencyAmount' required: - Type - Amount description: >- The requested currency amount, qualified with the correct currency code and a buy/sell indicator. additionalProperties: false ContractIdentification: type: string minLength: 1 maxLength: 256 description: >- Unique and unambiguous reference to the foreign exchange contract agreed between the initiating party/creditor and the debtor agent. Party: $ref: '#/components/schemas/AEIdentityAssurance' RemittanceInformation: $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 - Fulfilled - 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 ResidentialAddress: $ref: >- #/components/schemas/UAEAccountInformationAPI.AEPartyIdentityAddressClaim MobileNumber: type: string Email: type: string MaritalStatus: type: string Salutation: type: string Language: type: string EmployerName: type: string EmploymentSinceDate: type: string format: date PowerofAttorney: type: boolean SalaryTransfer: type: boolean Profession: type: string UpdatedAt: type: string format: time additionalProperties: false AccountIdentifiers: type: array items: type: object properties: SchemeName: $ref: >- #/components/schemas/UAEAccountInformationAPI.AEExternalAccountIdentificationCode Identification: $ref: '#/components/schemas/UAEAccountInformationAPI.Identification_0' Name: $ref: '#/components/schemas/UAEAccountInformationAPI.Name_0' required: - SchemeName - Identification additionalProperties: false CreationDateTime: type: string pattern: .+\+04:00$ format: date-time description: The resource creation date and time. FxQuoteIdType: type: string minLength: 1 maxLength: 128 LinksSelf: type: object required: - Self properties: Self: $ref: '#/components/schemas/Self' description: Links relevant to the resource additionalProperties: false Meta: type: object description: Metadata relevant to the resource additionalProperties: false OpeningStatusUpdateDateTime: type: string pattern: .+\+04:00$ format: date-time description: The date and time the opening status was last updated. Self: type: string format: uri description: A link to the current resource UAEAccountInformationAPI.AEAccountStatusCode: type: string enum: - Active - Inactive - Dormant - Unclaimed - Deceased - Suspended - Closed description: >- Specifies the status of account resource in code form. * Active: The account exist and is in an active state. * Inactive: The account is deemed not active by the LFI. Please refer to the [CBUAE Website](https://rulebook.centralbank.ae/en/rulebook/dormant-accounts-regulation) for qualification of Inactive status. * Dormant: Please refer to the [CBUAE Website](https://rulebook.centralbank.ae/en/rulebook/dormant-accounts-regulation) for the definition of Dormant status. * Unclaimed: Please refer to the [CBUAE Website](https://rulebook.centralbank.ae/en/rulebook/dormant-accounts-regulation) for the definition of Unclaimed status. * Deceased: The account holder has passed away. * Suspended: The account has been temporarily deactivated by the LFI for reasons such as suspicious activities or non-compliance with regulations. The account holder might be unable to access funds or perform transactions until the bank's requirements are met, and the suspension is lifted. * Closed: The account is 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 reconciled ever - some corner situations with international payments - for refunds with card payments (instead merchant information fields should be populated) additionalProperties: false 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.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: {} |
...