Skip to main content

इंस्टॉलेशन

आवश्यकताएं: Node.js 18+, Express 4+

त्वरित शुरुआत


l402(options) — middleware

एक Express RequestHandler लौटाता है जो route पर L402 भुगतान लागू करता है।

विकल्प

व्यवहार

402 प्रतिक्रिया body

WWW-Authenticate header


Providers

AlbyProvider — soberano mode के लिए अनुशंसित

Alby — self-custodial wallet। आप keys नियंत्रित करते हैं।

BTCPayProvider — self-hosted, शून्य विश्वास

अपना खुद का BTCPay Server चलाएं। पूर्ण स्वायत्तता।

BlinkProvider — custodial, सबसे आसान शुरुआत

Blink — छोटी राशि के लिए मुफ़्त, बिना KYC।

LNbitsProvider

Self-hosted या legend.lnbits.com

OpenNodeProvider

ManagedProvider — cloud mode (0.3% शुल्क)

l402kit.com Lightning node होस्ट करता है। आपको प्रत्येक भुगतान का 99.7% प्राप्त होता है। स्पष्ट opt-in।
Registration startup पर एक बार होती है (fire-and-forget, त्रुटियाँ silent रहती हैं)। API l402kit.com/apis.json पर दिखाई देती है ताकि agents इसे स्वतः खोज सकें।

Replay protection

डिफ़ॉल्ट — in-memory (विकास)

Built-in। restart पर reset होता है। single-process deployments के लिए उपयुक्त।

Redis (production — multi-instance)

RedisReplayAdapter SET key 1 NX EX ttl उपयोग करता है — atomic, race-condition मुक्त।

Payment webhooks

प्रत्येक भुगतान के बाद एक हस्ताक्षरित event प्राप्त करें।
Webhook payload:

onPayment callback

प्रत्येक सत्यापित भुगतान के बाद, next() से पहले synchronous hook:

Supabase payment logging

भुगतान स्वचालित रूप से लॉग करने के लिए अपने environment में SUPABASE_URL + SUPABASE_ANON_KEY सेट करें।
Payments table schema (payments):
payment_hash में SHA256(preimage) संग्रहीत होता है, raw preimage नहीं। preimage 32-byte Lightning payment secret है — इसका hash BOLT11 invoice में पहले से सार्वजनिक है।

स्वतंत्र उपयोगिताएं


प्रकार


सत्यापन समय

Token सत्यापन memory में SHA256(preimage) == paymentHash चलाता है — sub-millisecond, hot path पर कोई network call नहीं in-memory ReplayAdapter (डिफ़ॉल्ट) भी synchronously चलता है। यदि आप RedisReplayAdapter उपयोग करते हैं, तो प्रति अनुरोध 5–50 ms Redis round-trip जोड़ें। उच्च-आवृत्ति endpoints के लिए क्षमता की योजना तदनुसार बनाएं।

x402 compatibility (X-Payment header)

middleware चुपचाप X-Payment header स्वीकार करता है (Coinbase के x402 protocol द्वारा उपयोग किया जाता है) मानक Authorization: L402 … header के अतिरिक्त। दोनों को समान रूप से संभाला जाता है — उपयोगी यदि आप उन clients को serve करना चाहते हैं जो किसी भी protocol में बात करते हैं।
कोई configuration आवश्यक नहीं; यह हमेशा सक्षम है।

Migration guide

v1.1 → v1.2

अपनी payments table में column का नाम बदलें: