Skip to content

fix: show course price in its own currency on catalog about sidebar#42

Merged
choeying-10 merged 1 commit into
wbc-ulmo1-stagefrom
fix/catalog-sidebar-course-price-currency
Jun 23, 2026
Merged

fix: show course price in its own currency on catalog about sidebar#42
choeying-10 merged 1 commit into
wbc-ulmo1-stagefrom
fix/catalog-sidebar-course-price-currency

Conversation

@choeying-10

Copy link
Copy Markdown

Summary

  • Catalog About sidebar showed "Free" for paid non-USD courses because get_course_prices() forces PAID_COURSE_REGISTRATION_CURRENCY (USD) and falls back to "Free" on a currency mismatch.
  • Added get_course_display_price() in common/djangoapps/course_modes/models.py that reads the course's own paid mode (verified preferred, else first paid mode) and formats min_price with that mode's own currency symbol via Babel.
  • Wired it into CoursewareMeta.course_price (courseware_api/views.py). get_course_prices() is untouched for all other callers; genuinely free courses still return "Free".

Behavior

  • Paid USD course: $1000 (unchanged)
  • Paid INR/EUR/etc course: ₹1000 / €40 (was "Free")
  • Free course: "Free" (unchanged)

Verified

  • Catalog About sidebar shows correct currency+price for all the currencies.
  • Free course shows "Free"

@choeying-10 choeying-10 self-assigned this Jun 22, 2026
@choeying-10

Copy link
Copy Markdown
Author

Findings: Open edX ecommerce direction + the catalog price fix

The strategic direction: LMS should NOT own pricing

Important caveat: gradual, hook-based, no firm timeline

@choeying-10
choeying-10 merged commit c5fd092 into wbc-ulmo1-stage Jun 23, 2026
20 of 48 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants