Products API
Create and manage products, prices, and variants. Products represent goods or services you sell through ClapPay, including digital downloads, subscriptions, and lead magnets.
Endpoints
GET
/api/v1/payment/products/List all products for your merchant account
POST
/api/v1/payment/products/Create a new product
GET
/api/v1/payment/products/{id}/Retrieve a specific product
PATCH
/api/v1/payment/products/{id}/Update a product
DELETE
/api/v1/payment/products/{id}/Archive a product
GET
/api/v1/payment/products/{id}/prices/List prices for a product
POST
/api/v1/payment/products/{id}/prices/Create a price for a product
GET
/api/v1/payment/storefront/{slug}/Public: Get store info by slug
GET
/api/v1/payment/storefront/{slug}/products/Public: List store products
GET
/api/v1/payment/storefront/{slug}/products/{id}/Public: Get product detail
Product Object
| Field | Type | Description |
|---|---|---|
| id | string (UUID) | Unique product identifier |
| name | string | Product display name |
| description | string | Product description |
| type | string | Product type: good, service, digital |
| delivery_mode | string | Delivery method: physical, digital, service |
| is_lead_magnet | boolean | Whether product is a free lead magnet |
| is_active | boolean | Whether product is active and visible |
| metadata | object | Arbitrary key-value metadata |
Price Object
| Field | Type | Description |
|---|---|---|
| id | string (UUID) | Unique price identifier |
| pricing_mode | string | Mode: standard, pwyw (pay-what-you-want), free |
| unit_amount | integer | Price in smallest currency unit (e.g., cents) |
| currency | string | ISO 4217 currency code |
| price_type | string | one_time or recurring |
| recurring_interval | string | Billing interval: day, week, month, year |
| trial_period_days | integer | Number of free trial days |
| min_price | decimal | Minimum price for PWYW products |
| suggested_price | decimal | Suggested price for PWYW products |
Example: Create a Product
curl -X POST https://api.clappay.com/api/v1/payment/products/ \
-H "Authorization: Bearer sk_live_..." \
-H "Content-Type: application/json" \
-d '{
"name": "Premium Course",
"description": "Complete web development course",
"type": "digital",
"delivery_mode": "digital",
"is_active": true
}'