BCB Group Accounts API

The Accounts API from BCB Group — 4 operation(s) for accounts.

OpenAPI Specification

bcb-group-accounts-api-openapi.yml Raw ↑
openapi: 3.0.0
info:
  title: BCB Group Payments Accounts API
  description: This is the api documentation for the BCB Group Payments API
  version: 1.0.0
  contact: {}
servers:
- url: https://api.bcb.group
  description: Production
- url: https://api.uat.bcb.group
  description: Sandbox
tags:
- name: Accounts
paths:
  /v4/accounts/balance/{accountId}:
    get:
      summary: Balance
      description: Get the balance for an account
      operationId: Accounts_BalanceV4
      responses:
        '200':
          description: The balance was retrieved successfully
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/BalanceResponse'
        '401':
          description: Unauthorized
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
        '403':
          description: Forbidden
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
        '404':
          description: The balance for the account was not found
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
        '500':
          description: Internal Server Error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
      parameters:
      - name: accountId
        in: path
        required: true
        description: The account id
        schema:
          example: 123
          type: integer
          default: ''
      tags:
      - Accounts
      security:
      - bearer: []
  /v3/accounts:
    get:
      summary: Accounts
      description: List Accounts
      operationId: Accounts_ListAccountsV3
      responses:
        '200':
          description: Success
          content:
            application/json:
              examples:
                Success:
                  summary: Success
                  value:
                  - id: 378
                    counterparty_id: 483
                    aid: A01-CX00000101
                    cid: CX00000101
                    account_type: Wallet
                    ccy: BTC
                    host_name: BCB Group
                    host_hub: ''
                    host_location: ''
                    node_name: BCB Payments Ltd
                    node_address: 3LxDswEWKC3mJewRYs44xr3qNBqXMwhszo
                    node_location: ''
                    node_country: ''
                    node_subaddress: ''
                    iban: ''
                    account_label: LNS 5 BTC hszo
                    description: BCB Payments Ltd, 3LxDswEWKC3mJewRYs44xr3qNBqXMwhszo, BTC
                    bcb_controlled: 1
                    settlement_reference: ''
                    created_at: '2018-12-28T14:42:44.000Z'
                    updated_at: '2019-01-24T21:26:27.000Z'
                    partner_id: 4
                    email: otc@bcbgroup.io
                    reporting_ccy: GBP
                    pid: P01061701
                    partner_name: BCB Direct
                  - id: 383
                    counterparty_id: 483
                    aid: A02-CX00000101
                    cid: CX00000101
                    account_type: Bank
                    ccy: CHF
                    host_name: Credit Suisse
                    host_hub: Zurich
                    host_location: Lake View, Zurich, CH 2001, Switzerland
                    node_name: Best Swiss OTC LLC
                    node_address: '6013354000'
                    node_location: ''
                    node_country: CH
                    node_subaddress: ''
                    iban: CH04NWBK53616776013354
                    account_label: Best Swiss CHF Main Account
                    description: Best Swiss, Credit Suisse CH04NWBK53616776013354, CHF
                    bcb_controlled: 0
                    settlement_reference: ''
                    created_at: '2018-12-28T14:42:44.000Z'
                    updated_at: '2018-12-28T14:42:44.000Z'
                    partner_id: 4
                    email: otc@bestswiss.io
                    reporting_ccy: CHF
                    pid: P01061701
                    partner_name: Best Swiss OTC
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/Account'
        '401':
          description: Unauthorized
          content:
            text/html:
              schema:
                type: string
                example: Invalid token
        '500':
          description: Internal Server Error
          content:
            text/html:
              schema:
                type: string
                example: Internal Server Error
      parameters:
      - name: counterparty_id
        in: query
        required: false
        description: Limit accounts by Counterparty ID
        schema:
          type: integer
          default: ''
      - name: id
        in: query
        required: false
        description: Limit result set to a specific Account ID
        schema:
          type: integer
          default: ''
      - name: limit
        in: query
        required: false
        description: Limit result set for server-side paging
        schema:
          type: integer
          default: ''
      - name: pageToken
        in: query
        required: false
        description: Offset result set when paging
        schema:
          type: integer
          default: '0'
      tags:
      - Accounts
      security:
      - bearer: []
  /v3/accounts/{accountId}/transactions/{transactionId}:
    get:
      summary: Transaction Detail
      description: List details of a transaction within user permissions
      operationId: Accounts_TransactionDetailV3
      responses:
        '200':
          description: Success
          content:
            application/json:
              examples:
                Success:
                  summary: Success
                  value:
                    tx_id: 7b73263d-65dc-11e9-b39c-42010a8400a9
                    account_id: 539
                    blinc_id: null
                    network: FPS
                    value_date: '2019-04-23T14:28:26.000Z'
                    credit: 0
                    details:
                      bic: null
                      iban: GB41CLRB04054100000033
                      blinc_id: null
                      reference: BCB Pay 53135 GBP
                      sort_code: '040541'
                      account_name: BCB Payments Ltd
                      account_number: '00000033'
                      counterparty_reference: BCB Pay 53135 GBP
                      endToEndIdentifier: fcb60b45a4b94371b7cf2321ec318117
                      nonce: 1598455372829
                    ticker: GBP
                    amount: 5858.94
                    approved: 1
                    notes: null
                    source_name: clearbank
              schema:
                $ref: '#/components/schemas/TransactionDetailResponse'
        '401':
          description: Unauthorized
          content:
            text/html:
              schema:
                type: string
                example: Invalid token
        '403':
          description: Forbidden
          content:
            text/html:
              schema:
                type: string
                example: Forbidden
        '404':
          description: Not Found
          content:
            text/html:
              schema:
                type: string
                example: Not Found
        '500':
          description: Internal Server Error
          content:
            text/html:
              schema:
                type: string
                example: Internal Server Error
      parameters:
      - name: accountId
        in: path
        required: true
        description: The account id
        schema:
          example: 123
          type: integer
          default: ''
      - in: path
        name: transactionId
        schema:
          type: string
        required: true
      tags:
      - Accounts
      security:
      - bearer: []
  /v3/accounts/{accountId}/transactions:
    get:
      summary: Transactions
      description: List Account Transactions
      operationId: Accounts_TransactionsV3
      responses:
        '200':
          description: Success
          content:
            application/json:
              examples:
                Success:
                  summary: Success
                  value:
                  - tx_id: 7b73263d-65dc-11e9-b39c-42010a8400a9
                    account_id: 539
                    blinc_id: null
                    network: FPS
                    value_date: '2019-04-23T14:28:26.000Z'
                    credit: 0
                    details:
                      bic: null
                      iban: GB41CLRB04054100000033
                      blinc_id: null
                      reference: BCB Pay 53135 GBP
                      sort_code: '040541'
                      account_name: BCB Payments Ltd
                      account_number: '00000033'
                      counterparty_reference: BCB Pay 53135 GBP
                      endToEndIdentifier: fcb60b45a4b94371b7cf2321ec318117
                      nonce: 1598455372829
                    ticker: GBP
                    amount: 5858.94
                    approved: 1
                    notes: null
                    source_name: clearbank
                  - tx_id: 38aa62fa-653e-11e9-b39c-42010a8400a9
                    account_id: 539
                    blinc_id: null
                    network: FPS
                    value_date: '2019-04-22T19:35:37.000Z'
                    credit: 1
                    details:
                      bic: null
                      iban: GB41CLRB04054100000033
                      blinc_id: null
                      reference: BCB Pay 53135 GBP
                      sort_code: '040541'
                      account_name: BCB Payments Ltd
                      account_number: '00000033'
                      counterparty_reference: BCB Pay 53135 GBP
                      endToEndIdentifier: fcb60b45a4b94371b7cf2321ec318117
                      nonce: 1623419032251
                    ticker: GBP
                    amount: 8280
                    approved: 1
                    notes: null
                    source_name: clearbank
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/Transaction'
        '401':
          description: Unauthorized
          content:
            text/html:
              schema:
                type: string
                example: Invalid token
        '403':
          description: Forbidden
          content:
            text/html:
              schema:
                type: string
                example: Forbidden
        '404':
          description: Not Found
          content:
            text/html:
              schema:
                type: string
                example: Not Found
        '500':
          description: Internal Server Error
          content:
            text/html:
              schema:
                type: string
                example: Internal Server Error
      parameters:
      - name: accountId
        in: path
        required: true
        description: The account id
        schema:
          example: 123
          type: integer
          default: ''
      - name: dateFrom
        in: query
        required: false
        description: The date to get results from
        schema:
          type: string
          format: date
          default: ''
      - name: dateTo
        in: query
        required: false
        description: The date to get results to
        schema:
          type: string
          format: date
          default: ''
      - name: limit
        in: query
        required: false
        description: Limit result set for server-side paging
        schema:
          type: integer
          default: ''
      - name: pageToken
        in: query
        required: false
        description: Offset result set when paging
        schema:
          type: integer
          default: ''
      tags:
      - Accounts
      security:
      - bearer: []
components:
  schemas:
    Transaction:
      type: object
      properties:
        tx_id:
          type: string
          description: Transaction ID (unique code)
        account_id:
          type: integer
          description: Account ID
        value_date:
          type: string
          description: Date of transaction
        credit:
          type: boolean
          description: Is the transaction a credit/deposit.  1 for credit (true), 0 for debit (false)
        details:
          $ref: '#/components/schemas/TransactionDetails'
        ticker:
          type: string
          description: Asset identifier (e.g. 'BTC', 'USD')
        amount:
          type: string
          description: Transaction amount
        approved:
          type: boolean
          description: Flag is 1 if approved
        notes:
          type: string
          description: Free-text notes
        source_name:
          type: string
          description: Transaction source
      required:
      - tx_id
      - account_id
      - value_date
      - credit
      - details
      - ticker
      - approved
      - amount
      - notes
      - source_name
    BalanceResponse:
      type: object
      properties:
        accountId:
          type: number
          description: The id of the account
        settled:
          type: string
          description: The settled balance of the account. This is formatted with a '.' decimal separator and without thousand separators
          example: '1234.12'
        available:
          type: string
          description: The balance available with which to make payments from the account. This is formatted with a '.' decimal separator and without thousand separators
          example: '1234.12'
      required:
      - accountId
      - settled
      - available
    TransactionDetailResponse:
      type: object
      properties:
        tx_id:
          type: string
          description: Transaction ID (unique code)
      required:
      - tx_id
    TransactionDetails:
      type: object
      description: Sender or receiver account information depending on payment direction
      properties:
        bic:
          type: string
        iban:
          type: string
        blinc_id:
          type: string
        reference:
          type: string
        sort_code:
          type: string
        account_name:
          type: string
        account_number:
          type: string
        counterparty_reference:
          type: string
        endToEndIdentifier:
          type: string
        nonce:
          type: number
      required:
      - nonce
      - endToEndIdentifier
      - counterparty_reference
      - account_number
      - account_name
      - reference
    ErrorResponse:
      type: object
      properties:
        message:
          type: string
          description: The description of the error.
        statusCode:
          type: integer
          description: HTTP Status code representing the error.
      required:
      - message
      - statusCode
    Account:
      type: object
      properties:
        id:
          type: integer
          description: Account ID
        counterparty_id:
          type: integer
          description: Counterparty ID
        aid:
          type: string
          description: Alpha-numeric account ID
        cid:
          type: string
          description: Alpha-numeric counterparty ID
        account_type:
          type: string
          enum:
          - Bank
          - Custodial
          - Wallet
          description: ''
        ccy:
          type: string
          description: Asset ticker, or left hand side of trading symbol
        host_name:
          type: string
          description: Bank Name for bank accounts, Custodian Name for custody accounts, Wallet Name for wallet accounts
        host_hub:
          type: string
          description: Branch Code for bank accounts, optional for custody and wallets
        host_location:
          type: string
        node_name:
          type: string
          description: Account holder's legal name
        node_address:
          type: string
          description: Account Number for bank accounts, wallet address for wallets, optional for custody
        node_location:
          type: string
          description: Account holder's residential address for bank accounts, optional memo field for custody and wallets
        node_country:
          type: string
          description: Account holder's residential address country code (2-letter ISO country code), optional memo field for custody and wallets
        iban:
          type: string
          description: IBAN for bank accounts
        account_label:
          type: string
          description: Display name for account
        description:
          type: string
          description: Free-text description of account
        bcb_controlled:
          type: string
          description: Flag is 1 if BCB can operate the account, 0 otherwise
        settlement_reference:
          type: string
          description: Optional settlement reference for payments
        created_at:
          type: string
          description: Timestamp of account record creation (YYYY-MM-DDTHH:MM:SS.000Z)
        updated_at:
          type: string
          description: Timestamp of account record update (YYYY-MM-DDTHH:MM:SS.000Z)
        blinc_id:
          type: string
          description: Only applicable to BLINC accounts - account id within BLINC network
        partner_id:
          type: string
          description: This field is deprecated.
        email:
          type: string
          description: Email address of client
        reporting_ccy:
          type: string
          description: Home currency of client
        pid:
          type: string
          description: This field is deprecated.
        partner_name:
          type: string
          description: This field is deprecated.
      required:
      - id
      - counterparty_id