National Australia Bank Offers API

Operations related to creating, retrieving, and updating offers.

Operations 1

GET /vas/v1/currencyconversion/{id} Retrieve an Offer #

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-offers-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-offers-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 Offers API
servers:
- url: https://apitest.cybersource.com/
tags:
- name: Offers
  description: Operations related to creating, retrieving, and updating offers.
paths:
  /vas/v1/currencyconversion/{id}:
    get:
      summary: Retrieve an Offer
      description: Retrieves an offer record from the system.
      tags:
      - Offers
      operationId: getOffer
      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-correlation-id
        in: header
        required: true
        schema:
          type: string
      - name: v-c-organization-id
        in: header
        required: true
        schema:
          type: string
      - name: id
        in: path
        description: Request ID generated by Cybersource. This was sent in the header on the request. Echo value from v-c-request-id
        required: true
        schema:
          type: string
          maxLength: 26
      responses:
        '200':
          description: Request OK.
          content:
            application/hal+json;charset=utf-8:
              schema:
                type: object
                required:
                - id
                - submitTimeUtc
                - status
                properties:
                  clientReferenceInformation:
                    type: object
                    properties:
                      code:
                        type: string
                        maxLength: 50
                        description: "Merchant-generated order reference or tracking number. \nIt is recommended that you send a unique value for each transaction so that you can perform meaningful searches for the transaction.\n"
                      applicationName:
                        type: string
                        maxLength: 50
                        description: The name of the Connection Method client (such as Virtual Terminal or SOAP Toolkit API) that the merchant uses to send a 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.
                      partner:
                        type: object
                        properties:
                          developerId:
                            type: string
                            maxLength: 8
                            description: 'Identifier for the developer that helped integrate a partner solution to CyberSource.


                              Send this value in all requests that are sent through the partner solutions built by that developer.

                              CyberSource assigns the ID to the developer.


                              **Note** When you see a developer ID of 999 in reports, the developer ID that was submitted is incorrect.

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


                              Send this value in all requests that are sent through the partner solution. CyberSource assigns the ID to the partner.


                              **Note** When you see a solutionId of 999 in reports, the solutionId that was submitted is incorrect.

                              '
                  id:
                    type: string
                    maxLength: 26
                    description: 'Request ID generated by Cybersource. This was sent in the header on the request.

                      Echo value from x-requestid

                      '
                  submitTimeUtc:
                    type: string
                    maxLength: 20
                    description: 'Time of request in UTC. Format: `YYYY-MM-DDThh:mm:ssZ`


                      **Example** `2023-05-17T22:47:57Z` equals May 17, 2023, at 22:47:57 (10:47:57 PM).

                      The `T` separates the date and the time. The `Z` indicates UTC.

                      '
                  status:
                    type: string
                    maxLength: 18
                    description: 'Message describing the status of the currency conversion request.


                      Values:

                      - `PENDING`

                      - `DECLINED`

                      - `INVALID_REQUEST`

                      - `SERVER_ERROR`

                      - `OFFER_DECLINED`

                      - `AUTHORIZED`

                      - `AUTHORIZATION_DECLINED`

                      - `AUTHORIZATION_FAILURE`

                      - `REVERSED`

                      - `CAPTURED`

                      - `REFUNDED`

                      - `CANCELLED`

                      '
                  errorInformation:
                    type: object
                    properties:
                      reason:
                        type: string
                        maxLength: 30
                        description: 'Only required when offer cannot be made. The reason of the status.


                          Possible values:

                          - ''INVALID_MERCHANT_CONFIGURATION''

                          - ''NOT_ELIGIBLE''

                          - ''CURRENCY_NOT_CONFIGURED''

                          - ''BIN_UNKNOWN''

                          - ''CURRENCY_MATCH''

                          - ''CURRENCY_NOT_ALLOWED''

                          - ''LOOKUP_FAILED''

                          - ''EXCHANGE_RATE_NOT_FOUND''

                          - ''CARD_TYPE_NOT_ACCEPTED''

                          - ''INVALID_AMOUNT''

                          - ''INVALID_CARD''

                          - ''INVALID_CURRENCY''

                          - ''INVALID_TERMINAL''

                          - ''INVALID_ACQUIRER''

                          - ''SERVICE_DISABLED''

                          - ''DUPLICATE_REQUEST''

                          - ''UNKNOWN''

                          - ''PROCESSOR_ERROR''

                          '
                      message:
                        type: string
                        maxLength: 256
                        description: Only required when the requested action cannot be performed. Descriptive message to add more detail to the status E.g. not all cards are eligible for DCC, so it is not possible for DCC to be offered.
                  orderInformation:
                    type: object
                    properties:
                      currencyConversion:
                        type: object
                        required:
                        - reconciliationId
                        properties:
                          type:
                            type: string
                            maxLength: 3
                            description: 'Valid Values:

                              - `DCC`: Dynamic Currency Conversion

                              - `MCP`: Multi-Currency Pricing

                              This should be echo''d from the request

                              '
                          reconciliationId:
                            type: string
                            maxLength: 60
                            description: Unique identifier generated by the DCC provider.
                          offer:
                            type: array
                            description: 'When type is DCC this is a single item.

                              When type is MCP this is an array that repeats for each currency that''s configured by the currency conversion provider for the merchant.

                              '
                            items:
                              type: object
                              properties:
                                originalAmount:
                                  type: string
                                  maxLength: 15
                                  description: "The amount of the sale in the merchant's currency. \nFor DCC this should be the same value as the request. For MCP will be 1 major unit of the merchant's base currency.\n"
                                originalCurrency:
                                  type: string
                                  maxLength: 3
                                  description: "Currency of the transaction in the merchant's currency. \nFor DCC this should be the same value as the request. \nFor MCP will be the merchant's base currency as configured on the currency conversion provider's system.\nUse three-character alphabetic [ISO 4271 Currency Codes.](https://developer.cybersource.com/docs/cybs/en-us/currency-codes/reference/all/na/currency-codes/currency-codes.html)\n"
                                amount:
                                  type: string
                                  maxLength: 15
                                  description: 'The offer amount, calculated using the originalAmount and the exchangeRate.

                                    For DCC this is the amount in the card issuer''s currency.

                                    '
                                currency:
                                  type: string
                                  maxLength: 3
                                  description: 'Currency of the offer. For DCC this is the card''s issuers currency.

                                    Use three-character alphabetic  [ISO 4271 Currency Codes.](https://developer.cybersource.com/docs/cybs/en-us/currency-codes/reference/all/na/currency-codes/currency-codes.html)

                                    '
                                exchangeRate:
                                  type: string
                                  maxLength: 13
                                  description: 'The exchange rate of the offer from 1 major unit of the sale currency including margin.

                                    This will be printed on the receipt.

                                    For example, if a USD consumer is purchasing in EUR, this field should return the amount of 1 EUR in USD including mark-up.

                                    The receipt will contain the following: `EUR 1.00 = USD 1.09998900010999` - where 1.09998900010999 is the value returned in this field.

                                    '
                                exchangeRateInverted:
                                  type: boolean
                                  example: true
                                  description: 'An inverted exchange rate is the base currency amount divided by the converted currency amount.

                                    Ex. If a USD customer is purchasing in EUR, this field should return the value of USD divided by EUR.

                                    '
                                marginRate:
                                  type: string
                                  maxLength: 8
                                  description: 'The margin between the offer exchange rate and wholesale rates, i.e. the mark up.

                                    Expressed as a percentage of 100, e.g. 3.75

                                    '
                                rateSource:
                                  type: string
                                  maxLength: 50
                                  description: 'The source of the rate (excluding mark up). Optional field.

                                    '
                                exchangeRateTimeUtc:
                                  type: string
                                  maxLength: 20
                                  description: 'The date and time of exchange rate in UTC. Format: `YYYY-MM-DDThh:mm:ssZ`

                                    **Example** `2023-05-17T23:47:57Z` equals May 17, 2023, at 23:47:57 (11:47:57 PM).

                                    The `T` separates the date and the time. The `Z` indicates UTC.

                                    '
                                exchangeRateExpirationTimeUtc:
                                  type: string
                                  maxLength: 20
                                  description: 'The expiration time of the exchange rate in UTC. Format: `YYYY-MM-DDThh:mm:ssZ`

                                    '
                                rateId:
                                  type: string
                                  maxLength: 36
                                  description: 'A unique MCP rate identifier.

                                    '
                          disclaimer:
                            type: string
                            maxLength: 1024
                            description: "This text is intended to inform customers about their opt-in choices. It should include details such \nas the amount, exchange rate, currency, mark-up, and any other regulated requirements, such as \nthe mark-up over the ECB rate, if applicable. It is mandatory for DCC (Dynamic Currency \nConversion) and optional otherwise. This information will be displayed on the screen and printed on \nthe receipt without modification.\n"
                example:
                  clientReferenceInformation:
                    code: REF-101-GBP-909
                    partner:
                      developerId: '123456'
                      solutionId: '123456'
                    applicationName: REST API
                    applicationVersion: 1.23.44
                    applicationUser: Bob
                  id: '6843379070056369304008'
                  submitTimeUtc: '2023-05-17T22:47:57Z'
                  status: OFFER_PENDING
                  errorInformation:
                    reason: INVALID_MERCHANT_CONFIGURATION
                    message: Only required when valid request cannot be fulfilled
                  orderInformation:
                    currencyConversion:
                      type: DCC
                      reconciliationId: ABC123
                    offer:
                    - originalAmount: '100.00'
                      originalCurrency: GBP
                      amount: '123.21'
                      currency: EUR
                      exchangeRate: '0.8116'
                      marginRate: '3.75'
                      rateSource: European Central Bank
                      disclaimer: 'I accept I have been offered a choice of currencies for payment. I accept the conversion rate and sale amount and that the selected currency is EUR. I acknowledge I had a choice to pay in GBP. Currency Conversion for this transaction is offered by the Merchant and is based on the reference rate of the currency conversion provider. Mark up on reference rate: 3.7500.'
                      exchangeRateTimeUtc: '2023-05-17T23:47:57Z'
                      exchangeRateExpirationTimeUtc: '2024-05-18T22:47:57Z'
                      exchangeRateInverted: true
                      rateId: 009F303309AF07234520190628143445
        '404':
          description: Offer not found.
          content:
            application/hal+json;charset=utf-8:
              schema:
                description: Currency conversion offer not found
        '500':
          description: Unexpected system error or system timeout.
          content:
            application/hal+json;charset=utf-8:
              schema:
                type: object
                required:
                - status
                properties:
                  id:
                    type: string
                    maxLength: 26
                    description: 'Request ID generated by Cybersource. This was sent in the header on the request.

                      Echo value from x-requestid

                      '
                  submitTimeUtc:
                    type: string
                    maxLength: 20
                    description: 'Time of request in UTC. Format: `YYYY-MM-DDThh:mm:ssZ`


                      **Example** `2023-05-17T22:47:57Z` equals May 17, 2023, at 22:47:57 (10:47:57 PM).

                      The `T` separates the date and the time. The `Z` indicates UTC.

                      '
                  status:
                    type: string
                    enum:
                    - SERVER_ERROR
                    description: 'Message describing the status of the currency conversion request.

                      '
                  reason:
                    type: string
                    description: 'Only required when offer cannot be made.

                      The reason of the status. Only required when the requested action cannot be performed cannot be made.


                      Possible values:

                      - SYSTEM_ERROR

                      - SERVER_TIMEOUT

                      - SERVICE_TIMEOUT

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

                      '
                example:
                  id: '6843379070056369304008'
                  submitTimeUtc: '2023-05-17T22:47:57Z'
                  status: SERVER_ERROR
                  reason: SYSTEM_ERROR
                  message: string