Payouts

List Chargebacks

Returns the chargeback history — disputes the fan's bank reversed against the creator. Each row carries the original transaction details under a nested payment object, so no cross-reference against the earnings feed is needed. Requires permission api_payouts_list_chargebacks.

https://public-api.fansmetric.com
GET/v1/{account_id}/payouts/chargebacks
Bearer

Authorization

default
AuthorizationBearer <token>

Send your FansMetric API key as a Bearer token in the Authorization header.

In: header

Path Parameters

  • account_id*integer

    OnlyFans numeric account ID.

Query Parameters

  • start_datestring

    Lower bound on the chargeback's createdAt (filing date, not original transaction). Default 2 years ago, UTC.

  • end_datestring

    Upper bound on the chargeback's createdAt. Default end of today, UTC.

  • limitinteger

    Page size. Default 10. Min 1, max 100.

  • offsetinteger

    Rows to skip.

  • markerstring

    Snapshot pin (unix seconds) from a prior response. Omit on the first page; pass back unchanged on subsequent pages.

Response Fields

  • data.list[]array

    Chargebacks in this page, newest first by createdAt (filing date).

  • data.list[].idinteger

    Upstream chargeback ID. Currently always 0 in observed payloads — identify rows by payment.id.

  • data.list[].createdAtstring

    ISO 8601 timestamp the chargeback was filed (not the original transaction).

  • data.list[].paymentTypestring

    Category of the reversed transaction. Values: post, chat_messages, tips, subscribes, stream.

  • data.list[].paymentobject

    Original transaction that was reversed. Same shape as an earnings transaction (id, amount, vatAmount, taxAmount, mediaTaxAmount, fee, net, currency, createdAt, description, status, user). payment.status: "undo" marks the reversal.

  • data.markerinteger

    Snapshot pin (unix seconds).

  • dataobject | array

    Endpoint-specific payload. See the fields below for this route.

  • _pagination.next_pagestring

    Relative URL for the next page, with the cursor or offset already applied. Append it to the API base URL and send it as-is. Omitted entirely on the last page.

  • _meta._credits.usedinteger

    Credits consumed by this request (currently always 1).

  • _meta._rate_limits.limit_minuteinteger

    Maximum requests per minute for the organization.

  • _meta._rate_limits.remaining_minuteinteger

    Remaining requests in the current minute window.

  • _meta._rate_limits.limit_dayinteger

    Maximum requests per day for the organization.

  • _meta._rate_limits.remaining_dayinteger

    Remaining requests in the current day window.

curl --request GET "https://public-api.fansmetric.com/v1/100000001/payouts/chargebacks?start_date=2026-01-01%2000%3A00%3A00&end_date=2026-01-31%2023%3A59%3A59&limit=20" \
  --header "Authorization: Bearer YOUR_API_KEY"

Response

200
{
"data":{
"list":[
0:{
"id":0
"createdAt":"2026-05-15T03:15:33+00:00"
"paymentType":"post"
"payment":{
"id":"aa6c984b86eaf11a07442042e711c7f9"
"amount":23.99
"vatAmount":0
"taxAmount":0
"mediaTaxAmount":0
"net":19.19
"fee":4.8
"createdAt":"2026-05-10T03:46:25+00:00"
"currency":"USD"
"description":"Post purchase by <span>Fan XX</span>"
"status":"undo"
"user":{
"id":100000008
"name":"Fan XX"
"username":"u100000008"
"view":"t"
"isVerified":false
"isDeleted":false
"isActive":false
"avatar":null
"avatarThumbs":null
}
}
}
]
"marker":1779974073
}
"_pagination":{
"next_page":"/v1/100000001/payouts/chargebacks?limit=10&offset=10&marker=1779974073"
}
"_meta":{
"_credits":{
"used":1
}
"_rate_limits":{
"limit_minute":1000
"remaining_minute":999
"limit_day":50000
"remaining_day":49999
}
}
}