medusa icon indicating copy to clipboard operation
medusa copied to clipboard

[Bug]: Can't Handle multiple currency with the same shipping options

Open Aleskyy opened this issue 5 months ago • 1 comments

Package.json file

{
  "name": "nuxt-app",
  "private": true,
  "type": "module",
  "scripts": {
    "build": "nuxt build",
    "dev": "nuxt dev",
    "generate": "nuxt generate",
    "preview": "nuxt preview",
    "postinstall": "nuxt prepare"
  },
  "dependencies": {
    "@nuxtjs/i18n": "^9.2.1",
    "@nuxtjs/medusa": "^1.1.0",
    "@nuxtjs/strapi": "^2.0.0",
    "@unlok-co/nuxt-stripe": "^4.0.2",
    "axios": "^1.8.3",
    "bcrypt": "^5.1.1",
    "marked": "^15.0.7",
    "nuxt": "^3.15.4",
    "nuxt-simple-sitemap": "^4.4.1",
    "vue": "latest",
    "vue-router": "latest"
  },
  "devDependencies": {
    "@nuxtjs/tailwindcss": "^6.13.1",
    "nodemailer": "^6.10.0",
    "nuxt-nodemailer": "^1.1.2",
    "postcss": "^8.4.31",
    "tailwindcss": "^3.4.1"
  }
}

Node.js version

v22.14.0

Database and its version

PostgreSQL 16.8

Operating system name and version

Ubuntu 24.04.2 LTS

Browser name

No response

What happended?

I'm having trouble setting up multiple currencies for the same region

For example, i've prices USD and EUR for items, i can get them right and until checkout no problem

However on checkout, i can't manage to have shipping options for my second currency

As of now i've tried multiple "hacks" because I can't find any better solution

  • Forcing to have the EUR region meanwhile using USD Display prices, however it takes the EUR prices because it's the default currency for the region (Even if I specifically have a cart with currency code USD, and my main region that has default currency EUR, EUR Takes over)

  • Trying to get shipping options on checkout, from the EUR region with the USD shipping prices, taking the shipping options and swapping my cart back to US region, when trying to create the order it can't because there is no shipping options for the US region

Only One working is changing the cart region on checkout, and it works with my stripe taking the right price, HOWEVER, in display after, it uses the EUR prices, so i'd like not to have an hack like that

Is there any better options ? I can't even seem to find a way to add shipping options to my USD regions, if I could do that and just use this, i'd be fine

TLDR : I'm trying to handle multiple currencies on the same region, and can't seem to keep my USD on my same region because regions can have only a single currency So I can hack it to act with the 2 because on my first region, I indeed have USD prices, so I can fetch them and go around, but then it displays like it was bought in EUR in my backend, which isn't reasonable to have for my use. Thank you for your time

Expected behavior

Have USD and EUR (Or other currency) used in the same region, with shipping options according to the currency used (Basically, setting 2 prices for items, EUR and USD, and same for shipping)

Actual behavior

Already described

Link to reproduction repo

Fresh installation on Coolify, with a basic region system handling FR, CH, BE but can only set a single currency

Aleskyy avatar May 20 '25 01:05 Aleskyy