The Fix
pip install stripe==14.4.0a2
Based on closed stripe/stripe-python issue #1303 · PR/commit linked
Production note: Most teams hit this during upgrades or environment changes. Roll out with a canary and smoke critical endpoints (health, OpenAPI/docs) before 100%.
@@ -1835,6 +1835,7 @@ def pdf( # pyright: ignore[reportGeneralTypeIssues]
),
params=params,
+ base_address="files",
),
)
Option A — Upgrade to fixed release\npip install stripe==14.4.0a2\nWhen NOT to use: This fix should not be used if the API endpoint structure changes again.\n\n
Why This Fix Works in Production
- Trigger: InvalidRequestError: Unrecognized request URL (GET: /v1/quotes/<quote_id>/pdf). Please see https://stripe.com/docs or we can help at…
- Mechanism: The client does not correctly set the base address for the quote PDF endpoint requests
- Why the fix works: The Quote PDF endpoint now correctly sets the base address to 'files', allowing successful requests for quote PDFs. (first fixed release: 14.4.0a2).
- If left unfixed, the same config can fail only in production (env differences), causing startup failures or partial feature outages.
Why This Breaks in Prod
- Shows up under Python 3.12.3 in real deployments (not just unit tests).
- The client does not correctly set the base address for the quote PDF endpoint requests
- Surfaces as: InvalidRequestError: Unrecognized request URL (GET: /v1/quotes/<quote_id>/pdf). Please see https://stripe.com/docs or we can help at https://support.stripe.com/.
Proof / Evidence
- GitHub issue: #1303
- Fix PR: https://github.com/stripe/stripe-python/pull/1306
- First fixed release: 14.4.0a2
- Reproduced locally: No (not executed)
- Last verified: 2026-02-08
- Confidence: 0.75
- Did this fix it?: Yes (upstream fix exists)
- Own content ratio: 0.76
Discussion
High-signal excerpts from the issue thread (symptoms, repros, edge-cases).
“Hey @jhhayashi thanks a lot for the report and really sorry for the trouble here”
“Thanks for reporting this @jhhayashi The fix will be out in tomorrow's release of the stripe-python library”
“Awesome, thanks for the quick turnaround!”
Failure Signature (Search String)
- InvalidRequestError: Unrecognized request URL (GET: /v1/quotes/<quote_id>/pdf). Please see https://stripe.com/docs or we can help at https://support.stripe.com/.
Error Message
Stack trace
Error Message
-------------
InvalidRequestError: Unrecognized request URL (GET: /v1/quotes/<quote_id>/pdf). Please see https://stripe.com/docs or we can help at https://support.stripe.com/.
Environment
- Python: 3.12.3
What Broke
Requests to download quote PDFs result in an InvalidRequestError due to incorrect URL.
Why It Broke
The client does not correctly set the base address for the quote PDF endpoint requests
Fix Options (Details)
Option A — Upgrade to fixed release Safe default (recommended)
pip install stripe==14.4.0a2
Use when you can deploy the upstream fix. It is usually lower-risk than long-lived workarounds.
Fix reference: https://github.com/stripe/stripe-python/pull/1306
First fixed release: 14.4.0a2
Last verified: 2026-02-08. Validate in your environment.
When NOT to Use This Fix
- This fix should not be used if the API endpoint structure changes again.
Did This Fix Work in Your Case?
Quick signal helps us prioritize which fixes to verify and improve.
Prevention
- Capture the exact failing error string in logs and tests so you can reproduce via a minimal script.
- Pin production dependencies and upgrade only with a reproducible test that hits the failing path.
Version Compatibility Table
| Version | Status |
|---|---|
| 14.4.0a2 | Fixed |
Related Issues
No related fixes found.
Sources
We don’t republish the full GitHub discussion text. Use the links above for context.