diff --git a/lib/exchange/changenow/changenow_exchange_provider.dart b/lib/exchange/changenow/changenow_exchange_provider.dart
index ee49855e4..a9fb7c9ca 100644
--- a/lib/exchange/changenow/changenow_exchange_provider.dart
+++ b/lib/exchange/changenow/changenow_exchange_provider.dart
@@ -114,7 +114,7 @@ class ChangeNowExchangeProvider extends ExchangeProvider {
     if (isFixedRateMode) {
       // since we schedule to calculate the rate every 5 seconds we need to ensure that
       // we have the latest rate id with the given inputs before creating the trade
-      await calculateAmount(
+      await fetchRate(
         from: _request.from,
         to: _request.to,
         amount: double.tryParse(_request.toAmount) ?? 0,
@@ -208,7 +208,7 @@ class ChangeNowExchangeProvider extends ExchangeProvider {
   }
 
   @override
-  Future<double> calculateAmount(
+  Future<double> fetchRate(
       {required CryptoCurrency from,
       required CryptoCurrency to,
       required double amount,
diff --git a/lib/exchange/exchange_provider.dart b/lib/exchange/exchange_provider.dart
index 108256015..763350c94 100644
--- a/lib/exchange/exchange_provider.dart
+++ b/lib/exchange/exchange_provider.dart
@@ -26,7 +26,7 @@ abstract class ExchangeProvider {
     required TradeRequest request,
     required bool isFixedRateMode});
   Future<Trade> findTradeById({required String id});
-  Future<double> calculateAmount({
+  Future<double> fetchRate({
     required CryptoCurrency from,
     required CryptoCurrency to,
     required double amount,
diff --git a/lib/exchange/morphtoken/morphtoken_exchange_provider.dart b/lib/exchange/morphtoken/morphtoken_exchange_provider.dart
index 6650d4f3a..a2a72b24f 100644
--- a/lib/exchange/morphtoken/morphtoken_exchange_provider.dart
+++ b/lib/exchange/morphtoken/morphtoken_exchange_provider.dart
@@ -203,7 +203,7 @@ class MorphTokenExchangeProvider extends ExchangeProvider {
   }
 
   @override
-  Future<double> calculateAmount(
+  Future<double> fetchRate(
       {required CryptoCurrency from,
       required CryptoCurrency to,
       required double amount,
diff --git a/lib/exchange/sideshift/sideshift_exchange_provider.dart b/lib/exchange/sideshift/sideshift_exchange_provider.dart
index 912ad89c5..98f18f058 100644
--- a/lib/exchange/sideshift/sideshift_exchange_provider.dart
+++ b/lib/exchange/sideshift/sideshift_exchange_provider.dart
@@ -57,7 +57,7 @@ class SideShiftExchangeProvider extends ExchangeProvider {
       ExchangeProviderDescription.sideShift;
 
   @override
-  Future<double> calculateAmount(
+  Future<double> fetchRate(
       {required CryptoCurrency from,
       required CryptoCurrency to,
       required double amount,
diff --git a/lib/exchange/simpleswap/simpleswap_exchange_provider.dart b/lib/exchange/simpleswap/simpleswap_exchange_provider.dart
index 0c1027000..2521c1486 100644
--- a/lib/exchange/simpleswap/simpleswap_exchange_provider.dart
+++ b/lib/exchange/simpleswap/simpleswap_exchange_provider.dart
@@ -36,7 +36,7 @@ class SimpleSwapExchangeProvider extends ExchangeProvider {
       ExchangeProviderDescription.simpleSwap;
 
   @override
-  Future<double> calculateAmount(
+  Future<double> fetchRate(
       {required CryptoCurrency from,
       required CryptoCurrency to,
       required double amount,
diff --git a/lib/exchange/xmrto/xmrto_exchange_provider.dart b/lib/exchange/xmrto/xmrto_exchange_provider.dart
index da367e4d4..536754e18 100644
--- a/lib/exchange/xmrto/xmrto_exchange_provider.dart
+++ b/lib/exchange/xmrto/xmrto_exchange_provider.dart
@@ -194,7 +194,7 @@ class XMRTOExchangeProvider extends ExchangeProvider {
   }
 
   @override
-  Future<double> calculateAmount(
+  Future<double> fetchRate(
       {required CryptoCurrency from,
       required CryptoCurrency to,
       required double amount,
diff --git a/lib/store/settings_store.dart b/lib/store/settings_store.dart
index 534ea67e9..e1ff316f4 100644
--- a/lib/store/settings_store.dart
+++ b/lib/store/settings_store.dart
@@ -115,6 +115,11 @@ abstract class SettingsStoreBase with Store {
         (BalanceDisplayMode mode) => sharedPreferences.setInt(
             PreferencesKey.currentBalanceDisplayModeKey, mode.serialize()));
 
+    reaction(
+            (_) => disableExchange,
+            (bool disableExchange) => sharedPreferences.setBool(
+            PreferencesKey.disableExchangeKey, disableExchange));
+
     this
         .nodes
         .observe((change) { 
diff --git a/lib/view_model/exchange/exchange_view_model.dart b/lib/view_model/exchange/exchange_view_model.dart
index 80551304f..5c1f696b8 100644
--- a/lib/view_model/exchange/exchange_view_model.dart
+++ b/lib/view_model/exchange/exchange_view_model.dart
@@ -311,7 +311,7 @@ abstract class ExchangeViewModelBase with Store {
     final result = await Future.wait<double>(
         _tradeAvailableProviders
             .where((element) => !isFixedRateMode || element.supportsFixedRate)
-            .map((element) => element.calculateAmount(
+            .map((element) => element.fetchRate(
                 from: depositCurrency,
                 to: receiveCurrency,
                 amount: amount,