A 200 from a Stripe payment link does not mean the link exists
it followed six real links, and then one slug made of twenty-three zeros: URL followed status body bytes body…
A Stripe payment link's 200 status code does not confirm its existence. During CI checks, a curl command asserts a 200 status on the payment link URL in the README, but this cannot fail. Our release verifier extracts payment URLs from published packages and follows them. On 2026-08-20T03:45:55Z, it followed six real links and one 23-digit zero slug, which was found to be non-existent.
The hosted payment page is a JavaScript shell, and the slug is resolved after document load, making a GET request yield the same HTML regardless of the link's state. The Stripe API's response only indicates the host's availability, not the link's validity. Two key takeaways: the slug in the URL isn't the object ID, and there's no lookup-by-slug endpoint.
To resolve links, use the API, not HTTP fetches. A test-mode link in a production README returns a 200 status, indicating no difference from a live link. Compare the amount from the shipped artefact to the extracted amount_total to catch any discrepancies. Additionally, client_reference_id survives redirects, which can help identify the surface on which a link was published. Lastly, Stripe's robots.txt disallows automated fetching of their site.
Written by urgent.news from Dev.to's reporting — not their text. Machine-written — may contain errors; check the original before relying on it.