{ "$schema": "http://json-schema.org/draft-07/schema#", "type": "object", "additionalProperties": false, "required": [ "label", "payment_hash", "status", "description", "expires_at" ], "properties": { "label": { "type": "string", "description": "the label for the invoice" }, "bolt11": { "type": "string", "description": "the bolt11 string (always present unless **bolt12** is)" }, "bolt12": { "type": "string", "description": "the bolt12 string instead of **bolt11** (**experimental-offers** only)" }, "payment_hash": { "type": "hash", "description": "the hash of the *payment_preimage* which will prove payment", "maxLength": 64, "minLength": 64 }, "amount_msat": { "type": "msat", "description": "The amount of the invoice (if it has one)" }, "status": { "type": "string", "enum": [ "paid", "expired", "unpaid" ], "description": "Whether it has been paid, or can no longer be paid" }, "description": { "type": "string", "description": "Description extracted from **bolt11** or **bolt12**" }, "expires_at": { "type": "u64", "description": "UNIX timestamp of when invoice expires (or expired)" }, "pay_index": { "type": "u64", "description": "Incrementing id for when this was paid (**status** *paid* only)" }, "amount_received_msat": { "type": "msat", "description": "Amount actually received (**status** *paid* only)" }, "paid_at": { "type": "u64", "description": "UNIX timestamp of when invoice was paid (**status** *paid* only)" }, "payment_preimage": { "type": "secret", "description": "the proof of payment: SHA256 of this **payment_hash**", "maxLength": 64, "minLength": 64 }, "local_offer_id": { "type": "hex", "description": "the *id* of our offer which created this invoice (**experimental-offers** only).", "maxLength": 64, "minLength": 64 }, "payer_note": { "type": "string", "description": "the optional *payer_note* from invoice_request which created this invoice (**experimental-offers** only)." } } }