@using System.Globalization @using BTCPayServer.Payments @using BTCPayServer.Payments.Bitcoin @model IEnumerable @{ var onchainPayments = Model.Where(entity => entity.GetPaymentMethodId().PaymentType == BitcoinPaymentType.Instance).Select(payment => { var m = new OnchainPaymentViewModel(); var onChainPaymentData = payment.GetCryptoPaymentData() as BitcoinLikePaymentData; m.Crypto = payment.GetPaymentMethodId().CryptoCode; m.DepositAddress = onChainPaymentData.GetDestination(); int confirmationCount = onChainPaymentData.ConfirmationCount; var network = payment.Network as BTCPayNetwork; if (confirmationCount >= network.MaxTrackedConfirmation) { m.Confirmations = "At least " + (network.MaxTrackedConfirmation); } else { m.Confirmations = confirmationCount.ToString(CultureInfo.InvariantCulture); } m.TransactionId = onChainPaymentData.Outpoint.Hash.ToString(); m.ReceivedTime = payment.ReceivedTime; m.TransactionLink = string.Format(CultureInfo.InvariantCulture, payment.Network.BlockExplorerLink, m.TransactionId); m.Replaced = !payment.Accounted; return m; }); } @if (onchainPayments.Any()) {

On-Chain payments

@foreach (var payment in onchainPayments) { }
Crypto Deposit address Transaction Id Confirmations
@payment.Crypto @payment.DepositAddress @payment.Confirmations
}