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

# Get pending cashflow activity

> Retrieve pending deposits and savings withdrawals that will affect the user's cash balance once settled.



## OpenAPI

````yaml GET /transactions/pending-cashflow-activity
openapi: 3.0.3
info:
  title: Wealthyhood Transactions API
  version: 1.0.0
  description: >
    Transaction activity endpoints that expose investment, cash, and savings
    activity for users.


    All requests require a bearer token with the scopes advertised in the
    primary specification, 

    and must include the `x-user-id` header so the platform can resolve the
    acting investor.
servers:
  - url: https://{host}
    variables:
      host:
        default: api.wealthyhood.com
        description: Wealthyhood API host name.
security:
  - bearerAuth: []
tags:
  - name: Transactions
    description: User transaction activity information.
paths:
  /transactions/pending-cashflow-activity:
    get:
      tags:
        - Transactions
      summary: Get pending cash flows
      description: >
        Returns pending cash inflows for the user's main portfolio that will
        affect the cash balance

        once settled. Results are sorted by creation date in descending order
        (newest first). All items have

        `status: Pending` (domain `PendingTopUp` is normalized to `Pending`).


        **Included:**

        - Pending deposits — bank transfers and payment-provider deposits that
        have completed authorization
          but are not yet settled
        - Pending savings withdrawals — transfers from savings to cash balance
        (`Pending` or `PendingTopUp`
          domain status)

        **Excluded:**

        - Cashbacks (unlike the B2C API)

        - Settled, cancelled, or rejected transactions

        - Incomplete payment-provider deposits (e.g. Truelayer authorization
        still in progress)

        - Deposits linked to active asset purchases, automated investments, or
        active savings top-ups
      parameters:
        - $ref: '#/components/parameters/ExternalUserId'
      responses:
        '200':
          description: Pending cash flows response.
          content:
            application/json:
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/TransactionActivityItem'
              examples:
                pendingCashFlows:
                  summary: Pending deposit and savings withdrawal
                  value:
                    - id: 507f1f77bcf86cd799439020
                      owner: 507f1f77bcf86cd799439011
                      activityGroup: pendingCashflows
                      activityType: Deposit
                      status: Pending
                      displayDate: '2025-01-15T14:20:00Z'
                      consideration:
                        currency: EUR
                        amount: 500
                      cashFlowSign: 1
                    - id: 507f1f77bcf86cd799439021
                      owner: 507f1f77bcf86cd799439011
                      activityGroup: pendingCashflows
                      activityType: SavingsWithdrawal
                      status: Pending
                      displayDate: '2025-01-14T10:00:00Z'
                      consideration:
                        currency: EUR
                        amount: 200
                      cashFlowSign: 1
                      details:
                        savingsProductId: mmf_dist_eur
                        orders: []
        '401':
          $ref: '#/components/responses/UnauthorizedError'
        '403':
          $ref: '#/components/responses/ForbiddenError'
        '404':
          $ref: '#/components/responses/NotFoundError'
components:
  parameters:
    ExternalUserId:
      name: x-user-id
      in: header
      description: >
        The unique identifier for the acting customer. Must match the user
        associated with the

        bearer token.
      required: true
      schema:
        type: string
        example: bank-user-12345
  schemas:
    TransactionActivityItem:
      type: object
      required:
        - id
        - activityGroup
        - activityType
        - displayDate
        - status
        - owner
      properties:
        id:
          type: string
          description: The unique identifier of the transaction.
          example: 507f1f77bcf86cd799439011
        activityGroup:
          type: string
          enum:
            - investment
            - cash
            - savings
            - pendingCashflows
          description: The activity group this transaction belongs to.
          example: investment
        activityType:
          type: string
          description: |
            The specific activity type. Values depend on activityGroup:
            - investment: Buy, Sell, Rebalance, Dividends
            - cash: Deposit, Withdraw, Investments, Dividends
            - savings: cashToSavings, savingsToCash, savingsInterest
            - pendingCashflows: Deposit, SavingsWithdrawal
          example: Buy
        displayDate:
          type: string
          format: date-time
          description: |
            The date/time when this transaction occurred or was displayed.
            For settled transactions, this is typically the settlement date.
          example: '2025-01-15T10:30:00Z'
        status:
          type: string
          enum:
            - Pending
            - Cancelled
            - Rejected
            - Settled
          description: >
            The current status of the transaction. Valid statuses depend on the
            activityGroup:

            - **investment**: Pending, Cancelled, Settled, Rejected

            - **cash**: Pending, Settled (user-visible settlement; e.g. deposits
            may show Settled once funds are received while internal settlement
            is still pending)

            - **savings**: Pending, Settled

            - **pendingCashflows**: Pending
          example: Settled
        currency:
          type: string
          description: >
            ISO 4217 currency code. Required for investment, cash, and savings
            activity.

            Omitted for pendingCashflows (use `consideration` instead).
          example: EUR
          enum:
            - GBP
            - EUR
            - USD
        amount:
          type: number
          description: >
            Transaction amount in major units (e.g., 12.34 for €12.34). Required
            for investment, cash,

            and savings activity. Omitted for pendingCashflows (use
            `consideration` instead).
          example: 1000
          minimum: 0
        consideration:
          type: object
          description: >
            Optional transaction consideration with currency and amount. Used by
            pendingCashflows

            activity instead of top-level `currency` and `amount`.
          properties:
            currency:
              type: string
              description: ISO 4217 currency code
              example: EUR
              enum:
                - GBP
                - EUR
                - USD
            amount:
              type: number
              description: Transaction amount in major units
              example: 1000
              minimum: 0
        cashFlowSign:
          type: integer
          enum:
            - 1
            - -1
          description: >
            Indicates whether this transaction represents a positive (1) or
            negative (-1) cash flow.

            Present for cash activity (activityGroup: "cash") and pending
            cashflow activity

            (activityGroup: "pendingCashflows"). Positive cash flows include
            deposits, dividends,

            and withdrawals from savings. Negative cash flows include
            withdrawals, investments,

            and savings top-ups.
          example: -1
        owner:
          type: string
          description: The unique identifier of the user who owns this transaction.
          example: 507f1f77bcf86cd799439011
        details:
          oneOf:
            - $ref: '#/components/schemas/DividendDetails'
            - $ref: '#/components/schemas/SavingsDetails'
            - $ref: '#/components/schemas/InvestmentDetails'
          description: >
            Optional additional details specific to the transaction type.

            - For investment transactions (Buy, Sell, Rebalance):
            InvestmentDetails with `orders` array

            - For dividend transactions (Dividends): DividendDetails with `isin`
            and `asset`

            - For savings transactions (cashToSavings, savingsToCash,
            savingsInterest): SavingsDetails with `savingsProductId` and
            optional `orders` array

            - For cash transactions with activityType "Investments":
            InvestmentDetails with `orders` array

            - For cash transactions with activityType "Dividends":
            DividendDetails with `isin` and `asset`

            - For pendingCashflows with activityType "SavingsWithdrawal":
            SavingsDetails with `savingsProductId` and empty `orders` array
    DividendDetails:
      type: object
      required:
        - isin
      description: Details for dividend transactions.
      properties:
        isin:
          type: string
          description: International Securities Identification Number.
          example: US0378331005
        asset:
          type: string
          description: Asset ID (e.g. equities_apple for Apple).
          example: equities_apple
    SavingsDetails:
      type: object
      required:
        - savingsProductId
      description: >-
        Details for savings transactions (cashToSavings, savingsToCash,
        savingsInterest).
      properties:
        savingsProductId:
          type: string
          description: Savings product identifier (e.g. mmf_dist_eur).
          example: mmf_dist_eur
        orders:
          type: array
          description: >
            Savings orders for the transaction. Omitted for savingsInterest
            (dividends) as interest

            payments have no associated orders. Present for cashToSavings and
            savingsToCash.
          items:
            $ref: '#/components/schemas/SavingsOrder'
    InvestmentDetails:
      type: object
      required:
        - orders
      description: >-
        Details for investment transactions (Buy, Sell, Rebalance) and cash
        activity Investments.
      properties:
        orders:
          type: array
          description: Investment orders for the transaction.
          items:
            $ref: '#/components/schemas/InvestmentOrder'
    Error:
      type: object
      required:
        - message
        - code
      properties:
        message:
          type: string
          description: Human-readable error message.
          example: Limit cannot be negative
        code:
          type: string
          description: Machine-readable error code.
          example: INVALID_LIMIT
    SavingsOrder:
      type: object
      required:
        - id
        - side
        - status
        - isin
        - consideration
      description: |
        Savings order schema used in savings activity responses.
        Include optional unitPrice, fxRate, and filledAt when applicable.
      properties:
        id:
          type: string
          description: Savings order identifier.
          example: 507f1f77bcf86cd799439015
        displayId:
          type: string
          description: User-friendly display identifier for the order (e.g., ORD-XXXXX).
          example: ORD-ABC123
        side:
          type: string
          enum:
            - Buy
            - Sell
          description: Order side (`Buy` for top up, `Sell` for withdrawal).
          example: Buy
        status:
          type: string
          enum:
            - Pending
            - Matched
            - Rejected
            - Settled
            - Cancelled
          description: Current order status.
          example: Settled
        isin:
          type: string
          description: ISIN of the savings product.
          example: IE00B1XZS804
        quantity:
          type: number
          format: double
          description: Order quantity (optional).
          example: 2000
        consideration:
          type: object
          required:
            - currency
            - amount
          description: Savings order consideration with currency and amount.
          properties:
            currency:
              type: string
              description: ISO 4217 currency code.
              example: EUR
              enum:
                - GBP
                - EUR
                - USD
            amount:
              type: number
              format: double
              description: Monetary amount in major units.
              example: 2000
              minimum: 0
        settledAt:
          type: string
          format: date-time
          nullable: true
          description: >-
            ISO datetime when the savings order settled or is expected to
            settle.
          example: '2025-01-15T00:00:00.000Z'
        createdAt:
          type: string
          format: date-time
          description: Timestamp when the order was created (optional).
          example: '2025-01-15T16:00:00Z'
        unitPrice:
          type: object
          description: >-
            Price per unit in the order's currency (optional). Amount is in
            major units.
          properties:
            amount:
              type: number
              format: double
              description: Price per unit amount in major units.
              example: 1
            currency:
              type: string
              description: ISO 4217 currency code.
              example: EUR
              enum:
                - GBP
                - EUR
                - USD
        fxRate:
          type: object
          description: Exchange rate used for currency conversion (optional).
          properties:
            rate:
              type: number
              format: double
              description: Exchange rate value.
              example: 1
            currency:
              type: string
              description: ISO 4217 currency code of the target currency.
              example: EUR
              enum:
                - GBP
                - EUR
                - USD
        filledAt:
          type: string
          format: date-time
          nullable: true
          description: ISO datetime when order was matched (optional).
          example: '2025-01-15T16:00:00Z'
    InvestmentOrder:
      type: object
      required:
        - id
        - side
        - status
        - isin
      description: >
        Investment order schema used in investment and cash activity responses.

        Investment orders include unitPrice and fxRate (optional) but do NOT
        include settlementCurrency.
      properties:
        id:
          type: string
          description: Investment order identifier.
          example: 507f1f77bcf86cd799439011
        displayId:
          type: string
          description: User-friendly display identifier for the order (e.g., ORD-XXXXX).
          example: ORD-ABC123
        side:
          type: string
          enum:
            - Buy
            - Sell
          description: Order side.
          example: Buy
        status:
          type: string
          enum:
            - Pending
            - Matched
            - Rejected
            - Settled
            - Cancelled
          description: Current order status.
          example: Settled
        isin:
          type: string
          description: International Securities Identification Number.
          example: US0378331005
        quantity:
          type: number
          format: double
          description: Order quantity (optional).
          example: 5
        consideration:
          type: object
          description: Order consideration with currency and amount (optional).
          properties:
            currency:
              type: string
              description: ISO 4217 currency code.
              example: EUR
              enum:
                - GBP
                - EUR
                - USD
            amount:
              type: number
              format: double
              description: Order amount in major units.
              example: 1000
              minimum: 0
        unitPrice:
          type: object
          description: >-
            Price per unit (per share) in the order's currency (optional, for
            investment orders only). Amount is in major units (e.g. 200.00 for
            €200.00).
          properties:
            amount:
              type: number
              format: double
              description: Price per unit amount in major units (e.g. 200.00 for €200.00).
              example: 200
            currency:
              type: string
              description: ISO 4217 currency code.
              example: EUR
              enum:
                - GBP
                - EUR
                - USD
        fxRate:
          type: object
          description: >-
            Exchange rate used for currency conversion (optional, for investment
            orders only).
          properties:
            rate:
              type: number
              format: double
              description: Exchange rate value.
              example: 1.15
            currency:
              type: string
              description: ISO 4217 currency code of the target currency.
              example: USD
              enum:
                - GBP
                - EUR
                - USD
        executionWindow:
          type: object
          nullable: true
          description: Execution timing information (optional, for investment orders only).
          properties:
            executionType:
              type: string
              description: Internal execution type such as `REALTIME` or `MARKET_HOURS`.
              example: REALTIME
            start:
              type: string
              format: date-time
              nullable: true
              description: Execution window start (ISO datetime).
            end:
              type: string
              format: date-time
              nullable: true
              description: Execution window end (ISO datetime).
        fees:
          allOf:
            - $ref: '#/components/schemas/TransactionFees'
          nullable: true
          description: Wealthyhood fee breakdown for the order (optional).
        partnerFees:
          allOf:
            - $ref: '#/components/schemas/PartnerFees'
          nullable: true
          description: Partner countervalue fees (optional, partner users only).
        settledAt:
          type: string
          format: date-time
          nullable: true
          description: >-
            ISO datetime when the investment order settled or is expected to
            settle.
          example: '2025-01-15T00:00:00.000Z'
        filledAt:
          type: string
          format: date-time
          nullable: true
          description: >-
            ISO datetime when order was matched (optional, for investment orders
            only).
          example: '2025-01-15T10:30:00Z'
        createdAt:
          type: string
          format: date-time
          description: Timestamp when the order was created (optional).
          example: '2025-01-15T10:30:00Z'
        displayDate:
          type: string
          format: date-time
          description: Display date (filledAt when matched, else createdAt).
          example: '2025-01-15T10:30:00Z'
        isCancellable:
          type: boolean
          description: Whether the order can be cancelled by the user.
          example: false
    TransactionFees:
      type: object
      description: Wealthyhood fees on the order.
      properties:
        commission:
          $ref: '#/components/schemas/OrderFeeBreakdown'
        fx:
          $ref: '#/components/schemas/OrderFeeBreakdown'
        realtimeExecution:
          $ref: '#/components/schemas/OrderFeeBreakdown'
      additionalProperties: false
    PartnerFees:
      type: object
      description: Partner (ETE/NBG) countervalue fees (sibling of `fees`)
      properties:
        commission:
          $ref: '#/components/schemas/OrderFeeBreakdown'
        fx:
          $ref: '#/components/schemas/OrderFeeBreakdown'
      additionalProperties: false
    OrderFeeBreakdown:
      type: object
      properties:
        currency:
          type: string
          enum:
            - GBP
            - EUR
            - USD
        amount:
          type: number
          format: double
      additionalProperties: false
  responses:
    UnauthorizedError:
      description: Unauthorized – missing or invalid bearer token.
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/Error'
          example:
            message: Authentication required
            code: UNAUTHORIZED
    ForbiddenError:
      description: Forbidden – valid credentials but insufficient permissions.
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/Error'
          example:
            message: Access denied
            code: FORBIDDEN
    NotFoundError:
      description: Not found – user has no portfolio.
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/Error'
          example:
            message: User has no portfolio
            code: NOT_FOUND
  securitySchemes:
    bearerAuth:
      type: http
      scheme: bearer
      bearerFormat: JWT
      description: >
        OAuth 2.0 bearer token issued by Wealthyhood. Include this token in the
        `Authorization` header

        as `Bearer <token>`.

````