An optional memo to attach along with the invoice. Used for record keeping purposes for the invoice's creator, and will also be set in the description field of the encoded payment request if the description_hash field is not being used.
string
string
r_preimage
The hex-encoded preimage (32 byte) which will allow settling an incoming HTLC payable to this preimage. When using REST, this field must be encoded as base64.
bytes
string
r_hash
The hash of the preimage. When using REST, this field must be encoded as base64. Note: Output only, don't specify for creating an invoice.
bytes
string
value
The value of this invoice in satoshis The fields value and value_msat are mutually exclusive.
int64
string
value_msat
The value of this invoice in millisatoshis The fields value and value_msat are mutually exclusive.
int64
string
settleddeprecated
Whether this invoice has been fulfilled. The field is deprecated. Use the state field instead (compare to SETTLED).
bool
boolean
creation_date
When this invoice was created. Measured in seconds since the unix epoch. Note: Output only, don't specify for creating an invoice.
int64
string
settle_date
When this invoice was settled. Measured in seconds since the unix epoch. Note: Output only, don't specify for creating an invoice.
int64
string
payment_request
A bare-bones invoice for a payment within the Lightning Network. With the details of the invoice, the sender has all the data necessary to send a payment to the recipient. Note: Output only, don't specify for creating an invoice.
string
string
description_hash
Hash (SHA-256) of a description of the payment. Used if the description of payment (memo) is too long to naturally fit within the description field of an encoded payment request. When using REST, this field must be encoded as base64.
bytes
string
expiry
Payment request expiry time in seconds. Default is 3600 (1 hour).
int64
string
fallback_addr
Fallback on-chain address.
string
string
cltv_expiry
Delta to use for the time-lock of the CLTV extended to the final hop.
uint64
string
route_hints
Route hints that can each be individually used to assist in reaching the invoice's destination.
Whether this invoice should include routing hints for private channels. Note: When enabled, if value and value_msat are zero, a large number of hints with these channels can be included, which might not be desirable.
bool
boolean
add_index
The "add" index of this invoice. Each newly created invoice will increment this index making it monotonically increasing. Callers to the SubscribeInvoices call can use this to instantly get notified of all added invoices with an add_index greater than this one. Note: Output only, don't specify for creating an invoice.
uint64
string
settle_index
The "settle" index of this invoice. Each newly settled invoice will increment this index making it monotonically increasing. Callers to the SubscribeInvoices call can use this to instantly get notified of all settled invoices with an settle_index greater than this one. Note: Output only, don't specify for creating an invoice.
uint64
string
amt_paid
Deprecated, use amt_paid_sat or amt_paid_msat.
int64
string
amt_paid_sat
The amount that was accepted for this invoice, in satoshis. This will ONLY be set if this invoice has been settled. We provide this field as if the invoice was created with a zero value, then we need to record what amount was ultimately accepted. Additionally, it's possible that the sender paid MORE that was specified in the original invoice. So we'll record that here as well. Note: Output only, don't specify for creating an invoice.
int64
string
amt_paid_msat
The amount that was accepted for this invoice, in millisatoshis. This will ONLY be set if this invoice has been settled. We provide this field as if the invoice was created with a zero value, then we need to record what amount was ultimately accepted. Additionally, it's possible that the sender paid MORE that was specified in the original invoice. So we'll record that here as well. Note: Output only, don't specify for creating an invoice.
int64
string
state
The state the invoice is in. Note: Output only, don't specify for creating an invoice.
Indicates if this invoice was a spontaneous payment that arrived via keysend [EXPERIMENTAL]. Note: Output only, don't specify for creating an invoice.
bool
boolean
payment_addr
The payment address of this invoice. This value will be used in MPP payments, and also for newer invoices that always require the MPP payload for added end-to-end security. Note: Output only, don't specify for creating an invoice.
bytes
string
is_amp
Signals whether or not this is an AMP invoice.
bool
boolean
amp_invoice_state
[EXPERIMENTAL]: Maps a 32-byte hex-encoded set ID to the sub-invoice AMP state for the given set ID. This field is always populated for AMP invoices, and can be used along side LookupInvoice to obtain the HTLC information related to a given sub-invoice. Note: Output only, don't specify for creating an invoice.
The default look up modifier, no look up behavior is changed.
0
HTLC_SET_ONLY
Indicates that when a look up is done based on a set_id, then only that set of HTLCs related to that set ID should be returned.
1
HTLC_SET_BLANK
Indicates that when a look up is done using a payment_addr, then no HTLCs related to the payment_addr should be returned. This is useful when one wants to be able to obtain the set of associated setIDs with a given invoice, then look up the sub-invoices "projected" by that set ID.