Fix SaaS callback URLs and pro pill positioning (#10998)

Co-authored-by: openhands <openhands@all-hands.dev>
This commit is contained in:
sp.wack
2025-09-17 20:56:02 +04:00
committed by GitHub
parent 910177fc57
commit 7222730df0
3 changed files with 19 additions and 5 deletions

View File

@@ -417,7 +417,7 @@ async def success_callback(session_id: str, request: Request):
session.commit()
return RedirectResponse(
f'{request.base_url}settings?checkout=success', status_code=302
f'{request.base_url}settings/billing?checkout=success', status_code=302
)
@@ -444,6 +444,21 @@ async def cancel_callback(session_id: str, request: Request):
session.merge(billing_session)
session.commit()
# Redirect credit purchases to billing screen, subscriptions to LLM settings
if (
billing_session.billing_session_type
== BillingSessionType.DIRECT_PAYMENT.value
):
return RedirectResponse(
f'{request.base_url}settings/billing?checkout=cancel',
status_code=302,
)
else:
return RedirectResponse(
f'{request.base_url}settings?checkout=cancel', status_code=302
)
# If no billing session found, default to LLM settings (subscription flow)
return RedirectResponse(
f'{request.base_url}settings?checkout=cancel', status_code=302
)

View File

@@ -288,7 +288,8 @@ async def test_success_callback_success():
assert response.status_code == 302
assert (
response.headers['location'] == 'http://test.com/settings?checkout=success'
response.headers['location']
== 'http://test.com/settings/billing?checkout=success'
)
# Verify LiteLLM API calls