diff --git a/cw_bitcoin/lib/bitcoin_wallet.dart b/cw_bitcoin/lib/bitcoin_wallet.dart
index 326251428..1d29307ca 100644
--- a/cw_bitcoin/lib/bitcoin_wallet.dart
+++ b/cw_bitcoin/lib/bitcoin_wallet.dart
@@ -31,8 +31,10 @@ abstract class BitcoinWalletBase extends ElectrumWallet with Store {
     ElectrumBalance? initialBalance,
     Map<String, int>? initialRegularAddressIndex,
     Map<String, int>? initialChangeAddressIndex,
+    String? passphrase,
   }) : super(
             mnemonic: mnemonic,
+            passphrase: passphrase,
             password: password,
             walletInfo: walletInfo,
             unspentCoinsInfo: unspentCoinsInfo,
@@ -94,6 +96,7 @@ abstract class BitcoinWalletBase extends ElectrumWallet with Store {
     }
     return BitcoinWallet(
       mnemonic: mnemonic,
+      passphrase: passphrase ?? "",
       password: password,
       walletInfo: walletInfo,
       unspentCoinsInfo: unspentCoinsInfo,
@@ -134,13 +137,17 @@ abstract class BitcoinWalletBase extends ElectrumWallet with Store {
         break;
       case DerivationType.bip39:
       default:
-        seedBytes = await bip39.mnemonicToSeed(snp.mnemonic);
+        seedBytes = await bip39.mnemonicToSeed(
+          snp.mnemonic,
+          passphrase: snp.passphrase ?? '',
+        );
         break;
     }
 
     return BitcoinWallet(
       mnemonic: snp.mnemonic,
       password: password,
+      passphrase: snp.passphrase,
       walletInfo: walletInfo,
       unspentCoinsInfo: unspentCoinsInfo,
       initialAddresses: snp.addresses,
diff --git a/cw_bitcoin/lib/electrum_wallet.dart b/cw_bitcoin/lib/electrum_wallet.dart
index 73bf25452..655c8ab74 100644
--- a/cw_bitcoin/lib/electrum_wallet.dart
+++ b/cw_bitcoin/lib/electrum_wallet.dart
@@ -55,6 +55,7 @@ abstract class ElectrumWalletBase
       required this.networkType,
       required this.mnemonic,
       required Uint8List seedBytes,
+      this.passphrase,
       List<BitcoinAddressRecord>? initialAddresses,
       ElectrumClient? electrumClient,
       ElectrumBalance? initialBalance,
@@ -93,6 +94,7 @@ abstract class ElectrumWalletBase
 
   final bitcoin.HDWallet hd;
   final String mnemonic;
+  final String? passphrase;
 
   @override
   @observable
@@ -586,6 +588,7 @@ abstract class ElectrumWalletBase
 
   String toJSON() => json.encode({
         'mnemonic': mnemonic,
+        'passphrase': passphrase ?? '',
         'account_index': walletAddresses.currentReceiveAddressIndexByType,
         'change_address_index': walletAddresses.currentChangeAddressIndexByType,
         'addresses': walletAddresses.allAddresses.map((addr) => addr.toJSON()).toList(),
diff --git a/cw_bitcoin/lib/electrum_wallet_snapshot.dart b/cw_bitcoin/lib/electrum_wallet_snapshot.dart
index e8e8c6777..218792e3c 100644
--- a/cw_bitcoin/lib/electrum_wallet_snapshot.dart
+++ b/cw_bitcoin/lib/electrum_wallet_snapshot.dart
@@ -18,6 +18,7 @@ class ElectrumWalletSnapshot {
     required this.regularAddressIndex,
     required this.changeAddressIndex,
     required this.addressPageType,
+    this.passphrase,
     this.derivationType,
     this.derivationPath,
   });
@@ -32,6 +33,7 @@ class ElectrumWalletSnapshot {
   ElectrumBalance balance;
   Map<String, int> regularAddressIndex;
   Map<String, int> changeAddressIndex;
+  String? passphrase;
   DerivationType? derivationType;
   String? derivationPath;
 
@@ -42,6 +44,7 @@ class ElectrumWalletSnapshot {
     final data = json.decode(jsonSource) as Map;
     final addressesTmp = data['addresses'] as List? ?? <Object>[];
     final mnemonic = data['mnemonic'] as String;
+    final passphrase = data['passphrase'] as String? ?? '';
     final addresses = addressesTmp
         .whereType<String>()
         .map((addr) => BitcoinAddressRecord.fromJSON(addr, network))
@@ -74,6 +77,7 @@ class ElectrumWalletSnapshot {
       name: name,
       type: type,
       password: password,
+      passphrase: passphrase,
       mnemonic: mnemonic,
       addresses: addresses,
       balance: balance,
diff --git a/res/values/strings_ar.arb b/res/values/strings_ar.arb
index 54c78c6b6..16a87a850 100644
--- a/res/values/strings_ar.arb
+++ b/res/values/strings_ar.arb
@@ -411,7 +411,7 @@
   "outputs": "المخرجات",
   "overwrite_amount": "تغير المبلغ",
   "pairingInvalidEvent": "ﺢﻟﺎﺻ ﺮﻴﻏ ﺙﺪﺣ ﻥﺍﺮﻗﺇ",
-  "passphrase": "عبارة الممر",
+  "passphrase": "عبارة الممر (اختياري)",
   "password": "كلمة المرور",
   "paste": "لصق",
   "pause_wallet_creation": ".ﺎﻴًﻟﺎﺣ ﺎﺘًﻗﺆﻣ ﺔﻔﻗﻮﺘﻣ Haven Wallet ءﺎﺸﻧﺇ ﻰﻠﻋ ﺓﺭﺪﻘﻟﺍ",
diff --git a/res/values/strings_bg.arb b/res/values/strings_bg.arb
index ee8b47f1a..4e92cd707 100644
--- a/res/values/strings_bg.arb
+++ b/res/values/strings_bg.arb
@@ -411,7 +411,7 @@
   "outputs": "Изходи",
   "overwrite_amount": "Промени сума",
   "pairingInvalidEvent": "Невалидно събитие при сдвояване",
-  "passphrase": "Парола",
+  "passphrase": "Passphrase (по избор)",
   "password": "Парола",
   "paste": "Поставяне",
   "pause_wallet_creation": "Възможността за създаване на Haven Wallet в момента е на пауза.",
diff --git a/res/values/strings_cs.arb b/res/values/strings_cs.arb
index 25cdb8234..95fdc2a93 100644
--- a/res/values/strings_cs.arb
+++ b/res/values/strings_cs.arb
@@ -411,7 +411,7 @@
   "outputs": "Výstupy",
   "overwrite_amount": "Přepsat částku",
   "pairingInvalidEvent": "Neplatná událost párování",
-  "passphrase": "Passphrase",
+  "passphrase": "Passphrase (volitelné)",
   "password": "Heslo",
   "paste": "Vložit",
   "pause_wallet_creation": "Možnost vytvářet Haven Wallet je momentálně pozastavena.",
diff --git a/res/values/strings_de.arb b/res/values/strings_de.arb
index 1b1f72d6f..d2731d3e7 100644
--- a/res/values/strings_de.arb
+++ b/res/values/strings_de.arb
@@ -411,7 +411,7 @@
   "outputs": "Ausgänge",
   "overwrite_amount": "Overwrite amount",
   "pairingInvalidEvent": "Paarung ungültiges Ereignis",
-  "passphrase": "Passphrase",
+  "passphrase": "Passphrase (optional)",
   "password": "Passwort",
   "paste": "Einfügen",
   "pause_wallet_creation": "Die Möglichkeit, Haven Wallet zu erstellen, ist derzeit pausiert.",
diff --git a/res/values/strings_en.arb b/res/values/strings_en.arb
index 906ab511c..8c302d096 100644
--- a/res/values/strings_en.arb
+++ b/res/values/strings_en.arb
@@ -411,7 +411,7 @@
   "outputs": "Outputs",
   "overwrite_amount": "Overwrite amount",
   "pairingInvalidEvent": "Pairing Invalid Event",
-  "passphrase": "Passphrase",
+  "passphrase": "Passphrase (Optional)",
   "password": "Password",
   "paste": "Paste",
   "pause_wallet_creation": "Ability to create Haven Wallet is currently paused.",
diff --git a/res/values/strings_es.arb b/res/values/strings_es.arb
index 894e757dd..17c4ff681 100644
--- a/res/values/strings_es.arb
+++ b/res/values/strings_es.arb
@@ -411,7 +411,7 @@
   "outputs": "Salidas",
   "overwrite_amount": "Overwrite amount",
   "pairingInvalidEvent": "Evento de emparejamiento no válido",
-  "passphrase": "Frase",
+  "passphrase": "Passfrase (opcional)",
   "password": "Contraseña",
   "paste": "Pegar",
   "pause_wallet_creation": "La capacidad para crear Haven Wallet está actualmente pausada.",
diff --git a/res/values/strings_fr.arb b/res/values/strings_fr.arb
index 029e83ca6..12716ab33 100644
--- a/res/values/strings_fr.arb
+++ b/res/values/strings_fr.arb
@@ -411,7 +411,7 @@
   "outputs": "Les sorties",
   "overwrite_amount": "Remplacer le montant",
   "pairingInvalidEvent": "Événement de couplage non valide",
-  "passphrase": "Phrase secrète",
+  "passphrase": "Phrase de passe (facultative)",
   "password": "Mot de passe",
   "paste": "Coller",
   "pause_wallet_creation": "La possibilité de créer Haven Wallet est actuellement suspendue.",
diff --git a/res/values/strings_ha.arb b/res/values/strings_ha.arb
index 0d635dfc2..29754cf72 100644
--- a/res/values/strings_ha.arb
+++ b/res/values/strings_ha.arb
@@ -413,7 +413,7 @@
   "outputs": "Abubuwan fashewa",
   "overwrite_amount": "Rubuta adadin",
   "pairingInvalidEvent": "Haɗa Lamarin mara inganci",
-  "passphrase": "Mashiganya",
+  "passphrase": "Passphrase (Zabi)",
   "password": "Kalmar wucewa",
   "paste": "Manna",
   "pause_wallet_creation": "A halin yanzu an dakatar da ikon ƙirƙirar Haven Wallet.",
diff --git a/res/values/strings_hi.arb b/res/values/strings_hi.arb
index 8a916de8b..278adde0f 100644
--- a/res/values/strings_hi.arb
+++ b/res/values/strings_hi.arb
@@ -411,7 +411,7 @@
   "outputs": "आउटपुट",
   "overwrite_amount": "Overwrite amount",
   "pairingInvalidEvent": "अमान्य ईवेंट युग्मित करना",
-  "passphrase": "पदबंध",
+  "passphrase": "पासफ्रेज़ (वैकल्पिक)",
   "password": "पारण शब्द",
   "paste": "पेस्ट करें",
   "pause_wallet_creation": "हेवन वॉलेट बनाने की क्षमता फिलहाल रुकी हुई है।",
diff --git a/res/values/strings_hr.arb b/res/values/strings_hr.arb
index db6a1dd9a..7940b1add 100644
--- a/res/values/strings_hr.arb
+++ b/res/values/strings_hr.arb
@@ -411,7 +411,7 @@
   "outputs": "Izlazi",
   "overwrite_amount": "Overwrite amount",
   "pairingInvalidEvent": "Nevažeći događaj uparivanja",
-  "passphrase": "Prolazna fraza",
+  "passphrase": "Prolaznica (neobavezno)",
   "password": "Lozinka",
   "paste": "Zalijepi",
   "pause_wallet_creation": "Mogućnost stvaranja novčanika Haven trenutno je pauzirana.",
diff --git a/res/values/strings_id.arb b/res/values/strings_id.arb
index 075eb7ef6..8177afdc2 100644
--- a/res/values/strings_id.arb
+++ b/res/values/strings_id.arb
@@ -413,7 +413,7 @@
   "outputs": "Output",
   "overwrite_amount": "Timpa jumlah",
   "pairingInvalidEvent": "Menyandingkan Acara Tidak Valid",
-  "passphrase": "Frasa sandi",
+  "passphrase": "Frasa sandi (opsional)",
   "password": "Kata Sandi",
   "paste": "Tempel",
   "pause_wallet_creation": "Kemampuan untuk membuat Haven Wallet saat ini dijeda.",
diff --git a/res/values/strings_it.arb b/res/values/strings_it.arb
index 4c63c3ac6..4cc08f9b1 100644
--- a/res/values/strings_it.arb
+++ b/res/values/strings_it.arb
@@ -413,7 +413,7 @@
   "outputs": "Output",
   "overwrite_amount": "Sovrascrivi quantità",
   "pairingInvalidEvent": "Associazione evento non valido",
-  "passphrase": "Frase d'accesso",
+  "passphrase": "Passphrase (opzionale)",
   "password": "Password",
   "paste": "Incolla",
   "pause_wallet_creation": "La possibilità di creare Haven Wallet è attualmente sospesa.",
diff --git a/res/values/strings_ja.arb b/res/values/strings_ja.arb
index 169951f68..a72bbb0e4 100644
--- a/res/values/strings_ja.arb
+++ b/res/values/strings_ja.arb
@@ -412,7 +412,7 @@
   "outputs": "出力",
   "overwrite_amount": "Overwrite amount",
   "pairingInvalidEvent": "ペアリング無効イベント",
-  "passphrase": "パスフレーズ",
+  "passphrase": "パスフレーズ(オプション)",
   "password": "パスワード",
   "paste": "ペースト",
   "pause_wallet_creation": "Haven Wallet を作成する機能は現在一時停止されています。",
diff --git a/res/values/strings_ko.arb b/res/values/strings_ko.arb
index e3d05d110..b80494e80 100644
--- a/res/values/strings_ko.arb
+++ b/res/values/strings_ko.arb
@@ -411,7 +411,7 @@
   "outputs": "출력",
   "overwrite_amount": "Overwrite amount",
   "pairingInvalidEvent": "잘못된 이벤트 페어링",
-  "passphrase": "패스 프레이즈",
+  "passphrase": "암호화 (선택 사항)",
   "password": "암호",
   "paste": "풀",
   "pause_wallet_creation": "Haven Wallet 생성 기능이 현재 일시 중지되었습니다.",
diff --git a/res/values/strings_my.arb b/res/values/strings_my.arb
index 98c79dbdb..97a22d807 100644
--- a/res/values/strings_my.arb
+++ b/res/values/strings_my.arb
@@ -411,7 +411,7 @@
   "outputs": "ထုတ်လုပ်မှု",
   "overwrite_amount": "ပမာဏကို ထပ်ရေးပါ။",
   "pairingInvalidEvent": "မမှန်ကန်သောဖြစ်ရပ်ကို တွဲချိတ်ခြင်း။",
-  "passphrase": "စကားဝှက်PPRase",
+  "passphrase": "passphrase (optional)",
   "password": "စကားဝှက်",
   "paste": "ငါးပိ",
   "pause_wallet_creation": "Haven Wallet ဖန်တီးနိုင်မှုကို လောလောဆယ် ခေတ္တရပ်ထားသည်။",
diff --git a/res/values/strings_nl.arb b/res/values/strings_nl.arb
index c666a6804..a64e264c0 100644
--- a/res/values/strings_nl.arb
+++ b/res/values/strings_nl.arb
@@ -411,7 +411,7 @@
   "outputs": "Uitgangen",
   "overwrite_amount": "Overwrite amount",
   "pairingInvalidEvent": "Koppelen Ongeldige gebeurtenis",
-  "passphrase": "Wachtwoordzin",
+  "passphrase": "PassaspHRASE (optioneel)",
   "password": "Wachtwoord",
   "paste": "Plakken",
   "pause_wallet_creation": "De mogelijkheid om Haven Wallet te maken is momenteel onderbroken.",
diff --git a/res/values/strings_pl.arb b/res/values/strings_pl.arb
index 7a6df0439..109a800ad 100644
--- a/res/values/strings_pl.arb
+++ b/res/values/strings_pl.arb
@@ -411,7 +411,7 @@
   "outputs": "Wyjścia",
   "overwrite_amount": "Nadpisz ilość",
   "pairingInvalidEvent": "Nieprawidłowe zdarzenie parowania",
-  "passphrase": "Fraza",
+  "passphrase": "PassPhraza (opcjonalnie)",
   "password": "Hasło",
   "paste": "Wklej",
   "pause_wallet_creation": "Możliwość utworzenia Portfela Haven jest obecnie wstrzymana.",
diff --git a/res/values/strings_pt.arb b/res/values/strings_pt.arb
index b511f7e5b..2d877794a 100644
--- a/res/values/strings_pt.arb
+++ b/res/values/strings_pt.arb
@@ -413,7 +413,7 @@
   "outputs": "Saídas",
   "overwrite_amount": "Overwrite amount",
   "pairingInvalidEvent": "Emparelhamento de evento inválido",
-  "passphrase": "Senha",
+  "passphrase": "Senha (opcional)",
   "password": "Senha",
   "paste": "Colar",
   "pause_wallet_creation": "A capacidade de criar a Haven Wallet está atualmente pausada.",
diff --git a/res/values/strings_ru.arb b/res/values/strings_ru.arb
index 4dbe32251..e6141c29b 100644
--- a/res/values/strings_ru.arb
+++ b/res/values/strings_ru.arb
@@ -412,7 +412,7 @@
   "outputs": "Выходы",
   "overwrite_amount": "Overwrite amount",
   "pairingInvalidEvent": "Недействительное событие сопряжения",
-  "passphrase": "Пасфраза",
+  "passphrase": "Passfrase (необязательно)",
   "password": "Пароль",
   "paste": "Вставить",
   "pause_wallet_creation": "Возможность создания Haven Wallet в настоящее время приостановлена.",
diff --git a/res/values/strings_th.arb b/res/values/strings_th.arb
index 055a31676..ef1a3ea4e 100644
--- a/res/values/strings_th.arb
+++ b/res/values/strings_th.arb
@@ -411,7 +411,7 @@
   "outputs": "เอาต์พุต",
   "overwrite_amount": "เขียนทับจำนวน",
   "pairingInvalidEvent": "การจับคู่เหตุการณ์ที่ไม่ถูกต้อง",
-  "passphrase": "วรรณะ",
+  "passphrase": "ข้อความรหัสผ่าน (ไม่บังคับ)",
   "password": "รหัสผ่าน",
   "paste": "วาง",
   "pause_wallet_creation": "ขณะนี้ความสามารถในการสร้าง Haven Wallet ถูกหยุดชั่วคราว",
diff --git a/res/values/strings_tl.arb b/res/values/strings_tl.arb
index dd7617615..e0258e38a 100644
--- a/res/values/strings_tl.arb
+++ b/res/values/strings_tl.arb
@@ -411,7 +411,7 @@
   "outputs": "Mga output",
   "overwrite_amount": "Overwrite na halaga",
   "pairingInvalidEvent": "Pagpares ng Di-wastong Kaganapan",
-  "passphrase": "Passphrase",
+  "passphrase": "Passphrase (opsyonal)",
   "password": "Password",
   "paste": "I -paste",
   "pause_wallet_creation": "Kasalukuyang naka-pause ang kakayahang gumawa ng Haven Wallet.",
diff --git a/res/values/strings_tr.arb b/res/values/strings_tr.arb
index d25d25d14..6cacbfd42 100644
--- a/res/values/strings_tr.arb
+++ b/res/values/strings_tr.arb
@@ -411,7 +411,7 @@
   "outputs": "çıktılar",
   "overwrite_amount": "Miktarın üzerine yaz",
   "pairingInvalidEvent": "Geçersiz Etkinliği Eşleştirme",
-  "passphrase": "Parola",
+  "passphrase": "Passfrase (isteğe bağlı)",
   "password": "Parola",
   "paste": "Yapıştır",
   "pause_wallet_creation": "Haven Cüzdanı oluşturma yeteneği şu anda duraklatıldı.",
diff --git a/res/values/strings_uk.arb b/res/values/strings_uk.arb
index fc62ab9d6..d3f1c5088 100644
--- a/res/values/strings_uk.arb
+++ b/res/values/strings_uk.arb
@@ -411,7 +411,7 @@
   "outputs": "Виходи",
   "overwrite_amount": "Overwrite amount",
   "pairingInvalidEvent": "Недійсна подія сполучення",
-  "passphrase": "Пропуск",
+  "passphrase": "Пасофрази (необов’язково)",
   "password": "Пароль",
   "paste": "Вставити",
   "pause_wallet_creation": "Можливість створення гаманця Haven зараз призупинено.",
diff --git a/res/values/strings_ur.arb b/res/values/strings_ur.arb
index a3f6f8e06..97851b210 100644
--- a/res/values/strings_ur.arb
+++ b/res/values/strings_ur.arb
@@ -413,7 +413,7 @@
   "outputs": "نتائج",
   "overwrite_amount": "رقم کو اوور رائٹ کریں۔",
   "pairingInvalidEvent": "ﭧﻧﻮﯾﺍ ﻂﻠﻏ ﺎﻧﺎﻨﺑ ﺍﮌﻮﺟ",
-  "passphrase": "پاسفریز",
+  "passphrase": "پاسفریز (اختیاری)",
   "password": "پاس ورڈ",
   "paste": "چسپاں کریں۔",
   "pause_wallet_creation": "Haven Wallet ۔ﮯﮨ ﻑﻮﻗﻮﻣ ﻝﺎﺤﻟﺍ ﯽﻓ ﺖﯿﻠﮨﺍ ﯽﮐ ﮯﻧﺎﻨﺑ",
diff --git a/res/values/strings_yo.arb b/res/values/strings_yo.arb
index d17e04e4f..acb533536 100644
--- a/res/values/strings_yo.arb
+++ b/res/values/strings_yo.arb
@@ -412,7 +412,7 @@
   "outputs": "Awọn iṣan",
   "overwrite_amount": "Pààrọ̀ iye owó",
   "pairingInvalidEvent": "Pipọpọ Iṣẹlẹ Ti ko tọ",
-  "passphrase": "Kukurukọni",
+  "passphrase": "Ọrọ kukuru (iyan)",
   "password": "Ọ̀rọ̀ aṣínà",
   "paste": "Fikún ẹ̀dà yín",
   "pause_wallet_creation": "Agbara lati ṣẹda Haven Wallet ti wa ni idaduro lọwọlọwọ.",
diff --git a/res/values/strings_zh.arb b/res/values/strings_zh.arb
index 904320ccc..e17c4a89b 100644
--- a/res/values/strings_zh.arb
+++ b/res/values/strings_zh.arb
@@ -411,7 +411,7 @@
   "outputs": "输出",
   "overwrite_amount": "Overwrite amount",
   "pairingInvalidEvent": "配对无效事件",
-  "passphrase": "密码",
+  "passphrase": "密码(可选)",
   "password": "密码",
   "paste": "粘贴",
   "pause_wallet_creation": "创建 Haven 钱包的功能当前已暂停。",