OnionPaymentPayloadTlv

sealed class OnionPaymentPayloadTlv : Tlv

Types

AmountToForward
Link copied to clipboard
common
data class AmountToForward(amount: MilliSatoshi) : OnionPaymentPayloadTlv

Amount to forward to the next node.

InvoiceFeatures
Link copied to clipboard
common
data class InvoiceFeatures(features: ByteVector) : OnionPaymentPayloadTlv

Invoice feature bits. Only included for intermediate trampoline nodes when they should convert to a legacy payment because the final recipient doesn't support trampoline.

InvoiceRoutingInfo
Link copied to clipboard
common
data class InvoiceRoutingInfo(extraHops: List<List<PaymentRequest.TaggedField.ExtraHop>>) : OnionPaymentPayloadTlv

Invoice routing hints. Only included for intermediate trampoline nodes when they should convert to a legacy payment because the final recipient doesn't support trampoline.

OutgoingChannelId
Link copied to clipboard
common
data class OutgoingChannelId(shortChannelId: ShortChannelId) : OnionPaymentPayloadTlv

Id of the channel to use to forward a payment to the next node.

OutgoingCltv
Link copied to clipboard
common
data class OutgoingCltv(cltv: CltvExpiry) : OnionPaymentPayloadTlv

CLTV value to use for the HTLC offered to the next node.

OutgoingNodeId
Link copied to clipboard
common
data class OutgoingNodeId(nodeId: PublicKey) : OnionPaymentPayloadTlv

Id of the next node.

PaymentData
Link copied to clipboard
common
data class PaymentData(secret: ByteVector32, totalAmount: MilliSatoshi) : OnionPaymentPayloadTlv

Bolt 11 payment details (only included for the last node).

PaymentMetadata
Link copied to clipboard
common
data class PaymentMetadata(data: ByteVector) : OnionPaymentPayloadTlv

When payment metadata is included in a Bolt 9 invoice, we should send it as-is to the recipient. This lets recipients generate invoices without having to store anything on their side until the invoice is paid.

TrampolineOnion
Link copied to clipboard
common
data class TrampolineOnion(packet: OnionRoutingPacket) : OnionPaymentPayloadTlv

An encrypted trampoline onion packet.

Functions

write
Link copied to clipboard
common
open fun write(): ByteArray
abstract fun write(out: Output)

Properties

tag
Link copied to clipboard
common
abstract val tag: Long

TLV fields start with a tag that uniquely identifies the type of field within a specific namespace (usually a lightning message). See https://github.com/lightningnetwork/lightning-rfc/blob/master/01-messaging.md#type-length-value-format.

Inheritors

OnionPaymentPayloadTlv
Link copied to clipboard
OnionPaymentPayloadTlv
Link copied to clipboard
OnionPaymentPayloadTlv
Link copied to clipboard
OnionPaymentPayloadTlv
Link copied to clipboard
OnionPaymentPayloadTlv
Link copied to clipboard
OnionPaymentPayloadTlv
Link copied to clipboard
OnionPaymentPayloadTlv
Link copied to clipboard
OnionPaymentPayloadTlv
Link copied to clipboard
OnionPaymentPayloadTlv
Link copied to clipboard