{
  "product": "lnquote",
  "mode": "sample",
  "asof": "2017-06-01T10:57:38.000Z",
  "input": {
    "url": "https://example.com/api/v1/ln-door",
    "method": "GET"
  },
  "http_status": 402,
  "invoice_found": true,
  "invoice_source": "www-authenticate",
  "decoded": {
    "invoice": "lnbc2500u1pvjluezsp5zyg3zyg3zyg3zyg3zyg3zyg3zyg3zyg3zyg3zyg3zyg3zyg3zygspp5qqqsyqcyq5rqwzqfqqqsyqcyq5rqwzqfqqqsyqcyq5rqwzqfqypqdq5xysxxatsyp3k7enxv4jsxqzpu9qrsgquk0rl77nj30yxdy8j9vdx85fkpmdla2087ne0xh8nhedh8w27kyke0lp53ut353s06fv3qfegext0eh0ymjpf39tuven09sam30g4vgpfna3rh",
    "network": "bc",
    "amount_msat": "250000000",
    "amount_sat": "250000",
    "amount_any": false,
    "timestamp": 1496314658,
    "expiry_seconds": 60,
    "expires_at": "2017-06-01T10:58:38.000Z",
    "expired": false,
    "payment_hash": "0001020304050607080900010203040506070809000102030405060708090102",
    "description": "1 cup coffee",
    "description_hash": null,
    "payee_pubkey": null,
    "payee_recovery": "skipped",
    "min_final_cltv": 18
  },
  "decode_error": null,
  "quote": {
    "source": "x402_accept",
    "price_msat": "250000000",
    "price_sats": "250000",
    "network": "bc",
    "raw": "bc"
  },
  "amount_matches_quote": true,
  "network_matches_quote": true,
  "not_expired": true,
  "verdict": "match",
  "reasons": [
    "amount matches 250000 sat",
    "network matches bc",
    "invoice not expired",
    "Signature recovery skipped; payee pubkey unread unless invoice includes tag n.",
    "Distinct from pipecheck, timeoutskew, schemadual, sampfree200, and facpick. Those classify an HTTP 402 door, a timeout, a schema pair, a free-sample 200, or a facilitator pick. This decodes a BOLT11 invoice from an unpaid Lightning / L402 / x402 door and matches it to the advertised quote. listed stays UNVERIFIED / not asserted. listed=true is never invented."
  ],
  "never_pays": true,
  "never_contacts_lightning_node": true,
  "never_spends_usdc": true,
  "payee_recovery": "skipped",
  "decoder": "light-bolt11-decoder@3.2.0",
  "listed": null,
  "listing_assertion": "UNVERIFIED_NOT_ASSERTED",
  "sit": false,
  "price_usd": "$0.02",
  "as_of": "2017-06-01T10:57:38.000Z",
  "reason": "match invoice_found=true http_status=402. amount matches 250000 sat. Never pays. Never contacts a Lightning node. Distinct from pipecheck, timeoutskew, schemadual, sampfree200, and facpick. Those classify an HTTP 402 door, a timeout, a schema pair, a free-sample 200, or a facilitator pick. This decodes a BOLT11 invoice from an unpaid Lightning / L402 / x402 door and matches it to the advertised quote. listed stays UNVERIFIED / not asserted. listed=true is never invented.",
  "disclaimer": "This door never pays and never contacts a Lightning node. Decoding is offline BOLT11 bech32 parsing via light-bolt11-decoder. Signature recovery is skipped.",
  "title": "Lightning x402 door check Sample",
  "next": {
    "name": "lnquote",
    "title": "Lightning x402 door check",
    "price": "$0.02",
    "method": "GET",
    "url": "https://openclawproductions.com/api/v1/lnquote"
  },
  "note": "Frozen BOLT #11 coffee invoice (2500u / 250000 sat on bc, expiry 60s, 2017-06-01). Offline decode only. Never pays. Never contacts a Lightning node. Signature recovery is skipped; payee pubkey is unread unless tag n is present. Next paid GET is Lightning x402 door check at $0.02. Open Claw Productions.",
  "truth": "Illustrative frozen Lightning quote check only; no live pay, no Lightning node, no listed claim."
}
