# Products
Attach products and prices to offers so checkout sessions, invoices, and integrations carry clean catalog context.
Source: /docs/offers/products
Last modified: 2026-06-18
Products describe what the customer is buying. Prices describe how they pay.

## Product fields

At minimum, a product should have:

- name
- description
- image when useful
- one or more prices
- fulfillment or access context if another system needs to react after purchase

## Price fields

Prices can represent one-time payments, recurring subscriptions, tiers, volume breaks, trials, or imported Stripe prices where supported by the integration.

## Why catalog context matters

Checkout sessions and invoices can carry product and price context into:

- customer records
- invoice line items
- webhooks
- automations
- CRM and email integrations
- tax and accounting-adjacent workflows

## API route

Protected API clients can create products and prices through the v1 catalog endpoints.

```http
POST /api/v1/products
Authorization: Bearer <api_key>
Content-Type: application/json
```

See [catalog API](/docs/api/catalog) for endpoint notes.