Product
A Product represents a good or service you sell. Products carry only descriptive information (name, description, images), while their pricing is described separately by Price objects. A single Product can have many Prices: for example, the same digital course offered in EGP and USD, or at different tiers. Use Products to model your catalog and Prices to model how each is sold.
A Product represents a good or service you sell. Products carry only descriptive information (name, description, images), while their pricing is described separately by Price objects. A single Product can have many Prices: for example, the same digital course offered in EGP and USD, or at different tiers. Use Products to model your catalog and Prices to model how each is sold.
{
"id": "prod_abc123",
"object": "product",
"name": "Premium Plan",
"description": "string",
"image": "string",
"unitLabel": "string",
"active": true,
"isSystemCreated": false,
"metadata": {},
"defaultPriceId": "string",
"merchantId": "merch_xyz789",
"prices": [
{
"id": "price_abc123",
"object": "price",
"name": "string",
"description": "string",
"currency": "EGP",
"unitAmount": 0,
"type": "ONE_TIME",
"recurring": {},
"customUnitAmount": {},
"stock": 0,
"startDate": "string",
"expirationDate": "string",
"active": true,
"createdAt": "string",
"updatedAt": "string",
"productId": "string"
}
],
"createdAt": "string",
"updatedAt": "string"
}Price
A Price defines what a Product costs: the unit amount, currency, and (for subscriptions) billing interval. A single Product can have many Prices, letting you offer the same item in multiple currencies, tiers, or billing models without duplicating your catalog. Reference a Price by ID when creating Checkout Sessions, Payment Links, or line items, and the customer is charged according to what the Price defines.
Promotion Code
A Promotion Code is a customer-facing alphanumeric code (for example `SUMMER25`) that maps to a single Coupon. One Coupon can have many Promotion Codes, letting you run different campaigns (email vs. social, customer-specific codes, regional codes, …) against the same underlying discount. Customers enter the code at checkout to redeem the Coupon's discount. Promotion Codes can carry their own restrictions on top of the Coupon — a per-code redemption cap, an expiry date, or a binding to a specific Customer. You receive `promotion_code.created` and `promotion_code.updated` webhook events whenever a code is created or modified.