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.
{
"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.
Refund
A Refund returns funds from a successful Charge back to the customer's original payment method. Refunds can be full or partial, and a single Charge can be refunded multiple times up to its original amount. The Refund's `status` reflects the processor's progress as the money makes its way back: `pending` while in flight, `succeeded` once the funds have been returned, or `failed` if the processor rejected the request.