diff --git a/apitest/src/test/java/haveno/apitest/method/MethodTest.java b/apitest/src/test/java/haveno/apitest/method/MethodTest.java
index 1de511e5..8f815e91 100644
--- a/apitest/src/test/java/haveno/apitest/method/MethodTest.java
+++ b/apitest/src/test/java/haveno/apitest/method/MethodTest.java
@@ -47,7 +47,7 @@ import javax.annotation.Nullable;
import static haveno.apitest.config.ApiTestConfig.BTC;
import static haveno.apitest.config.ApiTestRateMeterInterceptorConfig.getTestRateMeterInterceptorConfig;
import static haveno.cli.table.builder.TableType.BTC_BALANCE_TBL;
-import static haveno.core.btc.wallet.Restrictions.getDefaultBuyerSecurityDepositAsPercent;
+import static haveno.core.xmr.wallet.Restrictions.getDefaultBuyerSecurityDepositAsPercent;
import static java.lang.String.format;
import static java.nio.charset.StandardCharsets.UTF_8;
import static java.util.Arrays.stream;
diff --git a/core/src/main/java/haveno/core/api/CoreDisputeAgentsService.java b/core/src/main/java/haveno/core/api/CoreDisputeAgentsService.java
index 8a91063f..9839e634 100644
--- a/core/src/main/java/haveno/core/api/CoreDisputeAgentsService.java
+++ b/core/src/main/java/haveno/core/api/CoreDisputeAgentsService.java
@@ -21,7 +21,6 @@ import haveno.common.config.Config;
import haveno.common.crypto.KeyRing;
import haveno.common.handlers.ErrorMessageHandler;
import haveno.common.handlers.ResultHandler;
-import haveno.core.btc.wallet.XmrWalletService;
import haveno.core.support.SupportType;
import haveno.core.support.dispute.arbitration.arbitrator.Arbitrator;
import haveno.core.support.dispute.arbitration.arbitrator.ArbitratorManager;
@@ -30,6 +29,7 @@ import haveno.core.support.dispute.mediation.mediator.MediatorManager;
import haveno.core.support.dispute.refund.refundagent.RefundAgent;
import haveno.core.support.dispute.refund.refundagent.RefundAgentManager;
import haveno.core.user.User;
+import haveno.core.xmr.wallet.XmrWalletService;
import haveno.network.p2p.NodeAddress;
import haveno.network.p2p.P2PService;
import org.bitcoinj.core.ECKey;
diff --git a/core/src/main/java/haveno/core/api/CoreDisputesService.java b/core/src/main/java/haveno/core/api/CoreDisputesService.java
index d027d369..d9ef0c6d 100644
--- a/core/src/main/java/haveno/core/api/CoreDisputesService.java
+++ b/core/src/main/java/haveno/core/api/CoreDisputesService.java
@@ -5,7 +5,6 @@ import haveno.common.crypto.KeyRing;
import haveno.common.crypto.PubKeyRing;
import haveno.common.handlers.FaultHandler;
import haveno.common.handlers.ResultHandler;
-import haveno.core.btc.wallet.XmrWalletService;
import haveno.core.locale.Res;
import haveno.core.offer.Offer;
import haveno.core.offer.OfferDirection;
@@ -23,6 +22,7 @@ import haveno.core.trade.Trade;
import haveno.core.trade.TradeManager;
import haveno.core.util.FormattingUtils;
import haveno.core.util.coin.CoinFormatter;
+import haveno.core.xmr.wallet.XmrWalletService;
import javax.inject.Inject;
import javax.inject.Singleton;
diff --git a/core/src/main/java/haveno/core/api/CoreMoneroConnectionsService.java b/core/src/main/java/haveno/core/api/CoreMoneroConnectionsService.java
index d5fe2ce9..c4b4eabb 100644
--- a/core/src/main/java/haveno/core/api/CoreMoneroConnectionsService.java
+++ b/core/src/main/java/haveno/core/api/CoreMoneroConnectionsService.java
@@ -3,10 +3,10 @@ package haveno.core.api;
import haveno.common.app.DevEnv;
import haveno.common.config.BaseCurrencyNetwork;
import haveno.common.config.Config;
-import haveno.core.btc.model.EncryptedConnectionList;
-import haveno.core.btc.setup.DownloadListener;
-import haveno.core.btc.setup.WalletsSetup;
import haveno.core.trade.HavenoUtils;
+import haveno.core.xmr.model.EncryptedConnectionList;
+import haveno.core.xmr.setup.DownloadListener;
+import haveno.core.xmr.setup.WalletsSetup;
import java.util.ArrayList;
import java.util.Arrays;
import java.util.HashMap;
diff --git a/core/src/main/java/haveno/core/api/CoreTradesService.java b/core/src/main/java/haveno/core/api/CoreTradesService.java
index a531e984..504d85d4 100644
--- a/core/src/main/java/haveno/core/api/CoreTradesService.java
+++ b/core/src/main/java/haveno/core/api/CoreTradesService.java
@@ -19,8 +19,6 @@ package haveno.core.api;
import haveno.common.handlers.ErrorMessageHandler;
import haveno.common.handlers.ResultHandler;
-import haveno.core.btc.model.AddressEntry;
-import haveno.core.btc.wallet.BtcWalletService;
import haveno.core.offer.Offer;
import haveno.core.offer.takeoffer.TakeOfferModel;
import haveno.core.support.messages.ChatMessage;
@@ -35,6 +33,8 @@ import haveno.core.trade.protocol.BuyerProtocol;
import haveno.core.trade.protocol.SellerProtocol;
import haveno.core.user.User;
import haveno.core.util.validation.BtcAddressValidator;
+import haveno.core.xmr.model.AddressEntry;
+import haveno.core.xmr.wallet.BtcWalletService;
import org.bitcoinj.core.Coin;
import javax.inject.Inject;
@@ -46,7 +46,7 @@ import java.util.function.Consumer;
import lombok.extern.slf4j.Slf4j;
-import static haveno.core.btc.model.AddressEntry.Context.TRADE_PAYOUT;
+import static haveno.core.xmr.model.AddressEntry.Context.TRADE_PAYOUT;
import static java.lang.String.format;
import java.math.BigInteger;
diff --git a/core/src/main/java/haveno/core/api/CoreWalletsService.java b/core/src/main/java/haveno/core/api/CoreWalletsService.java
index 571cd8ef..9be891db 100644
--- a/core/src/main/java/haveno/core/api/CoreWalletsService.java
+++ b/core/src/main/java/haveno/core/api/CoreWalletsService.java
@@ -40,17 +40,17 @@ import haveno.core.api.model.BalancesInfo;
import haveno.core.api.model.BtcBalanceInfo;
import haveno.core.api.model.XmrBalanceInfo;
import haveno.core.app.AppStartupState;
-import haveno.core.btc.Balances;
-import haveno.core.btc.exceptions.AddressEntryException;
-import haveno.core.btc.exceptions.InsufficientFundsException;
-import haveno.core.btc.model.AddressEntry;
-import haveno.core.btc.setup.WalletsSetup;
-import haveno.core.btc.wallet.BtcWalletService;
-import haveno.core.btc.wallet.WalletsManager;
-import haveno.core.btc.wallet.XmrWalletService;
import haveno.core.user.Preferences;
import haveno.core.util.FormattingUtils;
import haveno.core.util.coin.CoinFormatter;
+import haveno.core.xmr.Balances;
+import haveno.core.xmr.exceptions.AddressEntryException;
+import haveno.core.xmr.exceptions.InsufficientFundsException;
+import haveno.core.xmr.model.AddressEntry;
+import haveno.core.xmr.setup.WalletsSetup;
+import haveno.core.xmr.wallet.BtcWalletService;
+import haveno.core.xmr.wallet.WalletsManager;
+import haveno.core.xmr.wallet.XmrWalletService;
import org.bouncycastle.crypto.params.KeyParameter;
import java.util.List;
@@ -63,8 +63,8 @@ import lombok.extern.slf4j.Slf4j;
import javax.annotation.Nullable;
-import static haveno.core.btc.wallet.Restrictions.getMinNonDustOutput;
import static haveno.core.util.ParsingUtils.parseToCoin;
+import static haveno.core.xmr.wallet.Restrictions.getMinNonDustOutput;
import static java.lang.String.format;
import static java.util.concurrent.TimeUnit.SECONDS;
diff --git a/core/src/main/java/haveno/core/app/CoreModule.java b/core/src/main/java/haveno/core/app/CoreModule.java
index e323b36a..06b640fb 100644
--- a/core/src/main/java/haveno/core/app/CoreModule.java
+++ b/core/src/main/java/haveno/core/app/CoreModule.java
@@ -23,7 +23,6 @@ import haveno.common.config.Config;
import haveno.common.proto.network.NetworkProtoResolver;
import haveno.common.proto.persistable.PersistenceProtoResolver;
import haveno.core.alert.AlertModule;
-import haveno.core.btc.MoneroModule;
import haveno.core.filter.FilterModule;
import haveno.core.network.CoreNetworkFilter;
import haveno.core.network.p2p.seed.DefaultSeedNodeRepository;
@@ -36,7 +35,8 @@ import haveno.core.user.Preferences;
import haveno.core.util.FormattingUtils;
import haveno.core.util.coin.CoinFormatter;
import haveno.core.util.coin.ImmutableCoinFormatter;
-import haveno.core.xmr.connection.MoneroConnectionModule;
+import haveno.core.xmr.MoneroConnectionModule;
+import haveno.core.xmr.MoneroModule;
import haveno.network.crypto.EncryptionServiceModule;
import haveno.network.p2p.P2PModule;
import haveno.network.p2p.network.BridgeAddressProvider;
diff --git a/core/src/main/java/haveno/core/app/DomainInitialisation.java b/core/src/main/java/haveno/core/app/DomainInitialisation.java
index e51cffe3..7cff24d3 100644
--- a/core/src/main/java/haveno/core/app/DomainInitialisation.java
+++ b/core/src/main/java/haveno/core/app/DomainInitialisation.java
@@ -24,7 +24,6 @@ import haveno.core.account.sign.SignedWitnessService;
import haveno.core.account.witness.AccountAgeWitnessService;
import haveno.core.alert.PrivateNotificationManager;
import haveno.core.alert.PrivateNotificationPayload;
-import haveno.core.btc.Balances;
import haveno.core.filter.FilterManager;
import haveno.core.notifications.MobileNotificationService;
import haveno.core.notifications.alerts.DisputeMsgEvents;
@@ -51,6 +50,7 @@ import haveno.core.trade.failed.FailedTradesManager;
import haveno.core.trade.statistics.TradeStatisticsManager;
import haveno.core.trade.txproof.xmr.XmrTxProofService;
import haveno.core.user.User;
+import haveno.core.xmr.Balances;
import haveno.network.p2p.P2PService;
import javax.inject.Inject;
diff --git a/core/src/main/java/haveno/core/app/HavenoExecutable.java b/core/src/main/java/haveno/core/app/HavenoExecutable.java
index c34dfc11..46b27741 100644
--- a/core/src/main/java/haveno/core/app/HavenoExecutable.java
+++ b/core/src/main/java/haveno/core/app/HavenoExecutable.java
@@ -34,9 +34,6 @@ import haveno.common.setup.UncaughtExceptionHandler;
import haveno.common.util.Utilities;
import haveno.core.api.AccountServiceListener;
import haveno.core.api.CoreAccountService;
-import haveno.core.btc.setup.WalletsSetup;
-import haveno.core.btc.wallet.BtcWalletService;
-import haveno.core.btc.wallet.XmrWalletService;
import haveno.core.offer.OpenOfferManager;
import haveno.core.provider.price.PriceFeedService;
import haveno.core.setup.CorePersistedDataHost;
@@ -46,6 +43,9 @@ import haveno.core.trade.HavenoUtils;
import haveno.core.trade.TradeManager;
import haveno.core.trade.statistics.TradeStatisticsManager;
import haveno.core.trade.txproof.xmr.XmrTxProofService;
+import haveno.core.xmr.setup.WalletsSetup;
+import haveno.core.xmr.wallet.BtcWalletService;
+import haveno.core.xmr.wallet.XmrWalletService;
import haveno.network.p2p.P2PService;
import java.io.Console;
diff --git a/core/src/main/java/haveno/core/app/HavenoSetup.java b/core/src/main/java/haveno/core/app/HavenoSetup.java
index e3fe4631..650e834d 100644
--- a/core/src/main/java/haveno/core/app/HavenoSetup.java
+++ b/core/src/main/java/haveno/core/app/HavenoSetup.java
@@ -69,13 +69,6 @@ import haveno.core.alert.AlertManager;
import haveno.core.alert.PrivateNotificationManager;
import haveno.core.alert.PrivateNotificationPayload;
import haveno.core.api.CoreMoneroNodeService;
-import haveno.core.btc.model.AddressEntry;
-import haveno.core.btc.nodes.LocalBitcoinNode;
-import haveno.core.btc.setup.WalletsSetup;
-import haveno.core.btc.wallet.BtcWalletService;
-import haveno.core.btc.wallet.WalletsManager;
-import haveno.core.btc.wallet.XmrWalletService;
-import haveno.core.btc.wallet.http.MemPoolSpaceTxBroadcaster;
import haveno.core.locale.Res;
import haveno.core.offer.OpenOfferManager;
import haveno.core.payment.AmazonGiftCardAccount;
@@ -92,6 +85,13 @@ import haveno.core.user.Preferences;
import haveno.core.user.User;
import haveno.core.util.FormattingUtils;
import haveno.core.util.coin.CoinFormatter;
+import haveno.core.xmr.model.AddressEntry;
+import haveno.core.xmr.nodes.LocalBitcoinNode;
+import haveno.core.xmr.setup.WalletsSetup;
+import haveno.core.xmr.wallet.BtcWalletService;
+import haveno.core.xmr.wallet.WalletsManager;
+import haveno.core.xmr.wallet.XmrWalletService;
+import haveno.core.xmr.wallet.http.MemPoolSpaceTxBroadcaster;
import haveno.network.Socks5ProxyProvider;
import haveno.network.p2p.NodeAddress;
import haveno.network.p2p.P2PService;
diff --git a/core/src/main/java/haveno/core/app/WalletAppSetup.java b/core/src/main/java/haveno/core/app/WalletAppSetup.java
index 25a5d3f9..4e629e26 100644
--- a/core/src/main/java/haveno/core/app/WalletAppSetup.java
+++ b/core/src/main/java/haveno/core/app/WalletAppSetup.java
@@ -21,15 +21,15 @@ import haveno.common.UserThread;
import haveno.common.config.Config;
import haveno.core.api.CoreContext;
import haveno.core.api.CoreMoneroConnectionsService;
-import haveno.core.btc.exceptions.InvalidHostException;
-import haveno.core.btc.exceptions.RejectedTxException;
-import haveno.core.btc.setup.WalletsSetup;
-import haveno.core.btc.wallet.WalletsManager;
import haveno.core.locale.Res;
import haveno.core.offer.OpenOfferManager;
import haveno.core.trade.TradeManager;
import haveno.core.user.Preferences;
import haveno.core.util.FormattingUtils;
+import haveno.core.xmr.exceptions.InvalidHostException;
+import haveno.core.xmr.exceptions.RejectedTxException;
+import haveno.core.xmr.setup.WalletsSetup;
+import haveno.core.xmr.wallet.WalletsManager;
import org.bitcoinj.core.RejectMessage;
import org.bitcoinj.core.VersionMessage;
import org.bitcoinj.store.BlockStoreException;
diff --git a/core/src/main/java/haveno/core/app/misc/ExecutableForAppWithP2p.java b/core/src/main/java/haveno/core/app/misc/ExecutableForAppWithP2p.java
index 3d0e9965..2bf69352 100644
--- a/core/src/main/java/haveno/core/app/misc/ExecutableForAppWithP2p.java
+++ b/core/src/main/java/haveno/core/app/misc/ExecutableForAppWithP2p.java
@@ -27,11 +27,11 @@ import haveno.common.persistence.PersistenceManager;
import haveno.common.setup.GracefulShutDownHandler;
import haveno.common.util.Profiler;
import haveno.core.app.HavenoExecutable;
-import haveno.core.btc.setup.WalletsSetup;
-import haveno.core.btc.wallet.BtcWalletService;
-import haveno.core.btc.wallet.XmrWalletService;
import haveno.core.offer.OpenOfferManager;
import haveno.core.support.dispute.arbitration.arbitrator.ArbitratorManager;
+import haveno.core.xmr.setup.WalletsSetup;
+import haveno.core.xmr.wallet.BtcWalletService;
+import haveno.core.xmr.wallet.XmrWalletService;
import haveno.network.p2p.NodeAddress;
import haveno.network.p2p.P2PService;
import haveno.network.p2p.seed.SeedNodeRepository;
diff --git a/core/src/main/java/haveno/core/app/misc/ModuleForAppWithP2p.java b/core/src/main/java/haveno/core/app/misc/ModuleForAppWithP2p.java
index 88c898ee..3e4f58fa 100644
--- a/core/src/main/java/haveno/core/app/misc/ModuleForAppWithP2p.java
+++ b/core/src/main/java/haveno/core/app/misc/ModuleForAppWithP2p.java
@@ -27,7 +27,6 @@ import haveno.common.proto.network.NetworkProtoResolver;
import haveno.common.proto.persistable.PersistenceProtoResolver;
import haveno.core.alert.AlertModule;
import haveno.core.app.TorSetup;
-import haveno.core.btc.MoneroModule;
import haveno.core.filter.FilterModule;
import haveno.core.network.CoreNetworkFilter;
import haveno.core.network.p2p.seed.DefaultSeedNodeRepository;
@@ -37,7 +36,8 @@ import haveno.core.proto.persistable.CorePersistenceProtoResolver;
import haveno.core.trade.TradeModule;
import haveno.core.user.Preferences;
import haveno.core.user.User;
-import haveno.core.xmr.connection.MoneroConnectionModule;
+import haveno.core.xmr.MoneroConnectionModule;
+import haveno.core.xmr.MoneroModule;
import haveno.network.crypto.EncryptionServiceModule;
import haveno.network.p2p.P2PModule;
import haveno.network.p2p.network.BridgeAddressProvider;
diff --git a/core/src/main/java/haveno/core/filter/FilterManager.java b/core/src/main/java/haveno/core/filter/FilterManager.java
index e57a017d..bf0492a8 100644
--- a/core/src/main/java/haveno/core/filter/FilterManager.java
+++ b/core/src/main/java/haveno/core/filter/FilterManager.java
@@ -22,13 +22,13 @@ import haveno.common.app.Version;
import haveno.common.config.Config;
import haveno.common.config.ConfigFileEditor;
import haveno.common.crypto.KeyRing;
-import haveno.core.btc.nodes.BtcNodes;
import haveno.core.locale.Res;
import haveno.core.payment.payload.PaymentAccountPayload;
import haveno.core.payment.payload.PaymentMethod;
import haveno.core.provider.ProvidersRepository;
import haveno.core.user.Preferences;
import haveno.core.user.User;
+import haveno.core.xmr.nodes.BtcNodes;
import haveno.network.p2p.NodeAddress;
import haveno.network.p2p.P2PService;
import haveno.network.p2p.P2PServiceListener;
diff --git a/core/src/main/java/haveno/core/offer/CreateOfferService.java b/core/src/main/java/haveno/core/offer/CreateOfferService.java
index 35047ce6..ff64bf91 100644
--- a/core/src/main/java/haveno/core/offer/CreateOfferService.java
+++ b/core/src/main/java/haveno/core/offer/CreateOfferService.java
@@ -22,8 +22,6 @@ import static haveno.core.payment.payload.PaymentMethod.HAL_CASH_ID;
import haveno.common.app.Version;
import haveno.common.crypto.PubKeyRingProvider;
import haveno.common.util.Utilities;
-import haveno.core.btc.wallet.Restrictions;
-import haveno.core.btc.wallet.XmrWalletService;
import haveno.core.locale.CurrencyUtil;
import haveno.core.locale.Res;
import haveno.core.monetary.Price;
@@ -37,6 +35,8 @@ import haveno.core.trade.statistics.TradeStatisticsManager;
import haveno.core.user.Preferences;
import haveno.core.user.User;
import haveno.core.util.coin.CoinUtil;
+import haveno.core.xmr.wallet.Restrictions;
+import haveno.core.xmr.wallet.XmrWalletService;
import haveno.network.p2p.NodeAddress;
import haveno.network.p2p.P2PService;
diff --git a/core/src/main/java/haveno/core/offer/OfferBookService.java b/core/src/main/java/haveno/core/offer/OfferBookService.java
index 69c88c48..c9a6dbac 100644
--- a/core/src/main/java/haveno/core/offer/OfferBookService.java
+++ b/core/src/main/java/haveno/core/offer/OfferBookService.java
@@ -24,12 +24,12 @@ import haveno.common.file.JsonFileManager;
import haveno.common.handlers.ErrorMessageHandler;
import haveno.common.handlers.ResultHandler;
import haveno.core.api.CoreMoneroConnectionsService;
-import haveno.core.btc.wallet.MoneroKeyImageListener;
-import haveno.core.btc.wallet.MoneroKeyImagePoller;
import haveno.core.filter.FilterManager;
import haveno.core.locale.Res;
import haveno.core.provider.price.PriceFeedService;
import haveno.core.util.JsonUtil;
+import haveno.core.xmr.wallet.MoneroKeyImageListener;
+import haveno.core.xmr.wallet.MoneroKeyImagePoller;
import haveno.network.p2p.BootstrapListener;
import haveno.network.p2p.P2PService;
import haveno.network.p2p.storage.HashMapChangedListener;
diff --git a/core/src/main/java/haveno/core/offer/OfferUtil.java b/core/src/main/java/haveno/core/offer/OfferUtil.java
index 780b0bf3..ac509906 100644
--- a/core/src/main/java/haveno/core/offer/OfferUtil.java
+++ b/core/src/main/java/haveno/core/offer/OfferUtil.java
@@ -22,7 +22,6 @@ import haveno.common.app.Version;
import haveno.common.util.MathUtils;
import haveno.common.util.Utilities;
import haveno.core.account.witness.AccountAgeWitnessService;
-import haveno.core.btc.wallet.BtcWalletService;
import haveno.core.filter.FilterManager;
import haveno.core.locale.CurrencyUtil;
import haveno.core.locale.Res;
@@ -37,6 +36,7 @@ import haveno.core.trade.statistics.ReferralIdService;
import haveno.core.user.AutoConfirmSettings;
import haveno.core.user.Preferences;
import haveno.core.util.coin.CoinFormatter;
+import haveno.core.xmr.wallet.BtcWalletService;
import haveno.network.p2p.P2PService;
import org.bitcoinj.core.Transaction;
import org.bitcoinj.core.TransactionInput;
@@ -58,9 +58,9 @@ import static com.google.common.base.Preconditions.checkArgument;
import static com.google.common.base.Preconditions.checkNotNull;
import static haveno.common.util.MathUtils.roundDoubleToLong;
import static haveno.common.util.MathUtils.scaleUpByPowerOf10;
-import static haveno.core.btc.wallet.Restrictions.getMaxBuyerSecurityDepositAsPercent;
-import static haveno.core.btc.wallet.Restrictions.getMinBuyerSecurityDepositAsPercent;
import static haveno.core.offer.OfferPayload.*;
+import static haveno.core.xmr.wallet.Restrictions.getMaxBuyerSecurityDepositAsPercent;
+import static haveno.core.xmr.wallet.Restrictions.getMinBuyerSecurityDepositAsPercent;
/**
* This class holds utility methods for creating, editing and taking an Offer.
diff --git a/core/src/main/java/haveno/core/offer/OpenOfferManager.java b/core/src/main/java/haveno/core/offer/OpenOfferManager.java
index 6fc28b3a..2fd5bdd2 100644
--- a/core/src/main/java/haveno/core/offer/OpenOfferManager.java
+++ b/core/src/main/java/haveno/core/offer/OpenOfferManager.java
@@ -35,11 +35,6 @@ import haveno.common.util.Tuple2;
import haveno.core.account.witness.AccountAgeWitnessService;
import haveno.core.api.CoreContext;
import haveno.core.api.CoreMoneroConnectionsService;
-import haveno.core.btc.wallet.BtcWalletService;
-import haveno.core.btc.wallet.MoneroKeyImageListener;
-import haveno.core.btc.wallet.MoneroKeyImagePoller;
-import haveno.core.btc.wallet.TradeWalletService;
-import haveno.core.btc.wallet.XmrWalletService;
import haveno.core.exceptions.TradePriceOutOfToleranceException;
import haveno.core.filter.FilterManager;
import haveno.core.offer.OfferBookService.OfferBookChangedListener;
@@ -62,6 +57,11 @@ import haveno.core.user.Preferences;
import haveno.core.user.User;
import haveno.core.util.JsonUtil;
import haveno.core.util.Validator;
+import haveno.core.xmr.wallet.BtcWalletService;
+import haveno.core.xmr.wallet.MoneroKeyImageListener;
+import haveno.core.xmr.wallet.MoneroKeyImagePoller;
+import haveno.core.xmr.wallet.TradeWalletService;
+import haveno.core.xmr.wallet.XmrWalletService;
import haveno.network.p2p.AckMessage;
import haveno.network.p2p.AckMessageSourceType;
import haveno.network.p2p.BootstrapListener;
diff --git a/core/src/main/java/haveno/core/offer/availability/OfferAvailabilityModel.java b/core/src/main/java/haveno/core/offer/availability/OfferAvailabilityModel.java
index c4a5830e..68c47a5d 100644
--- a/core/src/main/java/haveno/core/offer/availability/OfferAvailabilityModel.java
+++ b/core/src/main/java/haveno/core/offer/availability/OfferAvailabilityModel.java
@@ -19,7 +19,6 @@ package haveno.core.offer.availability;
import haveno.common.crypto.PubKeyRing;
import haveno.common.taskrunner.Model;
-import haveno.core.btc.wallet.XmrWalletService;
import haveno.core.offer.Offer;
import haveno.core.offer.OfferUtil;
import haveno.core.offer.messages.OfferAvailabilityResponse;
@@ -27,6 +26,7 @@ import haveno.core.support.dispute.mediation.mediator.MediatorManager;
import haveno.core.trade.messages.InitTradeRequest;
import haveno.core.trade.statistics.TradeStatisticsManager;
import haveno.core.user.User;
+import haveno.core.xmr.wallet.XmrWalletService;
import haveno.network.p2p.NodeAddress;
import haveno.network.p2p.P2PService;
import lombok.Getter;
diff --git a/core/src/main/java/haveno/core/offer/availability/tasks/SendOfferAvailabilityRequest.java b/core/src/main/java/haveno/core/offer/availability/tasks/SendOfferAvailabilityRequest.java
index 7eef4f46..6bf0cb6f 100644
--- a/core/src/main/java/haveno/core/offer/availability/tasks/SendOfferAvailabilityRequest.java
+++ b/core/src/main/java/haveno/core/offer/availability/tasks/SendOfferAvailabilityRequest.java
@@ -22,8 +22,6 @@ import haveno.common.app.Version;
import haveno.common.crypto.Sig;
import haveno.common.taskrunner.Task;
import haveno.common.taskrunner.TaskRunner;
-import haveno.core.btc.model.XmrAddressEntry;
-import haveno.core.btc.wallet.XmrWalletService;
import haveno.core.monetary.Price;
import haveno.core.offer.Offer;
import haveno.core.offer.availability.OfferAvailabilityModel;
@@ -31,6 +29,8 @@ import haveno.core.offer.messages.OfferAvailabilityRequest;
import haveno.core.trade.HavenoUtils;
import haveno.core.trade.messages.InitTradeRequest;
import haveno.core.user.User;
+import haveno.core.xmr.model.XmrAddressEntry;
+import haveno.core.xmr.wallet.XmrWalletService;
import haveno.network.p2p.P2PService;
import haveno.network.p2p.SendDirectMessageListener;
import java.util.Date;
diff --git a/core/src/main/java/haveno/core/offer/placeoffer/PlaceOfferModel.java b/core/src/main/java/haveno/core/offer/placeoffer/PlaceOfferModel.java
index dd51ab0d..f3713026 100644
--- a/core/src/main/java/haveno/core/offer/placeoffer/PlaceOfferModel.java
+++ b/core/src/main/java/haveno/core/offer/placeoffer/PlaceOfferModel.java
@@ -20,9 +20,6 @@ package haveno.core.offer.placeoffer;
import haveno.common.crypto.KeyRing;
import haveno.common.taskrunner.Model;
import haveno.core.account.witness.AccountAgeWitnessService;
-import haveno.core.btc.wallet.BtcWalletService;
-import haveno.core.btc.wallet.TradeWalletService;
-import haveno.core.btc.wallet.XmrWalletService;
import haveno.core.filter.FilterManager;
import haveno.core.offer.Offer;
import haveno.core.offer.OfferBookService;
@@ -31,6 +28,9 @@ import haveno.core.support.dispute.arbitration.arbitrator.ArbitratorManager;
import haveno.core.support.dispute.mediation.mediator.MediatorManager;
import haveno.core.trade.statistics.TradeStatisticsManager;
import haveno.core.user.User;
+import haveno.core.xmr.wallet.BtcWalletService;
+import haveno.core.xmr.wallet.TradeWalletService;
+import haveno.core.xmr.wallet.XmrWalletService;
import haveno.network.p2p.P2PService;
import java.math.BigInteger;
diff --git a/core/src/main/java/haveno/core/offer/placeoffer/tasks/CreateMakerFeeTx.java b/core/src/main/java/haveno/core/offer/placeoffer/tasks/CreateMakerFeeTx.java
index 3304c88a..fac95fdc 100644
--- a/core/src/main/java/haveno/core/offer/placeoffer/tasks/CreateMakerFeeTx.java
+++ b/core/src/main/java/haveno/core/offer/placeoffer/tasks/CreateMakerFeeTx.java
@@ -21,14 +21,14 @@ package haveno.core.offer.placeoffer.tasks;
import haveno.common.UserThread;
import haveno.common.taskrunner.Task;
import haveno.common.taskrunner.TaskRunner;
-import haveno.core.btc.exceptions.TxBroadcastException;
-import haveno.core.btc.model.AddressEntry;
-import haveno.core.btc.wallet.BtcWalletService;
-import haveno.core.btc.wallet.TradeWalletService;
-import haveno.core.btc.wallet.TxBroadcaster;
-import haveno.core.btc.wallet.WalletService;
import haveno.core.offer.Offer;
import haveno.core.offer.placeoffer.PlaceOfferModel;
+import haveno.core.xmr.exceptions.TxBroadcastException;
+import haveno.core.xmr.model.AddressEntry;
+import haveno.core.xmr.wallet.BtcWalletService;
+import haveno.core.xmr.wallet.TradeWalletService;
+import haveno.core.xmr.wallet.TxBroadcaster;
+import haveno.core.xmr.wallet.WalletService;
import org.bitcoinj.core.Address;
import org.bitcoinj.core.Transaction;
diff --git a/core/src/main/java/haveno/core/offer/placeoffer/tasks/MakerReserveOfferFunds.java b/core/src/main/java/haveno/core/offer/placeoffer/tasks/MakerReserveOfferFunds.java
index 5c4adc64..8b3d1bf6 100644
--- a/core/src/main/java/haveno/core/offer/placeoffer/tasks/MakerReserveOfferFunds.java
+++ b/core/src/main/java/haveno/core/offer/placeoffer/tasks/MakerReserveOfferFunds.java
@@ -19,10 +19,10 @@ package haveno.core.offer.placeoffer.tasks;
import haveno.common.taskrunner.Task;
import haveno.common.taskrunner.TaskRunner;
-import haveno.core.btc.model.XmrAddressEntry;
import haveno.core.offer.Offer;
import haveno.core.offer.OfferDirection;
import haveno.core.offer.placeoffer.PlaceOfferModel;
+import haveno.core.xmr.model.XmrAddressEntry;
import lombok.extern.slf4j.Slf4j;
import java.math.BigInteger;
diff --git a/core/src/main/java/haveno/core/offer/placeoffer/tasks/MakerSendSignOfferRequest.java b/core/src/main/java/haveno/core/offer/placeoffer/tasks/MakerSendSignOfferRequest.java
index fddf4f38..1cdb344b 100644
--- a/core/src/main/java/haveno/core/offer/placeoffer/tasks/MakerSendSignOfferRequest.java
+++ b/core/src/main/java/haveno/core/offer/placeoffer/tasks/MakerSendSignOfferRequest.java
@@ -23,12 +23,12 @@ import haveno.common.handlers.ErrorMessageHandler;
import haveno.common.handlers.ResultHandler;
import haveno.common.taskrunner.Task;
import haveno.common.taskrunner.TaskRunner;
-import haveno.core.btc.model.XmrAddressEntry;
import haveno.core.offer.Offer;
import haveno.core.offer.availability.DisputeAgentSelection;
import haveno.core.offer.messages.SignOfferRequest;
import haveno.core.offer.placeoffer.PlaceOfferModel;
import haveno.core.support.dispute.arbitration.arbitrator.Arbitrator;
+import haveno.core.xmr.model.XmrAddressEntry;
import haveno.network.p2p.AckMessage;
import haveno.network.p2p.DecryptedDirectMessageListener;
import haveno.network.p2p.DecryptedMessageWithPubKey;
diff --git a/core/src/main/java/haveno/core/offer/takeoffer/TakeOfferModel.java b/core/src/main/java/haveno/core/offer/takeoffer/TakeOfferModel.java
index d8550acd..c70f938f 100644
--- a/core/src/main/java/haveno/core/offer/takeoffer/TakeOfferModel.java
+++ b/core/src/main/java/haveno/core/offer/takeoffer/TakeOfferModel.java
@@ -17,15 +17,13 @@
package haveno.core.offer.takeoffer;
-import static haveno.core.btc.model.XmrAddressEntry.Context.OFFER_FUNDING;
import static haveno.core.offer.OfferDirection.SELL;
import static haveno.core.util.VolumeUtil.getAdjustedVolumeForHalCash;
import static haveno.core.util.VolumeUtil.getRoundedFiatVolume;
+import static haveno.core.xmr.model.XmrAddressEntry.Context.OFFER_FUNDING;
import haveno.common.taskrunner.Model;
import haveno.core.account.witness.AccountAgeWitnessService;
-import haveno.core.btc.model.XmrAddressEntry;
-import haveno.core.btc.wallet.XmrWalletService;
import haveno.core.locale.CurrencyUtil;
import haveno.core.monetary.Price;
import haveno.core.monetary.Volume;
@@ -35,6 +33,8 @@ import haveno.core.payment.PaymentAccount;
import haveno.core.payment.payload.PaymentMethod;
import haveno.core.provider.price.PriceFeedService;
import haveno.core.trade.HavenoUtils;
+import haveno.core.xmr.model.XmrAddressEntry;
+import haveno.core.xmr.wallet.XmrWalletService;
import javax.inject.Inject;
import java.math.BigInteger;
diff --git a/core/src/main/java/haveno/core/payment/validation/SecurityDepositValidator.java b/core/src/main/java/haveno/core/payment/validation/SecurityDepositValidator.java
index 3e40616d..f8e9bc13 100644
--- a/core/src/main/java/haveno/core/payment/validation/SecurityDepositValidator.java
+++ b/core/src/main/java/haveno/core/payment/validation/SecurityDepositValidator.java
@@ -17,12 +17,12 @@
package haveno.core.payment.validation;
-import haveno.core.btc.wallet.Restrictions;
import haveno.core.locale.Res;
import haveno.core.payment.PaymentAccount;
import haveno.core.util.FormattingUtils;
import haveno.core.util.ParsingUtils;
import haveno.core.util.validation.NumberValidator;
+import haveno.core.xmr.wallet.Restrictions;
import javax.inject.Inject;
public class SecurityDepositValidator extends NumberValidator {
diff --git a/core/src/main/java/haveno/core/presentation/BalancePresentation.java b/core/src/main/java/haveno/core/presentation/BalancePresentation.java
index 749cbcf1..7dfa0c2f 100644
--- a/core/src/main/java/haveno/core/presentation/BalancePresentation.java
+++ b/core/src/main/java/haveno/core/presentation/BalancePresentation.java
@@ -18,9 +18,8 @@
package haveno.core.presentation;
import haveno.common.UserThread;
-import haveno.core.btc.Balances;
import haveno.core.trade.HavenoUtils;
-
+import haveno.core.xmr.Balances;
import javax.inject.Inject;
import javafx.beans.property.SimpleStringProperty;
diff --git a/core/src/main/java/haveno/core/proto/ProtoDevUtil.java b/core/src/main/java/haveno/core/proto/ProtoDevUtil.java
index 6e2c8b68..4c8daeee 100644
--- a/core/src/main/java/haveno/core/proto/ProtoDevUtil.java
+++ b/core/src/main/java/haveno/core/proto/ProtoDevUtil.java
@@ -17,7 +17,6 @@
package haveno.core.proto;
-import haveno.core.btc.model.AddressEntry;
import haveno.core.offer.AvailabilityResult;
import haveno.core.offer.Offer;
import haveno.core.offer.OfferDirection;
@@ -25,6 +24,7 @@ import haveno.core.offer.OfferPayload;
import haveno.core.offer.OpenOffer;
import haveno.core.support.dispute.DisputeResult;
import haveno.core.trade.Trade;
+import haveno.core.xmr.model.AddressEntry;
import lombok.extern.slf4j.Slf4j;
@Slf4j
diff --git a/core/src/main/java/haveno/core/proto/persistable/CorePersistenceProtoResolver.java b/core/src/main/java/haveno/core/proto/persistable/CorePersistenceProtoResolver.java
index 6084c16a..d1d20ba2 100644
--- a/core/src/main/java/haveno/core/proto/persistable/CorePersistenceProtoResolver.java
+++ b/core/src/main/java/haveno/core/proto/persistable/CorePersistenceProtoResolver.java
@@ -25,11 +25,6 @@ import haveno.common.proto.persistable.PersistableEnvelope;
import haveno.common.proto.persistable.PersistenceProtoResolver;
import haveno.core.account.sign.SignedWitnessStore;
import haveno.core.account.witness.AccountAgeWitnessStore;
-import haveno.core.btc.model.AddressEntryList;
-import haveno.core.btc.model.EncryptedConnectionList;
-import haveno.core.btc.model.XmrAddressEntryList;
-import haveno.core.btc.wallet.BtcWalletService;
-import haveno.core.btc.wallet.XmrWalletService;
import haveno.core.offer.SignedOfferList;
import haveno.core.payment.PaymentAccountList;
import haveno.core.proto.CoreProtoResolver;
@@ -40,6 +35,11 @@ import haveno.core.trade.TradableList;
import haveno.core.trade.statistics.TradeStatistics3Store;
import haveno.core.user.PreferencesPayload;
import haveno.core.user.UserPayload;
+import haveno.core.xmr.model.AddressEntryList;
+import haveno.core.xmr.model.EncryptedConnectionList;
+import haveno.core.xmr.model.XmrAddressEntryList;
+import haveno.core.xmr.wallet.BtcWalletService;
+import haveno.core.xmr.wallet.XmrWalletService;
import haveno.network.p2p.mailbox.IgnoredMailboxMap;
import haveno.network.p2p.mailbox.MailboxMessageList;
import haveno.network.p2p.peers.peerexchange.PeerList;
diff --git a/core/src/main/java/haveno/core/setup/CorePersistedDataHost.java b/core/src/main/java/haveno/core/setup/CorePersistedDataHost.java
index 5f733330..71440d12 100644
--- a/core/src/main/java/haveno/core/setup/CorePersistedDataHost.java
+++ b/core/src/main/java/haveno/core/setup/CorePersistedDataHost.java
@@ -19,9 +19,6 @@ package haveno.core.setup;
import com.google.inject.Injector;
import haveno.common.proto.persistable.PersistedDataHost;
-import haveno.core.btc.model.AddressEntryList;
-import haveno.core.btc.model.EncryptedConnectionList;
-import haveno.core.btc.model.XmrAddressEntryList;
import haveno.core.offer.OpenOfferManager;
import haveno.core.support.dispute.arbitration.ArbitrationDisputeListService;
import haveno.core.support.dispute.mediation.MediationDisputeListService;
@@ -31,6 +28,9 @@ import haveno.core.trade.TradeManager;
import haveno.core.trade.failed.FailedTradesManager;
import haveno.core.user.Preferences;
import haveno.core.user.User;
+import haveno.core.xmr.model.AddressEntryList;
+import haveno.core.xmr.model.EncryptedConnectionList;
+import haveno.core.xmr.model.XmrAddressEntryList;
import haveno.network.p2p.mailbox.IgnoredMailboxService;
import haveno.network.p2p.mailbox.MailboxMessageService;
import haveno.network.p2p.peers.PeerManager;
diff --git a/core/src/main/java/haveno/core/support/dispute/DisputeManager.java b/core/src/main/java/haveno/core/support/dispute/DisputeManager.java
index 07f627ee..25f165ad 100644
--- a/core/src/main/java/haveno/core/support/dispute/DisputeManager.java
+++ b/core/src/main/java/haveno/core/support/dispute/DisputeManager.java
@@ -28,9 +28,6 @@ import haveno.common.util.MathUtils;
import haveno.common.util.Tuple2;
import haveno.core.api.CoreMoneroConnectionsService;
import haveno.core.api.CoreNotificationService;
-import haveno.core.btc.wallet.Restrictions;
-import haveno.core.btc.wallet.TradeWalletService;
-import haveno.core.btc.wallet.XmrWalletService;
import haveno.core.locale.CurrencyUtil;
import haveno.core.locale.Res;
import haveno.core.monetary.Altcoin;
@@ -51,6 +48,9 @@ import haveno.core.trade.HavenoUtils;
import haveno.core.trade.Trade;
import haveno.core.trade.TradeManager;
import haveno.core.trade.protocol.TradePeer;
+import haveno.core.xmr.wallet.Restrictions;
+import haveno.core.xmr.wallet.TradeWalletService;
+import haveno.core.xmr.wallet.XmrWalletService;
import haveno.network.p2p.BootstrapListener;
import haveno.network.p2p.NodeAddress;
import haveno.network.p2p.P2PService;
diff --git a/core/src/main/java/haveno/core/support/dispute/arbitration/ArbitrationManager.java b/core/src/main/java/haveno/core/support/dispute/arbitration/ArbitrationManager.java
index 8e4d890a..82653271 100644
--- a/core/src/main/java/haveno/core/support/dispute/arbitration/ArbitrationManager.java
+++ b/core/src/main/java/haveno/core/support/dispute/arbitration/ArbitrationManager.java
@@ -25,8 +25,6 @@ import haveno.common.config.Config;
import haveno.common.crypto.KeyRing;
import haveno.core.api.CoreMoneroConnectionsService;
import haveno.core.api.CoreNotificationService;
-import haveno.core.btc.wallet.TradeWalletService;
-import haveno.core.btc.wallet.XmrWalletService;
import haveno.core.locale.Res;
import haveno.core.offer.OpenOfferManager;
import haveno.core.provider.price.PriceFeedService;
@@ -46,6 +44,8 @@ import haveno.core.trade.Contract;
import haveno.core.trade.HavenoUtils;
import haveno.core.trade.Trade;
import haveno.core.trade.TradeManager;
+import haveno.core.xmr.wallet.TradeWalletService;
+import haveno.core.xmr.wallet.XmrWalletService;
import haveno.network.p2p.AckMessageSourceType;
import haveno.network.p2p.NodeAddress;
import haveno.network.p2p.P2PService;
diff --git a/core/src/main/java/haveno/core/support/dispute/mediation/MediationManager.java b/core/src/main/java/haveno/core/support/dispute/mediation/MediationManager.java
index a52de0d6..bb365912 100644
--- a/core/src/main/java/haveno/core/support/dispute/mediation/MediationManager.java
+++ b/core/src/main/java/haveno/core/support/dispute/mediation/MediationManager.java
@@ -28,8 +28,6 @@ import haveno.common.handlers.ErrorMessageHandler;
import haveno.common.handlers.ResultHandler;
import haveno.core.api.CoreMoneroConnectionsService;
import haveno.core.api.CoreNotificationService;
-import haveno.core.btc.wallet.TradeWalletService;
-import haveno.core.btc.wallet.XmrWalletService;
import haveno.core.locale.Res;
import haveno.core.offer.OpenOffer;
import haveno.core.offer.OpenOfferManager;
@@ -47,6 +45,8 @@ import haveno.core.trade.Trade;
import haveno.core.trade.TradeManager;
import haveno.core.trade.protocol.DisputeProtocol;
import haveno.core.trade.protocol.ProcessModel;
+import haveno.core.xmr.wallet.TradeWalletService;
+import haveno.core.xmr.wallet.XmrWalletService;
import haveno.network.p2p.AckMessageSourceType;
import haveno.network.p2p.NodeAddress;
import haveno.network.p2p.P2PService;
diff --git a/core/src/main/java/haveno/core/support/dispute/refund/RefundManager.java b/core/src/main/java/haveno/core/support/dispute/refund/RefundManager.java
index a0a80042..2fdd5bf7 100644
--- a/core/src/main/java/haveno/core/support/dispute/refund/RefundManager.java
+++ b/core/src/main/java/haveno/core/support/dispute/refund/RefundManager.java
@@ -26,8 +26,6 @@ import haveno.common.config.Config;
import haveno.common.crypto.KeyRing;
import haveno.core.api.CoreMoneroConnectionsService;
import haveno.core.api.CoreNotificationService;
-import haveno.core.btc.wallet.TradeWalletService;
-import haveno.core.btc.wallet.XmrWalletService;
import haveno.core.locale.Res;
import haveno.core.offer.OpenOffer;
import haveno.core.offer.OpenOfferManager;
@@ -43,6 +41,8 @@ import haveno.core.support.messages.SupportMessage;
import haveno.core.trade.ClosedTradableManager;
import haveno.core.trade.Trade;
import haveno.core.trade.TradeManager;
+import haveno.core.xmr.wallet.TradeWalletService;
+import haveno.core.xmr.wallet.XmrWalletService;
import haveno.network.p2p.AckMessageSourceType;
import haveno.network.p2p.NodeAddress;
import haveno.network.p2p.P2PService;
diff --git a/core/src/main/java/haveno/core/trade/ArbitratorTrade.java b/core/src/main/java/haveno/core/trade/ArbitratorTrade.java
index 68407040..42fc8c74 100644
--- a/core/src/main/java/haveno/core/trade/ArbitratorTrade.java
+++ b/core/src/main/java/haveno/core/trade/ArbitratorTrade.java
@@ -1,10 +1,10 @@
package haveno.core.trade;
import haveno.common.proto.ProtoUtil;
-import haveno.core.btc.wallet.XmrWalletService;
import haveno.core.offer.Offer;
import haveno.core.proto.CoreProtoResolver;
import haveno.core.trade.protocol.ProcessModel;
+import haveno.core.xmr.wallet.XmrWalletService;
import haveno.network.p2p.NodeAddress;
import java.math.BigInteger;
import java.util.UUID;
diff --git a/core/src/main/java/haveno/core/trade/BuyerAsMakerTrade.java b/core/src/main/java/haveno/core/trade/BuyerAsMakerTrade.java
index 24fa0519..bced3dee 100644
--- a/core/src/main/java/haveno/core/trade/BuyerAsMakerTrade.java
+++ b/core/src/main/java/haveno/core/trade/BuyerAsMakerTrade.java
@@ -18,10 +18,10 @@
package haveno.core.trade;
import haveno.common.proto.ProtoUtil;
-import haveno.core.btc.wallet.XmrWalletService;
import haveno.core.offer.Offer;
import haveno.core.proto.CoreProtoResolver;
import haveno.core.trade.protocol.ProcessModel;
+import haveno.core.xmr.wallet.XmrWalletService;
import haveno.network.p2p.NodeAddress;
import java.math.BigInteger;
import java.util.UUID;
diff --git a/core/src/main/java/haveno/core/trade/BuyerAsTakerTrade.java b/core/src/main/java/haveno/core/trade/BuyerAsTakerTrade.java
index 747a74a8..8f6d2ea3 100644
--- a/core/src/main/java/haveno/core/trade/BuyerAsTakerTrade.java
+++ b/core/src/main/java/haveno/core/trade/BuyerAsTakerTrade.java
@@ -18,10 +18,10 @@
package haveno.core.trade;
import haveno.common.proto.ProtoUtil;
-import haveno.core.btc.wallet.XmrWalletService;
import haveno.core.offer.Offer;
import haveno.core.proto.CoreProtoResolver;
import haveno.core.trade.protocol.ProcessModel;
+import haveno.core.xmr.wallet.XmrWalletService;
import haveno.network.p2p.NodeAddress;
import java.math.BigInteger;
import java.util.UUID;
diff --git a/core/src/main/java/haveno/core/trade/BuyerTrade.java b/core/src/main/java/haveno/core/trade/BuyerTrade.java
index 01bf0a23..7c2526cd 100644
--- a/core/src/main/java/haveno/core/trade/BuyerTrade.java
+++ b/core/src/main/java/haveno/core/trade/BuyerTrade.java
@@ -17,9 +17,9 @@
package haveno.core.trade;
-import haveno.core.btc.wallet.XmrWalletService;
import haveno.core.offer.Offer;
import haveno.core.trade.protocol.ProcessModel;
+import haveno.core.xmr.wallet.XmrWalletService;
import haveno.network.p2p.NodeAddress;
import lombok.extern.slf4j.Slf4j;
diff --git a/core/src/main/java/haveno/core/trade/SellerAsMakerTrade.java b/core/src/main/java/haveno/core/trade/SellerAsMakerTrade.java
index a2e9b42f..507267c8 100644
--- a/core/src/main/java/haveno/core/trade/SellerAsMakerTrade.java
+++ b/core/src/main/java/haveno/core/trade/SellerAsMakerTrade.java
@@ -18,10 +18,10 @@
package haveno.core.trade;
import haveno.common.proto.ProtoUtil;
-import haveno.core.btc.wallet.XmrWalletService;
import haveno.core.offer.Offer;
import haveno.core.proto.CoreProtoResolver;
import haveno.core.trade.protocol.ProcessModel;
+import haveno.core.xmr.wallet.XmrWalletService;
import haveno.network.p2p.NodeAddress;
import java.math.BigInteger;
import java.util.UUID;
diff --git a/core/src/main/java/haveno/core/trade/SellerAsTakerTrade.java b/core/src/main/java/haveno/core/trade/SellerAsTakerTrade.java
index 3d9b7d60..e0631f17 100644
--- a/core/src/main/java/haveno/core/trade/SellerAsTakerTrade.java
+++ b/core/src/main/java/haveno/core/trade/SellerAsTakerTrade.java
@@ -18,10 +18,10 @@
package haveno.core.trade;
import haveno.common.proto.ProtoUtil;
-import haveno.core.btc.wallet.XmrWalletService;
import haveno.core.offer.Offer;
import haveno.core.proto.CoreProtoResolver;
import haveno.core.trade.protocol.ProcessModel;
+import haveno.core.xmr.wallet.XmrWalletService;
import haveno.network.p2p.NodeAddress;
import java.math.BigInteger;
import java.util.UUID;
diff --git a/core/src/main/java/haveno/core/trade/SellerTrade.java b/core/src/main/java/haveno/core/trade/SellerTrade.java
index 2ebe73af..04d6e8a8 100644
--- a/core/src/main/java/haveno/core/trade/SellerTrade.java
+++ b/core/src/main/java/haveno/core/trade/SellerTrade.java
@@ -17,9 +17,9 @@
package haveno.core.trade;
-import haveno.core.btc.wallet.XmrWalletService;
import haveno.core.offer.Offer;
import haveno.core.trade.protocol.ProcessModel;
+import haveno.core.xmr.wallet.XmrWalletService;
import haveno.network.p2p.NodeAddress;
import lombok.extern.slf4j.Slf4j;
diff --git a/core/src/main/java/haveno/core/trade/TradableList.java b/core/src/main/java/haveno/core/trade/TradableList.java
index 51839015..44c3a451 100644
--- a/core/src/main/java/haveno/core/trade/TradableList.java
+++ b/core/src/main/java/haveno/core/trade/TradableList.java
@@ -21,9 +21,9 @@ import com.google.protobuf.Message;
import haveno.common.proto.ProtoUtil;
import haveno.common.proto.ProtobufferRuntimeException;
import haveno.common.proto.persistable.PersistableListAsObservable;
-import haveno.core.btc.wallet.XmrWalletService;
import haveno.core.offer.OpenOffer;
import haveno.core.proto.CoreProtoResolver;
+import haveno.core.xmr.wallet.XmrWalletService;
import java.util.Collection;
import java.util.List;
import java.util.stream.Collectors;
diff --git a/core/src/main/java/haveno/core/trade/Trade.java b/core/src/main/java/haveno/core/trade/Trade.java
index 20a865be..fe1d9728 100644
--- a/core/src/main/java/haveno/core/trade/Trade.java
+++ b/core/src/main/java/haveno/core/trade/Trade.java
@@ -27,8 +27,6 @@ import haveno.common.proto.ProtoUtil;
import haveno.common.taskrunner.Model;
import haveno.common.util.Utilities;
import haveno.core.api.CoreMoneroConnectionsService;
-import haveno.core.btc.model.XmrAddressEntry;
-import haveno.core.btc.wallet.XmrWalletService;
import haveno.core.locale.CurrencyUtil;
import haveno.core.monetary.Price;
import haveno.core.monetary.Volume;
@@ -50,6 +48,8 @@ import haveno.core.trade.protocol.TradePeer;
import haveno.core.trade.protocol.TradeProtocol;
import haveno.core.trade.txproof.AssetTxProofResult;
import haveno.core.util.VolumeUtil;
+import haveno.core.xmr.model.XmrAddressEntry;
+import haveno.core.xmr.wallet.XmrWalletService;
import haveno.network.p2p.AckMessage;
import haveno.network.p2p.NodeAddress;
import haveno.network.p2p.P2PService;
diff --git a/core/src/main/java/haveno/core/trade/TradeDataValidation.java b/core/src/main/java/haveno/core/trade/TradeDataValidation.java
index f277b6e8..6a5e2d55 100644
--- a/core/src/main/java/haveno/core/trade/TradeDataValidation.java
+++ b/core/src/main/java/haveno/core/trade/TradeDataValidation.java
@@ -35,9 +35,9 @@ import javax.annotation.Nullable;
import static com.google.common.base.Preconditions.checkArgument;
import static com.google.common.base.Preconditions.checkNotNull;
-import haveno.core.btc.wallet.BtcWalletService;
import haveno.core.offer.Offer;
import haveno.core.support.dispute.Dispute;
+import haveno.core.xmr.wallet.BtcWalletService;
@Slf4j
public class TradeDataValidation {
diff --git a/core/src/main/java/haveno/core/trade/TradeManager.java b/core/src/main/java/haveno/core/trade/TradeManager.java
index ba106add..44750a32 100644
--- a/core/src/main/java/haveno/core/trade/TradeManager.java
+++ b/core/src/main/java/haveno/core/trade/TradeManager.java
@@ -30,8 +30,6 @@ import haveno.common.proto.persistable.PersistedDataHost;
import haveno.core.api.AccountServiceListener;
import haveno.core.api.CoreAccountService;
import haveno.core.api.CoreNotificationService;
-import haveno.core.btc.model.XmrAddressEntry;
-import haveno.core.btc.wallet.XmrWalletService;
import haveno.core.locale.Res;
import haveno.core.offer.Offer;
import haveno.core.offer.OfferBookService;
@@ -67,6 +65,8 @@ import haveno.core.trade.statistics.ReferralIdService;
import haveno.core.trade.statistics.TradeStatisticsManager;
import haveno.core.user.User;
import haveno.core.util.Validator;
+import haveno.core.xmr.model.XmrAddressEntry;
+import haveno.core.xmr.wallet.XmrWalletService;
import haveno.network.p2p.BootstrapListener;
import haveno.network.p2p.DecryptedDirectMessageListener;
import haveno.network.p2p.DecryptedMessageWithPubKey;
diff --git a/core/src/main/java/haveno/core/trade/TradeUtil.java b/core/src/main/java/haveno/core/trade/TradeUtil.java
index 2ba807d5..6e84a3c6 100644
--- a/core/src/main/java/haveno/core/trade/TradeUtil.java
+++ b/core/src/main/java/haveno/core/trade/TradeUtil.java
@@ -20,9 +20,9 @@ package haveno.core.trade;
import haveno.common.crypto.KeyRing;
import haveno.common.util.Tuple2;
import haveno.common.util.Utilities;
-import haveno.core.btc.wallet.BtcWalletService;
import haveno.core.locale.Res;
import haveno.core.offer.Offer;
+import haveno.core.xmr.wallet.BtcWalletService;
import javax.inject.Inject;
import javax.inject.Singleton;
diff --git a/core/src/main/java/haveno/core/trade/failed/FailedTradesManager.java b/core/src/main/java/haveno/core/trade/failed/FailedTradesManager.java
index cbe58ff9..5e9cb3a7 100644
--- a/core/src/main/java/haveno/core/trade/failed/FailedTradesManager.java
+++ b/core/src/main/java/haveno/core/trade/failed/FailedTradesManager.java
@@ -21,14 +21,14 @@ import com.google.inject.Inject;
import haveno.common.crypto.KeyRing;
import haveno.common.persistence.PersistenceManager;
import haveno.common.proto.persistable.PersistedDataHost;
-import haveno.core.btc.model.XmrAddressEntry;
-import haveno.core.btc.wallet.XmrWalletService;
import haveno.core.offer.Offer;
import haveno.core.provider.price.PriceFeedService;
import haveno.core.trade.CleanupMailboxMessages;
import haveno.core.trade.TradableList;
import haveno.core.trade.Trade;
import haveno.core.trade.TradeUtil;
+import haveno.core.xmr.model.XmrAddressEntry;
+import haveno.core.xmr.wallet.XmrWalletService;
import javafx.collections.ObservableList;
import java.util.Optional;
diff --git a/core/src/main/java/haveno/core/trade/protocol/ProcessModel.java b/core/src/main/java/haveno/core/trade/protocol/ProcessModel.java
index e4ecdab6..eb273830 100644
--- a/core/src/main/java/haveno/core/trade/protocol/ProcessModel.java
+++ b/core/src/main/java/haveno/core/trade/protocol/ProcessModel.java
@@ -25,9 +25,6 @@ import haveno.common.proto.ProtoUtil;
import haveno.common.proto.persistable.PersistablePayload;
import haveno.common.taskrunner.Model;
import haveno.core.account.witness.AccountAgeWitnessService;
-import haveno.core.btc.wallet.BtcWalletService;
-import haveno.core.btc.wallet.TradeWalletService;
-import haveno.core.btc.wallet.XmrWalletService;
import haveno.core.filter.FilterManager;
import haveno.core.network.MessageState;
import haveno.core.offer.Offer;
@@ -47,6 +44,9 @@ import haveno.core.trade.messages.TradeMessage;
import haveno.core.trade.statistics.ReferralIdService;
import haveno.core.trade.statistics.TradeStatisticsManager;
import haveno.core.user.User;
+import haveno.core.xmr.wallet.BtcWalletService;
+import haveno.core.xmr.wallet.TradeWalletService;
+import haveno.core.xmr.wallet.XmrWalletService;
import haveno.network.p2p.AckMessage;
import haveno.network.p2p.NodeAddress;
import haveno.network.p2p.P2PService;
diff --git a/core/src/main/java/haveno/core/trade/protocol/ProcessModelServiceProvider.java b/core/src/main/java/haveno/core/trade/protocol/ProcessModelServiceProvider.java
index e4fb62fd..3bc863ef 100644
--- a/core/src/main/java/haveno/core/trade/protocol/ProcessModelServiceProvider.java
+++ b/core/src/main/java/haveno/core/trade/protocol/ProcessModelServiceProvider.java
@@ -19,9 +19,6 @@ package haveno.core.trade.protocol;
import haveno.common.crypto.KeyRing;
import haveno.core.account.witness.AccountAgeWitnessService;
-import haveno.core.btc.wallet.BtcWalletService;
-import haveno.core.btc.wallet.TradeWalletService;
-import haveno.core.btc.wallet.XmrWalletService;
import haveno.core.filter.FilterManager;
import haveno.core.offer.OpenOfferManager;
import haveno.core.support.dispute.arbitration.arbitrator.ArbitratorManager;
@@ -30,6 +27,9 @@ import haveno.core.support.dispute.refund.refundagent.RefundAgentManager;
import haveno.core.trade.statistics.ReferralIdService;
import haveno.core.trade.statistics.TradeStatisticsManager;
import haveno.core.user.User;
+import haveno.core.xmr.wallet.BtcWalletService;
+import haveno.core.xmr.wallet.TradeWalletService;
+import haveno.core.xmr.wallet.XmrWalletService;
import haveno.network.p2p.P2PService;
import javax.inject.Inject;
diff --git a/core/src/main/java/haveno/core/trade/protocol/TradePeer.java b/core/src/main/java/haveno/core/trade/protocol/TradePeer.java
index f5b5fd99..2396e9de 100644
--- a/core/src/main/java/haveno/core/trade/protocol/TradePeer.java
+++ b/core/src/main/java/haveno/core/trade/protocol/TradePeer.java
@@ -23,9 +23,9 @@ import haveno.common.crypto.PubKeyRing;
import haveno.common.proto.ProtoUtil;
import haveno.common.proto.persistable.PersistablePayload;
import haveno.core.account.witness.AccountAgeWitness;
-import haveno.core.btc.model.RawTransactionInput;
import haveno.core.payment.payload.PaymentAccountPayload;
import haveno.core.proto.CoreProtoResolver;
+import haveno.core.xmr.model.RawTransactionInput;
import haveno.network.p2p.NodeAddress;
import java.util.ArrayList;
import java.util.List;
diff --git a/core/src/main/java/haveno/core/trade/protocol/tasks/MakerSendInitTradeRequest.java b/core/src/main/java/haveno/core/trade/protocol/tasks/MakerSendInitTradeRequest.java
index ebf5402e..85e3cb1a 100644
--- a/core/src/main/java/haveno/core/trade/protocol/tasks/MakerSendInitTradeRequest.java
+++ b/core/src/main/java/haveno/core/trade/protocol/tasks/MakerSendInitTradeRequest.java
@@ -19,10 +19,10 @@ package haveno.core.trade.protocol.tasks;
import haveno.common.app.Version;
import haveno.common.taskrunner.TaskRunner;
-import haveno.core.btc.model.XmrAddressEntry;
import haveno.core.offer.Offer;
import haveno.core.trade.Trade;
import haveno.core.trade.messages.InitTradeRequest;
+import haveno.core.xmr.model.XmrAddressEntry;
import haveno.network.p2p.SendDirectMessageListener;
import java.util.UUID;
diff --git a/core/src/main/java/haveno/core/trade/protocol/tasks/MakerSetLockTime.java b/core/src/main/java/haveno/core/trade/protocol/tasks/MakerSetLockTime.java
index a58a6f09..9702a8c9 100644
--- a/core/src/main/java/haveno/core/trade/protocol/tasks/MakerSetLockTime.java
+++ b/core/src/main/java/haveno/core/trade/protocol/tasks/MakerSetLockTime.java
@@ -19,8 +19,8 @@ package haveno.core.trade.protocol.tasks;
import haveno.common.config.Config;
import haveno.common.taskrunner.TaskRunner;
-import haveno.core.btc.wallet.Restrictions;
import haveno.core.trade.Trade;
+import haveno.core.xmr.wallet.Restrictions;
import lombok.extern.slf4j.Slf4j;
@Slf4j
diff --git a/core/src/main/java/haveno/core/trade/protocol/tasks/MaybeSendSignContractRequest.java b/core/src/main/java/haveno/core/trade/protocol/tasks/MaybeSendSignContractRequest.java
index 7a40863b..9bef140f 100644
--- a/core/src/main/java/haveno/core/trade/protocol/tasks/MaybeSendSignContractRequest.java
+++ b/core/src/main/java/haveno/core/trade/protocol/tasks/MaybeSendSignContractRequest.java
@@ -26,12 +26,12 @@ import com.google.common.base.Charsets;
import haveno.common.app.Version;
import haveno.common.crypto.Sig;
import haveno.common.taskrunner.TaskRunner;
-import haveno.core.btc.model.XmrAddressEntry;
import haveno.core.trade.ArbitratorTrade;
import haveno.core.trade.MakerTrade;
import haveno.core.trade.Trade;
import haveno.core.trade.Trade.State;
import haveno.core.trade.messages.SignContractRequest;
+import haveno.core.xmr.model.XmrAddressEntry;
import haveno.network.p2p.SendDirectMessageListener;
import lombok.extern.slf4j.Slf4j;
import monero.daemon.model.MoneroOutput;
diff --git a/core/src/main/java/haveno/core/trade/protocol/tasks/ProcessInitMultisigRequest.java b/core/src/main/java/haveno/core/trade/protocol/tasks/ProcessInitMultisigRequest.java
index e82d426f..065ef8b3 100644
--- a/core/src/main/java/haveno/core/trade/protocol/tasks/ProcessInitMultisigRequest.java
+++ b/core/src/main/java/haveno/core/trade/protocol/tasks/ProcessInitMultisigRequest.java
@@ -20,13 +20,13 @@ package haveno.core.trade.protocol.tasks;
import haveno.common.app.Version;
import haveno.common.crypto.PubKeyRing;
import haveno.common.taskrunner.TaskRunner;
-import haveno.core.btc.wallet.XmrWalletService;
import haveno.core.trade.ArbitratorTrade;
import haveno.core.trade.MakerTrade;
import haveno.core.trade.TakerTrade;
import haveno.core.trade.Trade;
import haveno.core.trade.messages.InitMultisigRequest;
import haveno.core.trade.protocol.TradePeer;
+import haveno.core.xmr.wallet.XmrWalletService;
import haveno.network.p2p.NodeAddress;
import haveno.network.p2p.SendDirectMessageListener;
import java.util.Arrays;
diff --git a/core/src/main/java/haveno/core/trade/protocol/tasks/TakerReserveTradeFunds.java b/core/src/main/java/haveno/core/trade/protocol/tasks/TakerReserveTradeFunds.java
index b56e82cb..84b18c05 100644
--- a/core/src/main/java/haveno/core/trade/protocol/tasks/TakerReserveTradeFunds.java
+++ b/core/src/main/java/haveno/core/trade/protocol/tasks/TakerReserveTradeFunds.java
@@ -18,9 +18,9 @@
package haveno.core.trade.protocol.tasks;
import haveno.common.taskrunner.TaskRunner;
-import haveno.core.btc.model.XmrAddressEntry;
import haveno.core.offer.OfferDirection;
import haveno.core.trade.Trade;
+import haveno.core.xmr.model.XmrAddressEntry;
import java.math.BigInteger;
import java.util.ArrayList;
import java.util.List;
diff --git a/core/src/main/java/haveno/core/user/Preferences.java b/core/src/main/java/haveno/core/user/Preferences.java
index e928d624..56be1992 100644
--- a/core/src/main/java/haveno/core/user/Preferences.java
+++ b/core/src/main/java/haveno/core/user/Preferences.java
@@ -22,9 +22,6 @@ import haveno.common.config.Config;
import haveno.common.persistence.PersistenceManager;
import haveno.common.proto.persistable.PersistedDataHost;
import haveno.common.util.Utilities;
-import haveno.core.btc.nodes.BtcNodes;
-import haveno.core.btc.nodes.LocalBitcoinNode;
-import haveno.core.btc.wallet.Restrictions;
import haveno.core.locale.Country;
import haveno.core.locale.CountryUtil;
import haveno.core.locale.CryptoCurrency;
@@ -35,6 +32,9 @@ import haveno.core.locale.TradeCurrency;
import haveno.core.payment.PaymentAccount;
import haveno.core.payment.PaymentAccountUtil;
import haveno.core.xmr.MoneroNodeSettings;
+import haveno.core.xmr.nodes.BtcNodes;
+import haveno.core.xmr.nodes.LocalBitcoinNode;
+import haveno.core.xmr.wallet.Restrictions;
import haveno.network.p2p.network.BridgeAddressProvider;
import javax.inject.Inject;
import javax.inject.Named;
diff --git a/core/src/main/java/haveno/core/user/PreferencesPayload.java b/core/src/main/java/haveno/core/user/PreferencesPayload.java
index 4d44537d..f3127235 100644
--- a/core/src/main/java/haveno/core/user/PreferencesPayload.java
+++ b/core/src/main/java/haveno/core/user/PreferencesPayload.java
@@ -28,7 +28,7 @@ import haveno.core.payment.PaymentAccount;
import haveno.core.proto.CoreProtoResolver;
import haveno.core.xmr.MoneroNodeSettings;
-import static haveno.core.btc.wallet.Restrictions.getDefaultBuyerSecurityDepositAsPercent;
+import static haveno.core.xmr.wallet.Restrictions.getDefaultBuyerSecurityDepositAsPercent;
import com.google.common.collect.Maps;
diff --git a/core/src/main/java/haveno/core/util/coin/CoinUtil.java b/core/src/main/java/haveno/core/util/coin/CoinUtil.java
index e69a0b4b..98f59dee 100644
--- a/core/src/main/java/haveno/core/util/coin/CoinUtil.java
+++ b/core/src/main/java/haveno/core/util/coin/CoinUtil.java
@@ -21,10 +21,10 @@ import org.bitcoinj.core.Coin;
import com.google.common.annotations.VisibleForTesting;
import haveno.common.util.MathUtils;
-import haveno.core.btc.wallet.Restrictions;
import haveno.core.monetary.Price;
import haveno.core.monetary.Volume;
import haveno.core.trade.HavenoUtils;
+import haveno.core.xmr.wallet.Restrictions;
import static com.google.common.base.Preconditions.checkArgument;
import static haveno.core.util.VolumeUtil.getAdjustedFiatVolume;
diff --git a/core/src/main/java/haveno/core/btc/Balances.java b/core/src/main/java/haveno/core/xmr/Balances.java
similarity index 98%
rename from core/src/main/java/haveno/core/btc/Balances.java
rename to core/src/main/java/haveno/core/xmr/Balances.java
index 252edb15..7b3aa8c2 100644
--- a/core/src/main/java/haveno/core/btc/Balances.java
+++ b/core/src/main/java/haveno/core/xmr/Balances.java
@@ -15,10 +15,8 @@
* along with Haveno. If not, see .
*/
-package haveno.core.btc;
+package haveno.core.xmr;
-import haveno.core.btc.listeners.XmrBalanceListener;
-import haveno.core.btc.wallet.XmrWalletService;
import haveno.core.offer.OfferPayload;
import haveno.core.offer.OpenOffer;
import haveno.core.offer.OpenOfferManager;
@@ -28,6 +26,8 @@ import haveno.core.trade.ClosedTradableManager;
import haveno.core.trade.Trade;
import haveno.core.trade.TradeManager;
import haveno.core.trade.failed.FailedTradesManager;
+import haveno.core.xmr.listeners.XmrBalanceListener;
+import haveno.core.xmr.wallet.XmrWalletService;
import haveno.network.p2p.P2PService;
import java.math.BigInteger;
import java.util.List;
diff --git a/core/src/main/java/haveno/core/xmr/connection/MoneroConnectionModule.java b/core/src/main/java/haveno/core/xmr/MoneroConnectionModule.java
similarity index 85%
rename from core/src/main/java/haveno/core/xmr/connection/MoneroConnectionModule.java
rename to core/src/main/java/haveno/core/xmr/MoneroConnectionModule.java
index 94b8dd43..9f6ef91e 100644
--- a/core/src/main/java/haveno/core/xmr/connection/MoneroConnectionModule.java
+++ b/core/src/main/java/haveno/core/xmr/MoneroConnectionModule.java
@@ -1,10 +1,10 @@
-package haveno.core.xmr.connection;
+package haveno.core.xmr;
import com.google.inject.Singleton;
import haveno.common.app.AppModule;
import haveno.common.config.Config;
import haveno.core.api.CoreMoneroConnectionsService;
-import haveno.core.btc.model.EncryptedConnectionList;
+import haveno.core.xmr.model.EncryptedConnectionList;
import lombok.extern.slf4j.Slf4j;
@Slf4j
diff --git a/core/src/main/java/haveno/core/btc/MoneroModule.java b/core/src/main/java/haveno/core/xmr/MoneroModule.java
similarity index 88%
rename from core/src/main/java/haveno/core/btc/MoneroModule.java
rename to core/src/main/java/haveno/core/xmr/MoneroModule.java
index 3adf9651..dfc2064c 100644
--- a/core/src/main/java/haveno/core/btc/MoneroModule.java
+++ b/core/src/main/java/haveno/core/xmr/MoneroModule.java
@@ -15,25 +15,25 @@
* along with Haveno. If not, see .
*/
-package haveno.core.btc;
+package haveno.core.xmr;
import com.google.inject.Singleton;
import com.google.inject.TypeLiteral;
import haveno.common.app.AppModule;
import haveno.common.config.Config;
-import haveno.core.btc.model.AddressEntryList;
-import haveno.core.btc.model.EncryptedConnectionList;
-import haveno.core.btc.model.XmrAddressEntryList;
-import haveno.core.btc.nodes.BtcNodes;
-import haveno.core.btc.setup.RegTestHost;
-import haveno.core.btc.setup.WalletsSetup;
-import haveno.core.btc.wallet.BtcWalletService;
-import haveno.core.btc.wallet.NonBsqCoinSelector;
-import haveno.core.btc.wallet.TradeWalletService;
-import haveno.core.btc.wallet.XmrWalletService;
import haveno.core.provider.ProvidersRepository;
import haveno.core.provider.fee.FeeProvider;
import haveno.core.provider.price.PriceFeedService;
+import haveno.core.xmr.model.AddressEntryList;
+import haveno.core.xmr.model.EncryptedConnectionList;
+import haveno.core.xmr.model.XmrAddressEntryList;
+import haveno.core.xmr.nodes.BtcNodes;
+import haveno.core.xmr.setup.RegTestHost;
+import haveno.core.xmr.setup.WalletsSetup;
+import haveno.core.xmr.wallet.BtcWalletService;
+import haveno.core.xmr.wallet.NonBsqCoinSelector;
+import haveno.core.xmr.wallet.TradeWalletService;
+import haveno.core.xmr.wallet.XmrWalletService;
import java.io.File;
import java.util.Arrays;
diff --git a/core/src/main/java/haveno/core/btc/exceptions/AddressEntryException.java b/core/src/main/java/haveno/core/xmr/exceptions/AddressEntryException.java
similarity index 95%
rename from core/src/main/java/haveno/core/btc/exceptions/AddressEntryException.java
rename to core/src/main/java/haveno/core/xmr/exceptions/AddressEntryException.java
index 32659b53..c0cf37e5 100644
--- a/core/src/main/java/haveno/core/btc/exceptions/AddressEntryException.java
+++ b/core/src/main/java/haveno/core/xmr/exceptions/AddressEntryException.java
@@ -15,7 +15,7 @@
* along with Haveno. If not, see .
*/
-package haveno.core.btc.exceptions;
+package haveno.core.xmr.exceptions;
public class AddressEntryException extends Exception {
public AddressEntryException(String message) {
diff --git a/core/src/main/java/haveno/core/btc/exceptions/InsufficientFundsException.java b/core/src/main/java/haveno/core/xmr/exceptions/InsufficientFundsException.java
similarity index 95%
rename from core/src/main/java/haveno/core/btc/exceptions/InsufficientFundsException.java
rename to core/src/main/java/haveno/core/xmr/exceptions/InsufficientFundsException.java
index 8f2d58f4..cbdaeb12 100644
--- a/core/src/main/java/haveno/core/btc/exceptions/InsufficientFundsException.java
+++ b/core/src/main/java/haveno/core/xmr/exceptions/InsufficientFundsException.java
@@ -15,7 +15,7 @@
* along with Haveno. If not, see .
*/
-package haveno.core.btc.exceptions;
+package haveno.core.xmr.exceptions;
public class InsufficientFundsException extends Exception {
public InsufficientFundsException(String message) {
diff --git a/core/src/main/java/haveno/core/btc/exceptions/InvalidHostException.java b/core/src/main/java/haveno/core/xmr/exceptions/InvalidHostException.java
similarity index 95%
rename from core/src/main/java/haveno/core/btc/exceptions/InvalidHostException.java
rename to core/src/main/java/haveno/core/xmr/exceptions/InvalidHostException.java
index fd465eef..10542dfd 100644
--- a/core/src/main/java/haveno/core/btc/exceptions/InvalidHostException.java
+++ b/core/src/main/java/haveno/core/xmr/exceptions/InvalidHostException.java
@@ -15,7 +15,7 @@
* along with Haveno. If not, see .
*/
-package haveno.core.btc.exceptions;
+package haveno.core.xmr.exceptions;
public class InvalidHostException extends IllegalArgumentException {
diff --git a/core/src/main/java/haveno/core/btc/exceptions/RejectedTxException.java b/core/src/main/java/haveno/core/xmr/exceptions/RejectedTxException.java
similarity index 97%
rename from core/src/main/java/haveno/core/btc/exceptions/RejectedTxException.java
rename to core/src/main/java/haveno/core/xmr/exceptions/RejectedTxException.java
index 38a7c694..e11073be 100644
--- a/core/src/main/java/haveno/core/btc/exceptions/RejectedTxException.java
+++ b/core/src/main/java/haveno/core/xmr/exceptions/RejectedTxException.java
@@ -15,7 +15,7 @@
* along with Haveno. If not, see .
*/
-package haveno.core.btc.exceptions;
+package haveno.core.xmr.exceptions;
import org.bitcoinj.core.RejectMessage;
diff --git a/core/src/main/java/haveno/core/btc/exceptions/SigningException.java b/core/src/main/java/haveno/core/xmr/exceptions/SigningException.java
similarity index 95%
rename from core/src/main/java/haveno/core/btc/exceptions/SigningException.java
rename to core/src/main/java/haveno/core/xmr/exceptions/SigningException.java
index fef7b34b..f2b6a3ba 100644
--- a/core/src/main/java/haveno/core/btc/exceptions/SigningException.java
+++ b/core/src/main/java/haveno/core/xmr/exceptions/SigningException.java
@@ -15,7 +15,7 @@
* along with Haveno. If not, see .
*/
-package haveno.core.btc.exceptions;
+package haveno.core.xmr.exceptions;
public class SigningException extends Exception {
public SigningException(String message) {
diff --git a/core/src/main/java/haveno/core/btc/exceptions/TransactionVerificationException.java b/core/src/main/java/haveno/core/xmr/exceptions/TransactionVerificationException.java
similarity index 96%
rename from core/src/main/java/haveno/core/btc/exceptions/TransactionVerificationException.java
rename to core/src/main/java/haveno/core/xmr/exceptions/TransactionVerificationException.java
index 4c39c0b0..af44a9eb 100644
--- a/core/src/main/java/haveno/core/btc/exceptions/TransactionVerificationException.java
+++ b/core/src/main/java/haveno/core/xmr/exceptions/TransactionVerificationException.java
@@ -15,7 +15,7 @@
* along with Haveno. If not, see .
*/
-package haveno.core.btc.exceptions;
+package haveno.core.xmr.exceptions;
public class TransactionVerificationException extends Exception {
public TransactionVerificationException(Throwable t) {
diff --git a/core/src/main/java/haveno/core/btc/exceptions/TxBroadcastException.java b/core/src/main/java/haveno/core/xmr/exceptions/TxBroadcastException.java
similarity index 97%
rename from core/src/main/java/haveno/core/btc/exceptions/TxBroadcastException.java
rename to core/src/main/java/haveno/core/xmr/exceptions/TxBroadcastException.java
index 7d121729..be580b1a 100644
--- a/core/src/main/java/haveno/core/btc/exceptions/TxBroadcastException.java
+++ b/core/src/main/java/haveno/core/xmr/exceptions/TxBroadcastException.java
@@ -15,7 +15,7 @@
* along with Haveno. If not, see .
*/
-package haveno.core.btc.exceptions;
+package haveno.core.xmr.exceptions;
import lombok.Getter;
diff --git a/core/src/main/java/haveno/core/btc/exceptions/TxBroadcastTimeoutException.java b/core/src/main/java/haveno/core/xmr/exceptions/TxBroadcastTimeoutException.java
similarity index 98%
rename from core/src/main/java/haveno/core/btc/exceptions/TxBroadcastTimeoutException.java
rename to core/src/main/java/haveno/core/xmr/exceptions/TxBroadcastTimeoutException.java
index 9622a023..a7ad74cb 100644
--- a/core/src/main/java/haveno/core/btc/exceptions/TxBroadcastTimeoutException.java
+++ b/core/src/main/java/haveno/core/xmr/exceptions/TxBroadcastTimeoutException.java
@@ -15,7 +15,7 @@
* along with Haveno. If not, see .
*/
-package haveno.core.btc.exceptions;
+package haveno.core.xmr.exceptions;
import org.bitcoinj.core.Transaction;
import org.bitcoinj.wallet.Wallet;
diff --git a/core/src/main/java/haveno/core/btc/exceptions/WalletException.java b/core/src/main/java/haveno/core/xmr/exceptions/WalletException.java
similarity index 95%
rename from core/src/main/java/haveno/core/btc/exceptions/WalletException.java
rename to core/src/main/java/haveno/core/xmr/exceptions/WalletException.java
index a18357a4..35fb31c5 100644
--- a/core/src/main/java/haveno/core/btc/exceptions/WalletException.java
+++ b/core/src/main/java/haveno/core/xmr/exceptions/WalletException.java
@@ -15,7 +15,7 @@
* along with Haveno. If not, see .
*/
-package haveno.core.btc.exceptions;
+package haveno.core.xmr.exceptions;
public class WalletException extends Exception {
public WalletException(Throwable t) {
diff --git a/core/src/main/java/haveno/core/btc/listeners/AddressConfidenceListener.java b/core/src/main/java/haveno/core/xmr/listeners/AddressConfidenceListener.java
similarity index 97%
rename from core/src/main/java/haveno/core/btc/listeners/AddressConfidenceListener.java
rename to core/src/main/java/haveno/core/xmr/listeners/AddressConfidenceListener.java
index dcf0ea9e..c9ee1426 100644
--- a/core/src/main/java/haveno/core/btc/listeners/AddressConfidenceListener.java
+++ b/core/src/main/java/haveno/core/xmr/listeners/AddressConfidenceListener.java
@@ -15,7 +15,7 @@
* along with Haveno. If not, see .
*/
-package haveno.core.btc.listeners;
+package haveno.core.xmr.listeners;
import org.bitcoinj.core.Address;
import org.bitcoinj.core.TransactionConfidence;
diff --git a/core/src/main/java/haveno/core/btc/listeners/BalanceListener.java b/core/src/main/java/haveno/core/xmr/listeners/BalanceListener.java
similarity index 97%
rename from core/src/main/java/haveno/core/btc/listeners/BalanceListener.java
rename to core/src/main/java/haveno/core/xmr/listeners/BalanceListener.java
index 2a492994..1eaa14eb 100644
--- a/core/src/main/java/haveno/core/btc/listeners/BalanceListener.java
+++ b/core/src/main/java/haveno/core/xmr/listeners/BalanceListener.java
@@ -15,7 +15,7 @@
* along with Haveno. If not, see .
*/
-package haveno.core.btc.listeners;
+package haveno.core.xmr.listeners;
import org.bitcoinj.core.Address;
import org.bitcoinj.core.Coin;
diff --git a/core/src/main/java/haveno/core/btc/listeners/TxConfidenceListener.java b/core/src/main/java/haveno/core/xmr/listeners/TxConfidenceListener.java
similarity index 96%
rename from core/src/main/java/haveno/core/btc/listeners/TxConfidenceListener.java
rename to core/src/main/java/haveno/core/xmr/listeners/TxConfidenceListener.java
index 34e60858..68b48be0 100644
--- a/core/src/main/java/haveno/core/btc/listeners/TxConfidenceListener.java
+++ b/core/src/main/java/haveno/core/xmr/listeners/TxConfidenceListener.java
@@ -15,7 +15,7 @@
* along with Haveno. If not, see .
*/
-package haveno.core.btc.listeners;
+package haveno.core.xmr.listeners;
import org.bitcoinj.core.TransactionConfidence;
diff --git a/core/src/main/java/haveno/core/btc/listeners/XmrBalanceListener.java b/core/src/main/java/haveno/core/xmr/listeners/XmrBalanceListener.java
similarity index 96%
rename from core/src/main/java/haveno/core/btc/listeners/XmrBalanceListener.java
rename to core/src/main/java/haveno/core/xmr/listeners/XmrBalanceListener.java
index 4a85ba3e..75f9b9a2 100644
--- a/core/src/main/java/haveno/core/btc/listeners/XmrBalanceListener.java
+++ b/core/src/main/java/haveno/core/xmr/listeners/XmrBalanceListener.java
@@ -15,7 +15,7 @@
* along with Haveno. If not, see .
*/
-package haveno.core.btc.listeners;
+package haveno.core.xmr.listeners;
import java.math.BigInteger;
diff --git a/core/src/main/java/haveno/core/btc/model/AddressEntry.java b/core/src/main/java/haveno/core/xmr/model/AddressEntry.java
similarity index 99%
rename from core/src/main/java/haveno/core/btc/model/AddressEntry.java
rename to core/src/main/java/haveno/core/xmr/model/AddressEntry.java
index 16cd5825..9f3c65e5 100644
--- a/core/src/main/java/haveno/core/btc/model/AddressEntry.java
+++ b/core/src/main/java/haveno/core/xmr/model/AddressEntry.java
@@ -15,7 +15,7 @@
* along with Haveno. If not, see .
*/
-package haveno.core.btc.model;
+package haveno.core.xmr.model;
import com.google.protobuf.ByteString;
import haveno.common.config.Config;
diff --git a/core/src/main/java/haveno/core/btc/model/AddressEntryList.java b/core/src/main/java/haveno/core/xmr/model/AddressEntryList.java
similarity index 99%
rename from core/src/main/java/haveno/core/btc/model/AddressEntryList.java
rename to core/src/main/java/haveno/core/xmr/model/AddressEntryList.java
index 159d4445..018be2ce 100644
--- a/core/src/main/java/haveno/core/btc/model/AddressEntryList.java
+++ b/core/src/main/java/haveno/core/xmr/model/AddressEntryList.java
@@ -15,7 +15,7 @@
* along with Haveno. If not, see .
*/
-package haveno.core.btc.model;
+package haveno.core.xmr.model;
import com.google.protobuf.Message;
import haveno.common.config.Config;
diff --git a/core/src/main/java/haveno/core/btc/model/EncryptedConnectionList.java b/core/src/main/java/haveno/core/xmr/model/EncryptedConnectionList.java
similarity index 99%
rename from core/src/main/java/haveno/core/btc/model/EncryptedConnectionList.java
rename to core/src/main/java/haveno/core/xmr/model/EncryptedConnectionList.java
index 552194a6..dbae22b6 100644
--- a/core/src/main/java/haveno/core/btc/model/EncryptedConnectionList.java
+++ b/core/src/main/java/haveno/core/xmr/model/EncryptedConnectionList.java
@@ -1,4 +1,4 @@
-package haveno.core.btc.model;
+package haveno.core.xmr.model;
import com.google.protobuf.ByteString;
import com.google.protobuf.Message;
diff --git a/core/src/main/java/haveno/core/btc/model/InputsAndChangeOutput.java b/core/src/main/java/haveno/core/xmr/model/InputsAndChangeOutput.java
similarity index 97%
rename from core/src/main/java/haveno/core/btc/model/InputsAndChangeOutput.java
rename to core/src/main/java/haveno/core/xmr/model/InputsAndChangeOutput.java
index 24876a7f..fe4cf623 100644
--- a/core/src/main/java/haveno/core/btc/model/InputsAndChangeOutput.java
+++ b/core/src/main/java/haveno/core/xmr/model/InputsAndChangeOutput.java
@@ -15,7 +15,7 @@
* along with Haveno. If not, see .
*/
-package haveno.core.btc.model;
+package haveno.core.xmr.model;
import java.util.List;
diff --git a/core/src/main/java/haveno/core/btc/model/PreparedDepositTxAndMakerInputs.java b/core/src/main/java/haveno/core/xmr/model/PreparedDepositTxAndMakerInputs.java
similarity index 97%
rename from core/src/main/java/haveno/core/btc/model/PreparedDepositTxAndMakerInputs.java
rename to core/src/main/java/haveno/core/xmr/model/PreparedDepositTxAndMakerInputs.java
index 3ab0463a..c184ab82 100644
--- a/core/src/main/java/haveno/core/btc/model/PreparedDepositTxAndMakerInputs.java
+++ b/core/src/main/java/haveno/core/xmr/model/PreparedDepositTxAndMakerInputs.java
@@ -15,7 +15,7 @@
* along with Haveno. If not, see .
*/
-package haveno.core.btc.model;
+package haveno.core.xmr.model;
import java.util.ArrayList;
diff --git a/core/src/main/java/haveno/core/btc/model/RawTransactionInput.java b/core/src/main/java/haveno/core/xmr/model/RawTransactionInput.java
similarity index 98%
rename from core/src/main/java/haveno/core/btc/model/RawTransactionInput.java
rename to core/src/main/java/haveno/core/xmr/model/RawTransactionInput.java
index 582021f3..940e9f32 100644
--- a/core/src/main/java/haveno/core/btc/model/RawTransactionInput.java
+++ b/core/src/main/java/haveno/core/xmr/model/RawTransactionInput.java
@@ -15,7 +15,7 @@
* along with Haveno. If not, see .
*/
-package haveno.core.btc.model;
+package haveno.core.xmr.model;
import com.google.protobuf.ByteString;
import haveno.common.proto.network.NetworkPayload;
diff --git a/core/src/main/java/haveno/core/btc/model/XmrAddressEntry.java b/core/src/main/java/haveno/core/xmr/model/XmrAddressEntry.java
similarity index 99%
rename from core/src/main/java/haveno/core/btc/model/XmrAddressEntry.java
rename to core/src/main/java/haveno/core/xmr/model/XmrAddressEntry.java
index 012a52be..07f5efad 100644
--- a/core/src/main/java/haveno/core/btc/model/XmrAddressEntry.java
+++ b/core/src/main/java/haveno/core/xmr/model/XmrAddressEntry.java
@@ -15,7 +15,7 @@
* along with Haveno. If not, see .
*/
-package haveno.core.btc.model;
+package haveno.core.xmr.model;
import org.bitcoinj.core.Coin;
import haveno.common.proto.ProtoUtil;
diff --git a/core/src/main/java/haveno/core/btc/model/XmrAddressEntryList.java b/core/src/main/java/haveno/core/xmr/model/XmrAddressEntryList.java
similarity index 99%
rename from core/src/main/java/haveno/core/btc/model/XmrAddressEntryList.java
rename to core/src/main/java/haveno/core/xmr/model/XmrAddressEntryList.java
index 9ad1f3a2..1c98a8c3 100644
--- a/core/src/main/java/haveno/core/btc/model/XmrAddressEntryList.java
+++ b/core/src/main/java/haveno/core/xmr/model/XmrAddressEntryList.java
@@ -15,7 +15,7 @@
* along with Haveno. If not, see .
*/
-package haveno.core.btc.model;
+package haveno.core.xmr.model;
import com.google.protobuf.Message;
import haveno.common.persistence.PersistenceManager;
diff --git a/core/src/main/java/haveno/core/btc/nodes/BtcNetworkConfig.java b/core/src/main/java/haveno/core/xmr/nodes/BtcNetworkConfig.java
similarity index 97%
rename from core/src/main/java/haveno/core/btc/nodes/BtcNetworkConfig.java
rename to core/src/main/java/haveno/core/xmr/nodes/BtcNetworkConfig.java
index aaf1fe9b..d426222c 100644
--- a/core/src/main/java/haveno/core/btc/nodes/BtcNetworkConfig.java
+++ b/core/src/main/java/haveno/core/xmr/nodes/BtcNetworkConfig.java
@@ -15,7 +15,7 @@
* along with Haveno. If not, see .
*/
-package haveno.core.btc.nodes;
+package haveno.core.xmr.nodes;
import org.bitcoinj.core.NetworkParameters;
import org.bitcoinj.core.PeerAddress;
@@ -23,7 +23,7 @@ import org.bitcoinj.params.MainNetParams;
import com.runjva.sourceforge.jsocks.protocol.Socks5Proxy;
import haveno.common.config.Config;
-import haveno.core.btc.setup.WalletConfig;
+import haveno.core.xmr.setup.WalletConfig;
import haveno.network.Socks5MultiDiscovery;
import java.util.List;
diff --git a/core/src/main/java/haveno/core/btc/nodes/BtcNodeConverter.java b/core/src/main/java/haveno/core/xmr/nodes/BtcNodeConverter.java
similarity index 98%
rename from core/src/main/java/haveno/core/btc/nodes/BtcNodeConverter.java
rename to core/src/main/java/haveno/core/xmr/nodes/BtcNodeConverter.java
index be6bcf48..ff78bf46 100644
--- a/core/src/main/java/haveno/core/btc/nodes/BtcNodeConverter.java
+++ b/core/src/main/java/haveno/core/xmr/nodes/BtcNodeConverter.java
@@ -15,13 +15,13 @@
* along with Haveno. If not, see .
*/
-package haveno.core.btc.nodes;
+package haveno.core.xmr.nodes;
import org.bitcoinj.core.PeerAddress;
import org.bitcoinj.net.OnionCatConverter;
import com.runjva.sourceforge.jsocks.protocol.Socks5Proxy;
-import haveno.core.btc.nodes.BtcNodes.BtcNode;
+import haveno.core.xmr.nodes.BtcNodes.BtcNode;
import haveno.network.DnsLookupException;
import haveno.network.DnsLookupTor;
import java.net.InetAddress;
diff --git a/core/src/main/java/haveno/core/btc/nodes/BtcNodes.java b/core/src/main/java/haveno/core/xmr/nodes/BtcNodes.java
similarity index 99%
rename from core/src/main/java/haveno/core/btc/nodes/BtcNodes.java
rename to core/src/main/java/haveno/core/xmr/nodes/BtcNodes.java
index 895b2380..53640060 100644
--- a/core/src/main/java/haveno/core/btc/nodes/BtcNodes.java
+++ b/core/src/main/java/haveno/core/xmr/nodes/BtcNodes.java
@@ -15,7 +15,7 @@
* along with Haveno. If not, see .
*/
-package haveno.core.btc.nodes;
+package haveno.core.xmr.nodes;
import java.util.ArrayList;
import java.util.Arrays;
diff --git a/core/src/main/java/haveno/core/btc/nodes/BtcNodesRepository.java b/core/src/main/java/haveno/core/xmr/nodes/BtcNodesRepository.java
similarity index 99%
rename from core/src/main/java/haveno/core/btc/nodes/BtcNodesRepository.java
rename to core/src/main/java/haveno/core/xmr/nodes/BtcNodesRepository.java
index 72442508..9ea5bc34 100644
--- a/core/src/main/java/haveno/core/btc/nodes/BtcNodesRepository.java
+++ b/core/src/main/java/haveno/core/xmr/nodes/BtcNodesRepository.java
@@ -15,7 +15,7 @@
* along with Haveno. If not, see .
*/
-package haveno.core.btc.nodes;
+package haveno.core.xmr.nodes;
import org.bitcoinj.core.PeerAddress;
diff --git a/core/src/main/java/haveno/core/btc/nodes/BtcNodesSetupPreferences.java b/core/src/main/java/haveno/core/xmr/nodes/BtcNodesSetupPreferences.java
similarity index 99%
rename from core/src/main/java/haveno/core/btc/nodes/BtcNodesSetupPreferences.java
rename to core/src/main/java/haveno/core/xmr/nodes/BtcNodesSetupPreferences.java
index 7b2bc9ee..702af7eb 100644
--- a/core/src/main/java/haveno/core/btc/nodes/BtcNodesSetupPreferences.java
+++ b/core/src/main/java/haveno/core/xmr/nodes/BtcNodesSetupPreferences.java
@@ -15,7 +15,7 @@
* along with Haveno. If not, see .
*/
-package haveno.core.btc.nodes;
+package haveno.core.xmr.nodes;
import haveno.common.config.Config;
import haveno.common.util.Utilities;
diff --git a/core/src/main/java/haveno/core/btc/nodes/LocalBitcoinNode.java b/core/src/main/java/haveno/core/xmr/nodes/LocalBitcoinNode.java
similarity index 98%
rename from core/src/main/java/haveno/core/btc/nodes/LocalBitcoinNode.java
rename to core/src/main/java/haveno/core/xmr/nodes/LocalBitcoinNode.java
index 6cacaf9c..516a1dda 100644
--- a/core/src/main/java/haveno/core/btc/nodes/LocalBitcoinNode.java
+++ b/core/src/main/java/haveno/core/xmr/nodes/LocalBitcoinNode.java
@@ -1,4 +1,4 @@
-package haveno.core.btc.nodes;
+package haveno.core.xmr.nodes;
import javax.inject.Inject;
import javax.inject.Singleton;
diff --git a/core/src/main/java/haveno/core/btc/nodes/ProxySocketFactory.java b/core/src/main/java/haveno/core/xmr/nodes/ProxySocketFactory.java
similarity index 99%
rename from core/src/main/java/haveno/core/btc/nodes/ProxySocketFactory.java
rename to core/src/main/java/haveno/core/xmr/nodes/ProxySocketFactory.java
index 1e0a8088..c2811329 100644
--- a/core/src/main/java/haveno/core/btc/nodes/ProxySocketFactory.java
+++ b/core/src/main/java/haveno/core/xmr/nodes/ProxySocketFactory.java
@@ -33,7 +33,7 @@
* PircBotX. If not, see .
*/
-package haveno.core.btc.nodes;
+package haveno.core.xmr.nodes;
import javax.net.SocketFactory;
diff --git a/core/src/main/java/haveno/core/btc/nodes/SeedPeersSocks5Dns.java b/core/src/main/java/haveno/core/xmr/nodes/SeedPeersSocks5Dns.java
similarity index 99%
rename from core/src/main/java/haveno/core/btc/nodes/SeedPeersSocks5Dns.java
rename to core/src/main/java/haveno/core/xmr/nodes/SeedPeersSocks5Dns.java
index e9d53a8a..0115344f 100644
--- a/core/src/main/java/haveno/core/btc/nodes/SeedPeersSocks5Dns.java
+++ b/core/src/main/java/haveno/core/xmr/nodes/SeedPeersSocks5Dns.java
@@ -31,7 +31,7 @@
* limitations under the License.
*/
-package haveno.core.btc.nodes;
+package haveno.core.xmr.nodes;
import org.bitcoinj.core.NetworkParameters;
import org.bitcoinj.net.discovery.PeerDiscovery;
diff --git a/core/src/main/java/haveno/core/btc/setup/DownloadListener.java b/core/src/main/java/haveno/core/xmr/setup/DownloadListener.java
similarity index 95%
rename from core/src/main/java/haveno/core/btc/setup/DownloadListener.java
rename to core/src/main/java/haveno/core/xmr/setup/DownloadListener.java
index c88286d0..23959c66 100644
--- a/core/src/main/java/haveno/core/btc/setup/DownloadListener.java
+++ b/core/src/main/java/haveno/core/xmr/setup/DownloadListener.java
@@ -1,4 +1,4 @@
-package haveno.core.btc.setup;
+package haveno.core.xmr.setup;
import javafx.beans.property.DoubleProperty;
import javafx.beans.property.ReadOnlyDoubleProperty;
diff --git a/core/src/main/java/haveno/core/btc/setup/HavenoKeyChainFactory.java b/core/src/main/java/haveno/core/xmr/setup/HavenoKeyChainFactory.java
similarity index 99%
rename from core/src/main/java/haveno/core/btc/setup/HavenoKeyChainFactory.java
rename to core/src/main/java/haveno/core/xmr/setup/HavenoKeyChainFactory.java
index eeaa4311..4a374c65 100644
--- a/core/src/main/java/haveno/core/btc/setup/HavenoKeyChainFactory.java
+++ b/core/src/main/java/haveno/core/xmr/setup/HavenoKeyChainFactory.java
@@ -15,7 +15,7 @@
* along with Haveno. If not, see .
*/
-package haveno.core.btc.setup;
+package haveno.core.xmr.setup;
import org.bitcoinj.crypto.ChildNumber;
import org.bitcoinj.crypto.DeterministicKey;
diff --git a/core/src/main/java/haveno/core/btc/setup/HavenoKeyChainGroupStructure.java b/core/src/main/java/haveno/core/xmr/setup/HavenoKeyChainGroupStructure.java
similarity index 98%
rename from core/src/main/java/haveno/core/btc/setup/HavenoKeyChainGroupStructure.java
rename to core/src/main/java/haveno/core/xmr/setup/HavenoKeyChainGroupStructure.java
index 6461a5e8..f64c6313 100644
--- a/core/src/main/java/haveno/core/btc/setup/HavenoKeyChainGroupStructure.java
+++ b/core/src/main/java/haveno/core/xmr/setup/HavenoKeyChainGroupStructure.java
@@ -15,7 +15,7 @@
* along with Haveno. If not, see .
*/
-package haveno.core.btc.setup;
+package haveno.core.xmr.setup;
import org.bitcoinj.crypto.ChildNumber;
import org.bitcoinj.script.Script;
diff --git a/core/src/main/java/haveno/core/btc/setup/MoneroWalletRpcManager.java b/core/src/main/java/haveno/core/xmr/setup/MoneroWalletRpcManager.java
similarity index 99%
rename from core/src/main/java/haveno/core/btc/setup/MoneroWalletRpcManager.java
rename to core/src/main/java/haveno/core/xmr/setup/MoneroWalletRpcManager.java
index 8579d638..26128bd7 100644
--- a/core/src/main/java/haveno/core/btc/setup/MoneroWalletRpcManager.java
+++ b/core/src/main/java/haveno/core/xmr/setup/MoneroWalletRpcManager.java
@@ -1,4 +1,4 @@
-package haveno.core.btc.setup;
+package haveno.core.xmr.setup;
import java.net.ServerSocket;
diff --git a/core/src/main/java/haveno/core/btc/setup/RegTestHost.java b/core/src/main/java/haveno/core/xmr/setup/RegTestHost.java
similarity index 96%
rename from core/src/main/java/haveno/core/btc/setup/RegTestHost.java
rename to core/src/main/java/haveno/core/xmr/setup/RegTestHost.java
index ddd7c3b4..8eecb62e 100644
--- a/core/src/main/java/haveno/core/btc/setup/RegTestHost.java
+++ b/core/src/main/java/haveno/core/xmr/setup/RegTestHost.java
@@ -15,7 +15,7 @@
* along with Haveno. If not, see .
*/
-package haveno.core.btc.setup;
+package haveno.core.xmr.setup;
import haveno.common.config.Config;
diff --git a/core/src/main/java/haveno/core/btc/setup/WalletConfig.java b/core/src/main/java/haveno/core/xmr/setup/WalletConfig.java
similarity index 99%
rename from core/src/main/java/haveno/core/btc/setup/WalletConfig.java
rename to core/src/main/java/haveno/core/xmr/setup/WalletConfig.java
index 3e301f1a..7f1a2f87 100644
--- a/core/src/main/java/haveno/core/btc/setup/WalletConfig.java
+++ b/core/src/main/java/haveno/core/xmr/setup/WalletConfig.java
@@ -15,7 +15,7 @@
* along with Haveno. If not, see .
*/
-package haveno.core.btc.setup;
+package haveno.core.xmr.setup;
import org.bitcoinj.core.BlockChain;
import org.bitcoinj.core.Context;
@@ -35,7 +35,7 @@ import org.bitcoinj.wallet.Wallet;
import com.runjva.sourceforge.jsocks.protocol.Socks5Proxy;
import haveno.common.config.Config;
import haveno.common.file.FileUtil;
-import haveno.core.btc.nodes.LocalBitcoinNode;
+import haveno.core.xmr.nodes.LocalBitcoinNode;
import com.google.common.io.Closeables;
import com.google.common.util.concurrent.AbstractIdleService;
diff --git a/core/src/main/java/haveno/core/btc/setup/WalletsSetup.java b/core/src/main/java/haveno/core/xmr/setup/WalletsSetup.java
similarity index 97%
rename from core/src/main/java/haveno/core/btc/setup/WalletsSetup.java
rename to core/src/main/java/haveno/core/xmr/setup/WalletsSetup.java
index 3fe0f729..49b66976 100644
--- a/core/src/main/java/haveno/core/btc/setup/WalletsSetup.java
+++ b/core/src/main/java/haveno/core/xmr/setup/WalletsSetup.java
@@ -15,7 +15,7 @@
* along with Haveno. If not, see .
*/
-package haveno.core.btc.setup;
+package haveno.core.xmr.setup;
import org.bitcoinj.core.Address;
import org.bitcoinj.core.BlockChain;
@@ -35,16 +35,16 @@ import haveno.common.config.Config;
import haveno.common.file.FileUtil;
import haveno.common.handlers.ExceptionHandler;
import haveno.common.handlers.ResultHandler;
-import haveno.core.btc.exceptions.InvalidHostException;
-import haveno.core.btc.model.AddressEntry;
-import haveno.core.btc.model.AddressEntryList;
-import haveno.core.btc.nodes.BtcNetworkConfig;
-import haveno.core.btc.nodes.BtcNodes;
-import haveno.core.btc.nodes.BtcNodesRepository;
-import haveno.core.btc.nodes.BtcNodesSetupPreferences;
-import haveno.core.btc.nodes.LocalBitcoinNode;
-import haveno.core.btc.nodes.BtcNodes.BtcNode;
import haveno.core.user.Preferences;
+import haveno.core.xmr.exceptions.InvalidHostException;
+import haveno.core.xmr.model.AddressEntry;
+import haveno.core.xmr.model.AddressEntryList;
+import haveno.core.xmr.nodes.BtcNetworkConfig;
+import haveno.core.xmr.nodes.BtcNodes;
+import haveno.core.xmr.nodes.BtcNodesRepository;
+import haveno.core.xmr.nodes.BtcNodesSetupPreferences;
+import haveno.core.xmr.nodes.LocalBitcoinNode;
+import haveno.core.xmr.nodes.BtcNodes.BtcNode;
import haveno.network.Socks5MultiDiscovery;
import haveno.network.Socks5ProxyProvider;
import com.google.inject.Inject;
diff --git a/core/src/main/java/haveno/core/btc/wallet/BtcCoinSelector.java b/core/src/main/java/haveno/core/xmr/wallet/BtcCoinSelector.java
similarity index 98%
rename from core/src/main/java/haveno/core/btc/wallet/BtcCoinSelector.java
rename to core/src/main/java/haveno/core/xmr/wallet/BtcCoinSelector.java
index 02370706..c56d0bcf 100644
--- a/core/src/main/java/haveno/core/btc/wallet/BtcCoinSelector.java
+++ b/core/src/main/java/haveno/core/xmr/wallet/BtcCoinSelector.java
@@ -15,7 +15,7 @@
* along with Haveno. If not, see .
*/
-package haveno.core.btc.wallet;
+package haveno.core.xmr.wallet;
import org.bitcoinj.core.Address;
import org.bitcoinj.core.TransactionOutput;
diff --git a/core/src/main/java/haveno/core/btc/wallet/BtcWalletService.java b/core/src/main/java/haveno/core/xmr/wallet/BtcWalletService.java
similarity index 99%
rename from core/src/main/java/haveno/core/btc/wallet/BtcWalletService.java
rename to core/src/main/java/haveno/core/xmr/wallet/BtcWalletService.java
index bc3fd0ff..d7060e27 100644
--- a/core/src/main/java/haveno/core/btc/wallet/BtcWalletService.java
+++ b/core/src/main/java/haveno/core/xmr/wallet/BtcWalletService.java
@@ -15,7 +15,7 @@
* along with Haveno. If not, see .
*/
-package haveno.core.btc.wallet;
+package haveno.core.xmr.wallet;
import org.bitcoinj.core.Address;
import org.bitcoinj.core.AddressFormatException;
@@ -43,15 +43,15 @@ import com.google.common.util.concurrent.Futures;
import com.google.common.util.concurrent.MoreExecutors;
import haveno.common.handlers.ErrorMessageHandler;
import haveno.common.util.Tuple2;
-import haveno.core.btc.exceptions.AddressEntryException;
-import haveno.core.btc.exceptions.InsufficientFundsException;
-import haveno.core.btc.exceptions.TransactionVerificationException;
-import haveno.core.btc.exceptions.WalletException;
-import haveno.core.btc.model.AddressEntry;
-import haveno.core.btc.model.AddressEntryList;
-import haveno.core.btc.setup.WalletsSetup;
-import haveno.core.btc.wallet.http.MemPoolSpaceTxBroadcaster;
import haveno.core.user.Preferences;
+import haveno.core.xmr.exceptions.AddressEntryException;
+import haveno.core.xmr.exceptions.InsufficientFundsException;
+import haveno.core.xmr.exceptions.TransactionVerificationException;
+import haveno.core.xmr.exceptions.WalletException;
+import haveno.core.xmr.model.AddressEntry;
+import haveno.core.xmr.model.AddressEntryList;
+import haveno.core.xmr.setup.WalletsSetup;
+import haveno.core.xmr.wallet.http.MemPoolSpaceTxBroadcaster;
import org.bouncycastle.crypto.params.KeyParameter;
import java.util.Arrays;
diff --git a/core/src/main/java/haveno/core/btc/wallet/HavenoDefaultCoinSelector.java b/core/src/main/java/haveno/core/xmr/wallet/HavenoDefaultCoinSelector.java
similarity index 99%
rename from core/src/main/java/haveno/core/btc/wallet/HavenoDefaultCoinSelector.java
rename to core/src/main/java/haveno/core/xmr/wallet/HavenoDefaultCoinSelector.java
index 9128215d..ec93f5e0 100644
--- a/core/src/main/java/haveno/core/btc/wallet/HavenoDefaultCoinSelector.java
+++ b/core/src/main/java/haveno/core/xmr/wallet/HavenoDefaultCoinSelector.java
@@ -15,7 +15,7 @@
* along with Haveno. If not, see .
*/
-package haveno.core.btc.wallet;
+package haveno.core.xmr.wallet;
import org.bitcoinj.core.Coin;
import org.bitcoinj.core.InsufficientMoneyException;
diff --git a/core/src/main/java/haveno/core/btc/wallet/HavenoRiskAnalysis.java b/core/src/main/java/haveno/core/xmr/wallet/HavenoRiskAnalysis.java
similarity index 99%
rename from core/src/main/java/haveno/core/btc/wallet/HavenoRiskAnalysis.java
rename to core/src/main/java/haveno/core/xmr/wallet/HavenoRiskAnalysis.java
index 38da642b..9a98b499 100644
--- a/core/src/main/java/haveno/core/btc/wallet/HavenoRiskAnalysis.java
+++ b/core/src/main/java/haveno/core/xmr/wallet/HavenoRiskAnalysis.java
@@ -32,7 +32,7 @@
* along with Haveno. If not, see .
*/
-package haveno.core.btc.wallet;
+package haveno.core.xmr.wallet;
import org.bitcoinj.core.Coin;
import org.bitcoinj.core.ECKey;
diff --git a/core/src/main/java/haveno/core/btc/wallet/MoneroKeyImageListener.java b/core/src/main/java/haveno/core/xmr/wallet/MoneroKeyImageListener.java
similarity index 90%
rename from core/src/main/java/haveno/core/btc/wallet/MoneroKeyImageListener.java
rename to core/src/main/java/haveno/core/xmr/wallet/MoneroKeyImageListener.java
index cdd0fea9..4c23db3e 100644
--- a/core/src/main/java/haveno/core/btc/wallet/MoneroKeyImageListener.java
+++ b/core/src/main/java/haveno/core/xmr/wallet/MoneroKeyImageListener.java
@@ -1,4 +1,4 @@
-package haveno.core.btc.wallet;
+package haveno.core.xmr.wallet;
import java.util.Map;
diff --git a/core/src/main/java/haveno/core/btc/wallet/MoneroKeyImagePoller.java b/core/src/main/java/haveno/core/xmr/wallet/MoneroKeyImagePoller.java
similarity index 99%
rename from core/src/main/java/haveno/core/btc/wallet/MoneroKeyImagePoller.java
rename to core/src/main/java/haveno/core/xmr/wallet/MoneroKeyImagePoller.java
index eb7c2df0..93434e23 100644
--- a/core/src/main/java/haveno/core/btc/wallet/MoneroKeyImagePoller.java
+++ b/core/src/main/java/haveno/core/xmr/wallet/MoneroKeyImagePoller.java
@@ -1,4 +1,4 @@
-package haveno.core.btc.wallet;
+package haveno.core.xmr.wallet;
import java.util.ArrayList;
import java.util.Arrays;
diff --git a/core/src/main/java/haveno/core/btc/wallet/NonBsqCoinSelector.java b/core/src/main/java/haveno/core/xmr/wallet/NonBsqCoinSelector.java
similarity index 98%
rename from core/src/main/java/haveno/core/btc/wallet/NonBsqCoinSelector.java
rename to core/src/main/java/haveno/core/xmr/wallet/NonBsqCoinSelector.java
index f521ffb9..2016f6ba 100644
--- a/core/src/main/java/haveno/core/btc/wallet/NonBsqCoinSelector.java
+++ b/core/src/main/java/haveno/core/xmr/wallet/NonBsqCoinSelector.java
@@ -15,7 +15,7 @@
* along with Haveno. If not, see .
*/
-package haveno.core.btc.wallet;
+package haveno.core.xmr.wallet;
import org.bitcoinj.core.Transaction;
import org.bitcoinj.core.TransactionConfidence;
diff --git a/core/src/main/java/haveno/core/btc/wallet/Restrictions.java b/core/src/main/java/haveno/core/xmr/wallet/Restrictions.java
similarity index 99%
rename from core/src/main/java/haveno/core/btc/wallet/Restrictions.java
rename to core/src/main/java/haveno/core/xmr/wallet/Restrictions.java
index 51236015..fb113ebd 100644
--- a/core/src/main/java/haveno/core/btc/wallet/Restrictions.java
+++ b/core/src/main/java/haveno/core/xmr/wallet/Restrictions.java
@@ -15,7 +15,7 @@
* along with Haveno. If not, see .
*/
-package haveno.core.btc.wallet;
+package haveno.core.xmr.wallet;
import haveno.common.config.Config;
import haveno.core.trade.HavenoUtils;
diff --git a/core/src/main/java/haveno/core/btc/wallet/TradeWalletService.java b/core/src/main/java/haveno/core/xmr/wallet/TradeWalletService.java
similarity index 99%
rename from core/src/main/java/haveno/core/btc/wallet/TradeWalletService.java
rename to core/src/main/java/haveno/core/xmr/wallet/TradeWalletService.java
index 830d5de5..00ac423c 100644
--- a/core/src/main/java/haveno/core/btc/wallet/TradeWalletService.java
+++ b/core/src/main/java/haveno/core/xmr/wallet/TradeWalletService.java
@@ -15,7 +15,7 @@
* along with Haveno. If not, see .
*/
-package haveno.core.btc.wallet;
+package haveno.core.xmr.wallet;
import org.bitcoinj.core.Address;
import org.bitcoinj.core.AddressFormatException;
@@ -44,15 +44,15 @@ import javax.inject.Inject;
import com.google.common.collect.ImmutableList;
import haveno.common.config.Config;
import haveno.common.util.Tuple2;
-import haveno.core.btc.exceptions.SigningException;
-import haveno.core.btc.exceptions.TransactionVerificationException;
-import haveno.core.btc.exceptions.WalletException;
-import haveno.core.btc.model.InputsAndChangeOutput;
-import haveno.core.btc.model.PreparedDepositTxAndMakerInputs;
-import haveno.core.btc.model.RawTransactionInput;
-import haveno.core.btc.setup.WalletConfig;
-import haveno.core.btc.setup.WalletsSetup;
import haveno.core.user.Preferences;
+import haveno.core.xmr.exceptions.SigningException;
+import haveno.core.xmr.exceptions.TransactionVerificationException;
+import haveno.core.xmr.exceptions.WalletException;
+import haveno.core.xmr.model.InputsAndChangeOutput;
+import haveno.core.xmr.model.PreparedDepositTxAndMakerInputs;
+import haveno.core.xmr.model.RawTransactionInput;
+import haveno.core.xmr.setup.WalletConfig;
+import haveno.core.xmr.setup.WalletsSetup;
import org.bouncycastle.crypto.params.KeyParameter;
import java.util.ArrayList;
diff --git a/core/src/main/java/haveno/core/btc/wallet/TxBroadcaster.java b/core/src/main/java/haveno/core/xmr/wallet/TxBroadcaster.java
similarity index 97%
rename from core/src/main/java/haveno/core/btc/wallet/TxBroadcaster.java
rename to core/src/main/java/haveno/core/xmr/wallet/TxBroadcaster.java
index 62762600..ad9c77ef 100644
--- a/core/src/main/java/haveno/core/btc/wallet/TxBroadcaster.java
+++ b/core/src/main/java/haveno/core/xmr/wallet/TxBroadcaster.java
@@ -15,7 +15,7 @@
* along with Haveno. If not, see .
*/
-package haveno.core.btc.wallet;
+package haveno.core.xmr.wallet;
import org.bitcoinj.core.PeerGroup;
import org.bitcoinj.core.Transaction;
@@ -27,9 +27,9 @@ import com.google.common.util.concurrent.Futures;
import com.google.common.util.concurrent.MoreExecutors;
import haveno.common.Timer;
import haveno.common.UserThread;
-import haveno.core.btc.exceptions.TxBroadcastException;
-import haveno.core.btc.exceptions.TxBroadcastTimeoutException;
-import haveno.core.btc.wallet.http.MemPoolSpaceTxBroadcaster;
+import haveno.core.xmr.exceptions.TxBroadcastException;
+import haveno.core.xmr.exceptions.TxBroadcastTimeoutException;
+import haveno.core.xmr.wallet.http.MemPoolSpaceTxBroadcaster;
import java.util.HashMap;
import java.util.Map;
diff --git a/core/src/main/java/haveno/core/btc/wallet/WalletService.java b/core/src/main/java/haveno/core/xmr/wallet/WalletService.java
similarity index 98%
rename from core/src/main/java/haveno/core/btc/wallet/WalletService.java
rename to core/src/main/java/haveno/core/xmr/wallet/WalletService.java
index 9469d46b..a28e4739 100644
--- a/core/src/main/java/haveno/core/btc/wallet/WalletService.java
+++ b/core/src/main/java/haveno/core/xmr/wallet/WalletService.java
@@ -15,7 +15,7 @@
* along with Haveno. If not, see .
*/
-package haveno.core.btc.wallet;
+package haveno.core.xmr.wallet;
import org.bitcoinj.core.Address;
import org.bitcoinj.core.AddressFormatException;
@@ -68,14 +68,14 @@ import com.google.common.util.concurrent.MoreExecutors;
import haveno.common.config.Config;
import haveno.common.handlers.ErrorMessageHandler;
import haveno.common.handlers.ResultHandler;
-import haveno.core.btc.exceptions.TransactionVerificationException;
-import haveno.core.btc.exceptions.WalletException;
-import haveno.core.btc.listeners.AddressConfidenceListener;
-import haveno.core.btc.listeners.BalanceListener;
-import haveno.core.btc.listeners.TxConfidenceListener;
-import haveno.core.btc.setup.WalletsSetup;
-import haveno.core.btc.wallet.http.MemPoolSpaceTxBroadcaster;
import haveno.core.user.Preferences;
+import haveno.core.xmr.exceptions.TransactionVerificationException;
+import haveno.core.xmr.exceptions.WalletException;
+import haveno.core.xmr.listeners.AddressConfidenceListener;
+import haveno.core.xmr.listeners.BalanceListener;
+import haveno.core.xmr.listeners.TxConfidenceListener;
+import haveno.core.xmr.setup.WalletsSetup;
+import haveno.core.xmr.wallet.http.MemPoolSpaceTxBroadcaster;
import javafx.beans.property.IntegerProperty;
import javafx.beans.property.SimpleIntegerProperty;
diff --git a/core/src/main/java/haveno/core/btc/wallet/WalletsManager.java b/core/src/main/java/haveno/core/xmr/wallet/WalletsManager.java
similarity index 98%
rename from core/src/main/java/haveno/core/btc/wallet/WalletsManager.java
rename to core/src/main/java/haveno/core/xmr/wallet/WalletsManager.java
index 6b79361d..a0bd6382 100644
--- a/core/src/main/java/haveno/core/btc/wallet/WalletsManager.java
+++ b/core/src/main/java/haveno/core/xmr/wallet/WalletsManager.java
@@ -15,7 +15,7 @@
* along with Haveno. If not, see .
*/
-package haveno.core.btc.wallet;
+package haveno.core.xmr.wallet;
import org.bitcoinj.crypto.KeyCrypter;
import org.bitcoinj.crypto.KeyCrypterScrypt;
@@ -26,8 +26,8 @@ import com.google.inject.Inject;
import haveno.common.crypto.ScryptUtil;
import haveno.common.handlers.ExceptionHandler;
import haveno.common.handlers.ResultHandler;
-import haveno.core.btc.setup.WalletsSetup;
import haveno.core.locale.Res;
+import haveno.core.xmr.setup.WalletsSetup;
import org.bouncycastle.crypto.params.KeyParameter;
import org.slf4j.Logger;
diff --git a/core/src/main/java/haveno/core/btc/wallet/XmrWalletService.java b/core/src/main/java/haveno/core/xmr/wallet/XmrWalletService.java
similarity index 99%
rename from core/src/main/java/haveno/core/btc/wallet/XmrWalletService.java
rename to core/src/main/java/haveno/core/xmr/wallet/XmrWalletService.java
index 44f23315..6399adc9 100644
--- a/core/src/main/java/haveno/core/btc/wallet/XmrWalletService.java
+++ b/core/src/main/java/haveno/core/xmr/wallet/XmrWalletService.java
@@ -1,4 +1,4 @@
-package haveno.core.btc.wallet;
+package haveno.core.xmr.wallet;
import static com.google.common.base.Preconditions.checkState;
@@ -14,17 +14,17 @@ import haveno.core.api.AccountServiceListener;
import haveno.core.api.CoreAccountService;
import haveno.core.api.CoreMoneroConnectionsService;
import haveno.core.app.HavenoSetup;
-import haveno.core.btc.listeners.XmrBalanceListener;
-import haveno.core.btc.model.XmrAddressEntry;
-import haveno.core.btc.model.XmrAddressEntryList;
-import haveno.core.btc.setup.MoneroWalletRpcManager;
-import haveno.core.btc.setup.WalletsSetup;
import haveno.core.offer.Offer;
import haveno.core.trade.BuyerTrade;
import haveno.core.trade.HavenoUtils;
import haveno.core.trade.MakerTrade;
import haveno.core.trade.Trade;
import haveno.core.trade.TradeManager;
+import haveno.core.xmr.listeners.XmrBalanceListener;
+import haveno.core.xmr.model.XmrAddressEntry;
+import haveno.core.xmr.model.XmrAddressEntryList;
+import haveno.core.xmr.setup.MoneroWalletRpcManager;
+import haveno.core.xmr.setup.WalletsSetup;
import java.io.File;
import java.math.BigDecimal;
import java.math.BigInteger;
diff --git a/core/src/main/java/haveno/core/btc/wallet/http/MemPoolSpaceTxBroadcaster.java b/core/src/main/java/haveno/core/xmr/wallet/http/MemPoolSpaceTxBroadcaster.java
similarity index 98%
rename from core/src/main/java/haveno/core/btc/wallet/http/MemPoolSpaceTxBroadcaster.java
rename to core/src/main/java/haveno/core/xmr/wallet/http/MemPoolSpaceTxBroadcaster.java
index 93184469..aa0c131c 100644
--- a/core/src/main/java/haveno/core/btc/wallet/http/MemPoolSpaceTxBroadcaster.java
+++ b/core/src/main/java/haveno/core/xmr/wallet/http/MemPoolSpaceTxBroadcaster.java
@@ -15,7 +15,7 @@
* along with Haveno. If not, see .
*/
-package haveno.core.btc.wallet.http;
+package haveno.core.xmr.wallet.http;
import org.bitcoinj.core.Transaction;
import org.bitcoinj.core.Utils;
@@ -28,8 +28,8 @@ import com.google.common.util.concurrent.MoreExecutors;
import haveno.common.app.Version;
import haveno.common.config.Config;
import haveno.common.util.Utilities;
-import haveno.core.btc.nodes.LocalBitcoinNode;
import haveno.core.user.Preferences;
+import haveno.core.xmr.nodes.LocalBitcoinNode;
import haveno.network.Socks5ProxyProvider;
import haveno.network.http.HttpException;
import java.util.ArrayList;
diff --git a/core/src/main/java/haveno/core/btc/wallet/http/TxBroadcastHttpClient.java b/core/src/main/java/haveno/core/xmr/wallet/http/TxBroadcastHttpClient.java
similarity index 96%
rename from core/src/main/java/haveno/core/btc/wallet/http/TxBroadcastHttpClient.java
rename to core/src/main/java/haveno/core/xmr/wallet/http/TxBroadcastHttpClient.java
index 315045a6..32cc50eb 100644
--- a/core/src/main/java/haveno/core/btc/wallet/http/TxBroadcastHttpClient.java
+++ b/core/src/main/java/haveno/core/xmr/wallet/http/TxBroadcastHttpClient.java
@@ -15,7 +15,7 @@
* along with Haveno. If not, see .
*/
-package haveno.core.btc.wallet.http;
+package haveno.core.xmr.wallet.http;
import haveno.core.trade.txproof.AssetTxProofHttpClient;
import haveno.network.Socks5ProxyProvider;
diff --git a/core/src/test/java/haveno/core/user/PreferencesTest.java b/core/src/test/java/haveno/core/user/PreferencesTest.java
index 8fdcef8d..3af74e7e 100644
--- a/core/src/test/java/haveno/core/user/PreferencesTest.java
+++ b/core/src/test/java/haveno/core/user/PreferencesTest.java
@@ -19,7 +19,6 @@ package haveno.core.user;
import haveno.common.config.Config;
import haveno.common.persistence.PersistenceManager;
-import haveno.core.btc.nodes.LocalBitcoinNode;
import haveno.core.locale.CountryUtil;
import haveno.core.locale.CryptoCurrency;
import haveno.core.locale.CurrencyUtil;
@@ -28,6 +27,7 @@ import haveno.core.locale.GlobalSettings;
import haveno.core.locale.Res;
import haveno.core.user.Preferences;
import haveno.core.user.PreferencesPayload;
+import haveno.core.xmr.nodes.LocalBitcoinNode;
import javafx.collections.ObservableList;
import java.util.ArrayList;
diff --git a/core/src/test/java/haveno/core/util/coin/CoinUtilTest.java b/core/src/test/java/haveno/core/util/coin/CoinUtilTest.java
index 8d6e11f0..eea5882f 100644
--- a/core/src/test/java/haveno/core/util/coin/CoinUtilTest.java
+++ b/core/src/test/java/haveno/core/util/coin/CoinUtilTest.java
@@ -24,10 +24,10 @@ import org.junit.Test;
import static org.junit.Assert.assertEquals;
import static org.junit.Assert.fail;
-import haveno.core.btc.wallet.Restrictions;
import haveno.core.monetary.Price;
import haveno.core.trade.HavenoUtils;
import haveno.core.util.coin.CoinUtil;
+import haveno.core.xmr.wallet.Restrictions;
import java.math.BigInteger;
public class CoinUtilTest {
diff --git a/core/src/test/java/haveno/core/btc/nodes/BtcNetworkConfigTest.java b/core/src/test/java/haveno/core/xmr/nodes/BtcNetworkConfigTest.java
similarity index 95%
rename from core/src/test/java/haveno/core/btc/nodes/BtcNetworkConfigTest.java
rename to core/src/test/java/haveno/core/xmr/nodes/BtcNetworkConfigTest.java
index 381a8236..6901850a 100644
--- a/core/src/test/java/haveno/core/btc/nodes/BtcNetworkConfigTest.java
+++ b/core/src/test/java/haveno/core/xmr/nodes/BtcNetworkConfigTest.java
@@ -15,14 +15,14 @@
* along with Haveno. If not, see .
*/
-package haveno.core.btc.nodes;
+package haveno.core.xmr.nodes;
import org.bitcoinj.core.NetworkParameters;
import org.bitcoinj.core.PeerAddress;
import com.runjva.sourceforge.jsocks.protocol.Socks5Proxy;
-import haveno.core.btc.nodes.BtcNetworkConfig;
-import haveno.core.btc.setup.WalletConfig;
+import haveno.core.xmr.nodes.BtcNetworkConfig;
+import haveno.core.xmr.setup.WalletConfig;
import haveno.network.Socks5MultiDiscovery;
import java.util.Collections;
diff --git a/core/src/test/java/haveno/core/btc/nodes/BtcNodeConverterTest.java b/core/src/test/java/haveno/core/xmr/nodes/BtcNodeConverterTest.java
similarity index 93%
rename from core/src/test/java/haveno/core/btc/nodes/BtcNodeConverterTest.java
rename to core/src/test/java/haveno/core/xmr/nodes/BtcNodeConverterTest.java
index 5aa948f6..7d2d9fe1 100644
--- a/core/src/test/java/haveno/core/btc/nodes/BtcNodeConverterTest.java
+++ b/core/src/test/java/haveno/core/xmr/nodes/BtcNodeConverterTest.java
@@ -15,14 +15,14 @@
* along with Haveno. If not, see .
*/
-package haveno.core.btc.nodes;
+package haveno.core.xmr.nodes;
import org.bitcoinj.core.PeerAddress;
import com.runjva.sourceforge.jsocks.protocol.Socks5Proxy;
-import haveno.core.btc.nodes.BtcNodeConverter;
-import haveno.core.btc.nodes.BtcNodeConverter.Facade;
-import haveno.core.btc.nodes.BtcNodes.BtcNode;
+import haveno.core.xmr.nodes.BtcNodeConverter;
+import haveno.core.xmr.nodes.BtcNodeConverter.Facade;
+import haveno.core.xmr.nodes.BtcNodes.BtcNode;
import haveno.network.DnsLookupException;
import java.net.InetAddress;
diff --git a/core/src/test/java/haveno/core/btc/nodes/BtcNodesRepositoryTest.java b/core/src/test/java/haveno/core/xmr/nodes/BtcNodesRepositoryTest.java
similarity index 95%
rename from core/src/test/java/haveno/core/btc/nodes/BtcNodesRepositoryTest.java
rename to core/src/test/java/haveno/core/xmr/nodes/BtcNodesRepositoryTest.java
index b18b2075..33ee9bf4 100644
--- a/core/src/test/java/haveno/core/btc/nodes/BtcNodesRepositoryTest.java
+++ b/core/src/test/java/haveno/core/xmr/nodes/BtcNodesRepositoryTest.java
@@ -15,14 +15,14 @@
* along with Haveno. If not, see .
*/
-package haveno.core.btc.nodes;
+package haveno.core.xmr.nodes;
import org.bitcoinj.core.PeerAddress;
import com.runjva.sourceforge.jsocks.protocol.Socks5Proxy;
-import haveno.core.btc.nodes.BtcNodeConverter;
-import haveno.core.btc.nodes.BtcNodesRepository;
-import haveno.core.btc.nodes.BtcNodes.BtcNode;
+import haveno.core.xmr.nodes.BtcNodeConverter;
+import haveno.core.xmr.nodes.BtcNodesRepository;
+import haveno.core.xmr.nodes.BtcNodes.BtcNode;
import com.google.common.collect.Lists;
import java.util.Collections;
diff --git a/core/src/test/java/haveno/core/btc/nodes/BtcNodesSetupPreferencesTest.java b/core/src/test/java/haveno/core/xmr/nodes/BtcNodesSetupPreferencesTest.java
similarity index 86%
rename from core/src/test/java/haveno/core/btc/nodes/BtcNodesSetupPreferencesTest.java
rename to core/src/test/java/haveno/core/xmr/nodes/BtcNodesSetupPreferencesTest.java
index 0b9b4892..939fba5e 100644
--- a/core/src/test/java/haveno/core/btc/nodes/BtcNodesSetupPreferencesTest.java
+++ b/core/src/test/java/haveno/core/xmr/nodes/BtcNodesSetupPreferencesTest.java
@@ -15,23 +15,23 @@
* along with Haveno. If not, see .
*/
-package haveno.core.btc.nodes;
+package haveno.core.xmr.nodes;
import java.util.List;
import org.junit.Test;
-import static haveno.core.btc.nodes.BtcNodes.BitcoinNodesOption.CUSTOM;
-import static haveno.core.btc.nodes.BtcNodes.BitcoinNodesOption.PUBLIC;
+import static haveno.core.xmr.nodes.BtcNodes.BitcoinNodesOption.CUSTOM;
+import static haveno.core.xmr.nodes.BtcNodes.BitcoinNodesOption.PUBLIC;
import static org.junit.Assert.assertEquals;
import static org.junit.Assert.assertTrue;
import static org.mockito.Mockito.mock;
import static org.mockito.Mockito.when;
-import haveno.core.btc.nodes.BtcNodes;
-import haveno.core.btc.nodes.BtcNodesSetupPreferences;
-import haveno.core.btc.nodes.BtcNodes.BtcNode;
import haveno.core.user.Preferences;
+import haveno.core.xmr.nodes.BtcNodes;
+import haveno.core.xmr.nodes.BtcNodesSetupPreferences;
+import haveno.core.xmr.nodes.BtcNodes.BtcNode;
public class BtcNodesSetupPreferencesTest {
@Test
diff --git a/core/src/test/java/haveno/core/btc/wallet/RestrictionsTest.java b/core/src/test/java/haveno/core/xmr/wallet/RestrictionsTest.java
similarity index 95%
rename from core/src/test/java/haveno/core/btc/wallet/RestrictionsTest.java
rename to core/src/test/java/haveno/core/xmr/wallet/RestrictionsTest.java
index 4da12048..4028e953 100644
--- a/core/src/test/java/haveno/core/btc/wallet/RestrictionsTest.java
+++ b/core/src/test/java/haveno/core/xmr/wallet/RestrictionsTest.java
@@ -15,7 +15,7 @@
* along with Haveno. If not, see .
*/
-package haveno.core.btc.wallet;
+package haveno.core.xmr.wallet;
import org.bitcoinj.core.Coin;
@@ -24,7 +24,7 @@ import org.junit.Test;
import static org.junit.Assert.assertFalse;
import static org.junit.Assert.assertTrue;
-import haveno.core.btc.wallet.Restrictions;
+import haveno.core.xmr.wallet.Restrictions;
@SuppressWarnings("ConstantConditions")
public class RestrictionsTest {
diff --git a/desktop/src/main/java/haveno/desktop/app/HavenoApp.java b/desktop/src/main/java/haveno/desktop/app/HavenoApp.java
index bf1faeb5..fa9caafe 100644
--- a/desktop/src/main/java/haveno/desktop/app/HavenoApp.java
+++ b/desktop/src/main/java/haveno/desktop/app/HavenoApp.java
@@ -26,8 +26,6 @@ import haveno.common.config.Config;
import haveno.common.setup.GracefulShutDownHandler;
import haveno.common.setup.UncaughtExceptionHandler;
import haveno.common.util.Utilities;
-import haveno.core.btc.wallet.BtcWalletService;
-import haveno.core.btc.wallet.WalletsManager;
import haveno.core.locale.Res;
import haveno.core.offer.OpenOffer;
import haveno.core.offer.OpenOfferManager;
@@ -35,6 +33,8 @@ import haveno.core.user.Cookie;
import haveno.core.user.CookieKey;
import haveno.core.user.Preferences;
import haveno.core.user.User;
+import haveno.core.xmr.wallet.BtcWalletService;
+import haveno.core.xmr.wallet.WalletsManager;
import haveno.desktop.common.view.CachingViewLoader;
import haveno.desktop.common.view.View;
import haveno.desktop.common.view.ViewLoader;
diff --git a/desktop/src/main/java/haveno/desktop/components/TxIdTextField.java b/desktop/src/main/java/haveno/desktop/components/TxIdTextField.java
index c13c9780..be80bb3d 100644
--- a/desktop/src/main/java/haveno/desktop/components/TxIdTextField.java
+++ b/desktop/src/main/java/haveno/desktop/components/TxIdTextField.java
@@ -20,10 +20,10 @@ package haveno.desktop.components;
import de.jensd.fx.fontawesome.AwesomeDude;
import de.jensd.fx.fontawesome.AwesomeIcon;
import haveno.common.util.Utilities;
-import haveno.core.btc.wallet.XmrWalletService;
import haveno.core.locale.Res;
import haveno.core.user.BlockChainExplorer;
import haveno.core.user.Preferences;
+import haveno.core.xmr.wallet.XmrWalletService;
import haveno.desktop.components.indicator.TxConfidenceIndicator;
import haveno.desktop.util.GUIUtil;
import com.jfoenix.controls.JFXTextField;
diff --git a/desktop/src/main/java/haveno/desktop/main/MainViewModel.java b/desktop/src/main/java/haveno/desktop/main/MainViewModel.java
index e68253f4..7667fb60 100644
--- a/desktop/src/main/java/haveno/desktop/main/MainViewModel.java
+++ b/desktop/src/main/java/haveno/desktop/main/MainViewModel.java
@@ -30,8 +30,6 @@ import haveno.core.account.witness.AccountAgeWitnessService;
import haveno.core.alert.PrivateNotificationManager;
import haveno.core.api.CoreMoneroConnectionsService;
import haveno.core.app.HavenoSetup;
-import haveno.core.btc.nodes.LocalBitcoinNode;
-import haveno.core.btc.wallet.XmrWalletService;
import haveno.core.locale.CryptoCurrency;
import haveno.core.locale.CurrencyUtil;
import haveno.core.locale.Res;
@@ -49,6 +47,8 @@ import haveno.core.trade.TradeManager;
import haveno.core.user.DontShowAgainLookup;
import haveno.core.user.Preferences;
import haveno.core.user.User;
+import haveno.core.xmr.nodes.LocalBitcoinNode;
+import haveno.core.xmr.wallet.XmrWalletService;
import haveno.desktop.Navigation;
import haveno.desktop.common.model.ViewModel;
import haveno.desktop.components.TxIdTextField;
diff --git a/desktop/src/main/java/haveno/desktop/main/SharedPresentation.java b/desktop/src/main/java/haveno/desktop/main/SharedPresentation.java
index 332de1ba..08163a52 100644
--- a/desktop/src/main/java/haveno/desktop/main/SharedPresentation.java
+++ b/desktop/src/main/java/haveno/desktop/main/SharedPresentation.java
@@ -19,9 +19,9 @@ package haveno.desktop.main;
import haveno.common.UserThread;
import haveno.common.file.FileUtil;
-import haveno.core.btc.wallet.WalletsManager;
import haveno.core.locale.Res;
import haveno.core.offer.OpenOfferManager;
+import haveno.core.xmr.wallet.WalletsManager;
import haveno.desktop.app.HavenoApp;
import haveno.desktop.main.overlays.popups.Popup;
import org.bitcoinj.wallet.DeterministicSeed;
diff --git a/desktop/src/main/java/haveno/desktop/main/account/content/password/PasswordView.java b/desktop/src/main/java/haveno/desktop/main/account/content/password/PasswordView.java
index 0ef4c1db..1a5ba0e8 100644
--- a/desktop/src/main/java/haveno/desktop/main/account/content/password/PasswordView.java
+++ b/desktop/src/main/java/haveno/desktop/main/account/content/password/PasswordView.java
@@ -22,8 +22,8 @@ import javax.inject.Inject;
import com.jfoenix.validation.RequiredFieldValidator;
import haveno.common.util.Tuple4;
import haveno.core.api.CoreAccountService;
-import haveno.core.btc.wallet.WalletsManager;
import haveno.core.locale.Res;
+import haveno.core.xmr.wallet.WalletsManager;
import haveno.desktop.Navigation;
import haveno.desktop.common.view.ActivatableView;
import haveno.desktop.common.view.FxmlView;
diff --git a/desktop/src/main/java/haveno/desktop/main/account/content/seedwords/SeedWordsView.java b/desktop/src/main/java/haveno/desktop/main/account/content/seedwords/SeedWordsView.java
index 51d4e846..1312d173 100644
--- a/desktop/src/main/java/haveno/desktop/main/account/content/seedwords/SeedWordsView.java
+++ b/desktop/src/main/java/haveno/desktop/main/account/content/seedwords/SeedWordsView.java
@@ -26,11 +26,11 @@ import javax.inject.Named;
import com.google.common.base.Splitter;
import haveno.common.config.Config;
-import haveno.core.btc.wallet.WalletsManager;
-import haveno.core.btc.wallet.XmrWalletService;
import haveno.core.locale.Res;
import haveno.core.offer.OpenOfferManager;
import haveno.core.user.DontShowAgainLookup;
+import haveno.core.xmr.wallet.WalletsManager;
+import haveno.core.xmr.wallet.XmrWalletService;
import haveno.desktop.common.view.ActivatableView;
import haveno.desktop.common.view.FxmlView;
import haveno.desktop.main.SharedPresentation;
diff --git a/desktop/src/main/java/haveno/desktop/main/account/content/walletinfo/WalletInfoView.java b/desktop/src/main/java/haveno/desktop/main/account/content/walletinfo/WalletInfoView.java
index 5a0f6426..5d74eb41 100644
--- a/desktop/src/main/java/haveno/desktop/main/account/content/walletinfo/WalletInfoView.java
+++ b/desktop/src/main/java/haveno/desktop/main/account/content/walletinfo/WalletInfoView.java
@@ -18,13 +18,13 @@
package haveno.desktop.main.account.content.walletinfo;
import haveno.common.config.Config;
-import haveno.core.btc.listeners.BalanceListener;
-import haveno.core.btc.wallet.BtcWalletService;
-import haveno.core.btc.wallet.WalletService;
-import haveno.core.btc.wallet.WalletsManager;
import haveno.core.locale.Res;
import haveno.core.util.FormattingUtils;
import haveno.core.util.coin.CoinFormatter;
+import haveno.core.xmr.listeners.BalanceListener;
+import haveno.core.xmr.wallet.BtcWalletService;
+import haveno.core.xmr.wallet.WalletService;
+import haveno.core.xmr.wallet.WalletsManager;
import haveno.desktop.common.view.ActivatableView;
import haveno.desktop.common.view.FxmlView;
import haveno.desktop.main.overlays.popups.Popup;
diff --git a/desktop/src/main/java/haveno/desktop/main/account/register/AgentRegistrationViewModel.java b/desktop/src/main/java/haveno/desktop/main/account/register/AgentRegistrationViewModel.java
index 64efbd41..a7c68b96 100644
--- a/desktop/src/main/java/haveno/desktop/main/account/register/AgentRegistrationViewModel.java
+++ b/desktop/src/main/java/haveno/desktop/main/account/register/AgentRegistrationViewModel.java
@@ -20,11 +20,11 @@ package haveno.desktop.main.account.register;
import haveno.common.crypto.KeyRing;
import haveno.common.handlers.ErrorMessageHandler;
import haveno.common.handlers.ResultHandler;
-import haveno.core.btc.wallet.XmrWalletService;
import haveno.core.locale.LanguageUtil;
import haveno.core.support.dispute.agent.DisputeAgent;
import haveno.core.support.dispute.agent.DisputeAgentManager;
import haveno.core.user.User;
+import haveno.core.xmr.wallet.XmrWalletService;
import haveno.desktop.common.model.ActivatableViewModel;
import haveno.desktop.util.GUIUtil;
import haveno.network.p2p.NodeAddress;
diff --git a/desktop/src/main/java/haveno/desktop/main/account/register/arbitrator/ArbitratorRegistrationViewModel.java b/desktop/src/main/java/haveno/desktop/main/account/register/arbitrator/ArbitratorRegistrationViewModel.java
index 68bab563..f412abce 100644
--- a/desktop/src/main/java/haveno/desktop/main/account/register/arbitrator/ArbitratorRegistrationViewModel.java
+++ b/desktop/src/main/java/haveno/desktop/main/account/register/arbitrator/ArbitratorRegistrationViewModel.java
@@ -19,10 +19,10 @@ package haveno.desktop.main.account.register.arbitrator;
import com.google.inject.Inject;
import haveno.common.crypto.KeyRing;
-import haveno.core.btc.wallet.XmrWalletService;
import haveno.core.support.dispute.arbitration.arbitrator.Arbitrator;
import haveno.core.support.dispute.arbitration.arbitrator.ArbitratorManager;
import haveno.core.user.User;
+import haveno.core.xmr.wallet.XmrWalletService;
import haveno.desktop.main.account.register.AgentRegistrationViewModel;
import haveno.network.p2p.P2PService;
import java.util.ArrayList;
diff --git a/desktop/src/main/java/haveno/desktop/main/account/register/mediator/MediatorRegistrationViewModel.java b/desktop/src/main/java/haveno/desktop/main/account/register/mediator/MediatorRegistrationViewModel.java
index c395c850..5960fa65 100644
--- a/desktop/src/main/java/haveno/desktop/main/account/register/mediator/MediatorRegistrationViewModel.java
+++ b/desktop/src/main/java/haveno/desktop/main/account/register/mediator/MediatorRegistrationViewModel.java
@@ -19,10 +19,10 @@ package haveno.desktop.main.account.register.mediator;
import com.google.inject.Inject;
import haveno.common.crypto.KeyRing;
-import haveno.core.btc.wallet.XmrWalletService;
import haveno.core.support.dispute.mediation.mediator.Mediator;
import haveno.core.support.dispute.mediation.mediator.MediatorManager;
import haveno.core.user.User;
+import haveno.core.xmr.wallet.XmrWalletService;
import haveno.desktop.main.account.register.AgentRegistrationViewModel;
import haveno.network.p2p.P2PService;
import java.util.ArrayList;
diff --git a/desktop/src/main/java/haveno/desktop/main/account/register/refundagent/RefundAgentRegistrationViewModel.java b/desktop/src/main/java/haveno/desktop/main/account/register/refundagent/RefundAgentRegistrationViewModel.java
index 7296aa02..1f982ab7 100644
--- a/desktop/src/main/java/haveno/desktop/main/account/register/refundagent/RefundAgentRegistrationViewModel.java
+++ b/desktop/src/main/java/haveno/desktop/main/account/register/refundagent/RefundAgentRegistrationViewModel.java
@@ -20,10 +20,10 @@ package haveno.desktop.main.account.register.refundagent;
import com.google.inject.Inject;
import haveno.common.crypto.KeyRing;
-import haveno.core.btc.wallet.XmrWalletService;
import haveno.core.support.dispute.refund.refundagent.RefundAgent;
import haveno.core.support.dispute.refund.refundagent.RefundAgentManager;
import haveno.core.user.User;
+import haveno.core.xmr.wallet.XmrWalletService;
import haveno.desktop.main.account.register.AgentRegistrationViewModel;
import haveno.network.p2p.P2PService;
import java.util.ArrayList;
diff --git a/desktop/src/main/java/haveno/desktop/main/funds/deposit/DepositListItem.java b/desktop/src/main/java/haveno/desktop/main/funds/deposit/DepositListItem.java
index 8c6bdc66..b93843d9 100644
--- a/desktop/src/main/java/haveno/desktop/main/funds/deposit/DepositListItem.java
+++ b/desktop/src/main/java/haveno/desktop/main/funds/deposit/DepositListItem.java
@@ -19,12 +19,12 @@ package haveno.desktop.main.funds.deposit;
import com.google.common.base.Supplier;
import com.google.common.base.Suppliers;
-import haveno.core.btc.listeners.XmrBalanceListener;
-import haveno.core.btc.model.XmrAddressEntry;
-import haveno.core.btc.wallet.XmrWalletService;
import haveno.core.locale.Res;
import haveno.core.trade.HavenoUtils;
import haveno.core.util.coin.CoinFormatter;
+import haveno.core.xmr.listeners.XmrBalanceListener;
+import haveno.core.xmr.model.XmrAddressEntry;
+import haveno.core.xmr.wallet.XmrWalletService;
import haveno.desktop.components.indicator.TxConfidenceIndicator;
import haveno.desktop.util.GUIUtil;
import java.math.BigInteger;
diff --git a/desktop/src/main/java/haveno/desktop/main/funds/deposit/DepositView.java b/desktop/src/main/java/haveno/desktop/main/funds/deposit/DepositView.java
index b4d895fc..8f50b08f 100644
--- a/desktop/src/main/java/haveno/desktop/main/funds/deposit/DepositView.java
+++ b/desktop/src/main/java/haveno/desktop/main/funds/deposit/DepositView.java
@@ -22,15 +22,15 @@ import static haveno.desktop.util.FormBuilder.*;
import haveno.common.UserThread;
import haveno.common.app.DevEnv;
import haveno.common.util.Tuple3;
-import haveno.core.btc.listeners.XmrBalanceListener;
-import haveno.core.btc.model.XmrAddressEntry;
-import haveno.core.btc.wallet.XmrWalletService;
import haveno.core.locale.Res;
import haveno.core.trade.HavenoUtils;
import haveno.core.user.Preferences;
import haveno.core.util.FormattingUtils;
import haveno.core.util.ParsingUtils;
import haveno.core.util.coin.CoinFormatter;
+import haveno.core.xmr.listeners.XmrBalanceListener;
+import haveno.core.xmr.model.XmrAddressEntry;
+import haveno.core.xmr.wallet.XmrWalletService;
import haveno.desktop.common.view.ActivatableView;
import haveno.desktop.common.view.FxmlView;
import haveno.desktop.components.AddressTextField;
diff --git a/desktop/src/main/java/haveno/desktop/main/funds/locked/LockedListItem.java b/desktop/src/main/java/haveno/desktop/main/funds/locked/LockedListItem.java
index 0d090e7c..9b8f698b 100644
--- a/desktop/src/main/java/haveno/desktop/main/funds/locked/LockedListItem.java
+++ b/desktop/src/main/java/haveno/desktop/main/funds/locked/LockedListItem.java
@@ -17,12 +17,12 @@
package haveno.desktop.main.funds.locked;
-import haveno.core.btc.listeners.BalanceListener;
-import haveno.core.btc.model.AddressEntry;
-import haveno.core.btc.wallet.BtcWalletService;
import haveno.core.locale.Res;
import haveno.core.trade.Trade;
import haveno.core.util.coin.CoinFormatter;
+import haveno.core.xmr.listeners.BalanceListener;
+import haveno.core.xmr.model.AddressEntry;
+import haveno.core.xmr.wallet.BtcWalletService;
import haveno.desktop.util.DisplayUtils;
import org.bitcoinj.core.Address;
import org.bitcoinj.core.Coin;
diff --git a/desktop/src/main/java/haveno/desktop/main/funds/locked/LockedView.java b/desktop/src/main/java/haveno/desktop/main/funds/locked/LockedView.java
index da48b8d9..fa4beff0 100644
--- a/desktop/src/main/java/haveno/desktop/main/funds/locked/LockedView.java
+++ b/desktop/src/main/java/haveno/desktop/main/funds/locked/LockedView.java
@@ -26,9 +26,6 @@ import javax.inject.Inject;
import javax.inject.Named;
import de.jensd.fx.fontawesome.AwesomeIcon;
-import haveno.core.btc.listeners.BalanceListener;
-import haveno.core.btc.model.AddressEntry;
-import haveno.core.btc.wallet.BtcWalletService;
import haveno.core.locale.Res;
import haveno.core.offer.OpenOffer;
import haveno.core.offer.OpenOfferManager;
@@ -38,6 +35,9 @@ import haveno.core.trade.TradeManager;
import haveno.core.user.Preferences;
import haveno.core.util.FormattingUtils;
import haveno.core.util.coin.CoinFormatter;
+import haveno.core.xmr.listeners.BalanceListener;
+import haveno.core.xmr.model.AddressEntry;
+import haveno.core.xmr.wallet.BtcWalletService;
import haveno.desktop.common.view.ActivatableView;
import haveno.desktop.common.view.FxmlView;
import haveno.desktop.components.AutoTooltipButton;
diff --git a/desktop/src/main/java/haveno/desktop/main/funds/reserved/ReservedListItem.java b/desktop/src/main/java/haveno/desktop/main/funds/reserved/ReservedListItem.java
index 37cc1988..1210bca4 100644
--- a/desktop/src/main/java/haveno/desktop/main/funds/reserved/ReservedListItem.java
+++ b/desktop/src/main/java/haveno/desktop/main/funds/reserved/ReservedListItem.java
@@ -17,12 +17,12 @@
package haveno.desktop.main.funds.reserved;
-import haveno.core.btc.listeners.BalanceListener;
-import haveno.core.btc.model.AddressEntry;
-import haveno.core.btc.wallet.BtcWalletService;
import haveno.core.locale.Res;
import haveno.core.offer.OpenOffer;
import haveno.core.util.coin.CoinFormatter;
+import haveno.core.xmr.listeners.BalanceListener;
+import haveno.core.xmr.model.AddressEntry;
+import haveno.core.xmr.wallet.BtcWalletService;
import haveno.desktop.components.AutoTooltipLabel;
import haveno.desktop.util.DisplayUtils;
import org.bitcoinj.core.Address;
diff --git a/desktop/src/main/java/haveno/desktop/main/funds/reserved/ReservedView.java b/desktop/src/main/java/haveno/desktop/main/funds/reserved/ReservedView.java
index d442195b..8c1b3b1e 100644
--- a/desktop/src/main/java/haveno/desktop/main/funds/reserved/ReservedView.java
+++ b/desktop/src/main/java/haveno/desktop/main/funds/reserved/ReservedView.java
@@ -26,9 +26,6 @@ import javax.inject.Inject;
import javax.inject.Named;
import de.jensd.fx.fontawesome.AwesomeIcon;
-import haveno.core.btc.listeners.BalanceListener;
-import haveno.core.btc.model.AddressEntry;
-import haveno.core.btc.wallet.BtcWalletService;
import haveno.core.locale.Res;
import haveno.core.offer.OpenOffer;
import haveno.core.offer.OpenOfferManager;
@@ -38,6 +35,9 @@ import haveno.core.trade.TradeManager;
import haveno.core.user.Preferences;
import haveno.core.util.FormattingUtils;
import haveno.core.util.coin.CoinFormatter;
+import haveno.core.xmr.listeners.BalanceListener;
+import haveno.core.xmr.model.AddressEntry;
+import haveno.core.xmr.wallet.BtcWalletService;
import haveno.desktop.common.view.ActivatableView;
import haveno.desktop.common.view.FxmlView;
import haveno.desktop.components.AutoTooltipButton;
diff --git a/desktop/src/main/java/haveno/desktop/main/funds/transactions/DisplayedTransactions.java b/desktop/src/main/java/haveno/desktop/main/funds/transactions/DisplayedTransactions.java
index 01fcd732..4b84563b 100644
--- a/desktop/src/main/java/haveno/desktop/main/funds/transactions/DisplayedTransactions.java
+++ b/desktop/src/main/java/haveno/desktop/main/funds/transactions/DisplayedTransactions.java
@@ -17,8 +17,8 @@
package haveno.desktop.main.funds.transactions;
-import haveno.core.btc.wallet.XmrWalletService;
import haveno.core.trade.Tradable;
+import haveno.core.xmr.wallet.XmrWalletService;
import java.util.List;
import java.util.Set;
import java.util.stream.Collectors;
diff --git a/desktop/src/main/java/haveno/desktop/main/funds/transactions/DisplayedTransactionsFactory.java b/desktop/src/main/java/haveno/desktop/main/funds/transactions/DisplayedTransactionsFactory.java
index bd96e417..7a358831 100644
--- a/desktop/src/main/java/haveno/desktop/main/funds/transactions/DisplayedTransactionsFactory.java
+++ b/desktop/src/main/java/haveno/desktop/main/funds/transactions/DisplayedTransactionsFactory.java
@@ -17,7 +17,7 @@
package haveno.desktop.main.funds.transactions;
-import haveno.core.btc.wallet.XmrWalletService;
+import haveno.core.xmr.wallet.XmrWalletService;
import javax.inject.Inject;
import javax.inject.Singleton;
diff --git a/desktop/src/main/java/haveno/desktop/main/funds/transactions/TransactionAwareTradableFactory.java b/desktop/src/main/java/haveno/desktop/main/funds/transactions/TransactionAwareTradableFactory.java
index 7e2a4731..f894c1e2 100644
--- a/desktop/src/main/java/haveno/desktop/main/funds/transactions/TransactionAwareTradableFactory.java
+++ b/desktop/src/main/java/haveno/desktop/main/funds/transactions/TransactionAwareTradableFactory.java
@@ -18,12 +18,12 @@
package haveno.desktop.main.funds.transactions;
import haveno.common.crypto.PubKeyRingProvider;
-import haveno.core.btc.wallet.XmrWalletService;
import haveno.core.offer.OpenOffer;
import haveno.core.support.dispute.arbitration.ArbitrationManager;
import haveno.core.support.dispute.refund.RefundManager;
import haveno.core.trade.Tradable;
import haveno.core.trade.Trade;
+import haveno.core.xmr.wallet.XmrWalletService;
import javax.inject.Inject;
import javax.inject.Singleton;
diff --git a/desktop/src/main/java/haveno/desktop/main/funds/transactions/TransactionAwareTrade.java b/desktop/src/main/java/haveno/desktop/main/funds/transactions/TransactionAwareTrade.java
index 9d8c7ff0..6156dcac 100644
--- a/desktop/src/main/java/haveno/desktop/main/funds/transactions/TransactionAwareTrade.java
+++ b/desktop/src/main/java/haveno/desktop/main/funds/transactions/TransactionAwareTrade.java
@@ -18,13 +18,13 @@
package haveno.desktop.main.funds.transactions;
import haveno.common.crypto.PubKeyRing;
-import haveno.core.btc.wallet.XmrWalletService;
import haveno.core.offer.Offer;
import haveno.core.support.dispute.Dispute;
import haveno.core.support.dispute.arbitration.ArbitrationManager;
import haveno.core.support.dispute.refund.RefundManager;
import haveno.core.trade.Tradable;
import haveno.core.trade.Trade;
+import haveno.core.xmr.wallet.XmrWalletService;
import javafx.collections.ObservableList;
import java.util.Optional;
diff --git a/desktop/src/main/java/haveno/desktop/main/funds/transactions/TransactionListItemFactory.java b/desktop/src/main/java/haveno/desktop/main/funds/transactions/TransactionListItemFactory.java
index 614da41c..f5adcce9 100644
--- a/desktop/src/main/java/haveno/desktop/main/funds/transactions/TransactionListItemFactory.java
+++ b/desktop/src/main/java/haveno/desktop/main/funds/transactions/TransactionListItemFactory.java
@@ -20,10 +20,10 @@ package haveno.desktop.main.funds.transactions;
import javax.inject.Inject;
import javax.inject.Named;
import javax.inject.Singleton;
-import haveno.core.btc.wallet.XmrWalletService;
import haveno.core.user.Preferences;
import haveno.core.util.FormattingUtils;
import haveno.core.util.coin.CoinFormatter;
+import haveno.core.xmr.wallet.XmrWalletService;
import javax.annotation.Nullable;
diff --git a/desktop/src/main/java/haveno/desktop/main/funds/transactions/TransactionsListItem.java b/desktop/src/main/java/haveno/desktop/main/funds/transactions/TransactionsListItem.java
index 55702300..0dd0bccc 100644
--- a/desktop/src/main/java/haveno/desktop/main/funds/transactions/TransactionsListItem.java
+++ b/desktop/src/main/java/haveno/desktop/main/funds/transactions/TransactionsListItem.java
@@ -19,13 +19,13 @@ package haveno.desktop.main.funds.transactions;
import com.google.common.base.Supplier;
import com.google.common.base.Suppliers;
-import haveno.core.btc.wallet.XmrWalletService;
import haveno.core.locale.Res;
import haveno.core.offer.Offer;
import haveno.core.offer.OpenOffer;
import haveno.core.trade.HavenoUtils;
import haveno.core.trade.Tradable;
import haveno.core.trade.Trade;
+import haveno.core.xmr.wallet.XmrWalletService;
import haveno.desktop.components.indicator.TxConfidenceIndicator;
import haveno.desktop.util.DisplayUtils;
import haveno.desktop.util.GUIUtil;
diff --git a/desktop/src/main/java/haveno/desktop/main/funds/transactions/TransactionsView.java b/desktop/src/main/java/haveno/desktop/main/funds/transactions/TransactionsView.java
index 40cba3ae..ede6129f 100644
--- a/desktop/src/main/java/haveno/desktop/main/funds/transactions/TransactionsView.java
+++ b/desktop/src/main/java/haveno/desktop/main/funds/transactions/TransactionsView.java
@@ -24,11 +24,11 @@ import monero.wallet.model.MoneroWalletListener;
import de.jensd.fx.fontawesome.AwesomeIcon;
import haveno.common.util.Utilities;
import haveno.core.api.CoreMoneroConnectionsService;
-import haveno.core.btc.wallet.XmrWalletService;
import haveno.core.locale.Res;
import haveno.core.offer.OpenOffer;
import haveno.core.trade.Trade;
import haveno.core.user.Preferences;
+import haveno.core.xmr.wallet.XmrWalletService;
import haveno.desktop.common.view.ActivatableView;
import haveno.desktop.common.view.FxmlView;
import haveno.desktop.components.AddressWithIconAndDirection;
diff --git a/desktop/src/main/java/haveno/desktop/main/funds/withdrawal/WithdrawalListItem.java b/desktop/src/main/java/haveno/desktop/main/funds/withdrawal/WithdrawalListItem.java
index 4b00a7e5..09b1fdec 100644
--- a/desktop/src/main/java/haveno/desktop/main/funds/withdrawal/WithdrawalListItem.java
+++ b/desktop/src/main/java/haveno/desktop/main/funds/withdrawal/WithdrawalListItem.java
@@ -17,12 +17,12 @@
package haveno.desktop.main.funds.withdrawal;
-import haveno.core.btc.listeners.XmrBalanceListener;
-import haveno.core.btc.model.XmrAddressEntry;
-import haveno.core.btc.wallet.XmrWalletService;
import haveno.core.locale.Res;
import haveno.core.trade.HavenoUtils;
import haveno.core.util.coin.CoinFormatter;
+import haveno.core.xmr.listeners.XmrBalanceListener;
+import haveno.core.xmr.model.XmrAddressEntry;
+import haveno.core.xmr.wallet.XmrWalletService;
import haveno.desktop.components.AutoTooltipLabel;
import javafx.scene.control.Label;
diff --git a/desktop/src/main/java/haveno/desktop/main/funds/withdrawal/WithdrawalView.java b/desktop/src/main/java/haveno/desktop/main/funds/withdrawal/WithdrawalView.java
index a435e2bd..a8ebe56f 100644
--- a/desktop/src/main/java/haveno/desktop/main/funds/withdrawal/WithdrawalView.java
+++ b/desktop/src/main/java/haveno/desktop/main/funds/withdrawal/WithdrawalView.java
@@ -20,16 +20,16 @@ package haveno.desktop.main.funds.withdrawal;
import static haveno.desktop.util.FormBuilder.*;
import haveno.common.util.Tuple2;
-import haveno.core.btc.listeners.XmrBalanceListener;
-import haveno.core.btc.model.XmrAddressEntry;
-import haveno.core.btc.setup.WalletsSetup;
-import haveno.core.btc.wallet.XmrWalletService;
import haveno.core.locale.Res;
import haveno.core.trade.HavenoUtils;
import haveno.core.trade.Trade;
import haveno.core.trade.TradeManager;
import haveno.core.user.DontShowAgainLookup;
import haveno.core.util.validation.BtcAddressValidator;
+import haveno.core.xmr.listeners.XmrBalanceListener;
+import haveno.core.xmr.model.XmrAddressEntry;
+import haveno.core.xmr.setup.WalletsSetup;
+import haveno.core.xmr.wallet.XmrWalletService;
import haveno.desktop.common.view.ActivatableView;
import haveno.desktop.common.view.FxmlView;
import haveno.desktop.components.InputTextField;
diff --git a/desktop/src/main/java/haveno/desktop/main/offer/MutableOfferDataModel.java b/desktop/src/main/java/haveno/desktop/main/offer/MutableOfferDataModel.java
index 229e4a06..79d793cc 100644
--- a/desktop/src/main/java/haveno/desktop/main/offer/MutableOfferDataModel.java
+++ b/desktop/src/main/java/haveno/desktop/main/offer/MutableOfferDataModel.java
@@ -23,10 +23,6 @@ import haveno.common.handlers.ErrorMessageHandler;
import haveno.common.util.MathUtils;
import haveno.common.util.Utilities;
import haveno.core.account.witness.AccountAgeWitnessService;
-import haveno.core.btc.listeners.XmrBalanceListener;
-import haveno.core.btc.model.XmrAddressEntry;
-import haveno.core.btc.wallet.Restrictions;
-import haveno.core.btc.wallet.XmrWalletService;
import haveno.core.locale.CurrencyUtil;
import haveno.core.locale.TradeCurrency;
import haveno.core.monetary.Price;
@@ -48,6 +44,10 @@ import haveno.core.util.FormattingUtils;
import haveno.core.util.VolumeUtil;
import haveno.core.util.coin.CoinFormatter;
import haveno.core.util.coin.CoinUtil;
+import haveno.core.xmr.listeners.XmrBalanceListener;
+import haveno.core.xmr.model.XmrAddressEntry;
+import haveno.core.xmr.wallet.Restrictions;
+import haveno.core.xmr.wallet.XmrWalletService;
import haveno.desktop.Navigation;
import haveno.desktop.util.DisplayUtils;
import haveno.desktop.util.GUIUtil;
diff --git a/desktop/src/main/java/haveno/desktop/main/offer/MutableOfferViewModel.java b/desktop/src/main/java/haveno/desktop/main/offer/MutableOfferViewModel.java
index 025806f0..fbd97246 100644
--- a/desktop/src/main/java/haveno/desktop/main/offer/MutableOfferViewModel.java
+++ b/desktop/src/main/java/haveno/desktop/main/offer/MutableOfferViewModel.java
@@ -21,7 +21,6 @@ import haveno.common.UserThread;
import haveno.common.app.DevEnv;
import haveno.common.util.MathUtils;
import haveno.core.account.witness.AccountAgeWitnessService;
-import haveno.core.btc.wallet.Restrictions;
import haveno.core.locale.CurrencyUtil;
import haveno.core.locale.Res;
import haveno.core.locale.TradeCurrency;
@@ -51,6 +50,7 @@ import haveno.core.util.validation.AltcoinValidator;
import haveno.core.util.validation.FiatPriceValidator;
import haveno.core.util.validation.InputValidator;
import haveno.core.util.validation.MonetaryValidator;
+import haveno.core.xmr.wallet.Restrictions;
import haveno.desktop.Navigation;
import haveno.desktop.common.model.ActivatableWithDataModel;
import haveno.desktop.main.MainView;
diff --git a/desktop/src/main/java/haveno/desktop/main/offer/OfferDataModel.java b/desktop/src/main/java/haveno/desktop/main/offer/OfferDataModel.java
index f4c9bca5..5759392d 100644
--- a/desktop/src/main/java/haveno/desktop/main/offer/OfferDataModel.java
+++ b/desktop/src/main/java/haveno/desktop/main/offer/OfferDataModel.java
@@ -17,9 +17,9 @@
package haveno.desktop.main.offer;
-import haveno.core.btc.model.XmrAddressEntry;
-import haveno.core.btc.wallet.XmrWalletService;
import haveno.core.offer.OfferUtil;
+import haveno.core.xmr.model.XmrAddressEntry;
+import haveno.core.xmr.wallet.XmrWalletService;
import haveno.desktop.common.model.ActivatableDataModel;
import javafx.beans.property.BooleanProperty;
import javafx.beans.property.ObjectProperty;
diff --git a/desktop/src/main/java/haveno/desktop/main/offer/OfferViewUtil.java b/desktop/src/main/java/haveno/desktop/main/offer/OfferViewUtil.java
index f408f666..c7051121 100644
--- a/desktop/src/main/java/haveno/desktop/main/offer/OfferViewUtil.java
+++ b/desktop/src/main/java/haveno/desktop/main/offer/OfferViewUtil.java
@@ -19,13 +19,13 @@ package haveno.desktop.main.offer;
import haveno.common.UserThread;
import haveno.common.util.Tuple2;
-import haveno.core.btc.wallet.XmrWalletService;
import haveno.core.locale.CryptoCurrency;
import haveno.core.locale.CurrencyUtil;
import haveno.core.locale.Res;
import haveno.core.locale.TradeCurrency;
import haveno.core.offer.Offer;
import haveno.core.offer.OfferDirection;
+import haveno.core.xmr.wallet.XmrWalletService;
import haveno.desktop.Navigation;
import haveno.desktop.components.AutoTooltipButton;
import haveno.desktop.components.AutoTooltipLabel;
diff --git a/desktop/src/main/java/haveno/desktop/main/offer/createoffer/CreateOfferDataModel.java b/desktop/src/main/java/haveno/desktop/main/offer/createoffer/CreateOfferDataModel.java
index f943ec5e..521df957 100644
--- a/desktop/src/main/java/haveno/desktop/main/offer/createoffer/CreateOfferDataModel.java
+++ b/desktop/src/main/java/haveno/desktop/main/offer/createoffer/CreateOfferDataModel.java
@@ -19,7 +19,6 @@ package haveno.desktop.main.offer.createoffer;
import com.google.inject.Inject;
import haveno.core.account.witness.AccountAgeWitnessService;
-import haveno.core.btc.wallet.XmrWalletService;
import haveno.core.offer.CreateOfferService;
import haveno.core.offer.OfferUtil;
import haveno.core.offer.OpenOfferManager;
@@ -30,6 +29,7 @@ import haveno.core.user.Preferences;
import haveno.core.user.User;
import haveno.core.util.FormattingUtils;
import haveno.core.util.coin.CoinFormatter;
+import haveno.core.xmr.wallet.XmrWalletService;
import haveno.desktop.Navigation;
import haveno.desktop.main.offer.MutableOfferDataModel;
import haveno.network.p2p.P2PService;
diff --git a/desktop/src/main/java/haveno/desktop/main/offer/offerbook/BtcOfferBookViewModel.java b/desktop/src/main/java/haveno/desktop/main/offer/offerbook/BtcOfferBookViewModel.java
index 381f4870..50076507 100644
--- a/desktop/src/main/java/haveno/desktop/main/offer/offerbook/BtcOfferBookViewModel.java
+++ b/desktop/src/main/java/haveno/desktop/main/offer/offerbook/BtcOfferBookViewModel.java
@@ -20,7 +20,6 @@ package haveno.desktop.main.offer.offerbook;
import com.google.inject.Inject;
import haveno.core.account.witness.AccountAgeWitnessService;
import haveno.core.api.CoreApi;
-import haveno.core.btc.setup.WalletsSetup;
import haveno.core.locale.CryptoCurrency;
import haveno.core.locale.CurrencyUtil;
import haveno.core.locale.GlobalSettings;
@@ -38,6 +37,7 @@ import haveno.core.user.User;
import haveno.core.util.FormattingUtils;
import haveno.core.util.PriceUtil;
import haveno.core.util.coin.CoinFormatter;
+import haveno.core.xmr.setup.WalletsSetup;
import haveno.desktop.Navigation;
import haveno.desktop.util.GUIUtil;
import haveno.network.p2p.P2PService;
diff --git a/desktop/src/main/java/haveno/desktop/main/offer/offerbook/OfferBookViewModel.java b/desktop/src/main/java/haveno/desktop/main/offer/offerbook/OfferBookViewModel.java
index dcebc49f..9850280f 100644
--- a/desktop/src/main/java/haveno/desktop/main/offer/offerbook/OfferBookViewModel.java
+++ b/desktop/src/main/java/haveno/desktop/main/offer/offerbook/OfferBookViewModel.java
@@ -22,7 +22,6 @@ import haveno.common.handlers.ErrorMessageHandler;
import haveno.common.handlers.ResultHandler;
import haveno.core.account.witness.AccountAgeWitnessService;
import haveno.core.api.CoreApi;
-import haveno.core.btc.setup.WalletsSetup;
import haveno.core.locale.BankUtil;
import haveno.core.locale.CountryUtil;
import haveno.core.locale.CryptoCurrency;
@@ -49,6 +48,7 @@ import haveno.core.util.FormattingUtils;
import haveno.core.util.PriceUtil;
import haveno.core.util.VolumeUtil;
import haveno.core.util.coin.CoinFormatter;
+import haveno.core.xmr.setup.WalletsSetup;
import haveno.desktop.Navigation;
import haveno.desktop.common.model.ActivatableViewModel;
import haveno.desktop.main.MainView;
diff --git a/desktop/src/main/java/haveno/desktop/main/offer/offerbook/OtherOfferBookViewModel.java b/desktop/src/main/java/haveno/desktop/main/offer/offerbook/OtherOfferBookViewModel.java
index c7ddbdd3..9855c9ad 100644
--- a/desktop/src/main/java/haveno/desktop/main/offer/offerbook/OtherOfferBookViewModel.java
+++ b/desktop/src/main/java/haveno/desktop/main/offer/offerbook/OtherOfferBookViewModel.java
@@ -20,7 +20,6 @@ package haveno.desktop.main.offer.offerbook;
import com.google.inject.Inject;
import haveno.core.account.witness.AccountAgeWitnessService;
import haveno.core.api.CoreApi;
-import haveno.core.btc.setup.WalletsSetup;
import haveno.core.locale.CryptoCurrency;
import haveno.core.locale.CurrencyUtil;
import haveno.core.locale.GlobalSettings;
@@ -37,6 +36,7 @@ import haveno.core.user.User;
import haveno.core.util.FormattingUtils;
import haveno.core.util.PriceUtil;
import haveno.core.util.coin.CoinFormatter;
+import haveno.core.xmr.setup.WalletsSetup;
import haveno.desktop.Navigation;
import haveno.desktop.main.offer.OfferViewUtil;
import haveno.desktop.util.GUIUtil;
diff --git a/desktop/src/main/java/haveno/desktop/main/offer/offerbook/TopAltcoinOfferBookViewModel.java b/desktop/src/main/java/haveno/desktop/main/offer/offerbook/TopAltcoinOfferBookViewModel.java
index d8defa41..97933302 100644
--- a/desktop/src/main/java/haveno/desktop/main/offer/offerbook/TopAltcoinOfferBookViewModel.java
+++ b/desktop/src/main/java/haveno/desktop/main/offer/offerbook/TopAltcoinOfferBookViewModel.java
@@ -20,7 +20,6 @@ package haveno.desktop.main.offer.offerbook;
import com.google.inject.Inject;
import haveno.core.account.witness.AccountAgeWitnessService;
import haveno.core.api.CoreApi;
-import haveno.core.btc.setup.WalletsSetup;
import haveno.core.locale.TradeCurrency;
import haveno.core.offer.Offer;
import haveno.core.offer.OfferDirection;
@@ -34,6 +33,7 @@ import haveno.core.user.User;
import haveno.core.util.FormattingUtils;
import haveno.core.util.PriceUtil;
import haveno.core.util.coin.CoinFormatter;
+import haveno.core.xmr.setup.WalletsSetup;
import haveno.desktop.Navigation;
import haveno.desktop.util.GUIUtil;
import haveno.network.p2p.P2PService;
diff --git a/desktop/src/main/java/haveno/desktop/main/offer/takeoffer/TakeOfferDataModel.java b/desktop/src/main/java/haveno/desktop/main/offer/takeoffer/TakeOfferDataModel.java
index 95e1b019..de507d57 100644
--- a/desktop/src/main/java/haveno/desktop/main/offer/takeoffer/TakeOfferDataModel.java
+++ b/desktop/src/main/java/haveno/desktop/main/offer/takeoffer/TakeOfferDataModel.java
@@ -20,9 +20,6 @@ package haveno.desktop.main.offer.takeoffer;
import com.google.inject.Inject;
import haveno.common.handlers.ErrorMessageHandler;
import haveno.core.account.witness.AccountAgeWitnessService;
-import haveno.core.btc.listeners.XmrBalanceListener;
-import haveno.core.btc.model.XmrAddressEntry;
-import haveno.core.btc.wallet.XmrWalletService;
import haveno.core.filter.FilterManager;
import haveno.core.locale.CurrencyUtil;
import haveno.core.locale.Res;
@@ -42,6 +39,9 @@ import haveno.core.trade.handlers.TradeResultHandler;
import haveno.core.user.Preferences;
import haveno.core.user.User;
import haveno.core.util.VolumeUtil;
+import haveno.core.xmr.listeners.XmrBalanceListener;
+import haveno.core.xmr.model.XmrAddressEntry;
+import haveno.core.xmr.wallet.XmrWalletService;
import haveno.desktop.Navigation;
import haveno.desktop.main.offer.OfferDataModel;
import haveno.desktop.main.offer.offerbook.OfferBook;
diff --git a/desktop/src/main/java/haveno/desktop/main/offer/takeoffer/TakeOfferViewModel.java b/desktop/src/main/java/haveno/desktop/main/offer/takeoffer/TakeOfferViewModel.java
index 9aec8305..1f7b722f 100644
--- a/desktop/src/main/java/haveno/desktop/main/offer/takeoffer/TakeOfferViewModel.java
+++ b/desktop/src/main/java/haveno/desktop/main/offer/takeoffer/TakeOfferViewModel.java
@@ -19,7 +19,6 @@ package haveno.desktop.main.offer.takeoffer;
import haveno.common.UserThread;
import haveno.core.account.witness.AccountAgeWitnessService;
-import haveno.core.btc.wallet.Restrictions;
import haveno.core.locale.Res;
import haveno.core.monetary.Price;
import haveno.core.offer.Offer;
@@ -36,6 +35,7 @@ import haveno.core.util.VolumeUtil;
import haveno.core.util.coin.CoinFormatter;
import haveno.core.util.coin.CoinUtil;
import haveno.core.util.validation.InputValidator;
+import haveno.core.xmr.wallet.Restrictions;
import haveno.desktop.Navigation;
import haveno.desktop.common.model.ActivatableWithDataModel;
import haveno.desktop.common.model.ViewModel;
diff --git a/desktop/src/main/java/haveno/desktop/main/overlays/windows/BtcEmptyWalletWindow.java b/desktop/src/main/java/haveno/desktop/main/overlays/windows/BtcEmptyWalletWindow.java
index 6651d3b8..9412733c 100644
--- a/desktop/src/main/java/haveno/desktop/main/overlays/windows/BtcEmptyWalletWindow.java
+++ b/desktop/src/main/java/haveno/desktop/main/overlays/windows/BtcEmptyWalletWindow.java
@@ -11,12 +11,12 @@ import org.bitcoinj.core.InsufficientMoneyException;
import com.google.inject.Inject;
import haveno.common.UserThread;
import haveno.core.api.CoreMoneroConnectionsService;
-import haveno.core.btc.wallet.BtcWalletService;
-import haveno.core.btc.wallet.Restrictions;
import haveno.core.locale.Res;
import haveno.core.offer.OpenOfferManager;
import haveno.core.util.FormattingUtils;
import haveno.core.util.coin.CoinFormatter;
+import haveno.core.xmr.wallet.BtcWalletService;
+import haveno.core.xmr.wallet.Restrictions;
import haveno.desktop.components.AutoTooltipButton;
import haveno.desktop.components.InputTextField;
import haveno.desktop.main.overlays.Overlay;
diff --git a/desktop/src/main/java/haveno/desktop/main/overlays/windows/DisputeSummaryWindow.java b/desktop/src/main/java/haveno/desktop/main/overlays/windows/DisputeSummaryWindow.java
index 49328473..997b5f43 100644
--- a/desktop/src/main/java/haveno/desktop/main/overlays/windows/DisputeSummaryWindow.java
+++ b/desktop/src/main/java/haveno/desktop/main/overlays/windows/DisputeSummaryWindow.java
@@ -27,8 +27,6 @@ import haveno.common.handlers.ResultHandler;
import haveno.common.util.Tuple2;
import haveno.common.util.Tuple3;
import haveno.core.api.CoreDisputesService;
-import haveno.core.btc.wallet.TradeWalletService;
-import haveno.core.btc.wallet.XmrWalletService;
import haveno.core.locale.Res;
import haveno.core.support.SupportType;
import haveno.core.support.dispute.Dispute;
@@ -45,6 +43,8 @@ import haveno.core.trade.TradeManager;
import haveno.core.util.FormattingUtils;
import haveno.core.util.VolumeUtil;
import haveno.core.util.coin.CoinFormatter;
+import haveno.core.xmr.wallet.TradeWalletService;
+import haveno.core.xmr.wallet.XmrWalletService;
import haveno.desktop.components.AutoTooltipRadioButton;
import haveno.desktop.components.HavenoTextArea;
import haveno.desktop.components.InputTextField;
diff --git a/desktop/src/main/java/haveno/desktop/main/overlays/windows/ManualPayoutTxWindow.java b/desktop/src/main/java/haveno/desktop/main/overlays/windows/ManualPayoutTxWindow.java
index 63e3e372..186947db 100644
--- a/desktop/src/main/java/haveno/desktop/main/overlays/windows/ManualPayoutTxWindow.java
+++ b/desktop/src/main/java/haveno/desktop/main/overlays/windows/ManualPayoutTxWindow.java
@@ -39,12 +39,6 @@ import haveno.common.util.Base64;
import haveno.common.util.Tuple2;
import haveno.common.util.Utilities;
import haveno.core.api.CoreMoneroConnectionsService;
-import haveno.core.btc.exceptions.TransactionVerificationException;
-import haveno.core.btc.exceptions.TxBroadcastException;
-import haveno.core.btc.exceptions.WalletException;
-import haveno.core.btc.wallet.TradeWalletService;
-import haveno.core.btc.wallet.TxBroadcaster;
-import haveno.core.btc.wallet.WalletsManager;
import haveno.core.locale.Res;
import haveno.core.payment.validation.LengthValidator;
import haveno.core.payment.validation.PercentageNumberValidator;
@@ -52,6 +46,12 @@ import haveno.core.support.dispute.Dispute;
import haveno.core.support.dispute.mediation.MediationManager;
import haveno.core.user.BlockChainExplorer;
import haveno.core.user.Preferences;
+import haveno.core.xmr.exceptions.TransactionVerificationException;
+import haveno.core.xmr.exceptions.TxBroadcastException;
+import haveno.core.xmr.exceptions.WalletException;
+import haveno.core.xmr.wallet.TradeWalletService;
+import haveno.core.xmr.wallet.TxBroadcaster;
+import haveno.core.xmr.wallet.WalletsManager;
import haveno.desktop.components.AutoTooltipButton;
import haveno.desktop.components.HavenoTextArea;
import haveno.desktop.components.InputTextField;
diff --git a/desktop/src/main/java/haveno/desktop/main/overlays/windows/ShowWalletDataWindow.java b/desktop/src/main/java/haveno/desktop/main/overlays/windows/ShowWalletDataWindow.java
index d9ea467e..7e52919d 100644
--- a/desktop/src/main/java/haveno/desktop/main/overlays/windows/ShowWalletDataWindow.java
+++ b/desktop/src/main/java/haveno/desktop/main/overlays/windows/ShowWalletDataWindow.java
@@ -22,8 +22,8 @@ import static haveno.desktop.util.FormBuilder.addTopLabelTextArea;
import haveno.common.util.Tuple2;
import haveno.common.util.Utilities;
-import haveno.core.btc.wallet.WalletsManager;
import haveno.core.locale.Res;
+import haveno.core.xmr.wallet.WalletsManager;
import haveno.desktop.main.overlays.Overlay;
import javafx.scene.Scene;
import javafx.scene.control.CheckBox;
diff --git a/desktop/src/main/java/haveno/desktop/main/overlays/windows/TradeDetailsWindow.java b/desktop/src/main/java/haveno/desktop/main/overlays/windows/TradeDetailsWindow.java
index 9df3dd11..3c162816 100644
--- a/desktop/src/main/java/haveno/desktop/main/overlays/windows/TradeDetailsWindow.java
+++ b/desktop/src/main/java/haveno/desktop/main/overlays/windows/TradeDetailsWindow.java
@@ -21,7 +21,6 @@ import haveno.common.UserThread;
import haveno.common.util.Tuple3;
import haveno.common.util.Utilities;
import haveno.core.account.witness.AccountAgeWitnessService;
-import haveno.core.btc.wallet.BtcWalletService;
import haveno.core.locale.Res;
import haveno.core.offer.Offer;
import haveno.core.payment.payload.PaymentAccountPayload;
@@ -34,6 +33,7 @@ import haveno.core.trade.txproof.AssetTxProofResult;
import haveno.core.util.FormattingUtils;
import haveno.core.util.VolumeUtil;
import haveno.core.util.coin.CoinFormatter;
+import haveno.core.xmr.wallet.BtcWalletService;
import haveno.desktop.components.HavenoTextArea;
import haveno.desktop.main.MainView;
import haveno.desktop.main.overlays.Overlay;
diff --git a/desktop/src/main/java/haveno/desktop/main/overlays/windows/WalletPasswordWindow.java b/desktop/src/main/java/haveno/desktop/main/overlays/windows/WalletPasswordWindow.java
index 4bc1dff4..1da06178 100644
--- a/desktop/src/main/java/haveno/desktop/main/overlays/windows/WalletPasswordWindow.java
+++ b/desktop/src/main/java/haveno/desktop/main/overlays/windows/WalletPasswordWindow.java
@@ -29,9 +29,9 @@ import haveno.common.config.Config;
import haveno.common.crypto.IncorrectPasswordException;
import haveno.common.util.Tuple2;
import haveno.core.api.CoreAccountService;
-import haveno.core.btc.wallet.WalletsManager;
import haveno.core.locale.Res;
import haveno.core.offer.OpenOfferManager;
+import haveno.core.xmr.wallet.WalletsManager;
import haveno.desktop.components.AutoTooltipButton;
import haveno.desktop.components.AutoTooltipLabel;
import haveno.desktop.components.BusyAnimation;
diff --git a/desktop/src/main/java/haveno/desktop/main/portfolio/duplicateoffer/DuplicateOfferDataModel.java b/desktop/src/main/java/haveno/desktop/main/portfolio/duplicateoffer/DuplicateOfferDataModel.java
index 9d06bfb6..28881f0b 100644
--- a/desktop/src/main/java/haveno/desktop/main/portfolio/duplicateoffer/DuplicateOfferDataModel.java
+++ b/desktop/src/main/java/haveno/desktop/main/portfolio/duplicateoffer/DuplicateOfferDataModel.java
@@ -20,8 +20,6 @@ package haveno.desktop.main.portfolio.duplicateoffer;
import com.google.inject.Inject;
import haveno.core.account.witness.AccountAgeWitnessService;
-import haveno.core.btc.wallet.Restrictions;
-import haveno.core.btc.wallet.XmrWalletService;
import haveno.core.locale.CurrencyUtil;
import haveno.core.locale.TradeCurrency;
import haveno.core.offer.CreateOfferService;
@@ -36,6 +34,8 @@ import haveno.core.user.User;
import haveno.core.util.FormattingUtils;
import haveno.core.util.coin.CoinFormatter;
import haveno.core.util.coin.CoinUtil;
+import haveno.core.xmr.wallet.Restrictions;
+import haveno.core.xmr.wallet.XmrWalletService;
import haveno.desktop.Navigation;
import haveno.desktop.main.offer.MutableOfferDataModel;
import haveno.network.p2p.P2PService;
diff --git a/desktop/src/main/java/haveno/desktop/main/portfolio/editoffer/EditOfferDataModel.java b/desktop/src/main/java/haveno/desktop/main/portfolio/editoffer/EditOfferDataModel.java
index c6461996..6e43c2f4 100644
--- a/desktop/src/main/java/haveno/desktop/main/portfolio/editoffer/EditOfferDataModel.java
+++ b/desktop/src/main/java/haveno/desktop/main/portfolio/editoffer/EditOfferDataModel.java
@@ -22,8 +22,6 @@ import com.google.inject.Inject;
import haveno.common.handlers.ErrorMessageHandler;
import haveno.common.handlers.ResultHandler;
import haveno.core.account.witness.AccountAgeWitnessService;
-import haveno.core.btc.wallet.Restrictions;
-import haveno.core.btc.wallet.XmrWalletService;
import haveno.core.locale.CurrencyUtil;
import haveno.core.locale.TradeCurrency;
import haveno.core.offer.CreateOfferService;
@@ -42,6 +40,8 @@ import haveno.core.user.User;
import haveno.core.util.FormattingUtils;
import haveno.core.util.coin.CoinFormatter;
import haveno.core.util.coin.CoinUtil;
+import haveno.core.xmr.wallet.Restrictions;
+import haveno.core.xmr.wallet.XmrWalletService;
import haveno.desktop.Navigation;
import haveno.desktop.main.offer.MutableOfferDataModel;
import haveno.network.p2p.P2PService;
diff --git a/desktop/src/main/java/haveno/desktop/main/portfolio/failedtrades/FailedTradesView.java b/desktop/src/main/java/haveno/desktop/main/portfolio/failedtrades/FailedTradesView.java
index 52967534..8abeecca 100644
--- a/desktop/src/main/java/haveno/desktop/main/portfolio/failedtrades/FailedTradesView.java
+++ b/desktop/src/main/java/haveno/desktop/main/portfolio/failedtrades/FailedTradesView.java
@@ -23,12 +23,12 @@ import javax.inject.Inject;
import de.jensd.fx.fontawesome.AwesomeIcon;
import haveno.common.util.Utilities;
-import haveno.core.btc.wallet.XmrWalletService;
import haveno.core.locale.Res;
import haveno.core.offer.Offer;
import haveno.core.trade.Contract;
import haveno.core.trade.HavenoUtils;
import haveno.core.trade.Trade;
+import haveno.core.xmr.wallet.XmrWalletService;
import haveno.desktop.common.view.ActivatableViewAndModel;
import haveno.desktop.common.view.FxmlView;
import haveno.desktop.components.AutoTooltipButton;
diff --git a/desktop/src/main/java/haveno/desktop/main/portfolio/pendingtrades/PendingTradesDataModel.java b/desktop/src/main/java/haveno/desktop/main/portfolio/pendingtrades/PendingTradesDataModel.java
index b7c2fe7c..cccfa671 100644
--- a/desktop/src/main/java/haveno/desktop/main/portfolio/pendingtrades/PendingTradesDataModel.java
+++ b/desktop/src/main/java/haveno/desktop/main/portfolio/pendingtrades/PendingTradesDataModel.java
@@ -29,7 +29,6 @@ import haveno.common.handlers.ResultHandler;
import haveno.core.account.witness.AccountAgeWitnessService;
import haveno.core.api.CoreDisputesService;
import haveno.core.api.CoreMoneroConnectionsService;
-import haveno.core.btc.wallet.XmrWalletService;
import haveno.core.locale.Res;
import haveno.core.offer.Offer;
import haveno.core.offer.OfferDirection;
@@ -52,6 +51,7 @@ import haveno.core.trade.protocol.SellerProtocol;
import haveno.core.user.Preferences;
import haveno.core.util.FormattingUtils;
import haveno.core.util.coin.CoinFormatter;
+import haveno.core.xmr.wallet.XmrWalletService;
import haveno.desktop.Navigation;
import haveno.desktop.common.model.ActivatableDataModel;
import haveno.desktop.main.MainView;
diff --git a/desktop/src/main/java/haveno/desktop/main/portfolio/pendingtrades/PendingTradesViewModel.java b/desktop/src/main/java/haveno/desktop/main/portfolio/pendingtrades/PendingTradesViewModel.java
index 53ca70b2..3632771d 100644
--- a/desktop/src/main/java/haveno/desktop/main/portfolio/pendingtrades/PendingTradesViewModel.java
+++ b/desktop/src/main/java/haveno/desktop/main/portfolio/pendingtrades/PendingTradesViewModel.java
@@ -22,7 +22,6 @@ import haveno.common.ClockWatcher;
import haveno.common.UserThread;
import haveno.common.app.DevEnv;
import haveno.core.account.witness.AccountAgeWitnessService;
-import haveno.core.btc.wallet.Restrictions;
import haveno.core.network.MessageState;
import haveno.core.offer.Offer;
import haveno.core.offer.OfferUtil;
@@ -39,6 +38,7 @@ import haveno.core.util.FormattingUtils;
import haveno.core.util.VolumeUtil;
import haveno.core.util.coin.CoinFormatter;
import haveno.core.util.validation.BtcAddressValidator;
+import haveno.core.xmr.wallet.Restrictions;
import haveno.desktop.Navigation;
import haveno.desktop.common.model.ActivatableWithDataModel;
import haveno.desktop.common.model.ViewModel;
diff --git a/desktop/src/main/java/haveno/desktop/main/portfolio/pendingtrades/steps/buyer/BuyerStep4View.java b/desktop/src/main/java/haveno/desktop/main/portfolio/pendingtrades/steps/buyer/BuyerStep4View.java
index bcb76032..082436da 100644
--- a/desktop/src/main/java/haveno/desktop/main/portfolio/pendingtrades/steps/buyer/BuyerStep4View.java
+++ b/desktop/src/main/java/haveno/desktop/main/portfolio/pendingtrades/steps/buyer/BuyerStep4View.java
@@ -22,10 +22,10 @@ import static haveno.desktop.util.FormBuilder.addCompactTopLabelTextField;
import com.jfoenix.controls.JFXBadge;
import haveno.common.UserThread;
import haveno.common.app.DevEnv;
-import haveno.core.btc.model.XmrAddressEntry;
import haveno.core.locale.Res;
import haveno.core.trade.txproof.AssetTxProofResult;
import haveno.core.user.DontShowAgainLookup;
+import haveno.core.xmr.model.XmrAddressEntry;
import haveno.desktop.components.AutoTooltipButton;
import haveno.desktop.components.TitledGroupBg;
import haveno.desktop.main.MainView;
diff --git a/desktop/src/main/java/haveno/desktop/main/presentation/MarketPricePresentation.java b/desktop/src/main/java/haveno/desktop/main/presentation/MarketPricePresentation.java
index ced29a93..e934e56d 100644
--- a/desktop/src/main/java/haveno/desktop/main/presentation/MarketPricePresentation.java
+++ b/desktop/src/main/java/haveno/desktop/main/presentation/MarketPricePresentation.java
@@ -18,7 +18,6 @@
package haveno.desktop.main.presentation;
import haveno.common.UserThread;
-import haveno.core.btc.wallet.XmrWalletService;
import haveno.core.locale.CurrencyUtil;
import haveno.core.locale.Res;
import haveno.core.locale.TradeCurrency;
@@ -26,6 +25,7 @@ import haveno.core.provider.price.MarketPrice;
import haveno.core.provider.price.PriceFeedService;
import haveno.core.user.Preferences;
import haveno.core.util.FormattingUtils;
+import haveno.core.xmr.wallet.XmrWalletService;
import haveno.desktop.components.TxIdTextField;
import haveno.desktop.main.shared.PriceFeedComboBoxItem;
import haveno.desktop.util.GUIUtil;
diff --git a/desktop/src/main/java/haveno/desktop/main/settings/network/NetworkSettingsView.java b/desktop/src/main/java/haveno/desktop/main/settings/network/NetworkSettingsView.java
index 3a425e61..e987b026 100644
--- a/desktop/src/main/java/haveno/desktop/main/settings/network/NetworkSettingsView.java
+++ b/desktop/src/main/java/haveno/desktop/main/settings/network/NetworkSettingsView.java
@@ -20,9 +20,6 @@ package haveno.desktop.main.settings.network;
import haveno.common.ClockWatcher;
import haveno.common.UserThread;
import haveno.core.api.CoreMoneroConnectionsService;
-import haveno.core.btc.nodes.BtcNodes;
-import haveno.core.btc.nodes.LocalBitcoinNode;
-import haveno.core.btc.setup.WalletsSetup;
import haveno.core.filter.Filter;
import haveno.core.filter.FilterManager;
import haveno.core.locale.Res;
@@ -30,6 +27,9 @@ import haveno.core.user.Preferences;
import haveno.core.util.FormattingUtils;
import haveno.core.util.validation.RegexValidator;
import haveno.core.util.validation.RegexValidatorFactory;
+import haveno.core.xmr.nodes.BtcNodes;
+import haveno.core.xmr.nodes.LocalBitcoinNode;
+import haveno.core.xmr.setup.WalletsSetup;
import haveno.desktop.app.HavenoApp;
import haveno.desktop.common.view.ActivatableView;
import haveno.desktop.common.view.FxmlView;
diff --git a/desktop/src/main/java/haveno/desktop/main/settings/preferences/PreferencesView.java b/desktop/src/main/java/haveno/desktop/main/settings/preferences/PreferencesView.java
index 2757c88a..6d4099c8 100644
--- a/desktop/src/main/java/haveno/desktop/main/settings/preferences/PreferencesView.java
+++ b/desktop/src/main/java/haveno/desktop/main/settings/preferences/PreferencesView.java
@@ -25,7 +25,6 @@ import haveno.common.config.Config;
import haveno.common.util.Tuple2;
import haveno.common.util.Tuple3;
import haveno.common.util.Utilities;
-import haveno.core.btc.wallet.Restrictions;
import haveno.core.filter.Filter;
import haveno.core.filter.FilterManager;
import haveno.core.locale.Country;
@@ -48,6 +47,7 @@ import haveno.core.util.coin.CoinFormatter;
import haveno.core.util.validation.IntegerValidator;
import haveno.core.util.validation.RegexValidator;
import haveno.core.util.validation.RegexValidatorFactory;
+import haveno.core.xmr.wallet.Restrictions;
import haveno.desktop.common.view.ActivatableViewAndModel;
import haveno.desktop.common.view.FxmlView;
import haveno.desktop.components.AutoTooltipButton;
diff --git a/desktop/src/main/java/haveno/desktop/main/support/dispute/agent/SignedOfferView.java b/desktop/src/main/java/haveno/desktop/main/support/dispute/agent/SignedOfferView.java
index bdb3b2be..5735cef6 100644
--- a/desktop/src/main/java/haveno/desktop/main/support/dispute/agent/SignedOfferView.java
+++ b/desktop/src/main/java/haveno/desktop/main/support/dispute/agent/SignedOfferView.java
@@ -18,11 +18,11 @@
package haveno.desktop.main.support.dispute.agent;
import haveno.common.UserThread;
-import haveno.core.btc.wallet.XmrWalletService;
import haveno.core.locale.Res;
import haveno.core.offer.OpenOfferManager;
import haveno.core.offer.SignedOffer;
import haveno.core.trade.HavenoUtils;
+import haveno.core.xmr.wallet.XmrWalletService;
import haveno.desktop.common.view.ActivatableView;
import haveno.desktop.common.view.FxmlView;
import haveno.desktop.components.AutoTooltipLabel;
diff --git a/desktop/src/main/java/haveno/desktop/util/GUIUtil.java b/desktop/src/main/java/haveno/desktop/util/GUIUtil.java
index b8d334e6..324fea0f 100644
--- a/desktop/src/main/java/haveno/desktop/util/GUIUtil.java
+++ b/desktop/src/main/java/haveno/desktop/util/GUIUtil.java
@@ -49,7 +49,6 @@ import haveno.core.account.witness.AccountAgeWitness;
import haveno.core.account.witness.AccountAgeWitnessService;
import haveno.core.api.CoreMoneroConnectionsService;
import haveno.core.app.HavenoSetup;
-import haveno.core.btc.wallet.XmrWalletService;
import haveno.core.locale.Country;
import haveno.core.locale.CountryUtil;
import haveno.core.locale.CurrencyUtil;
@@ -64,6 +63,7 @@ import haveno.core.user.Preferences;
import haveno.core.user.User;
import haveno.core.util.FormattingUtils;
import haveno.core.util.coin.CoinFormatter;
+import haveno.core.xmr.wallet.XmrWalletService;
import haveno.desktop.Navigation;
import haveno.desktop.app.HavenoApp;
import haveno.desktop.components.AutoTooltipLabel;
diff --git a/desktop/src/test/java/haveno/desktop/main/funds/transactions/DisplayedTransactionsTest.java b/desktop/src/test/java/haveno/desktop/main/funds/transactions/DisplayedTransactionsTest.java
index 814997ae..95a9ec59 100644
--- a/desktop/src/test/java/haveno/desktop/main/funds/transactions/DisplayedTransactionsTest.java
+++ b/desktop/src/test/java/haveno/desktop/main/funds/transactions/DisplayedTransactionsTest.java
@@ -18,7 +18,7 @@
package haveno.desktop.main.funds.transactions;
import com.google.common.collect.Lists;
-import haveno.core.btc.wallet.XmrWalletService;
+import haveno.core.xmr.wallet.XmrWalletService;
import haveno.desktop.main.funds.transactions.DisplayedTransactions;
import haveno.desktop.main.funds.transactions.TradableRepository;
import haveno.desktop.main.funds.transactions.TransactionAwareTradable;
diff --git a/desktop/src/test/java/haveno/desktop/main/funds/transactions/TransactionAwareTradeTest.java b/desktop/src/test/java/haveno/desktop/main/funds/transactions/TransactionAwareTradeTest.java
index 00544dbd..d661d2fc 100644
--- a/desktop/src/test/java/haveno/desktop/main/funds/transactions/TransactionAwareTradeTest.java
+++ b/desktop/src/test/java/haveno/desktop/main/funds/transactions/TransactionAwareTradeTest.java
@@ -31,11 +31,11 @@ import static org.mockito.Mockito.RETURNS_DEEP_STUBS;
import static org.mockito.Mockito.mock;
import static org.mockito.Mockito.when;
-import haveno.core.btc.wallet.XmrWalletService;
import haveno.core.support.dispute.Dispute;
import haveno.core.support.dispute.arbitration.ArbitrationManager;
import haveno.core.support.dispute.refund.RefundManager;
import haveno.core.trade.Trade;
+import haveno.core.xmr.wallet.XmrWalletService;
import haveno.desktop.main.funds.transactions.TransactionAwareTradable;
import haveno.desktop.main.funds.transactions.TransactionAwareTrade;
import monero.wallet.model.MoneroTxWallet;
diff --git a/desktop/src/test/java/haveno/desktop/main/offer/createoffer/CreateOfferDataModelTest.java b/desktop/src/test/java/haveno/desktop/main/offer/createoffer/CreateOfferDataModelTest.java
index c22340d8..0eb6b90e 100644
--- a/desktop/src/test/java/haveno/desktop/main/offer/createoffer/CreateOfferDataModelTest.java
+++ b/desktop/src/test/java/haveno/desktop/main/offer/createoffer/CreateOfferDataModelTest.java
@@ -14,8 +14,6 @@ import static org.mockito.ArgumentMatchers.anyString;
import static org.mockito.Mockito.mock;
import static org.mockito.Mockito.when;
-import haveno.core.btc.model.XmrAddressEntry;
-import haveno.core.btc.wallet.XmrWalletService;
import haveno.core.locale.CryptoCurrency;
import haveno.core.locale.FiatCurrency;
import haveno.core.locale.GlobalSettings;
@@ -30,6 +28,8 @@ import haveno.core.provider.price.PriceFeedService;
import haveno.core.trade.statistics.TradeStatisticsManager;
import haveno.core.user.Preferences;
import haveno.core.user.User;
+import haveno.core.xmr.model.XmrAddressEntry;
+import haveno.core.xmr.wallet.XmrWalletService;
import haveno.desktop.main.offer.createoffer.CreateOfferDataModel;
public class CreateOfferDataModelTest {
diff --git a/desktop/src/test/java/haveno/desktop/main/offer/createoffer/CreateOfferViewModelTest.java b/desktop/src/test/java/haveno/desktop/main/offer/createoffer/CreateOfferViewModelTest.java
index b3811a6b..38fc2544 100644
--- a/desktop/src/test/java/haveno/desktop/main/offer/createoffer/CreateOfferViewModelTest.java
+++ b/desktop/src/test/java/haveno/desktop/main/offer/createoffer/CreateOfferViewModelTest.java
@@ -19,8 +19,6 @@ package haveno.desktop.main.offer.createoffer;
import haveno.common.config.Config;
import haveno.core.account.witness.AccountAgeWitnessService;
-import haveno.core.btc.model.XmrAddressEntry;
-import haveno.core.btc.wallet.XmrWalletService;
import haveno.core.locale.Country;
import haveno.core.locale.CryptoCurrency;
import haveno.core.locale.GlobalSettings;
@@ -42,6 +40,8 @@ import haveno.core.util.coin.ImmutableCoinFormatter;
import haveno.core.util.validation.AltcoinValidator;
import haveno.core.util.validation.FiatPriceValidator;
import haveno.core.util.validation.InputValidator;
+import haveno.core.xmr.model.XmrAddressEntry;
+import haveno.core.xmr.wallet.XmrWalletService;
import haveno.desktop.main.offer.createoffer.CreateOfferDataModel;
import haveno.desktop.main.offer.createoffer.CreateOfferViewModel;
import javafx.beans.property.SimpleIntegerProperty;
diff --git a/desktop/src/test/java/haveno/desktop/maker/PreferenceMakers.java b/desktop/src/test/java/haveno/desktop/maker/PreferenceMakers.java
index 6ea48cf8..0b3fd0a7 100644
--- a/desktop/src/test/java/haveno/desktop/maker/PreferenceMakers.java
+++ b/desktop/src/test/java/haveno/desktop/maker/PreferenceMakers.java
@@ -22,8 +22,8 @@ import com.natpryce.makeiteasy.Property;
import com.natpryce.makeiteasy.SameValueDonor;
import haveno.common.config.Config;
import haveno.common.persistence.PersistenceManager;
-import haveno.core.btc.nodes.LocalBitcoinNode;
import haveno.core.user.Preferences;
+import haveno.core.xmr.nodes.LocalBitcoinNode;
import static com.natpryce.makeiteasy.MakeItEasy.a;
import static com.natpryce.makeiteasy.MakeItEasy.make;