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

# Payment Transactions

> List payment transactions (subscriptions, wallet top-ups)

## Request

### Headers

<ParamField header="Authorization" type="string" required>
  Bearer token (JWT or API key)
</ParamField>

### Query Parameters

<ParamField query="page" type="number" default="1">
  Page number
</ParamField>

<ParamField query="limit" type="number" default="20">
  Items per page (max 100)
</ParamField>

<ParamField query="payment_type" type="string">
  Filter: `one_time`, `subscription`, `admin_bonus`
</ParamField>

<ParamField query="status" type="string">
  Filter: `succeeded`, `pending`, `failed`
</ParamField>

## Response

Returns payment history (wallet top-ups, subscription payments). For per-operation service usage (TTS/STT/LLM/Memory deductions), use [`GET /billing/usage-logs`](/api-reference/billing/usage-logs) instead.

<Note>
  Only the **workspace owner** can view transactions. Protected by `billing:manage` permission.
</Note>

<RequestExample>
  ```bash cURL theme={null}
  curl "https://api.60db.ai/billing/transactions?limit=10" \
    -H "Authorization: Bearer your-api-key"
  ```
</RequestExample>

<ResponseExample>
  ```json Response theme={null}
  {
    "success": true,
    "data": {
      "transactions": [
        {
          "hash_id": "abc123",
          "amount": 50.00,
          "currency": "USD",
          "payment_type": "one_time",
          "status": "succeeded",
          "balance_before": 0.50,
          "balance_after": 50.50,
          "description": "Workspace wallet top-up",
          "created_at": "2026-04-13T10:00:00.000Z"
        }
      ],
      "pagination": {
        "current_page": 1,
        "per_page": 10,
        "total_records": 5,
        "total_pages": 1
      }
    }
  }
  ```
</ResponseExample>
