# Settlements

Tab settlements and payment groupings

## GET /api/v1/settlements/{settlementId}

Get settlement details

Get settlement details by ID

Path parameters:
- `settlementId` (string, required) — ID of the settlement to retrieve

Response 200 — Default Response

```ts
{
  status: "success"
  data: {
    id: string // uuid
    tabMemberId: string // uuid
    paymentId?: integer | null
    state: "in_preparation" | "payment_in_progress" | "settled" | "cancelled"
    createdAt: string // date-time
    updatedAt: string // date-time
  }
  meta: {
    requestId: string
    timestamp: string // date-time
    executionTimeMs: number
  }
}
```

## POST /api/v1/tabs/{tabId}/settlements/active

Get or create active settlement

Get or create active settlement for a tab member

Path parameters:
- `tabId` (string, required) — ID of the tab to get settlement for

Request body:

```ts
{
  tabMember: {
    id?: integer
    email?: string // email
    phone?: string
    identifier?: string
  }
}
```

Response 200 — Default Response

```ts
{
  status: "success"
  data: {
    tabSettlementId: string // uuid
    state: "in_preparation" | "payment_in_progress" | "settled" | "cancelled"
    isNew: boolean
  }
  meta: {
    requestId: string
    timestamp: string // date-time
    executionTimeMs: number
  }
}
```
