National Australia Bank Foreign Exchange Rates API

Retrieve current foreign exchange rates for cross-border payouts.

Operations 1

POST /pts/v2/payouts/fx-rates Retrieve Foreign Exchange Rates #

Work with this as data

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

MCP server

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

https://apis.io/mcp

Tools for apis

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

Call it yourself

curl for this page
This API
curl "https://apis.io/api/v1/apis/national-australia-bank:national-australia-bank-foreign-exchange-rates-api"
All apis
curl "https://apis.io/api/v1/apis?limit=25"

Calls without X-API-Key need no key. Calls with it need a paid plan — get a key.

Get an API key

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

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

OpenAPI Specification

national-australia-bank-foreign-exchange-rates-api-openapi.yml Raw ↑
openapi: 3.2.0
info:
  description: All CyberSource API specs merged together. These are available at https://developer.cybersource.com/api/reference/api-reference.html
  version: 0.0.1
  title: CyberSource Merged Spec Foreign Exchange Rates API
servers:
- url: https://apitest.cybersource.com/
tags:
- name: Foreign Exchange Rates
  description: Retrieve current foreign exchange rates for cross-border payouts.
paths:
  /pts/v2/payouts/fx-rates:
    post:
      summary: Retrieve Foreign Exchange Rates
      description: Retrieve current foreign exchange rates for cross-border payouts.
      tags:
      - Foreign Exchange Rates
      operationId: createFxRates
      parameters:
      - name: Content-Type
        in: header
        required: true
        schema:
          type: string
      - name: x-requestid
        in: header
        required: true
        schema:
          type: string
      - name: v-c-merchant-id
        in: header
        required: true
        schema:
          type: string
      - name: v-c-permissions
        in: header
        required: true
        schema:
          type: string
      - name: v-c-correlation-id
        in: header
        required: true
        schema:
          type: string
      - name: v-c-organization-id
        in: header
        required: true
        schema:
          type: string
      responses:
        '201':
          description: Created
          content:
            application/hal+json;charset=utf-8:
              schema:
                type: object
                properties:
                  id:
                    type: string
                    maxLength: 26
                    description: 'A unique identification number to identify the submitted request. It is also appended to the endpoint of the resource.

                      '
                  status:
                    type: string
                    maxLength: 18
                    description: 'The status of the submitted transaction.


                      Possible values:

                      - `COMPLETED`

                      - `INVALID_REQUEST`

                      - `SERVER_ERROR`

                      '
                  submitTimeStampUtc:
                    type: string
                    maxLength: 20
                    description: 'Time of request in UTC. Format: `YYYY-MM-DD''T''HH:mm:ssZ`


                      Example: `2016-08-11T22:47:57Z` equals August 11, 2016, at

                      22:47:57 (10:47:57 p.m.). The T separates the date and the time.

                      The Z indicates UTC.

                      '
                  orderInformation:
                    type: object
                    properties:
                      amountDetails:
                        type: object
                        properties:
                          markupRate:
                            type: string
                            maxLength: 6
                            description: "The markup between the offer exchange rate and wholesale rates, i.e. the mark up. Expressed as a percentage of 100, e.g. 3.75.\n\nIf the markup value is not supplied in the API, and the Acquiring BIN is provided, the markup configured during onboarding will be picked up and applied to the transaction. To override any markup defaults set up on the account, always send a markup value of 0.00 to indicate 0% markup. \n\nSupported by Visa Direct.\n"
                          exchangeRate:
                            type: string
                            maxLength: 14
                            description: Exchange rate returned by the card network.
                          originalAmount:
                            type: string
                            maxLength: 13
                            description: 'Amount in your original local pricing currency.


                              This value cannot be negative. You can include a decimal point (.) in this field to denote the currency exponent, but you cannot include any other special characters.


                              If needed, CyberSource truncates the amount to the correct number of decimal places.

                              '
                          destinationAmount:
                            type: string
                            maxLength: 13
                            description: 'Amount in your destination''s local pricing currency.


                              This value cannot be negative. You can include a decimal point (.) in this field to denote the currency exponent, but you cannot include any other special characters.


                              If needed, CyberSource truncates the amount to the correct number of decimal places.

                              '
                          originalAmountWithoutMarkup:
                            type: string
                            maxLength: 13
                            description: 'Original Transaction Amount excluding markup in source

                              currency. This field will be returned in a source-to-destination

                              inquiry response when markup is applicable.


                              Supported by Visa Direct

                              '
                          settlementAmount:
                            type: string
                            maxLength: 13
                            description: The transaction amount in settlement currency.
                          settlementCurrency:
                            type: string
                            maxLength: 3
                            description: 'The currency in which Visa or Mastercard settles with the acquirer/acquirer.


                              Use [ISO 4217 3-Alpha Currency Codes](https://developer.cybersource.com/content/dam/docs/cybs/en-us/currency-codes/reference/all/na/currency-codes.pdf).

                              '
                          settlementExchangeRate:
                            type: string
                            maxLength: 14
                            description: Exchange rate returned by the card network for settlement.
                  errorInformation:
                    type: object
                    properties:
                      details:
                        type: array
                        items:
                          type: object
                          properties:
                            field:
                              type: string
                              maxLength: 256
                              description: 'This is the flattened JSON object field name/path that is either

                                missing or invalid.

                                '
                            reason:
                              type: string
                              maxLength: 31
                              description: 'Possible reasons for the error.


                                Possible values:

                                - `MISSING_FIELD`

                                - `INVALID_DATA`

                                '
                      message:
                        type: string
                        maxLength: 256
                        description: 'The detail message related to the status and reason listed above.

                          '
                      reason:
                        type: string
                        maxLength: 30
                        description: 'The reason of the status.


                          Possible values:

                          - `INVALID_DATA`

                          - `INVALID_MERCHANT_CONFIGURATION`

                          - `SYSTEM_ERROR`

                          '
                  processorInformation:
                    type: object
                    properties:
                      responseCode:
                        type: string
                        maxLength: 10
                        description: 'For most processors, this is the error message sent directly from

                          the bank. Returned only when the processor returns this value.

                          '
                      responseDetails:
                        type: string
                        maxLength: 255
                        description: This field might contain information about a decline.
                  processingInformation:
                    type: object
                    properties:
                      routing:
                        type: object
                        properties:
                          network:
                            type: string
                            maxLength: 15
                            description: 'Name of the network on which the transaction was routed.


                              Possible values:

                              - `VISA_DIRECT`

                              - `MASTERCARD_SEND`

                              '
                example:
                  id: '7714459917996265704'
                  status: COMPLETED
                  submitTimeStampUtc: '2026-02-18T20:19:25Z'
                  orderInformation:
                    amountDetails:
                      markupRate: '0.05'
                      exchangeRate: '1.2768'
                      originalAmount: '100.00'
                      destinationAmount: '127.68'
                      originalAmountWithoutMarkup: '22918.69'
                      settlementAmount: '22918.69'
                      settlementCurrency: EUR
                      settlementExchangeRate: '1.2768'
                  processingInformation:
                    routing:
                      network: MASTERCARD_SEND
        '400':
          description: Invalid request
          content:
            application/hal+json;charset=utf-8:
              schema:
                type: object
                properties:
                  id:
                    type: string
                    maxLength: 26
                    description: 'A unique identification number to identify the submitted request. It is also appended to the endpoint of the resource.

                      '
                  submitTimeStampUtc:
                    type: string
                    maxLength: 20
                    description: 'Time of request in UTC. Format: `YYYY-MM-DD''T''HH:mm:ssZ`


                      Example: `2016-08-11T22:47:57Z` equals August 11, 2016, at

                      22:47:57 (10:47:57 p.m.). The T separates the date and the time.

                      The Z indicates UTC.

                      '
                  status:
                    type: string
                    description: 'Possible values:

                      - INVALID_REQUEST

                      '
                  reason:
                    type: string
                    description: 'The reason of the status.


                      Possible values:

                      - INVALID_DATA

                      - MISSING_FIELD

                      '
                  message:
                    type: string
                    maxLength: 256
                    description: 'The detail message related to the status and reason listed above.

                      '
                  details:
                    type: array
                    items:
                      type: object
                      properties:
                        field:
                          type: string
                          maxLength: 256
                          description: 'This is the flattened JSON object field name/path that is either

                            missing or invalid.

                            '
                        reason:
                          type: string
                          maxLength: 31
                          description: 'Possible reasons for the error.


                            Possible values:

                            - `MISSING_FIELD`

                            - `INVALID_DATA`

                            '
                example:
                  id: '7714459917996265704'
                  submitTimeStampUtc: '2026-02-18T20:19:25Z'
                  status: INVALID_REQUEST
                  reason: INVALID_DATA
                  message: One or more fields in the request contains invalid data
                  details:
                  - field: orderInformation.amountDetails.originalCurrency
                    reason: INVALID_DATA
        '401':
          description: Unauthorized
          content:
            application/hal+json;charset=utf-8:
              schema:
                type: object
                properties:
                  id:
                    type: string
                    maxLength: 26
                    description: 'A unique identification number to identify the submitted request. It is also appended to the endpoint of the resource.

                      '
                  submitTimeStampUtc:
                    type: string
                    maxLength: 20
                    description: 'Time of request in UTC. Format: `YYYY-MM-DD''T''HH:mm:ssZ`


                      Example: `2016-08-11T22:47:57Z` equals August 11, 2016, at

                      22:47:57 (10:47:57 p.m.). The T separates the date and the time.

                      The Z indicates UTC.

                      '
                  reason:
                    type: string
                    description: 'The reason of the status.


                      Possible values:

                      - UNAUTHORIZED

                      '
                  message:
                    type: string
                    maxLength: 256
                    description: 'The detail message related to the status and reason listed above.

                      '
                example:
                  id: '7714459917996265704'
                  submitTimeStampUtc: '2026-02-18T20:19:25Z'
                  reason: UNAUTHORIZED
                  message: Authentication Failed
        '502':
          description: Server error
          content:
            application/hal+json;charset=utf-8:
              schema:
                type: object
                properties:
                  id:
                    type: string
                    maxLength: 26
                    description: 'A unique identification number to identify the submitted request. It is also appended to the endpoint of the resource.

                      '
                  submitTimeStampUtc:
                    type: string
                    maxLength: 20
                    description: 'Time of request in UTC. Format: `YYYY-MM-DD''T''HH:mm:ssZ`


                      Example: `2016-08-11T22:47:57Z` equals August 11, 2016, at

                      22:47:57 (10:47:57 p.m.). The T separates the date and the time.

                      The Z indicates UTC.

                      '
                  status:
                    type: string
                    description: 'Possible values:

                      - SERVER_ERROR

                      '
                  reason:
                    type: string
                    description: 'The reason of the status.


                      Possible values:

                      - SYSTEM_ERROR

                      '
                  message:
                    type: string
                    maxLength: 256
                    description: 'The detail message related to the status and reason listed above.

                      '
                example:
                  id: '7714459917996265704'
                  submitTimeStampUtc: '2026-02-18T20:19:25Z'
                  status: SERVER_ERROR
                  reason: SYSTEM_ERROR
                  message: Error - General system failure
      requestBody:
        content:
          application/json;charset=utf-8:
            schema:
              type: object
              example:
                acquirerInformation:
                  acquirerBin: '456789'
                orderInformation:
                  amountDetails:
                    originalCurrency: USD
                    destinationCurrency: EUR
                    originalAmount: '100.00'
                    markupRate: '0.05'
                    settlementCurrency: EUR
                processingInformation:
                  transactionType: PUSH
                  clearingSystem: SINGLE
                  transactionTypeIndicator: C07
                  routing:
                    network: VISA_DIRECT
                clientReferenceInformation:
                  applicationName: REST API
                  applicationVersion: '2.5'
                  applicationUser: Value-R
                  code: '123456'
                  partner:
                    developerId: '56778945'
                    solutionId: '56778945'
              properties:
                acquirerInformation:
                  type: object
                  properties:
                    acquirerBin:
                      type: string
                      maxLength: 11
                      description: "Acquirer bank ID number that corresponds to a certificate that\nCybersource already has.This ID has this format: \n\n- `4XXXXX` for Visa\n- `5XXXXX` for Mastercard.\n"
                orderInformation:
                  type: object
                  properties:
                    amountDetails:
                      type: object
                      properties:
                        markupRate:
                          type: string
                          maxLength: 6
                          description: "The markup between the offer exchange rate and wholesale rates, i.e. the mark up. Expressed as a percentage of 100, e.g. 3.75.\n\nIf the markup value is not supplied in the API, and the Acquiring BIN is provided, the markup configured during onboarding will be picked up and applied to the transaction. To override any markup defaults set up on the account, always send a markup value of 0.00 to indicate 0% markup. \n\nSupported by Visa Direct.\n"
                        settlementCurrency:
                          type: string
                          maxLength: 3
                          description: 'The currency in which Visa or Mastercard settles with the acquirer/acquirer.


                            Use [ISO 4217 3-Alpha Currency Codes](https://developer.cybersource.com/content/dam/docs/cybs/en-us/currency-codes/reference/all/na/currency-codes.pdf).

                            '
                        originalAmount:
                          type: string
                          maxLength: 13
                          description: 'Amount in your original local pricing currency.


                            This value cannot be negative. You can include a decimal point (.) in this field to denote the currency exponent, but you cannot include any other special characters.


                            If needed, CyberSource truncates the amount to the correct number of decimal places.

                            '
                        originalCurrency:
                          type: string
                          maxLength: 3
                          description: 'Your local pricing currency code.


                            Use [ISO 4217 3-Alpha Currency Codes](https://developer.cybersource.com/content/dam/docs/cybs/en-us/currency-codes/reference/all/na/currency-codes.pdf).

                            '
                        destinationAmount:
                          type: string
                          maxLength: 13
                          description: 'Amount in your destination''s local pricing currency.


                            This value cannot be negative. You can include a decimal point (.) in this field to denote the currency exponent, but you cannot include any other special characters.


                            If needed, CyberSource truncates the amount to the correct number of decimal places.

                            '
                        destinationCurrency:
                          type: string
                          maxLength: 3
                          description: 'Your destination pricing currency code.


                            Use [ISO 4217 3-Alpha Currency Codes](https://developer.cybersource.com/content/dam/docs/cybs/en-us/currency-codes/reference/all/na/currency-codes.pdf).

                            '
                      required:
                      - originalCurrency
                      - destinationCurrency
                processingInformation:
                  type: object
                  properties:
                    transactionType:
                      type: string
                      maxLength: 4
                      description: 'Indicate that the FX rate is for a push (OCT) or pull (AFT) transaction. If the field is not passed, it defaults to PUSH (OCT).


                        Enum: `PUSH`, `PULL`


                        Supported for Visa Direct.

                        '
                    clearingSystem:
                      type: string
                      maxLength: 6
                      description: 'System used for clearing.


                        Values:

                        - `SINGLE`

                        - `DUAL`


                        Supported for Mastercard Send.

                        '
                    transactionTypeIndicator:
                      type: string
                      maxLength: 3
                      description: 'The Mastercard Transaction Type Indicator is an alphanumeric or numeric code that identifies the business purpose and transaction category for Mastercard‑routed payments. It is used by the Mastercard network to support correct processing, compliance controls, risk evaluation, and reporting.


                        This field is treated as a pass‑through parameter. The indicator is forwarded as provided to downstream processors and the Mastercard network, where validation and interpretation occur. Supplying an incorrect or missing value may result in network declines, misclassification, or compliance issues with Mastercard.


                        Example values:

                        - `C07` or `204` – General person‑to‑person

                        - `C55` or `208` – Business disbursement

                        - `C65` or `213` – Business‑to‑business transfer

                        - `P70` or `231` – Cryptocurrency


                        Important:

                        Clients are responsible for ensuring the value accurately reflects the transaction intent and complies with Mastercard network requirements.

                        '
                    routing:
                      type: object
                      properties:
                        network:
                          type: string
                          maxLength: 15
                          description: 'Name of the network on which the transaction is to be routed.


                            Possible values:

                            - `VISA_DIRECT`

                            - `MASTERCARD_SEND`

                            '
                      required:
                      - network
                clientReferenceInformation:
                  type: object
                  properties:
                    applicationName:
                      type: string
                      maxLength: 50
                      description: 'The name of the Connection Method client (such as Virtual

                        Terminal, Batch Upload, etc.) that submitted the payment

                        transaction request to CyberSource.

                        '
                    applicationVersion:
                      type: string
                      maxLength: 50
                      description: 'Version of the CyberSource application or integration used for a

                        transaction.

                        '
                    applicationUser:
                      type: string
                      maxLength: 60
                      description: 'The entity that is responsible for running the transaction and

                        submitting the processing request to CyberSource. This could be

                        a person, a system, or a connection method.

                        '
                    code:
                      type: string
                      maxLength: 50
                      description: 'Merchant-generated order reference or tracking number. It is

                        recommended that you send a unique value for each transaction

                        so that you can perform meaningful searches for the

                        transaction.

                        '
                    partner:
                      type: object
                      properties:
                        developerId:
                          type: string
                          maxLength: 8
                          description: 'Identifier for the developer that helped integrate a partner

                            solution to CyberSource.

                            '
                        solutionId:
                          type: string
                          maxLength: 8
                          description: 'Identifier for the partner that is integrated to CyberSource.

                            '
        required: true