Expire an open checkout session
curl --request POST \
--url https://merchant.zahlo.eu/api/v1/checkout-sessions/{id}/expire \
--header 'x-api-key: <api-key>'import requests
url = "https://merchant.zahlo.eu/api/v1/checkout-sessions/{id}/expire"
headers = {"x-api-key": "<api-key>"}
response = requests.post(url, headers=headers)
print(response.text)const options = {method: 'POST', headers: {'x-api-key': '<api-key>'}};
fetch('https://merchant.zahlo.eu/api/v1/checkout-sessions/{id}/expire', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));{
"id": "cs_demo_1001",
"amountMinor": 4990,
"currency": "EUR",
"status": "pending",
"checkoutUrl": "https://checkout.zahlo.eu/cs_demo_1001",
"expiresAt": "2026-09-02T12:00:00Z"
}{
"error": "invalid_request",
"message": "amountMinor must be positive",
"requestId": "req_demo_1001"
}{
"error": "invalid_request",
"message": "amountMinor must be positive",
"requestId": "req_demo_1001"
}{
"error": "invalid_request",
"message": "amountMinor must be positive",
"requestId": "req_demo_1001"
}{
"error": "invalid_request",
"message": "amountMinor must be positive",
"requestId": "req_demo_1001"
}Checkout
Expire an open checkout session
Expire an open checkout session. Use the response status and request ID to decide whether to retry, reconcile, or ask the customer for action.
POST
/
api
/
v1
/
checkout-sessions
/
{id}
/
expire
Expire an open checkout session
curl --request POST \
--url https://merchant.zahlo.eu/api/v1/checkout-sessions/{id}/expire \
--header 'x-api-key: <api-key>'import requests
url = "https://merchant.zahlo.eu/api/v1/checkout-sessions/{id}/expire"
headers = {"x-api-key": "<api-key>"}
response = requests.post(url, headers=headers)
print(response.text)const options = {method: 'POST', headers: {'x-api-key': '<api-key>'}};
fetch('https://merchant.zahlo.eu/api/v1/checkout-sessions/{id}/expire', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));{
"id": "cs_demo_1001",
"amountMinor": 4990,
"currency": "EUR",
"status": "pending",
"checkoutUrl": "https://checkout.zahlo.eu/cs_demo_1001",
"expiresAt": "2026-09-02T12:00:00Z"
}{
"error": "invalid_request",
"message": "amountMinor must be positive",
"requestId": "req_demo_1001"
}{
"error": "invalid_request",
"message": "amountMinor must be positive",
"requestId": "req_demo_1001"
}{
"error": "invalid_request",
"message": "amountMinor must be positive",
"requestId": "req_demo_1001"
}{
"error": "invalid_request",
"message": "amountMinor must be positive",
"requestId": "req_demo_1001"
}Authorizations
Server-side merchant API key. Never expose it in browser code.
Path Parameters
The resource identifier returned by the merchant API.
Response
Checkout session expired
Available options:
pending, confirmed, failed, cancelled, expired Available options:
hosted, embedded Available options:
bank, card, apple_pay, google_pay Show child attributes
Show child attributes