# POST /api/transactions/list/continuation

Retrieves a continuation-based page of Transactions.

This endpoint uses continuation tokens instead of skip/take paging.

**Operation ID:** `POST_api_transactions_list_continuation`

## Authorization

No permission required.

## Parameters

| Name | In | Required | Type | Description |
| --- | --- | --- | --- | --- |
| suppressNulls | query | no | boolean | If true, omit properties with null values. |

## Request Body

**Content type:** `application/json`

Schema: `PhoeniXGateTransactionsGetTransactionContinuationInput`

_Example: Merchant: list my transactions_

Lists the caller's own transactions. When the request is authenticated with a merchant-owned API key, the results are already scoped to that merchant by the caller's context, so no MerchantId is required: send an essentially empty body (just maxResultCount) for the first page, then resend the same body with the continuationToken from the previous response to page further. MerchantId is optional here and cannot broaden visibility beyond the caller's own merchant(s); supply it only to narrow results when the key's user is linked to more than one merchant.

```json
{
  "merchantId": null,
  "hppSessionId": null,
  "apiKeyId": null,
  "maxResultCount": 50,
  "continuationToken": null,
  "maxCreationTime": null,
  "minCreationTime": null,
  "maxModifitionTime": null,
  "minModifitionTime": null,
  "sorting": null,
  "filter": null,
  "includeDeleted": false,
  "includeInactive": true
}
```

_Example: Reseller: list one merchant's transactions_

Lists transactions for a single merchant that belongs to the calling reseller. A reseller-owned API key sees every merchant under that reseller by default; setting merchantId narrows the results to that one merchant. The value must be a merchant within the reseller: a merchantId outside the reseller's hierarchy simply returns no results, it never exposes another reseller's data. Omit merchantId to list across all of the reseller's merchants. Page further by resending the same body with the continuationToken from the previous response.

```json
{
  "merchantId": "00000000-0000-0000-0000-000000000001",
  "hppSessionId": null,
  "apiKeyId": null,
  "maxResultCount": 25,
  "continuationToken": null,
  "maxCreationTime": null,
  "minCreationTime": null,
  "maxModifitionTime": null,
  "minModifitionTime": null,
  "sorting": null,
  "filter": null,
  "includeDeleted": false,
  "includeInactive": true
}
```

_Example: Fetch the next page_

Fetches the page after a previous request. Resend the exact same filters you used on the first request (merchantId, maxResultCount, and so on), and add the continuationToken value returned in that request's response. The token is opaque: pass it back unchanged, do not parse or edit it. When a response comes back with a null continuationToken, the last page has been reached. The value shown here is illustrative; use the real token from your previous response.

```json
{
  "merchantId": null,
  "hppSessionId": null,
  "apiKeyId": null,
  "maxResultCount": 50,
  "continuationToken": "eyJ0b2tlbiI6IisrUklEOn5FeGFtcGxlIiwicmFuZ2UiOnsibWluIjoiIiwibWF4IjoiRkYifX0=",
  "maxCreationTime": null,
  "minCreationTime": null,
  "maxModifitionTime": null,
  "minModifitionTime": null,
  "sorting": null,
  "filter": null,
  "includeDeleted": false,
  "includeInactive": true
}
```

**Content type:** `text/json`

Schema: `PhoeniXGateTransactionsGetTransactionContinuationInput`

_Example: Merchant: list my transactions_

Lists the caller's own transactions. When the request is authenticated with a merchant-owned API key, the results are already scoped to that merchant by the caller's context, so no MerchantId is required: send an essentially empty body (just maxResultCount) for the first page, then resend the same body with the continuationToken from the previous response to page further. MerchantId is optional here and cannot broaden visibility beyond the caller's own merchant(s); supply it only to narrow results when the key's user is linked to more than one merchant.

```json
{
  "merchantId": null,
  "hppSessionId": null,
  "apiKeyId": null,
  "maxResultCount": 50,
  "continuationToken": null,
  "maxCreationTime": null,
  "minCreationTime": null,
  "maxModifitionTime": null,
  "minModifitionTime": null,
  "sorting": null,
  "filter": null,
  "includeDeleted": false,
  "includeInactive": true
}
```

_Example: Reseller: list one merchant's transactions_

Lists transactions for a single merchant that belongs to the calling reseller. A reseller-owned API key sees every merchant under that reseller by default; setting merchantId narrows the results to that one merchant. The value must be a merchant within the reseller: a merchantId outside the reseller's hierarchy simply returns no results, it never exposes another reseller's data. Omit merchantId to list across all of the reseller's merchants. Page further by resending the same body with the continuationToken from the previous response.

```json
{
  "merchantId": "00000000-0000-0000-0000-000000000001",
  "hppSessionId": null,
  "apiKeyId": null,
  "maxResultCount": 25,
  "continuationToken": null,
  "maxCreationTime": null,
  "minCreationTime": null,
  "maxModifitionTime": null,
  "minModifitionTime": null,
  "sorting": null,
  "filter": null,
  "includeDeleted": false,
  "includeInactive": true
}
```

_Example: Fetch the next page_

Fetches the page after a previous request. Resend the exact same filters you used on the first request (merchantId, maxResultCount, and so on), and add the continuationToken value returned in that request's response. The token is opaque: pass it back unchanged, do not parse or edit it. When a response comes back with a null continuationToken, the last page has been reached. The value shown here is illustrative; use the real token from your previous response.

```json
{
  "merchantId": null,
  "hppSessionId": null,
  "apiKeyId": null,
  "maxResultCount": 50,
  "continuationToken": "eyJ0b2tlbiI6IisrUklEOn5FeGFtcGxlIiwicmFuZ2UiOnsibWluIjoiIiwibWF4IjoiRkYifX0=",
  "maxCreationTime": null,
  "minCreationTime": null,
  "maxModifitionTime": null,
  "minModifitionTime": null,
  "sorting": null,
  "filter": null,
  "includeDeleted": false,
  "includeInactive": true
}
```

**Content type:** `application/*+json`

Schema: `PhoeniXGateTransactionsGetTransactionContinuationInput`

_Example: Merchant: list my transactions_

Lists the caller's own transactions. When the request is authenticated with a merchant-owned API key, the results are already scoped to that merchant by the caller's context, so no MerchantId is required: send an essentially empty body (just maxResultCount) for the first page, then resend the same body with the continuationToken from the previous response to page further. MerchantId is optional here and cannot broaden visibility beyond the caller's own merchant(s); supply it only to narrow results when the key's user is linked to more than one merchant.

```json
{
  "merchantId": null,
  "hppSessionId": null,
  "apiKeyId": null,
  "maxResultCount": 50,
  "continuationToken": null,
  "maxCreationTime": null,
  "minCreationTime": null,
  "maxModifitionTime": null,
  "minModifitionTime": null,
  "sorting": null,
  "filter": null,
  "includeDeleted": false,
  "includeInactive": true
}
```

_Example: Reseller: list one merchant's transactions_

Lists transactions for a single merchant that belongs to the calling reseller. A reseller-owned API key sees every merchant under that reseller by default; setting merchantId narrows the results to that one merchant. The value must be a merchant within the reseller: a merchantId outside the reseller's hierarchy simply returns no results, it never exposes another reseller's data. Omit merchantId to list across all of the reseller's merchants. Page further by resending the same body with the continuationToken from the previous response.

```json
{
  "merchantId": "00000000-0000-0000-0000-000000000001",
  "hppSessionId": null,
  "apiKeyId": null,
  "maxResultCount": 25,
  "continuationToken": null,
  "maxCreationTime": null,
  "minCreationTime": null,
  "maxModifitionTime": null,
  "minModifitionTime": null,
  "sorting": null,
  "filter": null,
  "includeDeleted": false,
  "includeInactive": true
}
```

_Example: Fetch the next page_

Fetches the page after a previous request. Resend the exact same filters you used on the first request (merchantId, maxResultCount, and so on), and add the continuationToken value returned in that request's response. The token is opaque: pass it back unchanged, do not parse or edit it. When a response comes back with a null continuationToken, the last page has been reached. The value shown here is illustrative; use the real token from your previous response.

```json
{
  "merchantId": null,
  "hppSessionId": null,
  "apiKeyId": null,
  "maxResultCount": 50,
  "continuationToken": "eyJ0b2tlbiI6IisrUklEOn5FeGFtcGxlIiwicmFuZ2UiOnsibWluIjoiIiwibWF4IjoiRkYifX0=",
  "maxCreationTime": null,
  "minCreationTime": null,
  "maxModifitionTime": null,
  "minModifitionTime": null,
  "sorting": null,
  "filter": null,
  "includeDeleted": false,
  "includeInactive": true
}
```

## Responses

### 200

OK

**Content type:** `text/plain`

Schema: `PhoenixAbpCoreApplicationContractsContinuationPagedResultDtoOfPhoeniXGateTransactionsTransactionDto`

**Content type:** `application/json`

Schema: `PhoenixAbpCoreApplicationContractsContinuationPagedResultDtoOfPhoeniXGateTransactionsTransactionDto`

**Content type:** `text/json`

Schema: `PhoenixAbpCoreApplicationContractsContinuationPagedResultDtoOfPhoeniXGateTransactionsTransactionDto`

### 403

Forbidden

**Content type:** `text/plain`

Schema: `WinkPGHttpRemoteServiceErrorResponse`

**Content type:** `application/json`

Schema: `WinkPGHttpRemoteServiceErrorResponse`

**Content type:** `text/json`

Schema: `WinkPGHttpRemoteServiceErrorResponse`

### 401

Unauthorized

**Content type:** `text/plain`

Schema: `WinkPGHttpRemoteServiceErrorResponse`

**Content type:** `application/json`

Schema: `WinkPGHttpRemoteServiceErrorResponse`

**Content type:** `text/json`

Schema: `WinkPGHttpRemoteServiceErrorResponse`

### 400

Bad Request

**Content type:** `text/plain`

Schema: `WinkPGHttpRemoteServiceErrorResponse`

**Content type:** `application/json`

Schema: `WinkPGHttpRemoteServiceErrorResponse`

**Content type:** `text/json`

Schema: `WinkPGHttpRemoteServiceErrorResponse`

### 404

Not Found

**Content type:** `text/plain`

Schema: `WinkPGHttpRemoteServiceErrorResponse`

**Content type:** `application/json`

Schema: `WinkPGHttpRemoteServiceErrorResponse`

**Content type:** `text/json`

Schema: `WinkPGHttpRemoteServiceErrorResponse`

### 501

Not Implemented

**Content type:** `text/plain`

Schema: `WinkPGHttpRemoteServiceErrorResponse`

**Content type:** `application/json`

Schema: `WinkPGHttpRemoteServiceErrorResponse`

**Content type:** `text/json`

Schema: `WinkPGHttpRemoteServiceErrorResponse`

### 500

Internal Server Error

**Content type:** `text/plain`

Schema: `WinkPGHttpRemoteServiceErrorResponse`

**Content type:** `application/json`

Schema: `WinkPGHttpRemoteServiceErrorResponse`

**Content type:** `text/json`

Schema: `WinkPGHttpRemoteServiceErrorResponse`

### default

The request failed. The body carries the standard error envelope: a machine-readable `error.code`, a human-readable `error.message`, and `error.validationErrors` when the failure was a validation rejection. See the error-code reference in this document's description for the values `error.code` can take.

**Content type:** `application/json`

Schema: `WinkPGHttpRemoteServiceErrorResponse`

## See also

- [All documentation](https://docs.winkpg.io/llms.txt): the machine-readable index of every public page on this site.
