Page refunds using their own occurrence dates
curl --request GET \
--url https://api.getbreezyapp.com/v1/refunds \
--header 'Authorization: Bearer <token>'import requests
url = "https://api.getbreezyapp.com/v1/refunds"
headers = {"Authorization": "Bearer <token>"}
response = requests.get(url, headers=headers)
print(response.text)const options = {method: 'GET', headers: {Authorization: 'Bearer <token>'}};
fetch('https://api.getbreezyapp.com/v1/refunds', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));{
"data": [
{
"id": "11111111-1111-4111-8111-000000000801",
"payment_id": "11111111-1111-4111-8111-000000000701",
"account": {
"id": "11111111-1111-4111-8111-000000000101",
"name": "Example Household"
},
"status": "SUCCEEDED",
"amount_cents": 5000,
"currency": "USD",
"occurred_at": "2026-09-06T18:00:00Z",
"created_at": "2026-09-06T18:00:00Z",
"payment_method": "CARD",
"collected_by": {
"id": "11111111-1111-4111-8111-000000000401",
"name": "Alex Example"
}
},
{
"id": "11111111-1111-4111-8111-000000000802",
"payment_id": "11111111-1111-4111-8111-000000000701",
"account": {
"id": "11111111-1111-4111-8111-000000000101",
"name": "Example Household"
},
"status": "PENDING",
"amount_cents": 2000,
"currency": "USD",
"occurred_at": "2026-09-07T18:30:00Z",
"created_at": "2026-09-07T18:30:00Z",
"payment_method": "CARD",
"collected_by": {
"id": "11111111-1111-4111-8111-000000000401",
"name": "Alex Example"
}
}
],
"pagination": {
"next_cursor": null
},
"meta": {
"request_id": "example-request",
"generated_at": "2026-09-08T19:00:00Z",
"timezone": "America/Los_Angeles"
}
}{
"error": {
"code": "INVALID_REQUEST",
"message": "end_date must be later than start_date",
"request_id": "example-request",
"details": []
}
}{
"error": {
"code": "UNAUTHENTICATED",
"message": "A valid API key is required",
"request_id": "example-request",
"details": []
}
}{
"error": {
"code": "NOT_FOUND",
"message": "Resource not found",
"request_id": "example-request",
"details": []
}
}{
"error": {
"code": "METHOD_NOT_ALLOWED",
"message": "This resource supports GET",
"request_id": "example-request",
"details": []
}
}{
"error": {
"code": "RATE_LIMITED",
"message": "Request limit exceeded",
"request_id": "example-request",
"details": []
}
}{
"error": {
"code": "INTERNAL_ERROR",
"message": "Unable to complete request",
"request_id": "example-request",
"details": []
}
}Refunds
Page refunds using their own occurrence dates
All statuses by default. Orders by created_at then id ascending. Date filters refer to this refund, even if its payment occurred in an earlier period.
GET
/
refunds
Page refunds using their own occurrence dates
curl --request GET \
--url https://api.getbreezyapp.com/v1/refunds \
--header 'Authorization: Bearer <token>'import requests
url = "https://api.getbreezyapp.com/v1/refunds"
headers = {"Authorization": "Bearer <token>"}
response = requests.get(url, headers=headers)
print(response.text)const options = {method: 'GET', headers: {Authorization: 'Bearer <token>'}};
fetch('https://api.getbreezyapp.com/v1/refunds', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));{
"data": [
{
"id": "11111111-1111-4111-8111-000000000801",
"payment_id": "11111111-1111-4111-8111-000000000701",
"account": {
"id": "11111111-1111-4111-8111-000000000101",
"name": "Example Household"
},
"status": "SUCCEEDED",
"amount_cents": 5000,
"currency": "USD",
"occurred_at": "2026-09-06T18:00:00Z",
"created_at": "2026-09-06T18:00:00Z",
"payment_method": "CARD",
"collected_by": {
"id": "11111111-1111-4111-8111-000000000401",
"name": "Alex Example"
}
},
{
"id": "11111111-1111-4111-8111-000000000802",
"payment_id": "11111111-1111-4111-8111-000000000701",
"account": {
"id": "11111111-1111-4111-8111-000000000101",
"name": "Example Household"
},
"status": "PENDING",
"amount_cents": 2000,
"currency": "USD",
"occurred_at": "2026-09-07T18:30:00Z",
"created_at": "2026-09-07T18:30:00Z",
"payment_method": "CARD",
"collected_by": {
"id": "11111111-1111-4111-8111-000000000401",
"name": "Alex Example"
}
}
],
"pagination": {
"next_cursor": null
},
"meta": {
"request_id": "example-request",
"generated_at": "2026-09-08T19:00:00Z",
"timezone": "America/Los_Angeles"
}
}{
"error": {
"code": "INVALID_REQUEST",
"message": "end_date must be later than start_date",
"request_id": "example-request",
"details": []
}
}{
"error": {
"code": "UNAUTHENTICATED",
"message": "A valid API key is required",
"request_id": "example-request",
"details": []
}
}{
"error": {
"code": "NOT_FOUND",
"message": "Resource not found",
"request_id": "example-request",
"details": []
}
}{
"error": {
"code": "METHOD_NOT_ALLOWED",
"message": "This resource supports GET",
"request_id": "example-request",
"details": []
}
}{
"error": {
"code": "RATE_LIMITED",
"message": "Request limit exceeded",
"request_id": "example-request",
"details": []
}
}{
"error": {
"code": "INTERNAL_ERROR",
"message": "Unable to complete request",
"request_id": "example-request",
"details": []
}
}Authorizations
Existing Breezy API key. Grants all published reads in its associated company. No app permission scopes.
Query Parameters
Maximum parent records or report rows. Complete children are always included.
Required range:
1 <= x <= 100Repeat the original filters; any valid page size may continue. Foreign-company, tampered or mismatched cursors return INVALID_CURSOR.
Minimum string length:
1Repeat ids for a bounded ID set. Valid foreign or missing IDs contribute no list rows.
Required array length:
1 - 100 elementsInclusive creation instant.
Exclusive creation instant.
Minimum array length:
1Available options:
PENDING, SUCCEEDED, FAILED, CANCELED Available options:
CARD, ACH, CASH, CHECK, PAYPAL, VENMO, CASHAPP, OTHER, WISETACK_LOAN, null