---
title: "List pending transactions"
method: GET
path: "/transactions/pending"
tags: ["Transactions"]
---

# List pending transactions

`GET /transactions/pending`

Get paginated list of pending transactions matching the provided filters

## Query parameters

- `include_child_transactions` boolean
- `status` string[]
- `type` string
- `amount` integer
- `total_amount` integer
- `from_date` string, date
- `to_date` string, date
- `barcode_number` string[]
- `transaction_id` string, uuid
- `digital_wallet_token_id` string[]
- `cashback` boolean
- `idempotency_key` string[]
- `account_no` string
- `exclude_jit_transactions` boolean
- `uuid` string[]
- `page_token` string — Optional pagination token to be provided to retrieve subsequent pages, returned from previous get
- `account_id` string[]
- `card_id` string, uuid
- `reference_id` string
- `limit` integer — Maximum number of objects to return per page. If the limit is greater than 100, then it will be set to 100.
- `subtype` string
- `uuid_nin` string[]

## Response `200`

Paginated list of pending transactions

- PendingTransactions
  - `next_page_token` string, nullable, required — If returned, use the next_page_token to query for the next page of results. Not returned if there are no more rows.
  - `result` PendingTransaction[], required — List of pending transactions
    - `account_id` string, required — The account id associated with the hold
    - `account_no` string, required — The account number associated with the hold
    - `created` string, date-time, required — The creation date of the hold
    - `data` PendingTransactionData, required
      - `amount` integer, required — The amount of the hold.
      - `auto_post_at` string, date-time, required — The account "available balance" at the time this hold was created
      - `avail_balance` integer, required — The account "available balance" at the time this hold was created (to be deprecated)
      - `available_balance` integer, required — The account "available balance" at the time this hold was created
      - `balance` integer, required — The account balance at the time this hold was created
      - `currency` string, required — ISO 4217 alphabetic currency code of the transfer amount
      - `dc_sign` 'credit' | 'debit', required — The `dc_sign` represents the direction money was moved.
      - `effective_date` string, date-time, required — The effective date of the transaction once it gets posted
      - `expires_at` string, date-time, required — The date that at which this hold is no longer valid.
      - `external_data` ExternalData, nullable — an unstructured json blob representing additional transaction information supplied by the integrator.
      - `force_post` boolean, required — Whether or not the hold was forced (spending controls ignored)
      - `history` PendingTransactionHistory[], required — An array representing any previous states of the hold, if it has been modified (For example, increasing or decreasing the hold amount).
        - `account_id` string, required — The account id associated with the hold
        - `account_no` string, required — The account number associated with the hold
        - `created` string, date-time, required — The creation date of the hold
        - `data` PendingTransactionHistoryData
          - `amount` integer, required — The amount of the hold.
          - `auto_post_at` string, date-time, required — The time the transaction will be automatically posted.
          - `avail_balance` integer, required — The account "available balance" at the time this hold was created (to be deprecated)
          - `available_balance` integer, required — The account "available balance" at the time this hold was created
          - `balance` integer, required — The account balance at the time this hold was created
          - `currency` string, required — ISO 4217 alphabetic currency code of the transfer amount
          - `dc_sign` 'credit' | 'debit', required — The `dc_sign` represents the direction money was moved.
          - `effective_date` string, date-time, required — The effective date of the transaction once it gets posted
          - `expires_at` string, date-time, required — The date that at which this hold is no longer valid.
          - `external_data` ExternalData, nullable — an unstructured json blob representing additional transaction information supplied by the integrator.
          - `force_post` boolean, required — Whether or not the hold was forced (spending controls ignored)
          - `idemkey` string, required — The idempotency key used when initially creating this hold.
          - `indefinite` boolean — If true, the hold will not expire automatically. The hold remains active until it is explicitly released or posted.
          - `memo` string, required — A short note to the recipient
          - `network` string, required — The network this transaction is associated with
          - `operation` 'hold_cancel' | 'hold_decline' | 'hold_decrease' | 'hold_expire' | 'hold_increase' | 'hold_new' | 'hold_post' | 'hold_replace', required
          - `reason` string, required — If a hold has been declined or modified, this will include the reason.
          - `req_amount` integer, required — The requested amount, in the case of hold modifications.
          - `risk_info` RiskInfo, nullable — Information received by the transaction risk/fraud service related to this transaction
          - `status` 'CLEARED' | 'DECLINED' | 'EXPIRED' | 'INTERNAL_ERROR' | 'PARTCLEARED' | 'PENDING' | 'RELEASED' | 'REPLACED', required — The status of the hold.
          - `subtype` string, required — The specific transaction type. For example, for `ach`, this may be "outgoing_debit".
          - `total_amount` integer, required — The total amount of the hold. This may be different than `amount` in the case where a hold increase or decrease was requested.
          - `transaction_id` string, uuid — The uuid of the transaction that this pending transaction originated from, if any. This is primary used when a transaction "posts", but a subset of the amount reserved until a future settlement date.
          - `transaction_time` string, date-time, required — The time the transaction occurred.
          - `type` string, required — The general type of transaction. For example, "card" or "ach".
          - `user_data` UserData, nullable — An unstructured JSON blob representing additional transaction information specific to each payment rail.
          - `was_partial` boolean, required — Does this hold represent a partial debit (or credit)?
        - `id` integer, required
        - `idemkey` string, required — The idempotency key used when initially creating this transaction.
        - `offset_account_id` string — The offset account id associated with the hold
        - `offset_account_no` string — The offset account number associated with the hold
        - `reference_id` string, nullable, required — An external ID provided by the payment network to represent this transaction.
        - `tenant` string, required — The id of the tenant containing the resource. This is relevant for Fintechs that have multiple workspaces.
        - `updated` string, date-time, required — The date the hold was last update
        - `uuid` string, uuid, required — The unique identifier of the hold transaction.
      - `idemkey` string, required — The idempotency key used when initially creating this hold.
      - `indefinite` boolean — If true, the hold will not expire automatically. The hold remains active until it is explicitly released or posted.
      - `memo` string, required — A short note to the recipient
      - `network` string, required — The network this transaction is associated with
      - `operation` 'hold_cancel' | 'hold_decline' | 'hold_decrease' | 'hold_expire' | 'hold_increase' | 'hold_new' | 'hold_post' | 'hold_replace', required
      - `reason` string, required — If a hold has been declined or modified, this will include the reason.
      - `req_amount` integer, required — The requested amount, in the case of hold modifications.
      - `risk_info` RiskInfo, nullable — Information received by the transaction risk/fraud service related to this transaction
      - `status` 'CLEARED' | 'DECLINED' | 'EXPIRED' | 'INTERNAL_ERROR' | 'PARTCLEARED' | 'PENDING' | 'RELEASED' | 'REPLACED', required — The status of the hold.
      - `subtype` string, required — The specific transaction type. For example, for `ach`, this may be "outgoing_debit".
      - `total_amount` integer, required — The total amount of the hold. This may be different than `amount` in the case where a hold increase or decrease was requested.
      - `transaction_id` string, uuid, nullable — The uuid of the transaction that this pending transaction originated from, if any. This is primary used when a transaction "posts", but a subset of the amount reserved until a future settlement date.
      - `transaction_time` string, date-time, required — The time that the transaction was created
      - `type` string, required — The general type of transaction. For example, "card" or "ach".
      - `user_data` UserData, nullable — An unstructured JSON blob representing additional transaction information specific to each payment rail.
      - `was_partial` boolean, required — Does this hold represent a partial debit (or credit)?
    - `enhanced_transaction` EnhancedTransactionResponse — Financial data that has been refined by cleansing, categorizing and adding metadata. For example, inconsistencies in raw transaction data that were introduced via data aggregation are removed, transactions are categorized into groups such as "groceries" or utilities", and metadata (such as merchant names or location and timing details) are added for clarity.
    - `id` integer, required
    - `idemkey` string, required — The idempotency key used when initially creating this hold.
    - `offset_account_id` string — The offset account id associated with the hold
    - `offset_account_no` string — The offset account number associated with the hold
    - `reference_id` string, nullable, required — An external ID provided by the payment network to represent this transaction.
    - `tenant` string, required — The id of the tenant containing the resource. This is relevant for Fintechs that have multiple workspaces.
    - `updated` string, date-time, required — The date the hold was last update
    - `uuid` string, uuid, required — The unique identifier of the hold transaction.

## Other responses

- `400` — BadRequest
- `401` — Unauthorized
- `403` — Forbidden error
- `422` — Unprocessable entity request response
- `500` — Internal server error

---

[API](https://skmtc.net/synctera/apis/synctera-api.md) · [All operations](https://skmtc.net/synctera/apis/synctera-api/llms.txt) · [OpenAPI document](https://skmtc-service-staging.skmtc.workers.dev/v1/apis/synctera/synctera-api/revisions/b0d812e6cdd0/schema)
