Reports

Commission breakdown report

Returns a paginated, item-level breakdown of commission earned by practitioners at the requested site for the given period. Each row represents a single sold item and includes the offering, the commission rate applied, and the resulting commission and surcharge amounts. Money fields are decimal strings in the site's currency (rather than minor-unit integers) to preserve the precision of the underlying commission calculation.

For background CSV delivery use /shop/reports/commission-breakdown/queue.

get/shop/reports/commission-breakdown

Query parameters

site_idstring required

Filter results by the site they belong to

date_fromstring date required
Example:2026-06-01

Restrict to items on or after this date.

date_tostring date required
Example:2026-06-30

Restrict to items on or before this date.

practitioner_idstring uuid

Restrict the report to a single practitioner. Deprecated: prefer earner_id + earner_type, which also cover items sold by a plain User under a sold attribution rate.

earner_idstring

Restrict the report to a single earner (a Practitioner or User, per earner_type).

earner_type'practitioner' | 'user'

Restrict the report to earners of this type. Combine with earner_id to disambiguate an id that could otherwise refer to either a Practitioner or a User.

pageinteger

The page to retrieve results from

per_pageinteger

The number of results to return per page

Response

The report was successfully generated.

Example response

{
  "data": [
    {
      "practitioner_name": "Sarah Smith",
      "earner_id": "60c72b2f9b1e8a001c8e4f1a",
      "earner_name": "Sarah Smith",
      "earner_type": "practitioner",
      "attribution": "performed",
      "period_from": "2026-06-01",
      "period_to": "2026-06-30",
      "order_ref": "TRY12",
      "customer_name": "Ada Lovelace",
      "offering_name": "Swedish Massage 60min",
      "offering_type": "appointment",
      "item_date": "2026-06-15",
      "item_price": 9000,
      "item_total_cost": 9000,
      "rate_type": "percentage",
      "rate_percentage": 10,
      "rate_flat_amount": 500,
      "commission_amount": 900,
      "total_commission": 900,
      "currency": "gbp"
    }
  ],
  "meta": {
    "from": 1,
    "to": 2,
    "total": 2,
    "current_page": 1,
    "last_page": 2,
    "per_page": 15,
    "path": "http://example.com/api"
  }
}

Changes