Search account transactions
GET /api/transactions
GET https://api.fypay.me/api/transactionsRequires a Bearer token in the Authorization header. See Generate Token to obtain one.
Returns transactions of the authenticated account in a friendly public format with pagination.
Features:
- Amounts converted to BRL (2 decimal places)
- Status and types mapped to display labels
- Counterparty documents are masked
- Maximum interval of 31 days between
startDateandendDate - Limit of 30 requests per minute per account (above that,
429)
Authentication
Requires a Bearer token in the Authorization header.
Query Parameters
| Parameter | Type | Required | Description |
|---|---|---|---|
page | integer | No | Page number (1-indexed). Default: 1 |
size | integer | No | Number of records per page (max 100). Default: 20 |
status | string | No | Filter by status: PENDING, CONFIRMED, ERROR |
type | string | No | Filter by type: PAYMENT, WITHDRAW, REFUND_IN, REFUND_OUT |
startDate | string | No | Start date (ISO 8601, e.g.: 2025-01-01). Default: last 31 days |
endDate | string | No | End date (ISO 8601, e.g.: 2025-01-31). Default: current date |
externalId | string | No | Filter by transaction externalId |
endToEndId | string | No | Filter by transaction endToEndId (e2eId) |
Status and Type Mapping
| Original Value | Display Value |
|---|---|
PENDING | Pendente |
CONFIRMED | Confirmado |
ERROR | Error |
PAYMENT | Pix in |
WITHDRAW | Pix out |
REFUND_IN | Refund in |
REFUND_OUT | Refund out |
Movement Type: Pix in and Refund out = CREDIT; Pix out and Refund in = DEBIT.
Code Examples
curl -X GET "https://api.fypay.me/api/transactions?page=1&size=20&status=CONFIRMED" \
-H "Authorization: Bearer $FYPAY_TOKEN"const axios = require('axios');
const response = await axios.get('https://api.fypay.me/api/transactions?page=1&size=20&status=CONFIRMED', {
headers: { 'Authorization': `Bearer ${process.env.FYPAY_TOKEN}` },
});
console.log(response.data);import os, requests
response = requests.get(
'https://api.fypay.me/api/transactions?page=1&size=20&status=CONFIRMED',
headers={'Authorization': f'Bearer {os.environ["FYPAY_TOKEN"]}'},
)
print(response.json())$ch = curl_init('https://api.fypay.me/api/transactions?page=1&size=20&status=CONFIRMED');
curl_setopt_array($ch, [
CURLOPT_RETURNTRANSFER => true,
CURLOPT_HTTPHEADER => [
'Authorization: Bearer ' . getenv('FYPAY_TOKEN'),
],
]);
$response = curl_exec($ch);
curl_close($ch);
echo $response;HttpRequest request = HttpRequest.newBuilder()
.uri(URI.create("https://api.fypay.me/api/transactions?page=1&size=20&status=CONFIRMED"))
.header("Authorization", "Bearer " + System.getenv("FYPAY_TOKEN"))
.GET()
.build();
HttpResponse<String> response = HttpClient.newHttpClient()
.send(request, HttpResponse.BodyHandlers.ofString());
System.out.println(response.body());Response (200)
{
"data": [
{
"transactionId": "12345",
"externalId": "ext-123456",
"status": "Confirmado",
"operationType": "Pix in",
"movementType": "CREDIT",
"originalAmount": 100.00,
"feeAmount": 1.00,
"finalAmount": 99.00,
"amountPaid": 100.00,
"mismatchAmount": null,
"endToEndId": "E12345678901234567890123456789012",
"createdAt": "2025-01-15T10:30:00.000Z",
"processedAt": "2025-01-15T10:30:05.000Z",
"counterpart": {
"name": "João Silva",
"document": "***.456.789-**",
"bank": {
"bankISPB": "00000000",
"bankName": "Banco do Brasil",
"bankCode": "001",
"accountBranch": "0001",
"accountNumber": "123456-7"
}
}
}
],
"metadata": {
"page": 1,
"size": 20,
"total": 150,
"totalPages": 8,
"hasNext": true,
"hasPrevious": false
}
}originalAmount holds the amount actually paid (before confirmation, the amount charged). amountPaid is null until confirmation, and mismatchAmount holds the difference between charged and paid (null when there is no mismatch; positive = underpaid, negative = overpaid).
Errors
| Status | Description |
|---|---|
| 400 | Invalid parameters or date range exceeds 31 days |
| 401 | Missing or invalid token |
| 429 | Limit of 30 requests per minute per account exceeded. Wait for the window to reset (Retry-After header) |