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

# List transfers

GET https://api-sandbox.payabli.com/api/Query/transfers/{entry}

Retrieve a list of transfers for a paypoint. Use filters to limit results.

Reference: https://beta-docs.payabli.com/api-reference/query/get-list-of-transfers

## Servers

- `https://api-sandbox.payabli.com/api` (Sandbox, default)
- `https://api.payabli.com/api` (Production)

## Request

### Path parameters

- `entry` (string, required) — The paypoint's entrypoint identifier. [Learn more](/api-reference/api-overview#entrypoint-vs-entry)

### Query parameters

- `fromRecord` (integer, optional, default: 0) — The number of records to skip before starting to collect the result set.
- `limitRecord` (integer, optional, default: 20) — Max number of records to return for the query. Use `0` or negative value to return all records.
- `parameters` (map from string to string, optional) — Collection of field names, conditions, and values used to filter the query. See [Filters and Conditions Reference](/developer-guides/reporting-filters-and-conditions-reference) for more information. **You must remove `parameters=` from the request before you send it, otherwise Payabli will ignore the filters.** Because of a technical limitation, you can't make a request that includes filters from the API console on this page. The response won't be filtered. Instead, copy the request, remove `parameters=` and run the request in a different client. For example: \--url [https://api-sandbox.payabli.com/api/Query/transactions/org/236?parameters=totalAmount(gt)=1000\&limitRecord=20](https://api-sandbox.payabli.com/api/Query/transactions/org/236?parameters=totalAmount\(gt\)=1000\&limitRecord=20) should become: \--url [https://api-sandbox.payabli.com/api/Query/transactions/org/236?totalAmount(gt)=1000\&limitRecord=20](https://api-sandbox.payabli.com/api/Query/transactions/org/236?totalAmount\(gt\)=1000\&limitRecord=20) List of field names accepted: * transferDate (gt, ge, lt, le, eq, ne) * grossAmount (gt, ge, lt, le, eq, ne) * chargeBackAmount (gt, ge, lt, le, eq, ne) * returnedAmount (gt, ge, lt, le, eq, ne) * billingFeeAmount (gt, ge, lt, le, eq, ne) * thirdPartyPaidAmount (gt, ge, lt, le, eq, ne) * netFundedAmount (gt, ge, lt, le, eq, ne) * adjustmentAmount (gt, ge, lt, le, eq, ne) * processor (ne, eq, ct, nct) * transferStatus (ne, eq, in, nin) * batchNumber (ne, eq, ct, nct) * batchId (ne, eq, in, nin)
- `sortBy` (string, optional) — The field name to use for sorting results. Use `desc(field_name)` to sort descending by `field_name`, and use `asc(field_name)` to sort ascending by `field_name`.

## Response

### 200

Success

- `Records` (list of Transfer, required)
- `Summary` (TransferSummary, required)

## Errors

### 400 Bad Request Error

Bad request/ invalid data

- `any`

### 401 Unauthorized Error

Unauthorized request.

- `any`

### 500 Internal Server Error

Internal API Error

- `any`

### 503 Service Unavailable Error

Database connection error

- `isSuccess` (boolean, optional) — Boolean indicating whether the operation was successful. A `true` value indicates success. A `false` value indicates failure.
- `responseData` (map from string to any, optional) — The object containing the response data.
- `responseText` (string, optional) — Response text for operation: 'Success' or 'Declined'.

## Types

### Transfer

- `transferId` (integer, required) — The transfer ID.
- `paypointId` (integer, required) — The ID of the paypoint the transfer belongs to.
- `batchNumber` (string, required) — The batch number associated with the transfer.
- `transferIdentifier` (string, required) — Unique identifier for the transfer.
- `batchId` (integer, required) — The ID of the batch the transfer belongs to.
- `transferDate` (string, required) — Date when the transfer occurred.
- `processor` (string, required) — The payment processor used for the transfer.
- `transferStatus` (integer, required) — The current status of the transfer.
- `grossAmount` (double, required) — Gross batch is the total amount of the payments grouped in the batch. This amount includes service fees.
- `chargeBackAmount` (double, required) — Amount of chargebacks to be deducted from batch.
- `returnedAmount` (double, required) — Amount of ACH returns to be deducted from batch.
- `holdAmount` (double, required) — Amount being held for fraud or risk concerns.
- `releasedAmount` (double, required) — Amount of previously held funds that have been released after a risk review.
- `billingFeesAmount` (double, required) — Amount of charges and fees applied for services and transactions.
- `thirdPartyPaidAmount` (double, required) — Amount of payments captured in the batch cycle that are deposited separately. For example, checks or cash payments recorded in the batch but not deposited via Payabli, or card brands making a direct transfer in certain situations.
- `adjustmentsAmount` (double, required) — Amount of corrections applied to Billing & Fees charges.
- `netTransferAmount` (double, required) — The net transfer amount after all deductions and additions.
- `eventsData` (list of TransferEvent, required) — List of events associated with the transfer.
- `messages` (list of string, required) — List of messages related to the transfer.

### TransferSummary

- `totalPages` (integer, required)
- `totalRecords` (integer, required)
- `pageSize` (integer, required)

### TransferEvent

- `description` (string, required) — Description of the transfer event.
- `eventTime` (datetime, required) — Date and time when the transfer event occurred.
- `refData` (string, required) — Reference data associated with the transfer event.
- `extraData` (string, required) — Additional data associated with the transfer event.
- `source` (string, required) — Source of the transfer event.

## Examples

**Response**

```json
{
  "Records": [
    {
      "transferId": 79851,
      "paypointId": 705,
      "batchNumber": "split_705_gp_11-16-2024",
      "transferIdentifier": "bbcbfed7-e535-45fe-8d62-25a449276d64",
      "batchId": 111430,
      "transferDate": "2024-11-17T08:20:07.288+00:00",
      "processor": "gp",
      "transferStatus": 2,
      "grossAmount": 0,
      "chargeBackAmount": 0,
      "returnedAmount": 0,
      "holdAmount": 0,
      "releasedAmount": 0,
      "billingFeesAmount": 0,
      "thirdPartyPaidAmount": 0,
      "adjustmentsAmount": 0,
      "netTransferAmount": 2,
      "eventsData": [
        {
          "description": "Transfer Created",
          "eventTime": "2024-11-16T08:15:33.4364067Z",
          "refData": "",
          "extraData": "",
          "source": "worker"
        }
      ],
      "messages": []
    }
  ],
  "Summary": {
    "totalPages": 1,
    "totalRecords": 2,
    "pageSize": 20
  }
}
```

**SDK Code**

```python ListTransfer
import requests

url = "https://api-sandbox.payabli.com/api/Query/transfers/47862acd"

querystring = {"fromRecord":"0","limitRecord":"20"}

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

print(response.json())
```

```javascript ListTransfer
const url = 'https://api-sandbox.payabli.com/api/Query/transfers/47862acd?fromRecord=0&limitRecord=20';
const options = {method: 'GET'};

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

```go ListTransfer
package main

import (
	"fmt"
	"net/http"
	"io"
)

func main() {

	url := "https://api-sandbox.payabli.com/api/Query/transfers/47862acd?fromRecord=0&limitRecord=20"

	req, _ := http.NewRequest("GET", url, nil)

	res, _ := http.DefaultClient.Do(req)

	defer res.Body.Close()
	body, _ := io.ReadAll(res.Body)

	fmt.Println(res)
	fmt.Println(string(body))

}
```

```ruby ListTransfer
require 'uri'
require 'net/http'

url = URI("https://api-sandbox.payabli.com/api/Query/transfers/47862acd?fromRecord=0&limitRecord=20")

http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true

request = Net::HTTP::Get.new(url)

response = http.request(request)
puts response.read_body
```

```java ListTransfer
import com.mashape.unirest.http.HttpResponse;
import com.mashape.unirest.http.Unirest;

HttpResponse<String> response = Unirest.get("https://api-sandbox.payabli.com/api/Query/transfers/47862acd?fromRecord=0&limitRecord=20")
  .asString();
```

```php ListTransfer
<?php
require_once('vendor/autoload.php');

$client = new \GuzzleHttp\Client();

$response = $client->request('GET', 'https://api-sandbox.payabli.com/api/Query/transfers/47862acd?fromRecord=0&limitRecord=20');

echo $response->getBody();
```

```csharp ListTransfer
using RestSharp;

var client = new RestClient("https://api-sandbox.payabli.com/api/Query/transfers/47862acd?fromRecord=0&limitRecord=20");
var request = new RestRequest(Method.GET);
IRestResponse response = client.Execute(request);
```

```swift ListTransfer
import Foundation

let request = NSMutableURLRequest(url: NSURL(string: "https://api-sandbox.payabli.com/api/Query/transfers/47862acd?fromRecord=0&limitRecord=20")! as URL,
                                        cachePolicy: .useProtocolCachePolicy,
                                    timeoutInterval: 10.0)
request.httpMethod = "GET"

let session = URLSession.shared
let dataTask = session.dataTask(with: request as URLRequest, completionHandler: { (data, response, error) -> Void in
  if (error != nil) {
    print(error as Any)
  } else {
    let httpResponse = response as? HTTPURLResponse
    print(httpResponse)
  }
})

dataTask.resume()
```