# Tab payment initiated

Webhook event: `tab.payment_initiated`

Fired when a payment is initiated (POST /api/v1/tabs/:id/pay). Mode-specific fields (`itemCount`, `itemIds`) are present only for ITEM mode.

Delivered payload:

```ts
{
  id: string // uuid
  event: "tab.payment_initiated"
  resource: "tab"
  resourceId: string
  timestamp: string // date-time
  apiVersion: "v1"
  data: {
    customFields?: Array<{
        fieldId: string
        key: string
        label: string
        group: string
        type: string
        value: unknown
        displayValue: string
        version: integer
        status: string
      }>
    metadata?: Record<string, unknown> | null
    tabId: string // uuid
    tabSettlementId: string // uuid
    purchaseIntentId: string // uuid
    paymentMethod: "prepaid" | "invoice" | "swish" | "terminal" | "online" | "gift_card" | "unknown"
    paymentMode: "ITEM" | "AMOUNT"
    amountCents: integer
    itemCount?: integer
    itemIds?: string[]
    locationId: integer
    initiatedAt: string // date-time
  }
}
```
