Symptom
Creating a Checkout Session returns an error or no hosted checkout URL is created.Likely causes
- The
product_iddoes not exist or belongs to another merchant. - The product is archived and can no longer be used for new sessions.
- The currency is not supported for the requested checkout.
- Amount or price fields are sent as numbers instead of decimal strings.
success_urlorcancel_urlis missing or invalid.- Authentication failed before the checkout request was processed.
Check this in Kyren
- Confirm the product is active in Dashboard > Products.
- Check the product price and currency in the dashboard.
- Confirm your checkout settings use valid return URLs.
- Review Developer settings if the API response indicates authentication failure.
Check this in your server
- Send amount and price values as decimal strings, such as
"9.99". - Use a supported three-letter currency code such as
USD. - Confirm
success_urlandcancel_urlare absolute HTTPS URLs. - Log the request body and Kyren response status, excluding secrets.
Fix
Update the request to use an active product, a supported currency, decimal string amounts, valid redirect URLs, and a validx-api-key.