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

# List Nickel Banking transactions

> Returns a paginated list of the money that moved into, out of, or is on its way to your Nickel Banking accounts: deposits, withdrawals, card purchases and holds, interest, fees, bills paid from Nickel Banking, and customer payments that settle into it. Newest first unless `sortBy` says otherwise.

`amountCents` is always positive; `type` says which way the money moved. See [Nickel Banking](/concepts/nickel-banking#transactions) for what each type means.



## OpenAPI

````yaml /nickel-api-docs.yaml get /nickelBanking/transactions
openapi: 3.0.3
info:
  title: Nickel API
  description: >-
    This is the specification for the Nickel Rest API. The API lets you
    programmatically interact with the Nickel server. It uses resource oriented
    URLs, accepts and returns JSON encoded payloads and uses standard HTTP
    response codes. It is not a direct API to move money, but instead allows you
    to interact with Nickel as you would on a web interface.
  termsOfService: https://www.nickel.com/terms-of-service
  contact:
    email: support@nickel.com
  license:
    name: Apache 2.0
    url: https://www.apache.org/licenses/LICENSE-2.0.html
  version: 1.0.0
servers:
  - url: https://rest.staging.nickel.com
    description: Sandbox / Staging
  - url: https://rest.nickel.com
    description: Production
security:
  - bearerAuth: []
tags:
  - name: Payment
    description: Payments from your customers to you
  - name: Disbursement
    description: Payouts made from Nickel to you
  - name: Payment Link
    description: A request for payment against an invoice
  - name: Customer
    description: A customer record to request payments against
  - name: Charge Authorization
    description: >-
      An authorization for your customer to allow you to charge their payment
      method directly
  - name: Webhook
    description: Create a webhook for nickel to send updates to
  - name: File
    description: A file you can use to attach to invoices or debit authorizations
  - name: Vendor
    description: Manage vendors for accounts payable
  - name: Bill
    description: Bills from vendors and bill payments
  - name: Bill Payment Method
    description: >-
      A merchant's payment methods used to pay bills (bank accounts and cards on
      file)
  - name: Vendor Delivery Method
    description: >-
      How a vendor receives funds — bank account (ACH), check mailing address,
      or international wire (SWIFT) details
  - name: Nickel Banking
    description: Your Nickel Banking accounts, debit cards, check deposits and transactions
externalDocs:
  description: Find out more about Nickel
  url: https://nickel.com
paths:
  /nickelBanking/transactions:
    get:
      tags:
        - Nickel Banking
      summary: List Nickel Banking transactions
      description: >-
        Returns a paginated list of the money that moved into, out of, or is on
        its way to your Nickel Banking accounts: deposits, withdrawals, card
        purchases and holds, interest, fees, bills paid from Nickel Banking, and
        customer payments that settle into it. Newest first unless `sortBy` says
        otherwise.


        `amountCents` is always positive; `type` says which way the money moved.
        See [Nickel Banking](/concepts/nickel-banking#transactions) for what
        each type means.
      operationId: listNickelBankingTransactions
      parameters:
        - name: accountId
          in: query
          description: >-
            Only one account's transactions (an `id` from List Nickel Banking
            accounts). An id that isn't one of your accounts returns an empty
            page.
          required: false
          schema:
            type: string
        - name: cardId
          in: query
          description: >-
            Only one debit card's purchases, refunds and open holds (an `id`
            from List Nickel Banking cards). Also requires permission to see
            cards.
          required: false
          schema:
            type: string
        - name: type
          in: query
          description: Only transactions of this type.
          required: false
          schema:
            type: string
            enum:
              - DEPOSIT
              - WITHDRAWAL
              - INTEREST
              - FEE
              - RECEIVABLE
              - PAYABLE
              - REFUND
              - RETURN
              - CHARGEBACK
              - CHARGEBACK_WON
        - name: status
          in: query
          description: Only transactions in this state.
          required: false
          schema:
            type: string
            enum:
              - PENDING
              - SCHEDULED
              - SENT
              - FAILED
              - COMPLETED
              - REJECTED
              - CANCELLED
              - DELIVERED
        - name: startDate
          in: query
          description: >-
            First day of the date range, inclusive (YYYY-MM-DD). Must be sent
            with `endDate`.
          required: false
          schema:
            type: string
            format: date
            example: '2026-09-01'
        - name: endDate
          in: query
          description: >-
            Last day of the date range, inclusive (YYYY-MM-DD). Must be sent
            with `startDate`.
          required: false
          schema:
            type: string
            format: date
            example: '2026-09-30'
        - name: sortBy
          in: query
          description: Date order. Default `DATE_DESC`.
          required: false
          schema:
            type: string
            enum:
              - DATE_DESC
              - DATE_ASC
        - name: page
          in: query
          description: 1-indexed page number for pagination.
          required: false
          schema:
            type: integer
            minimum: 1
            example: 1
        - name: pageSize
          in: query
          description: >-
            Number of results per page. Default 20, maximum 100; larger values
            are clamped to 100, and `totalResults` still reports the full count
            so you can page through the rest.
          required: false
          schema:
            type: integer
            minimum: 1
            example: 50
      responses:
        '200':
          description: Successful operation
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/NickelBankingTransactionListResponse'
        '400':
          description: >-
            Invalid filter or pagination parameters, or only one of `startDate`
            and `endDate`
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error'
        '403':
          $ref: '#/components/responses/NickelBankingRefused'
        '500':
          description: Internal server error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error'
        default:
          description: Unexpected error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error'
components:
  schemas:
    NickelBankingTransactionListResponse:
      type: object
      properties:
        transactions:
          type: array
          items:
            $ref: '#/components/schemas/NickelBankingTransaction'
        totalResults:
          type: integer
          description: How many transactions match the filters across every page.
    Error:
      required:
        - error
      type: object
      properties:
        error:
          type: string
          description: >-
            A human-readable error message describing what went wrong. Note that
            some 500 responses may return a plain text string instead of this
            JSON object.
        code:
          type: string
          description: >-
            A stable machine-readable code, present on the errors a client can
            act on (e.g. `SHARED_ACCOUNT` on a 409 from the ACH debit
            authorization upload, `REFERENCE_CONFLICT` on a 409 from recording
            an external payment or a debit memo, `NICKEL_BANKING_NOT_ACTIVE` or
            `MISSING_PERMISSION` on a 403 from a Nickel Banking list). Absent
            otherwise.
    NickelBankingTransaction:
      type: object
      properties:
        id:
          type: string
          example: cmf3act0001qz8x4k2v7c9d3e
        type:
          type: string
          description: >-
            What kind of money movement this is. See [Nickel
            Banking](/concepts/nickel-banking#transactions) for each value. A
            string, not a closed list: handle a value you don't recognize rather
            than failing on it.
          example: WITHDRAWAL
        status:
          type: string
          example: COMPLETED
        amountCents:
          type: integer
          format: int64
          description: The amount moved, in cents. Always positive; `type` says which way.
          example: 2500
        createdAt:
          type: string
          format: date-time
        description:
          type: string
          nullable: true
          description: >-
            The text the Nickel dashboard shows in the transaction's Description
            column.
        counterpartyName:
          type: string
          nullable: true
          description: >-
            The other side of the transaction: the customer or vendor, the
            sender or receiver of a transfer, the merchant a card was used at,
            or `Nickel` for interest. Null when the record names none.
          example: Office Landlord LLC
        note:
          type: string
          nullable: true
          description: A note your team added to the transaction in the dashboard.
        flags:
          type: array
          description: >-
            Reversals of this transaction: `RETURN`, `CHARGEBACK` or `REFUND`. A
            transaction's `status` doesn't change when it is reversed, so a
            `COMPLETED` transaction is money you kept only when `flags` is
            empty.
          items:
            type: string
        account:
          type: object
          nullable: true
          description: >-
            The Nickel Banking account this transaction belongs to. For a
            transfer between two of your own accounts, the account the money
            left.
          properties:
            id:
              type: string
            nickname:
              type: string
              nullable: true
            accountNumberLastFour:
              type: string
              nullable: true
        paymentId:
          type: string
          nullable: true
          description: >-
            For a `RECEIVABLE` transaction, the customer payment — see [Returns
            a payment by id](/api-reference/payment/returns-a-payment-by-id).
        billPaymentId:
          type: string
          nullable: true
          description: >-
            For a `PAYABLE` transaction, the bill payment — see [Get a bill
            payment](/api-reference/bill/get-a-bill-payment-by-id).
  responses:
    NickelBankingRefused:
      description: >-
        Nickel Banking data this API key can't read. `code` is
        `NICKEL_BANKING_NOT_ACTIVE` when your organization has no active Nickel
        Banking account, or `MISSING_PERMISSION` when the team member the API
        key belongs to lacks the permission this list needs; the message names
        it. Also returned, without a `code`, for an API key without REST API
        access.
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/Error'
  securitySchemes:
    bearerAuth:
      type: http
      scheme: bearer

````