Cancel a Payment Session
Cancel a PENDING payment session, transitioning it to EXPIRED.
curl -X POST "https://api.catalystpay.com/api/v1/payment-sessions/ps_abc123def456/cancel/" \
-H "Authorization: Bearer rk_your_api_key"
import requests
response = requests.post(
f"https://api.catalystpay.com/api/v1/payment-sessions/{token}/cancel/",
headers={"Authorization": "Bearer rk_your_api_key"},
)
result = response.json()
print(result["status"]) # "EXPIRED"
const response = await fetch(
`https://api.catalystpay.com/api/v1/payment-sessions/${token}/cancel/`,
{
method: 'POST',
headers: { 'Authorization': 'Bearer rk_your_api_key' },
}
);
const result = await response.json();
console.log(result.status); // "EXPIRED"
Response:
{
"session_token": "ps_abc123def456",
"status": "EXPIRED"
}
Only sessions in PENDING status can be cancelled. Terminal states (COMPLETED, FAILED, EXPIRED) return 410 Gone. In-progress states (PAYMENT_IN_PROGRESS, AWAITING_VERIFICATION) return 409 Conflict. No request body is needed.