Commonwealth Bank Payees API API

Obtain a list of pre-registered payees authorised to be shared by the customer. Payees API is a consumer API. To access data you'll need the customer's consent.Host URLAll requests are passed to the URL https://secure.api.commbank.com.au/api/cds-au/v1/banking

Operations 2

GET /payees Get Payees #
GET /payees/{payeeId} Get Payee Detail #

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/commonwealth-bank-payees-api-api"
All apis
curl "https://apis.io/api/v1/apis?limit=25"

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

Get an API key

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

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

OpenAPI Specification

commonwealth-bank-payees-api-api-openapi.yml Raw ↑
openapi: 3.2.0
info:
  version: '1.0'
  title: CommBank Accounts Accounts Payees API
  description: "Obtain the list of accounts authorised to be shared by the customer. \n\nAccount API is a consumer API. To access data you'll need the customer's consent.</p><h3 style=\"margin-top:30px;\">Host URL</h3><p>CommBank requests are passed to the URL <span class=\"sc-1noysbl-9 JKaaQ\">https://secure.api.commbank.com.au/api/cds-au/v1/banking</span></p><p>CBA – CommBiz requests are passed to the URL <span class=\"sc-1noysbl-9 JKaaQ\">https://secure.cdr.commbiz.api.commbank.com.au/cbzapi/cds-au/v1/banking</span></p>"
  x-provenance: First-party CommBank OpenAPI (Swagger 2.0) harvested verbatim from the CommBank developer portal. These are Commonwealth Bank's own renderings of its CDR / Open Banking Consumer Data Standards endpoints.
  x-source-url: https://www.commbank.com.au/developer/Documentation/specification/Accounts
  x-doc-url: https://www.commbank.com.au/developer/documentation/Accounts
  x-harvested: '2026-07-21'
servers:
- url: https://secure.api.commbank.com.au/api/cds-au/v1/banking
tags:
- name: Payees API
  description: "Obtain a list of pre-registered payees authorised to be shared by the customer. \n\nPayees API is a consumer API. To access data you'll need the customer's consent.</p><h3 style=\"margin-top:30px;\">Host URL</h3>All requests are passed to the URL <span class=\"sc-1noysbl-9 JKaaQ\">https://secure.api.commbank.com.au/api/cds-au/v1/banking</span></p>"
paths:
  /payees:
    get:
      tags:
      - Payees API
      summary: Get Payees
      description: Obtain a list of pre-registered payees
      operationId: listPayees
      parameters:
      - name: type
        in: query
        description: Filter on the payee type field.
        required: false
        schema:
          type: string
          enum:
          - BILLER
          - DOMESTIC
          - INTERNATIONAL
          - ALL
          default: ALL
      - $ref: '#/components/parameters/ParamPage'
      - $ref: '#/components/parameters/ParamPageSize'
      - $ref: '#/components/parameters/ParamXVHeader'
      - $ref: '#/components/parameters/ParamXMinVHeader'
      - $ref: '#/components/parameters/ParamXFapiInterationId'
      - $ref: '#/components/parameters/ParamXFapiAuthDate'
      - $ref: '#/components/parameters/ParamXFapiCustomerIpAddress'
      - $ref: '#/components/parameters/ParamXCdsClientHeaders'
      responses:
        '200':
          description: Success
          headers:
            x-v:
              description: Version of the API end point responded with.
              schema:
                type: integer
            x-fapi-interaction-id:
              description: Reflects the value of the Interaction ID in the request.
              schema:
                type: string
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ResponseBankingPayeeList'
        '400':
          description: Bad Request
          headers:
            Content-Type:
              description: Payload format responded with.
              schema:
                type: string
            x-v:
              description: Version of the API end point responded with.
              schema:
                type: integer
            x-fapi-interaction-Id:
              description: Reflects the value of the Interaction ID in the request.
              schema:
                type: string
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse400'
        '404':
          description: Payee Not Found
          headers:
            Content-Type:
              description: Payload format responded with.
              schema:
                type: string
            x-v:
              description: Version of the API end point responded with.
              schema:
                type: integer
            x-fapi-interaction-Id:
              description: Reflects the value of the Interaction ID in the request.
              schema:
                type: string
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse404'
        '406':
          description: Not Acceptable
          headers:
            Content-Type:
              description: Payload format responded with.
              schema:
                type: string
            x-v:
              description: Version of the API end point responded with.
              schema:
                type: integer
            x-fapi-interaction-Id:
              description: Reflects the value of the Interaction ID in the request.
              schema:
                type: string
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse406'
        '422':
          description: Unprocessable Entity
          headers:
            Content-Type:
              description: Payload format responded with.
              schema:
                type: string
            x-v:
              description: Version of the API end point responded with.
              schema:
                type: integer
            x-fapi-interaction-Id:
              description: Reflects the value of the Interaction ID in the request.
              schema:
                type: string
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse422'
        '500':
          description: Internal Server Error
          headers:
            Content-Type:
              description: Payload format responded with.
              schema:
                type: string
            x-v:
              description: Version of the API end point responded with.
              schema:
                type: integer
            x-fapi-interaction-Id:
              description: Reflects the value of the Interaction ID in the request.
              schema:
                type: string
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse500'
      x-scopes:
      - bank:payees:read
      x-version: '1'
  /payees/{payeeId}:
    get:
      tags:
      - Payees API
      summary: Get Payee Detail
      description: 'Obtain detailed information on a single payee.


        Note that the payee sub-structure should be selected to represent the payment destination only rather than any known characteristics of the payment recipient'
      operationId: getPayeeDetail
      parameters:
      - name: payeeId
        in: path
        description: The ID used to locate the details of a particular payee
        required: true
        x-cds-type: ASCIIString
        schema:
          type: string
      - $ref: '#/components/parameters/ParamXVHeader'
      - $ref: '#/components/parameters/ParamXMinVHeader'
      - $ref: '#/components/parameters/ParamXFapiInterationId'
      - $ref: '#/components/parameters/ParamXFapiAuthDate'
      - $ref: '#/components/parameters/ParamXFapiCustomerIpAddress'
      - $ref: '#/components/parameters/ParamXCdsClientHeaders'
      responses:
        '200':
          description: Success
          headers:
            x-v:
              description: Version of the API end point responded with.
              schema:
                type: integer
            x-fapi-interaction-id:
              description: Reflects the value of the Interaction ID in the request.
              schema:
                type: string
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ResponseBankingPayeeById'
        '400':
          description: Bad Request
          headers:
            Content-Type:
              description: Payload format responded with.
              schema:
                type: string
            x-v:
              description: Version of the API end point responded with.
              schema:
                type: integer
            x-fapi-interaction-Id:
              description: Reflects the value of the Interaction ID in the request.
              schema:
                type: string
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse400'
        '404':
          description: Payee Not Found
          headers:
            Content-Type:
              description: Payload format responded with.
              schema:
                type: string
            x-v:
              description: Version of the API end point responded with.
              schema:
                type: integer
            x-fapi-interaction-Id:
              description: Reflects the value of the Interaction ID in the request.
              schema:
                type: string
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse404'
        '406':
          description: Not Acceptable
          headers:
            Content-Type:
              description: Payload format responded with.
              schema:
                type: string
            x-v:
              description: Version of the API end point responded with.
              schema:
                type: integer
            x-fapi-interaction-Id:
              description: Reflects the value of the Interaction ID in the request.
              schema:
                type: string
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse406'
        '422':
          description: Unprocessable Entity
          headers:
            Content-Type:
              description: Payload format responded with.
              schema:
                type: string
            x-v:
              description: Version of the API end point responded with.
              schema:
                type: integer
            x-fapi-interaction-Id:
              description: Reflects the value of the Interaction ID in the request.
              schema:
                type: string
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse422'
        '500':
          description: Internal Server Error
          headers:
            Content-Type:
              description: Payload format responded with.
              schema:
                type: string
            x-v:
              description: Version of the API end point responded with.
              schema:
                type: integer
            x-fapi-interaction-Id:
              description: Reflects the value of the Interaction ID in the request.
              schema:
                type: string
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse500'
      x-scopes:
      - bank:payees:read
      x-version: '1'
components:
  schemas:
    Meta:
      type: object
    BankingInternationalPayee:
      type: object
      required:
      - bankDetails
      - beneficiaryDetails
      properties:
        beneficiaryDetails:
          $ref: '#/components/schemas/BankingInternationalPayee_beneficiaryDetails'
        bankDetails:
          $ref: '#/components/schemas/BankingInternationalPayee_bankDetails'
    BankingDomesticPayeePayId:
      type: object
      required:
      - identifier
      - type
      properties:
        name:
          type: string
          description: The name assigned to the PayID by the owner of the PayID.
        identifier:
          type: string
          description: The identifier of the PayID (dependent on type).
        type:
          type: string
          description: The type of the PayID.
          enum:
          - ABN
          - EMAIL
          - ORG_IDENTIFIER
          - TELEPHONE
    ErrorResponse404:
      type: object
      properties:
        errors:
          uniqueItems: false
          type: array
          items:
            $ref: '#/components/schemas/Error'
      example:
        errors:
        - code: PY-NF-01
          title: Payee not found.
          detail: No payee was found with that id.
    LinksPaginated:
      type: object
      required:
      - self
      properties:
        self:
          type: string
          description: Fully qualified link that generated the current response document.
          x-cds-type: URIString
        first:
          type: string
          description: URI to the first page of this set.
          x-cds-type: URIString
        prev:
          type: string
          description: URI to the previous page of this set.
          x-cds-type: URIString
        next:
          type: string
          description: URI to the next page of this set.
          x-cds-type: URIString
        last:
          type: string
          description: URI to the last page of this set.
          x-cds-type: URIString
      x-conditional:
      - prev
      - next
      - first
      - last
    BankingDomesticPayee:
      type: object
      required:
      - payeeAccountUType
      properties:
        payeeAccountUType:
          type: string
          description: Type of account object included.
          enum:
          - account
          - card
          - payId
        account:
          $ref: '#/components/schemas/BankingDomesticPayeeAccount'
        card:
          $ref: '#/components/schemas/BankingDomesticPayeeCard'
        payId:
          $ref: '#/components/schemas/BankingDomesticPayeePayId'
      x-conditional:
      - account
      - card
      - payId
    ResponseBankingPayeeById:
      type: object
      required:
      - data
      - links
      example:
        data:
          payeeUType: domestic
          domestic:
            payeeAccountUType: account
            account:
              accountName: HILL DL
              bsb: '062000'
              accountNumber: '13848189'
          payeeId: nFZDTs-zBpDy4pUNdqeh70mn6yqGIjgim2grXukVWL8
          nickname: HILL DL
          type: DOMESTIC
        links:
          self: https://secure.api.commbank.com.au/api/cds-au/v1/banking/payees/nFZDTs-zBpDy4pUNdqeh70mn6yqGIjgim2grXukVWL8
        meta: {}
      properties:
        data:
          $ref: '#/components/schemas/BankingPayeeDetail'
        links:
          $ref: '#/components/schemas/Links'
        meta:
          $ref: '#/components/schemas/Meta'
    BankingInternationalPayee_beneficiaryDetails:
      required:
      - country
      properties:
        name:
          type: string
          description: Name of the beneficiary.
        country:
          type: string
          description: Country where the beneficiary resides.
          x-cds-type: ExternalRef
        message:
          type: string
          description: Response message for the payment.
    BankingInternationalPayee_bankDetails_bankAddress:
      required:
      - address
      - name
      properties:
        name:
          type: string
          description: Name of the recipient Bank.
        address:
          type: string
          description: Address of the recipient Bank.
    BankingDomesticPayeeAccount:
      type: object
      required:
      - accountNumber
      - bsb
      properties:
        accountName:
          type: string
          description: Name of the account to pay to.
        bsb:
          type: string
          description: BSB of the account to pay to.
        accountNumber:
          type: string
          description: Number of the account to pay to.
    BankingPayeeDetail:
      allOf:
      - $ref: '#/components/schemas/BankingPayee'
      - type: object
        required:
        - payeeUType
        properties:
          payeeUType:
            type: string
            description: Type of object included that describes the payee in detail
            enum:
            - domestic
            - biller
            - international
          domestic:
            $ref: '#/components/schemas/BankingDomesticPayee'
          biller:
            $ref: '#/components/schemas/BankingBillerPayee'
          international:
            $ref: '#/components/schemas/BankingInternationalPayee'
        x-conditional:
        - domestic
        - biller
        - international
    ResponseBankingPayeeList_data:
      required:
      - payees
      properties:
        payees:
          type: array
          description: The list of payees returned
          items:
            $ref: '#/components/schemas/BankingPayee'
    BankingInternationalPayee_bankDetails:
      required:
      - accountNumber
      - country
      properties:
        country:
          type: string
          description: Country of the recipient institution.
          x-cds-type: ExternalRef
        accountNumber:
          type: string
          description: Account Targeted for payment.
        bankAddress:
          $ref: '#/components/schemas/BankingInternationalPayee_bankDetails_bankAddress'
        beneficiaryBankBIC:
          type: string
          description: Swift bank code.
          x-cds-type: ExternalRef
        fedWireNumber:
          type: string
          description: Number for Fedwire payment (Federal Reserve Wire Network).
        sortCode:
          type: string
          description: Sort code used for account identification in some jurisdictions.
        chipNumber:
          type: string
          description: Number for the Clearing House Interbank Payments System.
        routingNumber:
          type: string
          description: International bank routing number.
        legalEntityIdentifier:
          type: string
          description: The legal entity identifier (LEI) for the beneficiary.
          x-cds-type: ExternalRef
    ErrorResponse422:
      type: object
      properties:
        errors:
          uniqueItems: false
          type: array
          items:
            $ref: '#/components/schemas/Error'
      example:
        errors:
        - Code: PY-UE-01
          Title: page-size is Invalid
          Detail: page-size must be a number and between 1 and 1000.
    BankingBillerPayee:
      type: object
      required:
      - billerCode
      - billerName
      properties:
        billerCode:
          type: string
          description: BPAY Biller Code of the Biller.
        crn:
          type: string
          description: BPAY CRN of the Biller.
        billerName:
          type: string
          description: Name of the Biller.
      x-conditional:
      - crn
    ErrorResponse400:
      type: object
      properties:
        errors:
          uniqueItems: false
          type: array
          items:
            $ref: '#/components/schemas/Error'
      example:
        errors:
        - code: PY-BR-02
          title: page is invalid
          detail: page must be a valid number.
    MetaPaginated:
      type: object
      required:
      - totalPages
      - totalRecords
      properties:
        totalRecords:
          type: integer
          description: The total number of records in the full set.
          x-cds-type: NaturalNumber
        totalPages:
          type: integer
          description: The total number of pages in the full set.
          x-cds-type: NaturalNumber
    BankingDomesticPayeeCard:
      type: object
      required:
      - cardNumber
      properties:
        cardNumber:
          type: string
          description: Name of the account to pay to.
          x-cds-type: MaskedPANString
    BankingPayee:
      type: object
      required:
      - nickname
      - payeeId
      - type
      properties:
        payeeId:
          type: string
          description: ID of the payee.
          x-cds-type: ASCIIString
        nickname:
          type: string
          description: The short display name of the payee as provided by the customer.
        description:
          type: string
          description: A description of the payee provided by the customer.
        type:
          type: string
          description: The type of payee.
          enum:
          - BILLER
          - DOMESTIC
          - INTERNATIONAL
        creationDate:
          type: string
          description: The date the payee was created by the customer.
          x-cds-type: DateString
    ErrorResponse500:
      type: object
      properties:
        errors:
          uniqueItems: false
          type: array
          items:
            $ref: '#/components/schemas/Error'
      example:
        errors:
        - code: PY-IS-01
          title: Server Error
          detail: An error has occurred whilst processing your request. Please try again later.
    Error:
      type: object
      properties:
        code:
          type: string
        title:
          type: string
        detail:
          type: string
    Links:
      type: object
      required:
      - self
      properties:
        self:
          type: string
          description: Fully qualified link that generated the current response document.
          x-cds-type: URIString
    ResponseBankingPayeeList:
      type: object
      required:
      - data
      - links
      - meta
      example:
        data:
          payees:
          - payeeId: '20353190'
            nickname: HILL DL
            type: DOMESTIC
          - payeeId: '20354634'
            nickname: belle
            type: DOMESTIC
          - payeeId: '20385340'
            nickname: bta other cba
            type: DOMESTIC
          - payeeId: '20373598'
            nickname: nicknametest10
            type: BILLER
          - payeeId: '20373587'
            nickname: nicknametest
            type: BILLER
          - payeeId: '20373599'
            nickname: nicknametest11
            type: BILLER
          - payeeId: '20373597'
            nickname: nicknametest6
            type: BILLER
          - payeeId: '20348597'
            nickname: wk
            type: BILLER
        links:
          self: https://secure.api.commbank.com.au/api/cds-au/v1/banking/payees?page=1&page-size=25
          first: https://secure.api.commbank.com.au/api/cds-au/v1/banking/payees?page=1&page-size=25
          last: https://secure.api.commbank.com.au/api/cds-au/v1/banking/payees?page=1&page-size=25
        meta:
          totalRecords: 8
          totalPages: 1
      properties:
        data:
          $ref: '#/components/schemas/ResponseBankingPayeeList_data'
        links:
          $ref: '#/components/schemas/LinksPaginated'
        meta:
          $ref: '#/components/schemas/MetaPaginated'
    ErrorResponse406:
      type: object
      properties:
        errors:
          uniqueItems: false
          type: array
          items:
            $ref: '#/components/schemas/Error'
      example:
        errors:
        - code: PY-RH-03
          title: x-v is invalid
          detail: x-v header must be a supported version number.
  parameters:
    ParamXVHeader:
      name: x-v
      in: header
      description: Version of the API end point being requested.
      example: 1
      required: false
      schema:
        type: integer
    ParamPageSize:
      name: page-size
      in: query
      description: Number of records to return with the page
      required: false
      schema:
        type: integer
        default: 25
        maximum: 1000
        minimum: 1
    ParamXFapiAuthDate:
      name: x-fapi-auth-date
      in: header
      description: The time when the customer last logged in to the data recipient.
      required: false
      example: '2002-10-03T01:00:00+10:00'
      schema:
        type: string
    ParamXMinVHeader:
      name: x-min-v
      in: header
      description: Minimum version of the API end point you are requesting.
      example: 1
      required: false
      schema:
        type: integer
    ParamXFapiInterationId:
      name: x-fapi-interaction-id
      in: header
      description: Reflects the value of the Interaction ID in the request.
      required: false
      example: f688ae24-9719-4975-9f58-f6b7e655c37d
      schema:
        type: string
    ParamXFapiCustomerIpAddress:
      name: x-fapi-customer-ip-address
      in: header
      description: The customer's original IP address if the customer is currently logged in to the data recipient.
      required: false
      example: 192.168.1.1
      schema:
        type: string
    ParamXCdsClientHeaders:
      name: x-cds-client-headers
      in: header
      description: The customer's original standard http headers encoded, including the original User Agent header, if the customer is currently logged in to the data recipient.
      required: false
      example: Q3VzdG9tZXJzRGV2OkN1c3RvbWVyc0Rldg==
      x-cds-type: Base64
      schema:
        type: string
    ParamPage:
      name: page
      in: query
      description: Page number being requested
      required: false
      schema:
        type: integer
        default: 1
x-tagGroups:
- name: ''
  tags:
  - Accounts API