Skip to main content

المحافظ المدعومة

المحفظةالتثبيتالحضانة الذاتيةملاحظات
Blinkمدمج❌ حضانة مشتركةأسهل إعداد، GraphQL API
Alby Hubمدمج✅ خيار الاستضافة الذاتيةREST API، يدعم Hub الخاص
مخصصواجهة L402Walletأحضر محفظتك الخاصة

BlinkWallet

الإعداد

  1. سجّل في blink.sv
  2. اذهب إلى Dashboard → API Keys ← أنشئ مفتاحاً
  3. انسخ Wallet ID الخاص بك من لوحة التحكم
export BLINK_API_KEY="your-api-key"
export BLINK_WALLET_ID="your-wallet-id"

Node.js

import { BlinkWallet } from "l402-kit";

const wallet = new BlinkWallet(
  process.env.BLINK_API_KEY!,
  process.env.BLINK_WALLET_ID!,
);

Python

from l402kit.wallets import BlinkWallet

wallet = BlinkWallet(
    api_key=os.environ["BLINK_API_KEY"],
    wallet_id=os.environ["BLINK_WALLET_ID"],
)

كيف يعمل

يستدعي Blink GraphQL API باستخدام طفرة lnInvoicePaymentSend. يُعيد preImage من المعاملة المُسوَّاة.

AlbyWallet

الإعداد

  1. أنشئ حساباً في getalby.com
  2. اذهب إلى Settings → Access Tokens ← أنشئ رمزاً بصلاحية payments:send
  3. (اختياري) شغّل Alby Hub الخاص بك للحضانة الذاتية
export ALBY_TOKEN="your-access-token"
# اختياري — مطلوب فقط لـ Hub المستضاف ذاتياً:
export ALBY_HUB_URL="https://your-hub.example.com"

Node.js

import { AlbyWallet } from "l402-kit";

// Alby cloud
const wallet = new AlbyWallet(process.env.ALBY_TOKEN!);

// Self-hosted Hub
const wallet = new AlbyWallet(
  process.env.ALBY_TOKEN!,
  process.env.ALBY_HUB_URL,  // optional base URL
);

Python

from l402kit.wallets import AlbyWallet

# Alby cloud
wallet = AlbyWallet(os.environ["ALBY_TOKEN"])

# Self-hosted Hub
wallet = AlbyWallet(
    access_token=os.environ["ALBY_TOKEN"],
    base_url=os.environ.get("ALBY_HUB_URL", "https://api.getalby.com"),
)

كيف يعمل

يستدعي POST /payments/bolt11 على Alby Hub REST API مع رمز Bearer. يُعيد payment_preimage من الاستجابة.

محفظة مخصصة

نفّذ واجهة L402Wallet لاستخدام أي محفظة Lightning:
import type { L402Wallet } from "l402-kit";

class PhoenixWallet implements L402Wallet {
  async payInvoice(bolt11: string): Promise<{ preimage: string }> {
    const res = await fetch("http://localhost:9740/payinvoice", {
      method: "POST",
      body: new URLSearchParams({ invoice: bolt11 }),
    });
    const data = await res.json();
    return { preimage: data.paymentPreimage };
  }
}
تتطلب الواجهة طريقة واحدة:
الطريقةTypeScriptPython
دفع فاتورة BOLT11payInvoice(bolt11): Promise<{ preimage: string }>pay_invoice(bolt11: str) -> str

اختيار محفظة

  • الاختبار / النماذج الأولية ← Blink (حضانة مشتركة، إعداد فوري، طبقة مجانية)
  • وكيل إنتاج، أقصى تحكم ← Alby Hub مستضاف ذاتياً (غير حضانة، REST API)
  • إنتاجية عالية / رسوم منخفضة ← Phoenix عبر L402Wallet مخصص (غير حضانة، ACINQ)
  • المؤسسات ← LNbits مستضاف ذاتياً عبر محفظة مخصصة