curl --request POST \
--url https://api.pandabase.io/v2/stores/{storeId}/checkouts \
--header 'Content-Type: application/json' \
--data '
{
"items": [
{
"product_id": "<string>",
"quantity": 500,
"variant_id": "<string>"
}
],
"title": "<string>",
"description": "<string>",
"amount": 500050,
"coupon_code": "<string>",
"tax_id": "<string>",
"display": {
"fields": [
{
"key": "<string>",
"label": {
"type": "<string>",
"custom": "<string>"
},
"type": "text",
"optional": false,
"text": {
"default_value": "<string>",
"minimum_length": 1,
"maximum_length": 123
},
"numeric": {
"default_value": "<string>",
"minimum_length": 1,
"maximum_length": 123
},
"dropdown": {
"default_value": "<string>",
"options": [
{
"label": "<string>",
"value": "<string>"
}
]
}
}
]
},
"metadata": {},
"return_url": "<string>",
"cancel_url": "<string>"
}
'{
"ok": true,
"data": {
"id": "<string>",
"checkout_url": "<string>",
"pay_redirect_url": "<string>",
"merchant": {
"id": "<string>",
"name": "<string>",
"handle": "<string>",
"slug": "<string>",
"logo": "<string>",
"favicon": "<string>",
"accentColor": "<string>",
"primaryColor": "<string>",
"statementDescriptor": "<string>",
"supportEmail": "<string>"
},
"amount": 123,
"discount_amount": 123,
"tax_amount": 123,
"total_amount": 123,
"items": [
{
"name": "<string>",
"amount": 123,
"quantity": 123,
"image": "<string>"
}
],
"expires_at": 123,
"title": "<string>",
"description": "<string>",
"coupon": {
"code": "<string>",
"discount_amount": 123
},
"display": {},
"metadata": {},
"return_url": "<string>",
"cancel_url": "<string>"
}
}Creates a checkout session with a 6-hour TTL. Returns a checkout_url that you can redirect customers to, or use the session ID to build a custom checkout experience. Supports both catalog products (by product_id) and dynamic line items (by name + amount).
curl --request POST \
--url https://api.pandabase.io/v2/stores/{storeId}/checkouts \
--header 'Content-Type: application/json' \
--data '
{
"items": [
{
"product_id": "<string>",
"quantity": 500,
"variant_id": "<string>"
}
],
"title": "<string>",
"description": "<string>",
"amount": 500050,
"coupon_code": "<string>",
"tax_id": "<string>",
"display": {
"fields": [
{
"key": "<string>",
"label": {
"type": "<string>",
"custom": "<string>"
},
"type": "text",
"optional": false,
"text": {
"default_value": "<string>",
"minimum_length": 1,
"maximum_length": 123
},
"numeric": {
"default_value": "<string>",
"minimum_length": 1,
"maximum_length": 123
},
"dropdown": {
"default_value": "<string>",
"options": [
{
"label": "<string>",
"value": "<string>"
}
]
}
}
]
},
"metadata": {},
"return_url": "<string>",
"cancel_url": "<string>"
}
'{
"ok": true,
"data": {
"id": "<string>",
"checkout_url": "<string>",
"pay_redirect_url": "<string>",
"merchant": {
"id": "<string>",
"name": "<string>",
"handle": "<string>",
"slug": "<string>",
"logo": "<string>",
"favicon": "<string>",
"accentColor": "<string>",
"primaryColor": "<string>",
"statementDescriptor": "<string>",
"supportEmail": "<string>"
},
"amount": 123,
"discount_amount": 123,
"tax_amount": 123,
"total_amount": 123,
"items": [
{
"name": "<string>",
"amount": 123,
"quantity": 123,
"image": "<string>"
}
],
"expires_at": 123,
"title": "<string>",
"description": "<string>",
"coupon": {
"code": "<string>",
"discount_amount": 123
},
"display": {},
"metadata": {},
"return_url": "<string>",
"cancel_url": "<string>"
}
}Documentation Index
Fetch the complete documentation index at: https://docs.pandabase.io/llms.txt
Use this file to discover all available pages before exploring further.
Store ID (shp_ prefix)
Line items — use product_id for catalog products or name + amount for dynamic items
1 - 10 elementsReference an existing product from your catalog
Show child attributes
Custom title for the checkout page. Defaults to the store name.
1 - 128Custom description shown on the checkout page. Not included unless explicitly set.
1 - 500Expected total in cents. If provided, must match the computed item total (validation safeguard).
100 <= x <= 1000000Show child attributes
Coupon code to apply
64Tax ID (VAT number)
32Checkout UI configuration
Show child attributes
Key-value pairs attached to the session. Flows through to the order and webhook payloads. Max 20 keys, key max 40 chars, value max 500 chars.
Show child attributes
URL to redirect after successful payment. Must use HTTPS.
URL to redirect if the customer cancels. Must use HTTPS.