`GET /api/marketplace/seller/ledger/board` — the #691 §E server-paginated seller-earnings board: filtered+paged ledger rows + total + (optional) facets + the whole-set KPI + the 30-day net series.
const url = 'https://example.com/api/marketplace/seller/ledger/board';const options = {method: 'GET'};
try { const response = await fetch(url, options); const data = await response.json(); console.log(data);} catch (error) { console.error(error);}curl --request GET \ --url https://example.com/api/marketplace/seller/ledger/boardParameters
Section titled “Parameters”Query Parameters
Section titled “Query Parameters”Exact entry_type facet (sale | refund | payout | runner_usage | …).
Exact status facet (available | held | pending | paid | …).
Free-text search over the ledger entry description.
Whitelisted sort key: created_at | entry_type | gross_minor | net_minor | platform_fee_minor | provider_fee_minor | status.
Sort direction asc | desc (default desc).
Recompute the seller-wide facets (default true).
Responses
Section titled “Responses”One page of the earnings board: the page rows, the filtered total, optional facets, the whole-set KPI and the 30-day net series (oldest → newest).
object
The entry-type / status facet chips ({value,count}, largest-first).
object
One filter-chip value and its count. Counts are workspace-wide (independent of the active filter — the chip totals do not shift as the user filters).
object
How many rows fall in this bucket.
The bucket value (e.g. a scope, a role, a framework).
One filter-chip value and its count. Counts are workspace-wide (independent of the active filter — the chip totals do not shift as the user filters).
object
How many rows fall in this bucket.
The bucket value (e.g. a scope, a role, a framework).
A double-entry ledger row for seller earnings. Every sale, refund,
chargeback, adjustment, and payout is recorded as a separate entry.
net_minor = gross_minor - platform_fee_minor - provider_fee_minor.
object
The six headline earnings KPIs, over the seller’s WHOLE ledger (facet-invariant).
object
Examplegenerated
{ "facets": { "entry_types": [ { "count": 1, "value": "example" } ], "statuses": [ { "count": 1, "value": "example" } ] }, "items": [ { "created_at": "2026-04-15T12:00:00Z", "currency": "example", "description": "example", "entry_type": "example", "fee_policy_snapshot": "example", "gross_minor": 1, "id": "2489E9AD-2EE2-8E00-8EC9-32D5F69181C0", "net_minor": 1, "payout_item_id": "2489E9AD-2EE2-8E00-8EC9-32D5F69181C0", "platform_fee_minor": 1, "provider_fee_minor": 1, "purchase_id": "2489E9AD-2EE2-8E00-8EC9-32D5F69181C0", "runner_usage_id": "2489E9AD-2EE2-8E00-8EC9-32D5F69181C0", "seller_profile_id": "2489E9AD-2EE2-8E00-8EC9-32D5F69181C0", "status": "example", "updated_at": "2026-04-15T12:00:00Z" } ], "kpi": { "available_minor": 1, "average_minor": 1, "count": 1, "current_month_minor": 1, "held_minor": 1, "paid_minor": 1 }, "series": [ 1 ], "total": 1}