Multi-Signature Wallet using the Electrum and the Hardware Wallet.The following is a translated version of my post about Multi-Signature Wallet using the Electrum on the local board of Bahasa Indonesia : https://bitcointalk.org/index.php?topic=5037320.msg55982009#msg55982009.
Wallet 1Wallet: Electrum Testnet 4.0.9 (macOS)
Hardware wallet: Trezor T
Wallet 2Wallet: Electrum Testnet 4.0.9 (Windows OS)
Hardware wallet: Ledger Nano X
By default, Electrum in the mac application is the mainnet version (there is no shortcut for the testnet version as in the Windows OS version);
To run Electrum Testnet, open Terminal and type the following command:
open -n /Applications/Electrum.app --args --testnet
The
Electrum - Install Wizard (Testnet) window will appear;

In the '
Alternatively', select '
Create New Wallet' and give the name of the wallet you created.

Under wallet type, select
Multi-Signature wallet.

Then specify the Consigner and also the number of signatures needed to be able to process transactions in the wallet.

On "
Add cosigner (1 of 2)", I selected the option "
Use a hardware device".

In '
Hardware Keystore', select the connected device, then clicks '
Next'.
- Device on Wallet (Cosigner) 1:
- Device on Wallet (Cosigner) 2:
Select the wallet address type; For "
derivation path", I leave it by default.

Then write the '
Master Public Key' it generates, then clicks 'Next'.
- Master Public Key on Cosigner 1:
- Master Public Key on Cosigner 2:
On the '
Add Cosigner (2 of 2)', select '
Enter cosigner key'.

In wallet 1, fill in using the master public key (xpub) of wallet 2:

In wallet 2, fill in using the master public key (xpub) of wallet 1:

Create a password to encrypt each wallet on both 'Cosigners'.

Go to the 'Addresses' tab (View Menu -> Show Addresses), and make sure the addresses in all Cosigners are the same:
- Address Wallet (cosigner) 1:
- Address Wallet (cosigner) 2:
Test transactions at Electrum Multi-Signature Wallet.Note: I see that the Lightning Network feature in Electrum (in this test) does not support multi-signature wallets.
- ReceiveOn the '
Receive' tab, select '
New Address';
In the '
Expires after' column, I chose '
Never'.

tb1qnrsxytrm3whmrw65lctd3fdpk28er7tudmhwseshdcylyeudmwgslgqwww
I'm trying to send some Bitcoins from the Bitcoin Core Wallet (testnet) to the address above.
https://blockstream.info/testnet/tx/5e42c85dd05dfdeff0f17a03e23ad88fdda98f382d1437cd2ffab523bad94bc2
Wallet (Cosigner) 1 and Wallet (Cosigner) 2 get similar notifications regarding the receipt transaction.
- SendIn Wallet (Cosigner) 1, click the '
Send' tab and enter the Recipient's Bitcoin address ('
Pay to'), '
Description' (can be emptied), and also the amount of BTC to be sent ('
Amount'), then click '
Pay...'

Specify '
Fee rate' then click '
Send'.

Unlock the hardware wallet if locked, and confirm to send.

After being confirmed in the wallet ("Cosigner") 1, a '
Transaction ID' window appears with the status: Partially signed (1/2).

Click the 'Export' button in the bottom left corner. In this test, I chose:
'
For hardware device; include xpubs' and then '
Export to File' (you can also use the QR code option and others).
In Wallet ('cosigner') 2, select the '
Tools' menu -> '
Load transaction' -> '
From file'
Select the file obtained from the export results in the previous Wallet 1.

In the '
Transaction' window, click '
Sign', then confirm on the hardware wallet.


Note: I skipped some of the confirmation steps on the Ledger Nano X.Back to Electrum, Click '
Broadcast' -> '
OK' to send the multi-signature transaction to the blockchain.

Transaction completed:
https://blockstream.info/testnet/tx/ed17bf23032ed1e49533595a35486da9a95b6b064989e1d428d6b6ac69c571a1
I am not a native speaker of English and please correct if there is incorrect grammar.