---
title: "Search payments with advanced filtering"
method: GET
path: "/v2/payments"
tags: ["V2/Payments"]
---

# Search payments with advanced filtering

`GET /v2/payments`

Search for payments by transaction hash, wallet address, payment reference, request ID, or merchant reference. Supports filtering by payment type, currencies, date ranges, and pagination. Returns complete payment details including customer information and fees. When searching by transaction hash or wallet address, returns ALL payments from batch transactions. Most search parameters are optional, but at least one must be provided and they default to an AND relationship.

## Query parameters

- `txHash` string
- `walletAddress` string
- `paymentReference` string
- `requestId` string
- `reference` string
- `type` 'direct' | 'conversion' | 'crosschain' | 'recurring'
- `invoiceCurrency` string
- `paymentCurrency` string
- `fromDate` string
- `toDate` string
- `limit` string
- `offset` string

## Headers

- `x-api-key` string
- `x-client-id` string
- `Origin` string

## Response `200`

Payment search results with comprehensive payment data and pagination metadata

- object
  - `payments` object[], required — Array of matching payments with complete payment details
    - `id` string, required — Unique identifier of the payment
    - `amount` string, required — Payment amount as a human-readable decimal string (formatUnits)
    - `sourceNetwork` string, required — Network where the payment originated
    - `destinationNetwork` string, required — Network where the payment was received
    - `sourceTxHash` string, nullable — Transaction hash on the source network
    - `destinationTxHash` string, nullable — Transaction hash on the destination network
    - `timestamp` string, date-time, required — Timestamp when the payment was processed
    - `type` 'direct' | 'conversion' | 'crosschain' | 'recurring', required — Type of payment
    - `conversionRateSource` string, nullable — Conversion rate used for source currency
    - `conversionRateDestination` string, nullable — Conversion rate used for destination currency
    - `convertedAmountSource` string, nullable — Converted amount in source currency
    - `convertedAmountDestination` string, nullable — Converted amount in destination currency
    - `currency` string, required — Invoice currency symbol
    - `paymentCurrency` string, required — Payment currency symbol
    - `fees` object[], nullable — Array of fees associated with the payment
      - `type` 'gas' | 'platform' | 'crosschain' | 'crypto-to-fiat' | 'offramp' — Type of fee
      - `stage` 'sending' | 'receiving' | 'proxying' | 'refunding' — Stage when the fee is applied
      - `provider` string — Provider that charged the fee
      - `amount` string — Fee amount in human-readable format (formatted with token decimals)
      - `amountInUSD` string — Fee amount in USD
      - `currency` string — Fee currency
      - `receiverAddress` string — Address that received the fee
      - `network` string — Network where the fee was paid
      - `rateProvider` string — Provider used for rate conversion
    - `recurringPaymentId` string, nullable — ID of the recurring payment this payment belongs to
    - `rateProvider` 'lifi' | 'chainlink' | 'coingecko' | 'unknown', nullable — Provider used for exchange rate data
    - `request` object — Associated request information
      - `requestId` string — Request ID
      - `paymentReference` string — Payment reference
      - `hasBeenPaid` boolean — Whether the request has been fully paid
      - `customerInfo` object, nullable — Customer information
        - `firstName` string
        - `lastName` string
        - `email` string
        - `address` object
          - `street` string
          - `city` string
          - `state` string
          - `postalCode` string
          - `country` string
      - `reference` string, nullable — Merchant reference
  - `pagination` object, required — Pagination information for navigating through results
    - `total` number, required — Total number of payments matching the search criteria
    - `limit` number, required — Maximum number of results returned in this response
    - `offset` number, required — Number of results skipped (for pagination)
    - `hasMore` boolean, required — Whether there are more results available beyond this page

## Other responses

- `400` — Invalid search parameters or validation errors
- `401` — Authentication required - API key or client ID missing
- `429` — Too Many Requests

---

[API](https://skmtc.dev/request/apis/request-network-api.md) · [All operations](https://skmtc.dev/request/apis/request-network-api/llms.txt) · [OpenAPI document](https://skmtc-service-production.skmtc.workers.dev/v1/apis/request/request-network-api/revisions/042a895ac0c6/schema)
