> ## Documentation Index
> Fetch the complete documentation index at: https://developer.utgl.io/llms.txt
> Use this file to discover all available pages before exploring further.

# Balance Transfer

> Transfer balances between two card accounts. This applies to credit card accounts operating in accountType `prepaid`  only'

The source and destination card accounts must be of the same currency and the source card account must have sufficient funds to complete the transfer.




## OpenAPI

````yaml POST /cardaccounts/transfer
openapi: 3.1.0
info:
  title: API Reference
  version: '1.0'
servers:
  - url: https://access.utgl.io/v1
  - url: https://sandbox.access.utgl.io/v1
security:
  - Basic: []
  - Bearer: []
tags:
  - name: Accounts
  - name: Transactions
  - name: Card Accounts
  - name: Card Products
  - name: Cards
  - name: Digital Custody
  - name: Fee
  - name: Payout
paths:
  /cardaccounts/transfer:
    post:
      tags:
        - Card Accounts
      summary: Balance Transfer
      description: >
        Transfer balances between two card accounts. This applies to credit card
        accounts operating in accountType `prepaid`  only'


        The source and destination card accounts must be of the same currency
        and the source card account must have sufficient funds to complete the
        transfer.
      operationId: transferCardAccount
      requestBody:
        required: true
        content:
          application/json:
            schema:
              type: object
              required:
                - sourceCardAccountId
                - destinationCardAccountId
                - amount
                - currency
              properties:
                sourceCardAccountId:
                  type: string
                  format: uuid
                  example: 6a3176fe-7715-4fe0-a548-034912d7f800
                  description: >-
                    Card Account ID to transfer funds from. This card account
                    **must** be of type `prepaid`
                destinationCardAccountId:
                  type: string
                  format: uuid
                  example: 6a3176fe-7715-4fe0-a548-034912d7f800
                  description: >-
                    Card Account ID to transfer funds to. This card account
                    **must** be of type `prepaid`
                amount:
                  type: number
                  description: Amount to transfer
                description:
                  type: string
                  description: Description of the transfer, generally displayed to client
                  example: Transfer from card account to card account
                currency:
                  type: string
                  description: Currency to transfer
                  example: USD
                idempotencyKey:
                  $ref: '#/components/schemas/IdempotencyKey'
                xid:
                  $ref: '#/components/schemas/Xid'
                xmetadata:
                  $ref: '#/components/schemas/Xmetadata'
      responses:
        '200':
          description: Card Account Balance Transfer Completed
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/CardAccountTransaction'
components:
  schemas:
    IdempotencyKey:
      type: string
      description: >-
        Unique idempotency key for ensuring exactly-once execution of mutating
        requests.
      format: string
      example: xeev1she5eegh9daiviethahchoo1muW
    Xid:
      type: string
      description: >-
        External identifier, unique across all resources created under this
        account.
    Xmetadata:
      type: object
      description: External metadata
      example:
        key1: value1
        key2:
          - value2.1
          - value2.2
      additionalProperties: true
      oneOf:
        - type: string
        - type: array
          items:
            type: string
    CardAccountTransaction:
      type: object
      title: Card Account Transaction
      description: Card account transaction
      properties:
        id:
          type: string
          format: uuid
          description: Card account transaction id
        xid:
          $ref: '#/components/schemas/Xid'
        xmetadata:
          $ref: '#/components/schemas/Xmetadata'
        refId:
          description: Card account transaction reference
          type: string
          example: CT34567890
        cardAccountId:
          type: string
          format: uuid
          description: Card account id
        cardId:
          type: string
          format: uuid
          description: >-
            Card id of the card that was used to make the transaction. This
            field will be null for card account transactions that are not
            associated with a card
        cardLast4:
          type: string
          description: The last 4 digits of the card number.
        cardEmbossedName:
          type: string
          description: The name embossed on the card.
        createdAt:
          type: string
          format: date-time
          description: >-
            Date / Time of transaction at which it was initially recorded into
            the account
          example: '2022-11-10T07:47:09.415Z'
        status:
          type: string
          enum:
            - pending
            - posted
            - declined
            - void
          description: >-
            Status of the card account transaction


            - pending: The transaction has been initiated but has not yet been
            fully processed. The amount and details of the transaction may
            change while it is in pending status

            - posted: The transaction has been posted and is final, for card
            transactions this means that the transaction has been captured

            - declined: The transaction has been rejected / declined (Card
            Transaction Only)

            - void: The transaction has been cancelled
        postedAt:
          type: string
          format: date-time
          description: >-
            Date / Time of transaction at which it was posted into the account

            For transactions that have not been captured, postedAt will be null,
            indicating that it hasn't is pending
          example: '2022-11-10T07:47:09.415Z'
        intent:
          type: string
          description: >-
            The intent categorizing the transaction type.

            - `charge` - Card purchase or payment authorization

            - `refund` - Reversal or refund of a previous charge

            - `topup` - Funds loaded into the card account

            - `withdraw` - Funds withdrawn from the card account (e.g. ATM or
            cash advance)

            - `repay` - Repayment towards the card account outstanding balance

            - `cashback` - Cashback reward credited to the account

            - `interest` - Interest accrued on the outstanding balance

            - `transfer` - Balance transfer between card accounts

            - `fee` - Service fees (e.g. annual fee, late payment fee)

            - `other` - Transaction types not classified under the above
            categories
          enum:
            - charge
            - refund
            - topup
            - withdraw
            - transfer
            - repay
            - cashback
            - interest
            - fee
            - other
        authorization:
          type: object
          description: Authorization info, applies to `charge` transactions only
          properties:
            id:
              type: string
              format: uuid
              description: Authorization id
            currency:
              type: string
              description: Payment authorization currency
              example: USD
            amount:
              type: number
              description: Payment authorization amount
              example: 128.29
            createdAt:
              type: string
              format: date-time
              example: '2022-11-10T07:47:09.415Z'
            type:
              type: string
              enum:
                - PURCHASE
                - ATM
              example: Payment authorization type
            responseCode:
              type: string
              description: Payment authorization response code
            responseMessage:
              type: string
              description: Payment authorization response message
            cardPresent:
              type: boolean
              description: >-
                Whether the payment made when cardholder and card are both
                present at the time of purchase
              example: true
        merchant:
          type: object
          description: >-
            This field will provide information about the merchant where the
            transaction occurred (for "charge" transactions only).
          properties:
            name:
              type: string
              description: The name or business name of the merchant.
              example: UBER * PENDING Amsterdam NLD
            mcc:
              type: string
              description: >-
                The Merchant Category Code (MCC) assigned by the payment card
                network (e.g. Visa, Mastercard).
              example: '4121'
            category:
              type: string
              description: The category name that corresponds to the MCC code.
              example: Taxicabs and limousines
            country:
              type: string
              description: The country code of the merchant.
              example: HK
        currency:
          type: string
          description: Currency of transaction in card account base currency
          example: HKD
        amount:
          type: number
          description: Amount of the transaction in the base currency of the card account.
          example: 1000
        entryType:
          type: string
          enum:
            - CREDIT
            - DEBIT
          description: >
            The type of entry representing whether the transaction resulted in a
            credit to or debit from the card account balance.

            A `DEBIT` transaction indicates a positive value added to the
            account (e.g. points reward, refund), while a `CREDIT` transaction
            indicates a negative value subtracted from the account balance (e.g.
            purchase, interest charge).
        description:
          description: >-
            Description of the transaction, for statement and/or account
            activity display
          example: UBER * PENDING Amsterdam NLD
          type: string
        disputeStatus:
          type:
            - string
            - 'null'
          enum:
            - requested
            - pending
            - success
            - failed
            - reported
            - null
          description: >-
            Dispute status for this card transaction, or null when the
            transaction is not disputed.
          example: pending
        grossAmount:
          description: >-
            The total purchase amount of the transaction in the base currency of
            the card account.
          type: number
          example: 1000
  securitySchemes:
    Basic:
      type: http
      scheme: basic
    Bearer:
      type: http
      scheme: bearer
      bearerFormat: JWT

````