Skip to main content
GET

Intro

Retrieves the products in your merchant account’s Khaime catalog, with filtering by type and category and standard offset pagination.

Context

Products listed here are what Create Payment Intent and Get Product Pricing reference by product_id. If you don’t need a catalog entry at all — for example a WooCommerce order where the product lives on your own platform — Create Charge skips this catalog entirely.

Hows

Query parameters

Response

Important: Products are returned in a nested structure. The array is at response.data.products, NOT response.data directly.
has_more is true whenever the returned page is exactly limit items long — treat it as “there may be more,” and keep paging with offset until a page comes back shorter than limit. Products can carry a two-level variation structure (product_variation.variations[], optionally with nested sub_variation.sub_variants[]) when has_variation is true; every price field in the response — price, variation_add_price, subvariant_add_price — is in the smallest currency unit (cents/kobo/pence). See API Response Schemas for the full field-by-field breakdown and Validate Cart for how variant/sub-variant IDs feed into a cart.

Error codes

Whys

category_slug accepts both the slug and the display name, comma-separated, because partner integrations often have the human-readable category name on hand (from their own CMS or storefront) rather than Khaime’s internal slug — requiring an exact slug match would push an extra lookup step onto every integration. A category_slug that matches nothing returns an empty product list rather than silently ignoring the filter, so a typo in a category name doesn’t quietly turn into “no filter,” masking the mistake as an unfiltered success.

Why nots

  • This only lists products already in your Khaime catalog — it has no visibility into products that live on your own platform (e.g. WooCommerce) and are only ever charged for via Create Charge.
  • Responses are not localized — prices come back in the product’s own currency, not converted for a specific customer. Use Get Product Pricing for a localized quote.
  • limit is capped at 100 — there’s no way to fetch the entire catalog in a single call for large product counts; page with offset instead.