Skip to main content

CreateInvoiceRequest

Struct CreateInvoiceRequest 

Source
pub struct CreateInvoiceRequest {
    pub expiry_secs: u32,
    pub amount: Option<Amount>,
    pub description: Option<String>,
    pub description_hash: Option<[u8; 32]>,
    pub message: Option<BoundedString>,
    pub partner_pk: Option<UserPk>,
    pub partner_prop_fee: Option<Ppm>,
    pub partner_base_fee: Option<Amount>,
}

Fields§

§expiry_secs: u32§amount: Option<Amount>

The amount to encode into the invoice.

§description: Option<String>

The description to be encoded into the invoice.

If None, the description field inside the invoice will be an empty string (“”), as lightning requires a description (or description hash) to be set. NOTE: If both description and description_hash are set, node will return an error.

§description_hash: Option<[u8; 32]>

A 256-bit hash. Commonly a hash of a long description.

This field is used to associate description longer than 639 bytes to the invoice. Also known as ‘h tag in BOLT11’.

This field is required to build invoices for the LNURL (LUD06) receiving flow. Not used in other flows. NOTE: If both description and description_hash are set, node will return an error.

§message: Option<BoundedString>

An optional message from the payer, stored with this inbound payment. For LNURL-pay, set from the LUD-12 comment.

§partner_pk: Option<UserPk>

The partner’s user_pk, if the partner is setting the fee for this payment instead of using Lexe’s default fees.

This must be set in order for partner_prop_fee and partner_base_fee to take effect.

§partner_prop_fee: Option<Ppm>

The partner-chosen proportional fee to charge on this payment. If partner_pk is set, this must be set to Some.

Minimum: 5000 ppm (LSP_USERNODE_SKIM_FEE_PPM) Maximum: 500,000 ppm (50%)

§partner_base_fee: Option<Amount>

The partner-chosen base fee to charge on this payment.

If this is set, the invoice amount must also be set.

Trait Implementations§

Source§

impl Default for CreateInvoiceRequest

Source§

fn default() -> CreateInvoiceRequest

Returns the “default value” for a type. Read more
Source§

impl<'de> Deserialize<'de> for CreateInvoiceRequest

Source§

fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>
where __D: Deserializer<'de>,

Deserialize this value from the given Serde deserializer. Read more
Source§

impl Serialize for CreateInvoiceRequest

Source§

fn serialize<__S>(&self, __serializer: __S) -> Result<__S::Ok, __S::Error>
where __S: Serializer,

Serialize this value into the given Serde serializer. Read more

Auto Trait Implementations§

Blanket Implementations§

Source§

impl<T> Any for T
where T: 'static + ?Sized,

Source§

fn type_id(&self) -> TypeId

Gets the TypeId of self. Read more
Source§

impl<F, T, U> Apply<F, U> for T
where F: FnOnce(T) -> U,

Source§

fn apply(self, f: F) -> U

Source§

impl<T> Borrow<T> for T
where T: ?Sized,

Source§

fn borrow(&self) -> &T

Immutably borrows from an owned value. Read more
Source§

impl<T> BorrowMut<T> for T
where T: ?Sized,

Source§

fn borrow_mut(&mut self) -> &mut T

Mutably borrows from an owned value. Read more
Source§

impl<T> From<T> for T

Source§

fn from(t: T) -> T

Returns the argument unchanged.

Source§

impl<T> Instrument for T

Source§

fn instrument(self, span: Span) -> Instrumented<Self>

Instruments this type with the provided Span, returning an Instrumented wrapper. Read more
Source§

fn in_current_span(self) -> Instrumented<Self>

Instruments this type with the current Span, returning an Instrumented wrapper. Read more
Source§

impl<T, U> Into<U> for T
where U: From<T>,

Source§

fn into(self) -> U

Calls U::from(self).

That is, this conversion is whatever the implementation of From<T> for U chooses to do.

Source§

impl<T, U> TryFrom<U> for T
where U: Into<T>,

Source§

type Error = Infallible

The type returned in the event of a conversion error.
Source§

fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>

Performs the conversion.
Source§

impl<T, U> TryInto<U> for T
where U: TryFrom<T>,

Source§

type Error = <U as TryFrom<T>>::Error

The type returned in the event of a conversion error.
Source§

fn try_into(self) -> Result<U, <U as TryFrom<T>>::Error>

Performs the conversion.
Source§

impl<T> WithSubscriber for T

Source§

fn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self>
where S: Into<Dispatch>,

Attaches the provided Subscriber to this type, returning a WithDispatch wrapper. Read more
Source§

fn with_current_subscriber(self) -> WithDispatch<Self>

Attaches the current default Subscriber to this type, returning a WithDispatch wrapper. Read more
Source§

impl<T> DeserializeOwned for T
where T: for<'de> Deserialize<'de>,