It says that sometimes under huge sales the checkout creation request might return 303 with a location in the headers, while I have been testing this, even though I get the 303 response status code it doesn’t contain any header location to start polling from?
I’ve never encountered this behaviour before. If you’re getting a 303 there should be a location header available in your response. Are you logging the full response?
If possible, can you share the response you got here so I can investigate? You might need to redact any sensitive information before you do so. Also, if you have direct messaging enabled on our community, you can DM me it.
Most of the time I get a 201 or 202 response with a location header and a body that returns the {‘checkout’: … } data. However, after sending the request approx 10 times in 10 seconds eventually I get this:
Since the issue is that we’re returning a 303 status without a location header when in reality, this is a throttle being hit, we are looking at changing the status returned when creating 5 checkouts with the same payload in succession. It will likely be changed to a 429, but this change has not been prioritized yet. I’m continuing to track the issue and will post back here with an update. The easy way around this is to simply not create many checkouts in succession with the same payload.
This still seems to be an issue on the recent versions of the API. While the documentation has been updated to indicate that a rate limit will result in a 429 response, in reality, it still seems to be returning a 303 response with no location header specified.