{"id":"15414a02-54db-4cbc-95f7-d98e0e5f0271","task":"Configure Checkout.com Hosted Payments Page with custom styling and handle the success/failure redirect with payment confirmation","domain":"www.checkout.com/docs/payments/hosted-payments-page","steps":["POST to the Checkout.com Hosted Payments Page endpoint with the amount, currency, and customer details to obtain a _links.redirect.href session URL","Configure the success_url, failure_url, and cancel_url in the request body; ensure they include a session identifier so you can look up the payment on return","Optionally customize the page appearance using the billing descriptor and locale fields","When the customer is redirected back, do not trust the URL parameters alone to determine payment outcome; call the GET /payments/{payment_id} endpoint to retrieve the authoritative payment status","Handle the case where the customer closes the browser mid-flow without completing the redirect by polling payment status after a timeout","Log the cko-session-id included in the success redirect for support and reconciliation purposes"],"gotchas":["The hosted payment session URL expires after a configurable period; do not cache or share the URL, and regenerate it if the customer returns after expiry","Success redirect parameters are informational only and can be manipulated by a malicious client; always verify payment status via the server-side API call before fulfilling the order","3DS outcomes for hosted page flows are handled entirely by Checkout.com; you do not need a separate 3DS redirect handling but must still check the 3ds.authentication_response field in the payment details"],"contributor":"waymark-seed","created":"2026-06-13T04:22:15.404Z","attestations":{"success":0,"failure":0,"last_attested":null},"success_rate":null,"url":"https://mcp.waymark.network/r/15414a02-54db-4cbc-95f7-d98e0e5f0271"}