> This page is for version v1 (default).
> For other versions, use one of these documentation indexes:
> - v1 (default): https://developers.truemed.com/v-1/llms.txt

> For clean Markdown of any page, append .md to the page URL.
> For a complete documentation index, see https://developers.truemed.com/llms.txt.
> For AI client integration (Claude Code, Cursor, etc.), connect to the MCP server at https://developers.truemed.com/_mcp/server.

# List Reconciliation Transactions

GET https://dev-api.truemed.com/api/v1/reconciliation/transactions

Returns a paginated list of transaction reconciliation data for the authenticated merchant within the specified date range.

Reference: https://developers.truemed.com/api-reference/reconciliations/list-transaction-reconciliation

## Authentication

- `x-truemed-api-key` header (required) — Sales channel API key for merchant server-to-server authentication

## Servers

- `https://dev-api.truemed.com` (Development server, default)
- `https://api.truemed.com` (Production server)

## Request

### Query parameters

- `page` (integer, optional) — Optional field indicating which page to access. Defaults to 1.
- `page_size` (integer, optional) — Optional field indicating the number of records per page. Defaults to 30.
- `start_date` (date, required) — Start of the date range, inclusive (YYYY-MM-DD).
- `end_date` (date, required) — End of the date range, inclusive (YYYY-MM-DD).
- `payout_ids` (list of string, optional) — Comma-separated payout IDs to filter by, e.g. po_1,po_2.
- `include_pending_payouts` (boolean, optional) — When true (default), include transactions not yet associated with a payout. When false, return only rows with an associated payout.

## Response

### 200

Successful response

- `transactions` (list of ReconciliationData, required) — Paginated list of transaction data.
- `pagination` (PaginationBody, optional, nullable) — A pagination object with information about the current page, page size, total count, and last page.

## Errors

### 400 Bad Request Error

Bad Request

- `error` (enum, required)
  - Allowed values: `TotalAmountInvalid`, `ValidationError`
- `message` (string, required)

### 404 Not Found Error

Not Found

- `error` (enum, required)
  - Allowed values: `NotFound`
- `message` (string, required)

### 405 Method Not Allowed Error

Method Not Allowed

- `error` (enum, required)
  - Allowed values: `MethodNotAllowed`
- `message` (string, required)

### 500 Internal Server Error

Internal Server Error

- `error` (enum, required)
  - Allowed values: `ServerError`
- `message` (string, required)

### 501 Not Implemented Error

Not Implemented

- `error` (enum, required)
  - Allowed values: `NotImplemented`
- `message` (string, required)

## Types

### ReconciliationData

- `charge_date` (date, required) — Date the charge was created (YYYY-MM-DD).
- `fee` (ReconciliationDataFee, required) — Truemed fee in dollars. Negative indicates an amount owed by the merchant.
- `order_id` (string, required) — Unique identifier for the order.
- `order_items` (string, required) — Comma-separated list of order item names.
- `order_total` (ReconciliationDataOrderTotal, required) — Order total amount in dollars.
- `payment_id` (string, required, nullable) — External payment integration identifier.
- `payout_date` (date, required, nullable) — Date of the payout (YYYY-MM-DD), or null if not yet paid out.
- `payout_id` (string, required, nullable) — Payout identifier, or null if not yet paid out.
- `type` (enum, required) — Type of transaction data.
  - Allowed values: `Charge`, `Full Refund`, `Partial Refund`, `Dispute`, `Fee`, `Fee Refund`
- `customer_id` (string, optional, nullable) — Anonymized customer identifier (replaces name and email when PII is hidden).
- `email` (string, optional, nullable) — Customer email address.
- `metadata` (string, optional, nullable) — Merchant-supplied metadata attached to the origin record, or null if absent.
- `name` (string, optional, nullable) — Customer full name.
- `refund_needs_invoicing` (string, optional, nullable) — Whether the refund requires invoicing. Present only for fee rows; null otherwise.

### PaginationBody

- `count` (integer, required) — The total number of items associated with the provided API key.
- `current_page` (integer, required) — The page requested. If none was provided, this will default to 1.
- `last_page` (integer, required) — The last page. You can iterate through pages by providing integers up to last_page in the page parameter.
- `page_size` (integer, required) — The number of items per page applied to this response.

### ReconciliationDataFee

Truemed fee in dollars. Negative indicates an amount owed by the merchant.

- double
- string

### ReconciliationDataOrderTotal

Order total amount in dollars.

- double
- string

## Examples

**Response**

```json
{
  "transactions": [
    {
      "charge_date": "2023-01-15",
      "fee": 1.1,
      "order_id": "string",
      "order_items": "string",
      "order_total": 1.1,
      "payment_id": "string",
      "payout_date": "2023-01-15",
      "payout_id": "string",
      "type": "Charge",
      "customer_id": "string",
      "email": "string",
      "metadata": "string",
      "name": "string",
      "refund_needs_invoicing": "string"
    }
  ],
  "pagination": {
    "count": 1,
    "current_page": 1,
    "last_page": 1,
    "page_size": 1
  }
}
```

**SDK Code**

```python
import requests

url = "https://dev-api.truemed.com/api/v1/reconciliation/transactions"

querystring = {"end_date":"end_date","start_date":"start_date"}

headers = {"x-truemed-api-key": "<apiKey>"}

response = requests.get(url, headers=headers, params=querystring)

print(response.json())
```

```javascript
const url = 'https://dev-api.truemed.com/api/v1/reconciliation/transactions?end_date=end_date&start_date=start_date';
const options = {method: 'GET', headers: {'x-truemed-api-key': '<apiKey>'}};

try {
  const response = await fetch(url, options);
  const data = await response.json();
  console.log(data);
} catch (error) {
  console.error(error);
}
```