diff --git a/prices/price.py b/prices/price.py
index ffc15bb..549dfab 100644
--- a/prices/price.py
+++ b/prices/price.py
@@ -14,6 +14,10 @@ class Price(object):
         if not isinstance(net, Amount) or not isinstance(gross, Amount):
             raise TypeError('Price requires two amounts, got %r, %r' % (
                 net, gross))
+        if net.currency != gross.currency:
+            raise ValueError(
+                'Amounts given in different currencies: %r and %r' % (
+                    net.currency, gross.currency))
         self.net = net
         self.gross = gross
 
diff --git a/setup.py b/setup.py
index 7b0a652..02f7aac 100755
--- a/setup.py
+++ b/setup.py
@@ -18,7 +18,7 @@ setup(
     author_email='hello@mirumee.com',
     description='Python price handling for humans',
     license='BSD',
-    version='1.0.0-beta',
+    version='1.0.1-beta',
     url='https://github.com/mirumee/prices',
     packages=['prices'],
     install_requires=['babel'],

Price can be created with net and gross with different currencies
Right now we allow to create Price with net Amount and gross Amount with different currencies.
`Price(net=Amount('25', 'USD'), gross=Amount('30', 'EUR'))`
This should not be allowed and should rise an exception.
diff --git a/tests/test_price.py b/tests/test_price.py
index 9f2f214..2a7465c 100644
--- a/tests/test_price.py
+++ b/tests/test_price.py
@@ -10,6 +10,11 @@ def test_construction():
         Price(1, 1)
 
 
+def test_construction_different_currencies():
+    with pytest.raises(ValueError):
+        Price(net=Amount(1, 'USD'), gross=Amount(2, 'EUR'))
+
+
 def test_addition():
     price1 = Price(Amount(10, 'USD'), Amount(15, 'USD'))
     price2 = Price(Amount(20, 'USD'), Amount(30, 'USD'))

pip install -e .
parse_log_pytest
requirements.txt
pytest
apt-get update apt-get install -y gcc
3.6
pytest --no-header -rA --tb=line --color=no -p no:cacheprovider -W ignore::DeprecationWarning
attrs==22.2.0
Babel==2.11.0
certifi==2021.5.30
importlib-metadata==4.8.3
iniconfig==1.1.1
packaging==21.3
pluggy==1.0.0
-e git+https://github.com/mirumee/prices.git@e56c162aa254f17ab3fa50b718d74e491a90b913#egg=prices
py==1.11.0
pyparsing==3.1.4
pytest==7.0.1
pytz==2025.2
tomli==1.2.3
typing_extensions==4.1.1
zipp==3.6.0

name: prices
channels:
  - defaults
  - https://repo.anaconda.com/pkgs/main
  - https://repo.anaconda.com/pkgs/r
  - conda-forge
dependencies:
  - _libgcc_mutex=0.1=main
  - _openmp_mutex=5.1=1_gnu
  - ca-certificates=2025.2.25=h06a4308_0
  - certifi=2021.5.30=py36h06a4308_0
  - ld_impl_linux-64=2.40=h12ee557_0
  - libffi=3.3=he6710b0_2
  - libgcc-ng=11.2.0=h1234567_1
  - libgomp=11.2.0=h1234567_1
  - libstdcxx-ng=11.2.0=h1234567_1
  - ncurses=6.4=h6a678d5_0
  - openssl=1.1.1w=h7f8727e_0
  - pip=21.2.2=py36h06a4308_0
  - python=3.6.13=h12debd9_1
  - readline=8.2=h5eee18b_0
  - setuptools=58.0.4=py36h06a4308_0
  - sqlite=3.45.3=h5eee18b_0
  - tk=8.6.14=h39e8969_0
  - wheel=0.37.1=pyhd3eb1b0_0
  - xz=5.6.4=h5eee18b_1
  - zlib=1.2.13=h5eee18b_1
  - pip:
      - attrs==22.2.0
      - babel==2.11.0
      - importlib-metadata==4.8.3
      - iniconfig==1.1.1
      - packaging==21.3
      - pluggy==1.0.0
      - py==1.11.0
      - pyparsing==3.1.4
      - pytest==7.0.1
      - pytz==2025.2
      - tomli==1.2.3
      - typing-extensions==4.1.1
      - zipp==3.6.0
prefix: /opt/conda/envs/prices

tests/test_price.py::test_construction_different_currencies
tests/test_price.py::test_construction tests/test_price.py::test_addition tests/test_price.py::test_subtraction tests/test_price.py::test_multiplication tests/test_price.py::test_division tests/test_price.py::test_comparison tests/test_price.py::test_quantize tests/test_price.py::test_currency tests/test_price.py::test_tax tests/test_price.py::test_repr tests/test_price.py::test_sum
setup.py prices/price.py
setup.py prices/price.py