@using BTCPayServer.Controllers @model WalletPSBTViewModel @{ var walletId = Context.GetRouteValue("walletId").ToString(); var cancelUrl = Model.ReturnUrl ?? Url.Action(nameof(UIWalletsController.WalletTransactions), new { walletId }); var backUrl = Model.BackUrl != null ? $"{Model.BackUrl}?returnUrl={Model.ReturnUrl}" : null; var isReady = !Model.HasErrors; var isSignable = !isReady; var needsExport = !isSignable && !isReady; Layout = "_LayoutWizard"; ViewData.SetActivePage(WalletsNavPages.PSBT, isReady ? "Confirm broadcasting this transaction" : "Transaction Details", walletId); } @section PageHeadContent { } @section PageFootContent { } @section Navbar { @if (backUrl != null) { } }

@ViewData["Title"]

@if (isSignable) {
} else if (isReady) {
@if (!string.IsNullOrEmpty(Model.SigningContext?.PayJoinBIP21)) { or } else { }
} else {

Export the PSBT for your wallet. Sign it with your wallet and import the signed PSBT version here for finalization and broadcasting.

}

Show raw versions
@Model.PSBT
@Model.PSBTHex
@Model.Decoded
@if (!isReady) {

}

For exporting the signed PSBT and transaction information to a wallet, update the PSBT.

For batching transactions, you can combine this PSBT with another one.