Segwit | Replace-by-Fee

Segwit Addresses

What are segwit addresses? Transactions that spend bitcoins secured by segregated witness (segwit) use less block weight than equivalent non-segwit (legacy) transactions, allowing segwit transactions to pay less total fee to achieve the same feerate as legacy transactions.

Tested: version 5.0.3 on iOS

Tested on: 2019-07-27

Receive support

  • Allows receiving to P2SH-wrapped segwit
    Allows the generation of P2SH-wrapped (either P2WPKH or P2WSH) segwit receiving addresses.
  • Does not allow receiving to bech32 segwit addresses
    Does not allow the generation of bech32 native (either P2WPKH or P2WSH) segwit receiving addresses.
  • Default receiving address is P2SH-wrapped P2WSH
    This service generates P2SH-wrapped P2WSH segwit receiving addresses by default.

Send support

  • Allows sending to bech32 P2WPKH addresses
    Allows sending to bech32 P2WPKH native segwit addresses.
  • Allows sending to bech32 P2WSH addresses
    Allows sending to bech32 P2WSH native segwit addresses.
  • Does not create bech32 change addresses
    When sending, does not generate bech32 (either P2WPKH or P2WSH) segwit change addresses.

Usability

Click on a thumbnail for a larger image or to play its video.

Xapo only generates P2SH wrapped P2WSH receive addresses.
Xapo only generates P2SH wrapped P2WSH receive addresses.

Xappo allows sending to any segwit v0 address.
Xappo allows sending to any segwit v0 address.


Replace-by-Fee (RBF)

What is Replace-by-Fee (RBF)? An unconfirmed transaction can be replaced by another version of the same transaction that spends the same inputs. Most full nodes support this if the earlier transaction enables BIP125 signaling and the replacement transaction increases the amount of fee paid. In terms of block chain space used, this is the most efficient form of fee bumping.

Tested: version 4.6.1 on iOS

Tested on: 2018-11-05

Receiving support

  • Notification does not note RBF
    Notification of incoming transaction does not note that the transaction signals RBF.
  • Received transaction not labeled replaceable in list
    Does not visually indicate that an incoming transaction has signaled RBF.
  • Received transaction not labeled replaceable in transaction details
    Does not visually indicate that a received transaction has signaled RBF when viewing the transaction details.
  • Shows replacement and original transactions
    Both the original transaction and replacement transaction(s) are shown in the transaction list.

Sending support

  • Does not signal BIP125 replacability when sending transactions
    Does not allow sending of BIP125 opt-in-RBF transactions in the interface.
  • Not tested: Does transaction list show whether sent transactions signal RBF?
    We were not able to test this because sending a BIP125 signaling transaction is not supported.
  • Not tested: Does transaction details page show whether received transaction signals RBF?
    We were not able to test this because sending a BIP125 signaling transaction is not supported.
  • Not tested: Are replacement and original sent transactions displayed?
    We were not able to test this because sending a BIP125 signaling transaction is not supported.

Usability

Click on a thumbnail for a larger image or to play its video.

Sending Transaction - Default wallet send screen
Sending Transaction - Default wallet send screen

Sending Transaction - Send transaction, choose miner fees. No RBF options.
Sending Transaction - Send transaction, choose miner fees. No RBF options.


Attempting Transaction Replacement - Transaction not sent with RBF signaled. No bumping possible.
Attempting Transaction Replacement - Transaction not sent with RBF signaled. No bumping possible.

Receiving Transaction Signaling RBF - Email notification. No RBF warning.
Receiving Transaction Signaling RBF - Email notification. No RBF warning.


Receiving Transaction Signaling RBF - Incoming RBF signaling transaction in list. No label for RBF.
Receiving Transaction Signaling RBF - Incoming RBF signaling transaction in list. No label for RBF.

Receiving Transaction Signaling RBF - Incoming RBF signaling transaction details. No RBF flag.
Receiving Transaction Signaling RBF - Incoming RBF signaling transaction details. No RBF flag.


Receiving Replacement Transaction - Incoming replacement transaction. Both transactions show. Balance credited twice.
Receiving Replacement Transaction - Incoming replacement transaction. Both transactions show. Balance credited twice.

Receiving Replacement Transaction - Dashboard shows 2 incoming transaction. Balance includes both transactions.
Receiving Replacement Transaction - Dashboard shows 2 incoming transaction. Balance includes both transactions.


Receiving Replacement Transaction - Additional email notification for replacement transaction.
Receiving Replacement Transaction - Additional email notification for replacement transaction.

Receiving Replacement Transaction - Even after replacement transaction has 100 confirms, original transaction stays pending.
Receiving Replacement Transaction - Even after replacement transaction has 100 confirms, original transaction stays pending.